haritkapadia / ts-movement

Emacs 29+ minor mode for syntax tree navigation using Tree Sitter
GNU General Public License v3.0
56 stars 6 forks source link

Consider remove `;; Package-Requires: ((treesit))`? #5

Open cxa opened 6 months ago

cxa commented 6 months ago

There is no such package named treesit, this line cause use-package failing to install ts-movement.

abougouffa commented 5 months ago

👍🏼

abougouffa commented 5 months ago

This makes sense. Leaving treesit as dependency causes third party packages managers (like straight) to fail to install ts-movement as there is no package named treesit (it is a feature of Emacs 29+).

tsujp commented 1 month ago

Check that your configurations are correct, (use-package treesit :ensure nil) works fine, if you auto-pass :ensure t then straight will try and grab it from a repository.

i.e., ;; Package-Requires: ((treesit)) is correct, this package does require the feature set provided by treesit.

abougouffa commented 1 month ago

Check that your configurations are correct

There are a lot of tricks to make it install properly depending on the used package manager, that's not the question!

i.e., ;; Package-Requires: ((treesit)) is correct, this package does require the feature

Well, I don't agree!. In general, the presence of Package-Requires indicate dependency of an external package, not an internal feature of Emacs. We know that treesit has been introduced in Emacs 29, so depending on Emacs 29 should be sufficient, and then, at run time, the package can check if the treesit support is available or not in the running Emacs version (in case Emacs 29+ isn't compiled with --with-tree-sitter option).