Remove usage of submodules for tree-sitter grammars
Created by: varungandhi-src
We currently have three git submodules for tree-sitter grammars.
Keegan reported that "From eyeballing a few runs what I can tell we are paying a cost of 1 minute every step". That seems bad. Moreover, it looks like it isn't possible to configure the usage of submodules on a per-job in Buildkite.
Also, submodules add friction to the development experience.
All of these crates are published on crates.io, which is a good sign. However, some of the releases are fairly old. We may be able to submit patches upstream to cut new releases. In the meantime, we could use git-based dependencies in Cargo.toml. If the crates are configured correctly to build with a pure cargo invocation (they should be if they’re on crates.io).