Neovim ships with outdated, incompatible tree-sitter plugins

Running :checkhealth in neovim, i see that the c and lua treesitter plugins are shipped with old ABI versions (ABI 13).

vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: gdscript   ABI: 14, path: /nix/store/215l27flpm93c2pzif9h71c6xyxqm2yy-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-gdscript/parser/gdscript.so
- OK Parser: godot_resource ABI: 14, path: /nix/store/215l27flpm93c2pzif9h71c6xyxqm2yy-vim-pack-dir/pack/myNeovimPackages/start/vimplugin-treesitter-grammar-godot_resource/parser/godot_resource.so
- OK Parser: c          ABI: 13, path: /nix/store/pyqaaxvyf8ckfn1n89vr5v4h14j2ms5n-neovim-unwrapped-0.9.5/lib/nvim/parser/c.so
- OK Parser: lua        ABI: 13, path: /nix/store/pyqaaxvyf8ckfn1n89vr5v4h14j2ms5n-neovim-unwrapped-0.9.5/lib/nvim/parser/lua.so
- OK Parser: query      ABI: 14, path: /nix/store/pyqaaxvyf8ckfn1n89vr5v4h14j2ms5n-neovim-unwrapped-0.9.5/lib/nvim/parser/query.so
- OK Parser: vim        ABI: 14, path: /nix/store/pyqaaxvyf8ckfn1n89vr5v4h14j2ms5n-neovim-unwrapped-0.9.5/lib/nvim/parser/vim.so
- OK Parser: vimdoc     ABI: 14, path: /nix/store/pyqaaxvyf8ckfn1n89vr5v4h14j2ms5n-neovim-unwrapped-0.9.5/lib/nvim/parser/vimdoc.so

Opening any C or Lua code in vim with tree-sitter enabled fills the screen with error messages

The following errors have been detected: ~
- ERROR c(highlights): ...ed-0.9.5/share/nvim/runtime/lua/vim/treesitter/query.lua:259: query: invalid node type at position 214 for language c
  c(highlights) is concatenated from the following files:
  | [ERROR]:"/nix/store/215l27flpm93c2pzif9h71c6xyxqm2yy-vim-pack-dir/pack/myNeovimPackages/start/nvim-treesitter/queries/c/highlights.scm", failed to load: ...ed-0.9.5/share/nvim/runtime/lua/vim/treesitter/query.lua:259: query: invalid node type at position 214 for language c
- ERROR c(folds): ...ed-0.9.5/share/nvim/runtime/lua/vim/treesitter/query.lua:259: query: invalid node type at position 306 for language c 

i have a few plugins installed with home-manager (nvim-treesitter, nvim-treesitter-parsers.{gdscript,godot_resource} among others), but i don’t think any of them are responsible for the ABI version mismatch.


neovim shouldn’t come with mismatched ABIs. is this a bug with nixpkgs or is this user error on my part?

how do i update the tree sitter plugins that come with neovim? (i know i could try :TSInstall c lua but i want to know the proper way to fix it with overrides in nixos)

nixos-unstable has neovim 10.0 with working, recent versions of the tree-sitter plugins, but I’d rather stick with neovim-9.5.