From 65ef6fdaeef86f8341293942c076b320acf03fd1 Mon Sep 17 00:00:00 2001 From: Lewis Russell Date: Mon, 7 Sep 2026 11:43:51 +0100 Subject: build: replace LuaLS with EmmyLua Problem: LuaLS struggles with the generics used in Nvim's runtime, requiring broad diagnostic suppressions. Indexing is also slow. Solution: Use EmmyLua for type checks in the build and CI. It offers more sophisticated type checking, substantially better support for generics, and much better flow analysis. Correct the affected annotations. Use `@internal`, supported directly by EmmyLua, instead of `@nodoc` for shared internal declarations, and support it in the help parser. AI-assisted --- runtime/lua/vim/treesitter/dev.lua | 2 ++ 1 file changed, 2 insertions(+) (limited to 'runtime/lua/vim/treesitter/dev.lua') diff --git a/runtime/lua/vim/treesitter/dev.lua b/runtime/lua/vim/treesitter/dev.lua index 0eaff2e554..aa50696238 100644 --- a/runtime/lua/vim/treesitter/dev.lua +++ b/runtime/lua/vim/treesitter/dev.lua @@ -314,6 +314,8 @@ end ---@return integer ---@package function TSTreeView:iter() + -- TODO(lewis6991): EmmyLua 0.25.1's ipairs annotation omits the table and initial index. + --- @diagnostic disable-next-line: missing-return-value return ipairs(self.opts.anon and self.nodes or self.named) end -- cgit