3

As title. From nvim -v it only shows about the version of LuaJIT:

NVIM v0.7.0-dev+714-g3aff3d634
Build type: Release
LuaJIT 2.1.0-beta3
1
  • 1
    You can also try :lua print(vim.lua_version)
    – filbranden
    Dec 12, 2021 at 4:10

1 Answer 1

5

According to nanotee/nvim-lua-guide, the version of Lua that Neovim embeds is LuaJIT 2.1.0, which maintains compatibility with Lua 5.1.

NeoVim is also likely to stick with Lua 5.1. See this entry from their FAQ:

Why Lua 5.1 instead of Lua 5.3+?

Lua 5.1 is a different language than 5.3. The Lua org makes breaking changes with every new version, so even if we switched (not upgraded, but switched) to 5.3 we gain nothing when they create the next new language in 5.4, 5.5, etc. And we would lose LuaJit, which is far more valuable than Lua 5.3+.

Lua 5.1 is a complete language. To "upgrade" it, add libraries, not syntax. Nvim itself already is a pretty good "stdlib" for Lua, and we will continue to grow and enhance it. Changing the rules of Lua gains nothing in this context.

3
  • 1
    The LSP is complaining that one of the Lua syntax I used is deprecated in 5.3. If I understand it right I should not care about the warning, since I cannot upgrade the Lua built-in to Neovim? Dec 12, 2021 at 4:25
  • 1
    Yes, I guess that's the case... You might want to consider opening an Issue in NeoVim about it, since they seem to have made this decision to stick with a specific version, they might have a recommendation on how to deal with deprecation warnings and such...
    – filbranden
    Dec 12, 2021 at 4:31
  • 1
    @job_start you may be able to configure whatever LSP it is to tell it which version of Lua you are using
    – D. Ben Knoble
    Dec 14, 2021 at 20:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.