Subject: bug#78754: closed (Re: bug#78754: Tree-sitter started versioning their shared library filenames)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 11 Jun 2025 06:48:02 +0000

Your bug report

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

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
78754: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=78754
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#78754: Tree-sitter started versioning their shared library filenames
From: Yuan Fu <[email-masked]>
To: Peter Oliver <[email-masked]>
Cc: [email-masked]
Date: Tue, 10 Jun 2025 23:47:38 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

> On Jun 10, 2025, at 11:52 AM, Peter Oliver <[email-masked]> 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.

Yuan

Subject: Tree-sitter started versioning their shared library filenames
From: Peter Oliver <[email-masked]>
To: [email-masked]
Date: Tue, 10 Jun 2025 19:52:21 +0100 (BST)
List-Id: <debbugs-submit.debbugs.gnu.org>

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