Subject: bug#60559: 29.0.60; "Cannot activate tree-sitter" spam

From: Po Lu <[email-masked]>
Date: Thu, 05 Jan 2023 08:43:12 +0800

Eli Zaretskii <[email-masked]> writes:

>> From: Daniel Martín <[email-masked]>
>> Cc: Eric Gillespie <[email-masked]>,  [email-masked]
>> Date: Wed, 04 Jan 2023 20:40:24 +0100
>> 
>> Eli Zaretskii <[email-masked]> writes:
>> 
>> >
>> > This is not a bug.  Emacs 29 comes with major modes for TOML files and
>> > for Dockerfiles, and those new major modes require that you build
>> > Emacs with the tree-sitter library (and install the corresponding
>> > parser grammar libraries).  If you don't want to do that, you can
>> > instead customize auto-mode-alist to make Emacs use Fundamental mode
>> > (or any other mode you like) for these two file types.
>> 
>> Isn't this another manifestation of what's being discussed in bug#60511?
>> I also think that treesit-ready-p should not emit a warning by default,
>> it's too noisy and confusing for people that don't know about
>> Tree-sitter and consequently use a build of Emacs 29 without Tree-sitter
>> enabled.
>
> That is one use case.  The other, no less important one, is when the
> user thinks his/her Emacs is built with tree-sitter and has the
> relevant stuff installed, whereas the reality is different.  Silently
> doing nothing in that case is hardly TRT.
>
> So if we want to solve this, we need to find a solution that fits both
> of these use cases.
>
>> Also, it's strange that, even if Tree-sitter is not configured at all, a
>> major mode whose description mentions Tree-sitter is apparently loaded.
>
> I don't find it strange at all.

Slightly unrelated to this bug.

I think we will have to find a way to bundle certain tree-sitter
grammars with Emacs.  On Android, system policy prohibits programs from
loading dynamic libraries that are not installed by the system in a read
only location upon installation of the application package itself, so
asking users to build those grammars will not work at all.

Android users typically have no C compiler installed either.

Thanks.