Sublime Forum

Migrate sublime-tree-sitter to tree-sitter-language-pack

#1

Grant Jenks’ “tree-sitter-languages” package (aka grantjenks/py-tree-sitter-languages) is no longer maintained. The replacement, tree-sitter-language-pack (aka goldziher/tree-sitter-language-pack) is maintained and supported.

If whomever maintains sublime-tree-sitter plugin wants to keep taking advantage of updated pre-built wheels for treesitter languages, the plugin really needs to migrate to using tree-sitter-language-pack instead of tree-sitter-languages. Their APIs are nigh-identical, porting should be fairly simple.

I spent a brief period looking at what all would be needed, and it didn’t seem like it would require a huge amt of work (mostly just updating the much larger list of pre-built parsers/grammers in the replacement vs the original). Alas I didn’t have time to attempt an actual migration and test.

I can certainly fork and attempt the migration on my fork, but don’t want to do so if someone else is already working on the same migration. If anyone else already is, can they please let me know? Happy to help work with whomever started working on it, as well.

Thanks!

0 Likes

#2

Okay, so guess I’m at least trying to do this, until I hear otherwise or run out of time/resources. Please still reach out if you’re already working on it, I’ve begun a dialog with the treesitter-language-packs folks for an iterable API, and just need to figure out the best way to wire everything together (with minimal bubblegum & bailing wire ideally, more structural duct tape).

0 Likes

#3

Just do it. We appreciate.

0 Likes

#4

Anyone really using this package?

0 Likes

#5

Slight problem: tree-sitter-language-pack says it requires Py 3.9.x.

I’m investigating why it says that (unclear if tied to binary interfaces somehow, or just because that’s what the dev had at the time). Alas, that might also create some compat problems with the bound wheels if I try to relabel it as 3.8-compatible even if the Py components are fine with 3.8.

Will update once I have a better handle on it. Worst-yet-salvagable case, presuming there isn’t a binary blocker reason, I can just rebuild the .so’s for binding against 3.8 as well. Or, it could turn into a motivation- and time-eating singularity I might have to put out of my misery. We’ll see.

0 Likes