Subject: bug#78754: Tree-sitter started versioning their shared library filenames

From: Peter Oliver <[email-masked]>
Date: Tue, 10 Jun 2025 19:52:21 +0100 (BST)

The Makefiles distributed with Tree-sitter parsers used to install to, say, /usr/lib/libtree-sitter-foo.so.0.0.  Consequently, Emacs currently expects parsers to have names like this.

Recent Makefiles instead install to /usr/lib/libtree-sitter-foo.so.14.0 or /usr/lib/libtree-sitter-foo.so.15.0 (where 14 or 15 is the Tree-sitter ABI version, taken from LANGUAGE_VERSION in the parser’s src/parser.c).  Emacs should look in these places as well.

Presumably we should ask the libtree-sitter we’re using what ABI versions it supports, rather than hard-coding 14 and 15.

-- 
Peter Oliver