unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Yuan Fu <casouri@gmail.com>
Cc: 70438@debbugs.gnu.org, sh@bytekomplex.de
Subject: bug#70438: Emacs error 6 abort when starting rust-ts-mode
Date: Fri, 26 Apr 2024 21:32:10 +0300	[thread overview]
Message-ID: <86le50x9ed.fsf@gnu.org> (raw)
In-Reply-To: <82B0E79F-050A-43B0-BB68-BBD58F37E08E@gmail.com> (message from Yuan Fu on Fri, 26 Apr 2024 10:58:20 -0700)

> From: Yuan Fu <casouri@gmail.com>
> Date: Fri, 26 Apr 2024 10:58:20 -0700
> Cc: sh@bytekomplex.de,
>  70438@debbugs.gnu.org
> 
> > We cannot pin a tree-sitter version, because that makes sense only for
> > binary distributions.  We ship only source tarballs, and for those,
> > _any_ tree-sitter version will do -- provided that Emacs is built with
> > the same version of tree-sitter with which it will be used, or with
> > the version that uses the same ABI.
> > 
> > We could perhaps record the version with which Emacs was built, and
> > then reject incompatible versions we find at run time, but since
> > tree-sitter doesn't provide any version-related symbols in their
> > header files, we cannot do even that.
> > 
> > So the bottom line is still the same: we cannot do anything here, as
> > long as the tree-sitter developers think they can break the ABI at
> > will.
> 
> Can we statically link tree-sitter? From the look of it, tree-sitter devs don’t plan to not break ABI. We need to do something to prevent Emacs from crashing.

Emacs can indeed be statically linked with tree-sitter.  But since we,
the Emacs project, don't distribute binaries, the decision how to link
Emacs with various libraries is made by the distros.  And they always
prefer shared libraries, because that allows to upgrade the libraries
without installing new binaries of dependent programs.

> >> This also brings me to the versioning of tree-sitter grammars—they really do change often, we should really consider pinning their version in some way. The current catch-up game we play can’t be scalable.
> > 
> > That's a separate issue: when there's incompatibility with grammar
> > libraries, Emacs doesn't crash.
> 
> I can open a separate thread for this.

Feel free (although we discussed that in the past already).





  reply	other threads:[~2024-04-26 18:32 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-17 11:41 bug#70438: Emacs error 6 abort when starting rust-ts-mode Stefan Heitmann
2024-04-17 16:27 ` Eli Zaretskii
2024-04-20  8:28   ` Yuan Fu
2024-04-20  9:36     ` Eli Zaretskii
2024-04-20 22:20       ` Yuan Fu
2024-04-21  4:47         ` Eli Zaretskii
2024-04-21 23:57           ` Yuan Fu
2024-04-22  5:54             ` Eli Zaretskii
2024-04-22  6:13               ` Yuan Fu
2024-04-22  6:53                 ` Eli Zaretskii
2024-04-25 11:24                 ` bug#70438: AW: " Stefan Heitmann
2024-04-25 13:19                   ` Eli Zaretskii
2024-04-26 16:49                     ` Yuan Fu
2024-04-26 17:21                       ` Eli Zaretskii
2024-04-26 17:58                         ` Yuan Fu
2024-04-26 18:32                           ` Eli Zaretskii [this message]
2024-04-27  3:06                             ` Yuan Fu
2024-04-27  6:16                               ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86le50x9ed.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=70438@debbugs.gnu.org \
    --cc=casouri@gmail.com \
    --cc=sh@bytekomplex.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).