lua-language-server icon indicating copy to clipboard operation
lua-language-server copied to clipboard

Cannot export neovim runtime doc

Open foxyseta opened this issue 7 months ago • 7 comments

How are you using the lua-language-server?

Command Line

Which OS are you using?

Linux

What is the issue affecting?

Other

Expected Behaviour

The doc for a project importing neovim's runtime should succeed.

Actual Behaviour

root uri = file:///home/foxy/.local/share/nvim/site/pack/paks/start/visimp/.
script/cli/doc/export.lua:73: attempt to compare nil with string
stack traceback:
        script/cli/doc/export.lua:73: in function <script/cli/doc/export.lua:71>
        [C]: in function 'table.sort'
        script/cli/doc/export.lua:266: in field '?'
        script/cli/doc/export.lua:115: in field 'documentObject'
        script/cli/doc/export.lua:289: in field 'makeDocs'
        script/cli/doc/init.lua:231: in upvalue 'callback'
        script/lclient.lua:129: in function <script/lclient.lua:128>
stack traceback:
        script/lclient.lua:123: in function 'await.errorHandle'
        script/await.lua:35: in function 'await.checkResult'
        (...tail calls...)
        [C]: in function 'xpcall'
        script/timer.lua:52: in upvalue 'mWakeup'
        script/timer.lua:93: in upvalue 'onTick'
        script/timer.lua:236: in function 'timer.update'
        script/lclient.lua:139: in method 'start'
        script/cli/doc/init.lua:210: in function 'cli.doc.runCLI'
        script/cli/init.lua:22: in main chunk
        [C]: in function 'require'
        ...nvim/mason/packages/lua-language-server/libexec/main.lua:78: in main chunk
        (bootstrap.lua):85: in main chunk
        [C]: in ?
script/lclient.lua:124: [19:31:36.692][error][#0:script/lclient.lua:123]: script/cli/doc/export.lua:73: attempt to compare nil with string
stack traceback:
        script/cli/doc/export.lua:73: in function <script/cli/doc/export.lua:71>
        [C]: in function 'table.sort'
        script/cli/doc/export.lua:266: in field '?'
        script/cli/doc/export.lua:115: in field 'documentObject'
        script/cli/doc/export.lua:289: in field 'makeDocs'
        script/cli/doc/init.lua:231: in upvalue 'callback'
        script/lclient.lua:129: in function <script/lclient.lua:128>
stack traceback:
        script/lclient.lua:123: in function 'await.errorHandle'
        script/await.lua:35: in function 'await.checkResult'
        (...tail calls...)
        [C]: in function 'xpcall'
        script/timer.lua:52: in upvalue 'mWakeup'
        script/timer.lua:93: in upvalue 'onTick'
        script/timer.lua:236: in function 'timer.update'
        script/lclient.lua:139: in method 'start'
        script/cli/doc/init.lua:210: in function 'cli.doc.runCLI'
        script/cli/init.lua:22: in main chunk
        [C]: in function 'require'
        ...nvim/mason/packages/lua-language-server/libexec/main.lua:78: in main chunk
        (bootstrap.lua):85: in main chunk
        [C]: in ?

stack traceback:
        [C]: in function 'error'
        script/lclient.lua:124: in function 'await.errorHandle'
        script/await.lua:35: in function 'await.checkResult'
        (...tail calls...)
        [C]: in function 'xpcall'
        script/timer.lua:52: in upvalue 'mWakeup'
        script/timer.lua:93: in upvalue 'onTick'
        script/timer.lua:236: in function 'timer.update'
        script/lclient.lua:139: in method 'start'
        script/cli/doc/init.lua:210: in function 'cli.doc.runCLI'
        script/cli/init.lua:22: in main chunk
        [C]: in function 'require'
        ...nvim/mason/packages/lua-language-server/libexec/main.lua:78: in main chunk
        (bootstrap.lua):85: in main chunk
        [C]: in ?
/home/foxy/.local/share/nvim/mason/packages/lua-language-server/libexec/bin/lua-language-server: script/lclient.lua:149: two hours later ...
====== C -> S ======
====== S -> C ======
====================
stack traceback:
        [C]: in function 'error'
        script/lclient.lua:149: in method 'start'
        script/cli/doc/init.lua:210: in function 'cli.doc.runCLI'
        script/cli/init.lua:22: in main chunk
        [C]: in function 'require'
        ...nvim/mason/packages/lua-language-server/libexec/main.lua:78: in main chunk
        (bootstrap.lua):85: in main chunk
        [C]: in ?
>>>>================ 0571/3518

Reproduction steps

  1. Create a toy Lua project with the following .luarc.json:
    {
      "$schema": "https://raw.githubusercontent.com/sumneko/vscode-lua/master/setting/schema.json",
      "Lua.diagnostics.globals": [
        "vim"
      ],
      "runtime.version": "LuaJIT",
      "workspace": {
        "checkThirdParty": false,
        "library": [
            "/usr/share/nvim/runtime",
        ]
      },
      "diagnostics.libraryFiles": "Disable"
    }
    
  2. Run lua-language-server --doc=. --doc_out_path=/home/user/desktop/
  3. Now delete the /usr/share/nvim/runtime line and retry. Everything works again!

Additional Notes

No response

Log File

No response

foxyseta avatar Mar 08 '25 18:03 foxyseta