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

require("ffi") returning unknown

Open Frityet opened this issue 2 years ago • 6 comments

How are you using the lua-language-server?

Visual Studio Code Extension (sumneko.lua)

Which OS are you using?

MacOS

What is the issue affecting?

Type Checking, Completion, Libraries

Expected Behaviour

Screen Shot 2022-09-16 at 17 03 10

Actual Behaviour

Screen Shot 2022-09-16 at 17 02 58

Reproduction steps

local ffi = require("ffi")

Additional Notes

No response

Log File

[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:65]: Lua Lsp startup, root: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:66]: ROOT:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:67]: LOGPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:68]: METAPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta
[17:01:26.979][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:69]: VERSION:	3.5.6
[17:01:27.012][info] [#0:script/service/service.lua:141]: 
========= Medical Examination Report =========
    --------------- Memory ---------------
        Total: 1.489 MB
        # 00 : 1.489 MB
        # 01 : 0.000 MB
        # 02 : 0.000 MB
        # 03 : 0.000 MB
        # 04 : 0.000 MB
    --------------- Coroutine ---------------
        Total:     0
        Running:   0
        Suspended: 0
        Normal:    0
        Dead:      0
    --------------- Cache ---------------
        Total: 1
        Dead:  0
    ---------------  RPC  ---------------
        Holdon:   0
        Waiting:  0
==============================================
[17:01:27.023][info] [#0:script/language.lua:137]: VSC language: en-us
[17:01:27.023][info] [#0:script/language.lua:138]: LS  language: en-us
[17:01:27.023][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.023][info] [#0:script/workspace/workspace.lua:42]: Log path: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/file_Users_frityet_Documents_LuaUITest.log
[17:01:27.025][info] [#0:script/workspace/workspace.lua:51]: Workspace create: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.335][info] [#0:script/provider/provider.lua:41]: Load config from client	file:///Users/frityet/Documents/LuaUITest
[17:01:27.336][info] [#0:script/provider/provider.lua:42]: {
  Lua = {
    IntelliSense = {
      traceBeSetted = true,
      traceFieldInject = true,
      traceLocalSet = true,
      traceReturn = true
    },
    color = {
      mode = "SemanticEnhanced"
    },
    completion = {
      autoRequire = true,
      callSnippet = "Replace",
      displayContext = 0,
      enable = true,
      keywordSnippet = "Replace",
      postfix = "@",
      requireSeparator = ".",
      showParams = true,
      showWord = "Fallback",
      workspaceWord = true
    },
    diagnostics = {
      disable = {},
      disableScheme = { "git" },
      enable = true,
      globals = {},
      groupFileStatus = {},
      groupSeverity = {},
      ignoredFiles = "Enable",
      libraryFiles = "Opened",
      neededFileStatus = {},
      severity = {},
      unusedLocalExclude = {},
      workspaceDelay = 3000,
      workspaceRate = 100
    },
    format = {
      defaultConfig = {},
      enable = true
    },
    hint = {
      arrayIndex = "Enable",
      await = true,
      enable = false,
      paramName = "All",
      paramType = true,
      semicolon = "SameLine",
      setType = true
    },
    hover = {
      enable = true,
      enumsLimit = 5,
      expandAlias = true,
      previewFields = 50,
      viewNumber = true,
      viewString = true,
      viewStringMax = 1000
    },
    misc = {
      parameters = {}
    },
    runtime = {
      builtin = {},
      fileEncoding = "utf8",
      meta = "${version} ${language} ${encoding}",
      nonstandardSymbol = {},
      path = { "?.lua", "?/init.lua", "?/?.lua", "/usr/local/share/lua/?/?.lua" },
      pathStrict = false,
      plugin = "",
      pluginArgs = {},
      special = {
        ['"ffi.load"'] = "require"
      },
      unicodeName = false,
      version = "Lua 5.4"
    },
    semantic = {
      annotation = true,
      enable = true,
      keyword = false,
      variable = true
    },
    signatureHelp = {
      enable = true
    },
    spell = {
      dict = {}
    },
    telemetry = {
      enable = true
    },
    type = {
      castNumberToInteger = true,
      weakNilCheck = false,
      weakUnionCheck = false
    },
    typeFormat = {
      config = {}
    },
    window = {
      progressBar = true,
      statusBar = true
    },
    workspace = {
      checkThirdParty = true,
      ignoreDir = { ".vscode" },
      ignoreSubmodules = true,
      library = { "/usr/local/share/lua/", "/usr/local/lib/lua/", "?/?.so", "?.so", "/Users/frityet/Documents/libCraftOS/" },
      maxPreload = 5000,
      preloadFileSize = 500,
      supportScheme = { "file", "untitled", "git" },
      useGitIgnore = true,
      userThirdParty = {}
    }
  },
  ["editor.acceptSuggestionOnEnter"] = "on",
  ["editor.semanticHighlighting.enabled"] = true,
  ["files.associations"] = {
    ["*.asm"] = "nasm",
    ["*.h"] = "c",
    ["*.inc"] = "nasm",
    ["*.lua"] = "lua",
    ["*.mpp"] = "cpp",
    ["*.rockspec"] = "lua"
  },
  ["files.exclude"] = {
    ["**/.DS_Store"] = true,
    ["**/.git"] = true,
    ["**/.hg"] = true,
    ["**/.svn"] = true,
    ["**/CVS"] = true,
    ["**/Thumbs.db"] = true
  }
}
[17:01:27.336][info] [#0:script/provider/provider.lua:48]: Load config from .luarc.json/.luarc.jsonc	file:///Users/frityet/Documents/LuaUITest
[17:01:27.336][info] [#0:script/provider/provider.lua:49]: {
  ["diagnostics.groupSeverity"] = {
    ambiguity = "Error",
    await = "Error",
    codestyle = "Error",
    duplicate = "Error",
    global = "Error",
    luadoc = "Error",
    redefined = "Error",
    strict = "Error",
    strong = "Error",
    ["type-check"] = "Error",
    unbalanced = "Error"
  },
  ["runtime.path"] = { "?.lua", "?/init.lua" },
  ["runtime.pathStrict"] = true,
  ["runtime.special"] = {
    <metatable> = {}
  },
  ["runtime.version"] = "LuaJIT",
  ["workspace.ignoreDir"] = {},
  ["workspace.useGitIgnore"] = false
}
[17:01:27.439][info] [#0:script/provider/provider.lua:56]: Load config from client	fallback
[17:01:27.441][info] [#0:script/provider/provider.lua:57]: {
  Lua = {
    IntelliSense = {
      traceBeSetted = true,
      traceFieldInject = true,
      traceLocalSet = true,
      traceReturn = true
    },
    color = {
      mode = "SemanticEnhanced"
    },
    completion = {
      autoRequire = true,
      callSnippet = "Replace",
      displayContext = 0,
      enable = true,
      keywordSnippet = "Replace",
      postfix = "@",
      requireSeparator = ".",
      showParams = true,
      showWord = "Fallback",
      workspaceWord = true
    },
    diagnostics = {
      disable = {},
      disableScheme = { "git" },
      enable = true,
      globals = {},
      groupFileStatus = {},
      groupSeverity = {},
      ignoredFiles = "Enable",
      libraryFiles = "Opened",
      neededFileStatus = {},
      severity = {},
      unusedLocalExclude = {},
      workspaceDelay = 3000,
      workspaceRate = 100
    },
    format = {
      defaultConfig = {},
      enable = true
    },
    hint = {
      arrayIndex = "Enable",
      await = true,
      enable = false,
      paramName = "All",
      paramType = true,
      semicolon = "SameLine",
      setType = true
    },
    hover = {
      enable = true,
      enumsLimit = 5,
      expandAlias = true,
      previewFields = 50,
      viewNumber = true,
      viewString = true,
      viewStringMax = 1000
    },
    misc = {
      parameters = {}
    },
    runtime = {
      builtin = {},
      fileEncoding = "utf8",
      meta = "${version} ${language} ${encoding}",
      nonstandardSymbol = {},
      path = { "?.lua", "?/init.lua", "?/?.lua", "/usr/local/share/lua/?/?.lua" },
      pathStrict = false,
      plugin = "",
      pluginArgs = {},
      special = {
        ['"ffi.load"'] = "require"
      },
      unicodeName = false,
      version = "Lua 5.4"
    },
    semantic = {
      annotation = true,
      enable = true,
      keyword = false,
      variable = true
    },
    signatureHelp = {
      enable = true
    },
    spell = {
      dict = {}
    },
    telemetry = {
      enable = true
    },
    type = {
      castNumberToInteger = true,
      weakNilCheck = false,
      weakUnionCheck = false
    },
    typeFormat = {
      config = {}
    },
    window = {
      progressBar = true,
      statusBar = true
    },
    workspace = {
      checkThirdParty = true,
      ignoreDir = { ".vscode" },
      ignoreSubmodules = true,
      library = { "/usr/local/share/lua/", "/usr/local/lib/lua/", "?/?.so", "?.so", "/Users/frityet/Documents/libCraftOS/" },
      maxPreload = 5000,
      preloadFileSize = 500,
      supportScheme = { "file", "untitled", "git" },
      useGitIgnore = true,
      userThirdParty = {}
    }
  },
  ["editor.acceptSuggestionOnEnter"] = "on",
  ["editor.semanticHighlighting.enabled"] = true,
  ["files.associations"] = {
    ["*.asm"] = "nasm",
    ["*.h"] = "c",
    ["*.inc"] = "nasm",
    ["*.lua"] = "lua",
    ["*.mpp"] = "cpp",
    ["*.rockspec"] = "lua"
  },
  ["files.exclude"] = {
    ["**/.DS_Store"] = true,
    ["**/.git"] = true,
    ["**/.hg"] = true,
    ["**/.svn"] = true,
    ["**/CVS"] = true,
    ["**/Thumbs.db"] = true
  }
}
[17:01:27.442][info] [#0:script/provider/completion.lua:43]: Enable completion.
[17:01:27.544][info] [#0:script/library.lua:207]: Init builtin library at:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.566][info] [#0:script/plugin.lua:86]: plugin path:	/Users/frityet/Documents/LuaUITest
[17:01:27.567][warn] [#0:script/plugin.lua:101]: plugin not found:	/Users/frityet/Documents/LuaUITest
[17:01:27.567][info] [#0:script/library.lua:207]: Init builtin library at:	nil
[17:01:27.586][info] [#0:script/workspace/workspace.lua:305]: Preload start:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.589][info] [#0:script/workspace/workspace.lua:311]: Scan files at:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.589][info] [#0:script/workspace/workspace.lua:305]: Preload start:	<fallback>
[17:01:27.593][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/lib/lua
[17:01:27.599][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/share/lua
[17:01:27.599][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta/Lua%205.4%20en-us%20utf8
[17:01:27.600][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/lib/lua
[17:01:27.603][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/share/lua
[17:01:27.603][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta/LuaJIT%20en-us%20utf8
[17:01:27.606][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/Documents/libCraftOS
[17:01:27.610][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/Documents/libCraftOS
[17:01:28.438][info] [#0:script/workspace/workspace.lua:348]: Found 20 files at:	<fallback>
[17:01:28.439][info] [#0:script/workspace/loading.lua:153]: Load files from disk:	<fallback>
[17:01:28.439][info] [#0:script/workspace/workspace.lua:348]: Found 29 files at:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.439][info] [#0:script/workspace/loading.lua:153]: Load files from disk:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.888][info] [#0:script/workspace/loading.lua:165]: Loaded files takes [0.145] sec: <fallback>
[17:01:28.888][info] [#0:script/workspace/loading.lua:174]: Compile files takes [0.000] sec: <fallback>
[17:01:28.888][info] [#0:script/workspace/loading.lua:175]: Loaded finish:	<fallback>
[17:01:28.888][info] [#0:script/workspace/workspace.lua:350]: Preload finish at:	<fallback>
[17:01:28.902][info] [#0:script/workspace/loading.lua:165]: Loaded files takes [0.157] sec: file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/loading.lua:174]: Compile files takes [0.000] sec: file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/loading.lua:175]: Loaded finish:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/workspace.lua:350]: Preload finish at:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.921][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[35]
[17:01:28.921][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:01:28.953][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.029] sec.
[17:01:28.953][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.030] sec.
[17:01:39.060][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:01:39.066][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:02:14.451][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:14.456][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.005] sec.
[17:02:14.875][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:14.881][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:02:16.637][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:16.643][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.005] sec.
[17:02:18.242][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:18.248][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:05:49.714][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[15]
[17:05:49.715][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.001] sec.
[17:05:51.377][info] [#0:script/provider/diagnostic.lua:160]: clearDiagnostics	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/middleScript.lua
[17:05:56.820][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[15]
[17:05:56.820][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.001] sec.
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:65]: Lua Lsp startup, root: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:66]: ROOT:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:67]: LOGPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:68]: METAPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta
[17:01:26.979][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:69]: VERSION:	3.5.6
[17:01:27.012][info] [#0:script/service/service.lua:141]: 
========= Medical Examination Report =========
    --------------- Memory ---------------
        Total: 1.489 MB
        # 00 : 1.489 MB
        # 01 : 0.000 MB
        # 02 : 0.000 MB
        # 03 : 0.000 MB
        # 04 : 0.000 MB
    --------------- Coroutine ---------------
        Total:     0
        Running:   0
        Suspended: 0
        Normal:    0
        Dead:      0
    --------------- Cache ---------------
        Total: 1
        Dead:  0
    ---------------  RPC  ---------------
        Holdon:   0
        Waiting:  0
==============================================
[17:01:27.023][info] [#0:script/language.lua:137]: VSC language: en-us
[17:01:27.023][info] [#0:script/language.lua:138]: LS  language: en-us
[17:01:27.023][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.023][info] [#0:script/workspace/workspace.lua:42]: Log path: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/file_Users_frityet_Documents_LuaUITest.log

Frityet avatar Sep 17 '22 00:09 Frityet

Hello 👋

The server does not have definitions for ffi built-in currently. I also don't see any reference to definition files for ffi in your log file.

Without definition files, the server is unable to provide type checking, completion, hover, etc. for those undefined values.

carsakiller avatar Sep 17 '22 18:09 carsakiller

Definitions for the ffi module are included with the server, but they are not enabled unless using luajit. Your logs show this:

version = "Lua 5.4"

Try switching that to LuaJIT and let us know if that does the trick.

flrgh avatar Sep 17 '22 19:09 flrgh

Right, my bad, completely glossed over that 🥴

carsakiller avatar Sep 17 '22 19:09 carsakiller

Definitions for the ffi module are included with the server, but they are not enabled unless using luajit. Your logs show this:

version = "Lua 5.4"

Try switching that to LuaJIT and let us know if that does the trick.

It is, in the .luarc.json as shown in the first screenshot

Frityet avatar Sep 18 '22 00:09 Frityet

In my case, this can be simply solved by changing Lua Version in Preferences.

image

hikariyo avatar Sep 19 '22 04:09 hikariyo

In my case, this can be simply solved by changing Lua Version in Preferences.

image

I am using .luarc.json to do that

Frityet avatar Sep 20 '22 13:09 Frityet

@Frityet has your issue been resolved?

carsakiller avatar Nov 12 '22 07:11 carsakiller

What I'm seeing by looking at the logs is that the lua runtime version is defined in two different ways here. One is nested:

{
  "Lua": {
    "runtime": {
      "version": "...",
    }
  }
}

and one is not:

{
  "runtime.version": "..."
}

I don't use .luarc.json or the vscode plugin so I dunno how they are supposed to work with regards to settings management/serialization, but I'm pretty sure that's source of the problem here.

flrgh avatar Nov 15 '22 22:11 flrgh

@Frityet has your issue been resolved?

Sometimes it works, other times it doenst

Frityet avatar Nov 16 '22 05:11 Frityet

I think @flrgh might be onto something here. I was able to reproduce by doing the following:

.vscode/settings.json

"Lua.runtime.version": "Lua 5.4"

.luarc.json

{
    "runtime": { "version": "LuaJIT" }
}

test.lua

local ffi = require("ffi")

ffi is unknown... until I refresh the window, then it loads. Seems like when a change is detected in .luarc.json it isn't diagnosing the workspace correctly.

carsakiller avatar Nov 16 '22 06:11 carsakiller

ffi is unknown... until I refresh the window, then it loads. Seems like when a change is detected in .luarc.json it isn't diagnosing the workspace correctly.

ffi

I can not reproduce it.

sumneko avatar Nov 16 '22 06:11 sumneko

Now I am questioning everything 😵‍💫. I was able to reproduce it reliably:

  1. Start VS Code
  2. Change to Lua 5.4 in .luarc.json
  3. ffi is unknown
  4. Change to LuaJIT in .luarc.json
  5. ffi is unknown
  6. Reload VS Code
  7. ffi is known

Now I do it and it works perfectly. I also tried adding in another json file to see if that was messing with the file watching and it had no effect.

carsakiller avatar Nov 16 '22 07:11 carsakiller

@carsakiller Are you testing in multi-workspace?

sumneko avatar Nov 16 '22 07:11 sumneko

No, but I was on Ubuntu initially. Works in Windows as expected. Testing again in WSL results in the same unexpected behaviour, although add in another step of reloading VS Code in order for ffi to become unknown when it is already known??

Reporter is on macOS, so maybe this is a Unix issue with file watching? Going to jump into a very basic WSL workspace and watch the output of the extension...

carsakiller avatar Nov 16 '22 07:11 carsakiller

Hmm, I thought I remembered seeing a message in the Output window when a change was detected in .luarc.json but I think that is only when there is a syntax error in the file.

Not able to reproduce in a very simple WSL workspace. However, I am still able to reproduce in WSL when in a workspace with many unrelated TS/YAML/JSON files and some node_modules. That is hardly a normal use case, though. Maybe too many files for the language server... but I thought it would ignore all non-Lua files? ffiunknown

carsakiller avatar Nov 16 '22 07:11 carsakiller

Try wait few seconds after modification?

sumneko avatar Nov 16 '22 08:11 sumneko

The configuration files are behaving very weirdly. Setting the status bar state doesn't seem to work in .luarc.json, and setting it in settings.json is forcing ffi to be applied? 🥴

ffiunknown

carsakiller avatar Nov 16 '22 17:11 carsakiller

The configuration files are behaving very weirdly. Setting the status bar state doesn't seem to work in .luarc.json, and setting it in settings.json is forcing ffi to be applied? 🥴

Watching settings.json is provided by VSCode, watching .luarc.json is provided by this server. I will check the filewatching in WSL/Linux.

sumneko avatar Nov 17 '22 03:11 sumneko

The configuration files are behaving very weirdly. Setting the status bar state doesn't seem to work in .luarc.json, and setting it in settings.json is forcing ffi to be applied? 🥴

window.statusBar should be default to true, that means when your comment out all the settings, the status bar should be displayed. Can you check if there are other setting files in your workspace?

sumneko avatar Nov 29 '22 12:11 sumneko

The configuration files are behaving very weirdly. Setting the status bar state doesn't seem to work in .luarc.json, and setting it in settings.json is forcing ffi to be applied? 🥴

window.statusBar should be default to true, that means when your comment out all the settings, the status bar should be displayed. Can you check if there are other setting files in your workspace?

none

Frityet avatar Nov 30 '22 02:11 Frityet

Can you check if there are other setting files in your workspace?

My user settings disable the status bar, but .luarc.json should overwrite it, no?

carsakiller avatar Nov 30 '22 05:11 carsakiller

If the problem persists, please provide your operation description and corresponding log

sumneko avatar Mar 08 '23 12:03 sumneko