GNU bug report logs -
#78754
Tree-sitter started versioning their shared library filenames
Previous Next
Full log
Message #13 received at 78754 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Wed, Jun 11, 2025 at 7:48 AM Yuan Fu <casouri <at> gmail.com> wrote:
>
>
> > On Jun 10, 2025, at 11:52 AM, Peter Oliver <p.d.oliver <at> mavit.org.uk>
> wrote:
> >
> > 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
>
> Thanks for the heads-up! I pushed a change to emacs-30 to look for all
> supported versions. Eg, if the tree-sitter library supports language
> version 13 to 15, Emacs will try to look for libtree-sitter-foo.so.13.0,
> libtree-sitter-foo.so.14.0, and libtree-sitter-foo.so.15.0.
>
This is indeed a welcome improvement. Unless I'm reading it wrong, it
looks like the ABI tests go 0.0 forward through 15 (modulo what's
intrinsically supported). Should the tests be reversed so the most recent
ABI takes precedence?
-Stephane
[Message part 2 (text/html, inline)]
This bug report was last modified 2 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.