From 249fd6285792b5c11410b98aaaeca2fafaa8ecab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=80=E8=90=8C=E5=B0=8F=E6=B1=90?= <sumneko@hotmail.com> Date: Wed, 26 Apr 2023 14:21:01 +0800 Subject: [PATCH] 3.6.19 --- .vscode/settings.json | 3 +- README.md | 37 +++++-------- changelog.md | 15 +++++ package.json | 112 ++++++++++++++++++++++++++++++++++++- package.nls.json | 6 +- package.nls.pt-br.json | 6 +- package.nls.zh-cn.json | 6 +- package.nls.zh-tw.json | 6 +- package/build.lua | 2 +- server | 2 +- setting/schema-pt-br.json | 114 +++++++++++++++++++++++++++++++++++++- setting/schema-zh-cn.json | 114 +++++++++++++++++++++++++++++++++++++- setting/schema-zh-tw.json | 114 +++++++++++++++++++++++++++++++++++++- setting/schema.json | 114 +++++++++++++++++++++++++++++++++++++- 14 files changed, 611 insertions(+), 40 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index d611641..d58da98 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,5 +2,6 @@ "Lua.runtime.version": "Lua 5.4", "Lua.workspace.library": { "server/script-beta": true - } + }, + "Lua.workspace.checkThirdParty": false } diff --git a/README.md b/README.md index db6c8d3..14ef9e8 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ The Lua language server provides various language features for Lua to make devel ## Features +- ⚙️ Supports `Lua 5.4`, `Lua 5.3`, `Lua 5.2`, `Lua 5.1`, and `LuaJIT` - 📄 Over 20 supported [annotations](https://github.com/LuaLS/lua-language-server/wiki/Annotations) for documenting your code - ↪ Go to definition - 🦺 Dynamic [type checking](https://github.com/LuaLS/lua-language-server/wiki/Type-Checking) @@ -28,29 +29,29 @@ The Lua language server provides various language features for Lua to make devel - 📖 [Documentation Generation](https://github.com/LuaLS/lua-language-server/wiki/Export-Documentation) ## Install - -The language server can easily be installed for use in VS Code, but it can also be used by other clients using the command line. +The language server can be installed for use in Visual Studio Code, NeoVim, and any [other clients](https://microsoft.github.io/language-server-protocol/implementors/tools/) that support the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/). The language server can be configured using a [configuration file](https://github.com/LuaLS/lua-language-server/wiki/Configuration-File). For a more detailed intro, check out the [getting started page in the wiki](https://github.com/LuaLS/lua-language-server/wiki/Getting-Started). ### Visual Studio Code [](https://marketplace.visualstudio.com/items?itemName=sumneko.lua) The language server and Visual Studio Code client can be installed from [the VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=sumneko.lua). - +### NeoVim +[](https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#lua_ls) + +View the installation instructions for NeoVim in the [nvim-lspconfig repo](https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#lua_ls). + +For a guide to getting started from scratch using Mason, read [Heiker's guide](https://dev.to/vonheikemen/getting-started-with-neovims-native-lsp-client-in-the-year-of-2022-the-easy-way-bp3). ### Command Line [](https://github.com/LuaLS/lua-language-server/wiki/Getting-Started#command-line) -Check the [wiki for a guide](https://github.com/LuaLS/lua-language-server/wiki/Getting-Started#command-line) to install the language server for use on the command line. This allows the language server to be used with NeoVim and [other clients](https://microsoft.github.io/language-server-protocol/implementors/tools/) that follow the [language server protocol](https://microsoft.github.io/language-server-protocol/overviews/lsp/overview/). +Check the [wiki for a guide](https://github.com/LuaLS/lua-language-server/wiki/Getting-Started#command-line) to install the language server for use on the command line. This allows the language server to be used with [other clients](https://microsoft.github.io/language-server-protocol/implementors/tools/) that follow the [language server protocol](https://microsoft.github.io/language-server-protocol/overviews/lsp/overview/). -## Supported Lua Versions -| Version | Supported | -| :-----: | :------------: | -| Lua 5.1 | ![✅][checkmark] | -| Lua 5.2 | ![✅][checkmark] | -| Lua 5.3 | ![✅][checkmark] | -| Lua 5.4 | ![✅][checkmark] | -| LuaJIT | ![✅][checkmark] | +### Community Install Methods +The install methods below are maintained by community members. + +[asdf plugin](https://github.com/bellini666/asdf-lua-language-server) ## Links - [Changelog](https://github.com/LuaLS/lua-language-server/blob/master/changelog.md) @@ -82,15 +83,6 @@ Are you able to [provide a translation](https://github.com/LuaLS/lua-language-se Thank you to [all contributors of translations](https://github.com/LuaLS/lua-language-server/commits/master/locale)! -## Configuration -Configuration of the server can be done in a number of ways, which are explained more in-depth in the [wiki](https://github.com/LuaLS/lua-language-server/wiki/Configuration-File). - -### Visual Studio Code -You can use the [settings editor](https://code.visualstudio.com/docs/getstarted/settings#_settings-editor) or edit the [raw JSON file](https://code.visualstudio.com/docs/getstarted/settings#_settingsjson). - -### Other -See the [configuration file wiki page](https://github.com/LuaLS/lua-language-server/wiki/Configuration-File). - ## Privacy The language server had **opt-in** telemetry that collected usage data and sent it to the development team to help improve the extension. Read our [privacy policy](https://github.com/LuaLS/lua-language-server/wiki/Home#privacy) to learn more. Telemetry was removed in `v3.6.5` and is no longer part of the language server. @@ -116,6 +108,3 @@ Software that the language server (or the development of it) uses: * [json.lua](https://github.com/actboy168/json.lua) * [EmmyLuaCodeStyle](https://github.com/CppCXY/EmmyLuaCodeStyle) * [inspect.lua](https://github.com/kikito/inspect.lua) - - -[checkmark]: https://user-images.githubusercontent.com/61925890/183228083-d3aa4eca-30c7-4b9f-aaab-26ce3d8a14fb.png diff --git a/changelog.md b/changelog.md index 84815b7..0a01507 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,20 @@ # changelog +## 3.6.19 +`2023-4-26` +* `FIX` commandline parameter `checklevel` may not work +* `FIX` [#2036] +* `FIX` [#2037] +* `FIX` [#2056] +* `FIX` [#2077] +* `FIX` [#2081] + +[#2036]: https://github.com/LuaLS/lua-language-server/issues/2036 +[#2037]: https://github.com/LuaLS/lua-language-server/issues/2037 +[#2056]: https://github.com/LuaLS/lua-language-server/issues/2056 +[#2077]: https://github.com/LuaLS/lua-language-server/issues/2077 +[#2081]: https://github.com/LuaLS/lua-language-server/issues/2081 + ## 3.6.18 `2023-3-23` * `FIX` [#1943] diff --git a/package.json b/package.json index 081be7e..920598e 100644 --- a/package.json +++ b/package.json @@ -177,7 +177,9 @@ "err-nonstandard-symbol", "err-then-as-do", "exp-in-action", + "global-element", "global-in-nil-env", + "incomplete-signature-doc", "index-in-func-name", "invisible", "jump-local-scope", @@ -222,6 +224,7 @@ "miss-sep-in-table", "miss-space-between", "miss-symbol", + "missing-global-doc", "missing-parameter", "missing-return", "missing-return-value", @@ -337,6 +340,17 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "%config.diagnostics.conventions%", + "enum": [ + "Any", + "Opened", + "None", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "%config.diagnostics.duplicate%", @@ -481,6 +495,18 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "%config.diagnostics.conventions%", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "%config.diagnostics.duplicate%", @@ -890,6 +916,19 @@ ], "type": "string" }, + "global-element": { + "default": "None", + "description": "%config.diagnostics.global-element%", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Any", "description": "%config.diagnostics.global-in-nil-env%", @@ -903,6 +942,19 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "None", + "description": "%config.diagnostics.incomplete-signature-doc%", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "invisible": { "default": "Any", "description": "%config.diagnostics.invisible%", @@ -929,6 +981,19 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "None", + "description": "%config.diagnostics.missing-global-doc%", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "missing-parameter": { "default": "Any", "description": "%config.diagnostics.missing-parameter%", @@ -1654,6 +1719,21 @@ ], "type": "string" }, + "global-element": { + "default": "Warning", + "description": "%config.diagnostics.global-element%", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Warning", "description": "%config.diagnostics.global-in-nil-env%", @@ -1669,6 +1749,21 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "Warning", + "description": "%config.diagnostics.incomplete-signature-doc%", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "invisible": { "default": "Warning", "description": "%config.diagnostics.invisible%", @@ -1699,6 +1794,21 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "Warning", + "description": "%config.diagnostics.missing-global-doc%", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "missing-parameter": { "default": "Warning", "description": "%config.diagnostics.missing-parameter%", @@ -3070,5 +3180,5 @@ "sponsor": { "url": "https://github.com/LuaLS/lua-language-server/issues/484" }, - "version": "3.6.18" + "version": "3.6.19" } diff --git a/package.nls.json b/package.nls.json index d91ebd5..b17d8bb 100644 --- a/package.nls.json +++ b/package.nls.json @@ -46,6 +46,7 @@ "config.diagnostics.code-after-break": "Enable diagnostics for code placed after a break statement in a loop.", "config.diagnostics.codestyle": "* codestyle-check\n* spell-check", "config.diagnostics.codestyle-check": "Enable diagnostics for incorrectly styled lines.", + "config.diagnostics.conventions": "* global-element", "config.diagnostics.count-down-loop": "Enable diagnostics for `for` loops which will never reach their max/limit because the loop is incrementing instead of decrementing.", "config.diagnostics.deprecated": "Enable diagnostics to highlight deprecated API.", "config.diagnostics.different-requires": "Enable diagnostics for files which are required by two different paths.", @@ -62,6 +63,7 @@ "config.diagnostics.empty-block": "Enable empty code block diagnostics.", "config.diagnostics.enable": "Enable diagnostics.", "config.diagnostics.global": "* global-in-nil-env\n* lowercase-global\n* undefined-env-child\n* undefined-global", + "config.diagnostics.global-element": "Enable diagnostics to warn about global elements.", "config.diagnostics.global-in-nil-env": "Enable cannot use global variables ( `_ENV` is set to `nil`) diagnostics.", "config.diagnostics.globals": "Defined global variables.", "config.diagnostics.groupFileStatus": "Modify the diagnostic needed file status in a group.\n\n* Opened: only diagnose opened files\n* Any: diagnose all files\n* None: disable this diagnostic\n\n`Fallback` means that diagnostics in this group are controlled by `diagnostics.neededFileStatus` separately.\nOther settings will override individual settings without end of `!`.\n", @@ -70,13 +72,15 @@ "config.diagnostics.ignoredFiles.Disable": "These files are not diagnosed.", "config.diagnostics.ignoredFiles.Enable": "Always diagnose these files.", "config.diagnostics.ignoredFiles.Opened": "Only when these files are opened will it be diagnosed.", + "config.diagnostics.incomplete-signature-doc": "Incomplete @param or @return annotations for functions.", "config.diagnostics.invisible": "Enable diagnostics for accesses to fields which are invisible.", "config.diagnostics.libraryFiles": "How to diagnose files loaded via `Lua.workspace.library`.", "config.diagnostics.libraryFiles.Disable": "These files are not diagnosed.", "config.diagnostics.libraryFiles.Enable": "Always diagnose these files.", "config.diagnostics.libraryFiles.Opened": "Only when these files are opened will it be diagnosed.", "config.diagnostics.lowercase-global": "Enable lowercase global variable definition diagnostics.", - "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.missing-global-doc": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", "config.diagnostics.missing-parameter": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", "config.diagnostics.missing-return": "Enable diagnostics for functions with return annotations which have no return statement.", "config.diagnostics.missing-return-value": "Enable diagnostics for return statements without values although the containing function declares returns.", diff --git a/package.nls.pt-br.json b/package.nls.pt-br.json index 9613e1a..cbbb5dd 100644 --- a/package.nls.pt-br.json +++ b/package.nls.pt-br.json @@ -46,6 +46,7 @@ "config.diagnostics.code-after-break": "Enable diagnostics for code placed after a break statement in a loop.", "config.diagnostics.codestyle": "* codestyle-check\n* spell-check", "config.diagnostics.codestyle-check": "Enable diagnostics for incorrectly styled lines.", + "config.diagnostics.conventions": "* global-element", "config.diagnostics.count-down-loop": "Enable diagnostics for `for` loops which will never reach their max/limit because the loop is incrementing instead of decrementing.", "config.diagnostics.deprecated": "Enable diagnostics to highlight deprecated API.", "config.diagnostics.different-requires": "Enable diagnostics for files which are required by two different paths.", @@ -62,6 +63,7 @@ "config.diagnostics.empty-block": "空代码块", "config.diagnostics.enable": "Enable diagnostics.", "config.diagnostics.global": "* global-in-nil-env\n* lowercase-global\n* undefined-env-child\n* undefined-global", + "config.diagnostics.global-element": "Enable diagnostics to warn about global elements.", "config.diagnostics.global-in-nil-env": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", "config.diagnostics.globals": "Defined global variables.", "config.diagnostics.groupFileStatus": "Modify the diagnostic needed file status in a group.\n\n* Opened: only diagnose opened files\n* Any: diagnose all files\n* None: disable this diagnostic\n\n`Fallback` means that diagnostics in this group are controlled by `diagnostics.neededFileStatus` separately.\nOther settings will override individual settings without end of `!`.\n", @@ -70,13 +72,15 @@ "config.diagnostics.ignoredFiles.Disable": "These files are not diagnosed.", "config.diagnostics.ignoredFiles.Enable": "Always diagnose these files.", "config.diagnostics.ignoredFiles.Opened": "Only when these files are opened will it be diagnosed.", + "config.diagnostics.incomplete-signature-doc": "Incomplete @param or @return annotations for functions.", "config.diagnostics.invisible": "Enable diagnostics for accesses to fields which are invisible.", "config.diagnostics.libraryFiles": "How to diagnose files loaded via `Lua.workspace.library`.", "config.diagnostics.libraryFiles.Disable": "These files are not diagnosed.", "config.diagnostics.libraryFiles.Enable": "Always diagnose these files.", "config.diagnostics.libraryFiles.Opened": "Only when these files are opened will it be diagnosed.", "config.diagnostics.lowercase-global": "首字母小写的全局变量定义", - "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.missing-global-doc": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", "config.diagnostics.missing-parameter": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", "config.diagnostics.missing-return": "Enable diagnostics for functions with return annotations which have no return statement.", "config.diagnostics.missing-return-value": "Enable diagnostics for return statements without values although the containing function declares returns.", diff --git a/package.nls.zh-cn.json b/package.nls.zh-cn.json index dc97eea..7f2ce38 100644 --- a/package.nls.zh-cn.json +++ b/package.nls.zh-cn.json @@ -46,6 +46,7 @@ "config.diagnostics.code-after-break": "Enable diagnostics for code placed after a break statement in a loop.", "config.diagnostics.codestyle": "* codestyle-check\n* spell-check", "config.diagnostics.codestyle-check": "Enable diagnostics for incorrectly styled lines.", + "config.diagnostics.conventions": "* global-element", "config.diagnostics.count-down-loop": "Enable diagnostics for `for` loops which will never reach their max/limit because the loop is incrementing instead of decrementing.", "config.diagnostics.deprecated": "Enable diagnostics to highlight deprecated API.", "config.diagnostics.different-requires": "Enable diagnostics for files which are required by two different paths.", @@ -62,6 +63,7 @@ "config.diagnostics.empty-block": "空代码块", "config.diagnostics.enable": "启用诊断。", "config.diagnostics.global": "* global-in-nil-env\n* lowercase-global\n* undefined-env-child\n* undefined-global", + "config.diagnostics.global-element": "Enable diagnostics to warn about global elements.", "config.diagnostics.global-in-nil-env": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", "config.diagnostics.globals": "已定义的全局变量。", "config.diagnostics.groupFileStatus": "批量修改一个组中的文件状态。\n\n* Opened: 只诊断打开的文件\n* Any: 诊断任何文件\n* None: 禁用此诊断\n\n设置为 `Fallback` 意味着组中的诊断由 `diagnostics.neededFileStatus` 单独设置。\n其他设置将覆盖单独设置,但是不会覆盖以 `!` 结尾的设置。\n", @@ -70,13 +72,15 @@ "config.diagnostics.ignoredFiles.Disable": "不诊断这些文件。", "config.diagnostics.ignoredFiles.Enable": "总是诊断这些文件。", "config.diagnostics.ignoredFiles.Opened": "只有打开这些文件时才会诊断。", + "config.diagnostics.incomplete-signature-doc": "Incomplete @param or @return annotations for functions.", "config.diagnostics.invisible": "Enable diagnostics for accesses to fields which are invisible.", "config.diagnostics.libraryFiles": "如何诊断通过 `Lua.workspace.library` 加载的文件。", "config.diagnostics.libraryFiles.Disable": "不诊断这些文件。", "config.diagnostics.libraryFiles.Enable": "总是诊断这些文件。", "config.diagnostics.libraryFiles.Opened": "只有打开这些文件时才会诊断。", "config.diagnostics.lowercase-global": "首字母小写的全局变量定义", - "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.missing-global-doc": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", "config.diagnostics.missing-parameter": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", "config.diagnostics.missing-return": "Enable diagnostics for functions with return annotations which have no return statement.", "config.diagnostics.missing-return-value": "Enable diagnostics for return statements without values although the containing function declares returns.", diff --git a/package.nls.zh-tw.json b/package.nls.zh-tw.json index 762e661..6af689b 100644 --- a/package.nls.zh-tw.json +++ b/package.nls.zh-tw.json @@ -46,6 +46,7 @@ "config.diagnostics.code-after-break": "Enable diagnostics for code placed after a break statement in a loop.", "config.diagnostics.codestyle": "* codestyle-check\n* spell-check", "config.diagnostics.codestyle-check": "Enable diagnostics for incorrectly styled lines.", + "config.diagnostics.conventions": "* global-element", "config.diagnostics.count-down-loop": "Enable diagnostics for `for` loops which will never reach their max/limit because the loop is incrementing instead of decrementing.", "config.diagnostics.deprecated": "Enable diagnostics to highlight deprecated API.", "config.diagnostics.different-requires": "Enable diagnostics for files which are required by two different paths.", @@ -62,6 +63,7 @@ "config.diagnostics.empty-block": "空程式碼區塊", "config.diagnostics.enable": "啟用診斷。", "config.diagnostics.global": "* global-in-nil-env\n* lowercase-global\n* undefined-env-child\n* undefined-global", + "config.diagnostics.global-element": "Enable diagnostics to warn about global elements.", "config.diagnostics.global-in-nil-env": "不能使用全域變數( `_ENV` 被設定為 `nil`)", "config.diagnostics.globals": "已定義的全域變數。", "config.diagnostics.groupFileStatus": "批量修改一個組中的檔案狀態。\n\n* Opened: 只診斷打開的檔案\n* Any: 診斷所有檔案\n* None: 停用此診斷\n\n設定為 `Fallback` 意味著組中的診斷由 `diagnostics.neededFileStatus` 單獨設定。\n其他設定將覆蓋單獨設定,但是不會覆蓋以 `!` 結尾的設定。\n", @@ -70,13 +72,15 @@ "config.diagnostics.ignoredFiles.Disable": "不診斷這些檔案。", "config.diagnostics.ignoredFiles.Enable": "總是診斷這些檔案。", "config.diagnostics.ignoredFiles.Opened": "只有打開這些檔案時才會診斷。", + "config.diagnostics.incomplete-signature-doc": "Incomplete @param or @return annotations for functions.", "config.diagnostics.invisible": "Enable diagnostics for accesses to fields which are invisible.", "config.diagnostics.libraryFiles": "如何診斷透過 `Lua.workspace.library` 載入的檔案。", "config.diagnostics.libraryFiles.Disable": "不診斷這些檔案。", "config.diagnostics.libraryFiles.Enable": "總是診斷這些檔案。", "config.diagnostics.libraryFiles.Opened": "只有打開這些檔案時才會診斷。", "config.diagnostics.lowercase-global": "首字母小寫的全域變數定義", - "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.luadoc": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "config.diagnostics.missing-global-doc": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", "config.diagnostics.missing-parameter": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", "config.diagnostics.missing-return": "Enable diagnostics for functions with return annotations which have no return statement.", "config.diagnostics.missing-return-value": "Enable diagnostics for return statements without values although the containing function declares returns.", diff --git a/package/build.lua b/package/build.lua index 1a227e8..de4a508 100644 --- a/package/build.lua +++ b/package/build.lua @@ -1,6 +1,6 @@ local json = require 'json-beautify' -local VERSION = "3.6.18" +local VERSION = "3.6.19" local package = require 'package.package' local fsu = require 'fs-utility' diff --git a/server b/server index f3ef989..19906a9 160000 --- a/server +++ b/server @@ -1 +1 @@ -Subproject commit f3ef9893f2a16e8ddcd2efe15190c793d0448ae5 +Subproject commit 19906a977c517b1e6edfd3ada60e20b2f9179e43 diff --git a/setting/schema-pt-br.json b/setting/schema-pt-br.json index 7b9d9f2..5d82f03 100644 --- a/setting/schema-pt-br.json +++ b/setting/schema-pt-br.json @@ -235,7 +235,9 @@ "err-nonstandard-symbol", "err-then-as-do", "exp-in-action", + "global-element", "global-in-nil-env", + "incomplete-signature-doc", "index-in-func-name", "invisible", "jump-local-scope", @@ -280,6 +282,7 @@ "miss-sep-in-table", "miss-space-between", "miss-symbol", + "missing-global-doc", "missing-parameter", "missing-return", "missing-return-value", @@ -395,6 +398,17 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Any", + "Opened", + "None", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -419,7 +433,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Any", "Opened", @@ -539,6 +553,18 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -565,7 +591,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Error", "Warning", @@ -948,6 +974,19 @@ ], "type": "string" }, + "global-element": { + "default": "None", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Any", "description": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", @@ -961,6 +1000,19 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "None", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "invisible": { "default": "Any", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -987,6 +1039,19 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "None", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "missing-parameter": { "default": "Any", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", @@ -1712,6 +1777,21 @@ ], "type": "string" }, + "global-element": { + "default": "Warning", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Warning", "description": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", @@ -1727,6 +1807,21 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "Warning", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "invisible": { "default": "Warning", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -1757,6 +1852,21 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "Warning", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "missing-parameter": { "default": "Warning", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", diff --git a/setting/schema-zh-cn.json b/setting/schema-zh-cn.json index 4c5f4ba..e6707d7 100644 --- a/setting/schema-zh-cn.json +++ b/setting/schema-zh-cn.json @@ -235,7 +235,9 @@ "err-nonstandard-symbol", "err-then-as-do", "exp-in-action", + "global-element", "global-in-nil-env", + "incomplete-signature-doc", "index-in-func-name", "invisible", "jump-local-scope", @@ -280,6 +282,7 @@ "miss-sep-in-table", "miss-space-between", "miss-symbol", + "missing-global-doc", "missing-parameter", "missing-return", "missing-return-value", @@ -395,6 +398,17 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Any", + "Opened", + "None", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -419,7 +433,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Any", "Opened", @@ -539,6 +553,18 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -565,7 +591,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Error", "Warning", @@ -948,6 +974,19 @@ ], "type": "string" }, + "global-element": { + "default": "None", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Any", "description": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", @@ -961,6 +1000,19 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "None", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "invisible": { "default": "Any", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -987,6 +1039,19 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "None", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "missing-parameter": { "default": "Any", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", @@ -1712,6 +1777,21 @@ ], "type": "string" }, + "global-element": { + "default": "Warning", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Warning", "description": "不能使用全局变量( `_ENV` 被设置为了 `nil`)", @@ -1727,6 +1807,21 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "Warning", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "invisible": { "default": "Warning", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -1757,6 +1852,21 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "Warning", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "missing-parameter": { "default": "Warning", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", diff --git a/setting/schema-zh-tw.json b/setting/schema-zh-tw.json index 278214d..26e85f6 100644 --- a/setting/schema-zh-tw.json +++ b/setting/schema-zh-tw.json @@ -235,7 +235,9 @@ "err-nonstandard-symbol", "err-then-as-do", "exp-in-action", + "global-element", "global-in-nil-env", + "incomplete-signature-doc", "index-in-func-name", "invisible", "jump-local-scope", @@ -280,6 +282,7 @@ "miss-sep-in-table", "miss-space-between", "miss-symbol", + "missing-global-doc", "missing-parameter", "missing-return", "missing-return-value", @@ -395,6 +398,17 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Any", + "Opened", + "None", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -419,7 +433,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Any", "Opened", @@ -539,6 +553,18 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -565,7 +591,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Error", "Warning", @@ -948,6 +974,19 @@ ], "type": "string" }, + "global-element": { + "default": "None", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Any", "description": "不能使用全域變數( `_ENV` 被設定為 `nil`)", @@ -961,6 +1000,19 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "None", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "invisible": { "default": "Any", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -987,6 +1039,19 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "None", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "missing-parameter": { "default": "Any", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", @@ -1712,6 +1777,21 @@ ], "type": "string" }, + "global-element": { + "default": "Warning", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Warning", "description": "不能使用全域變數( `_ENV` 被設定為 `nil`)", @@ -1727,6 +1807,21 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "Warning", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "invisible": { "default": "Warning", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -1757,6 +1852,21 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "Warning", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "missing-parameter": { "default": "Warning", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", diff --git a/setting/schema.json b/setting/schema.json index 75ca47f..bd0f953 100644 --- a/setting/schema.json +++ b/setting/schema.json @@ -235,7 +235,9 @@ "err-nonstandard-symbol", "err-then-as-do", "exp-in-action", + "global-element", "global-in-nil-env", + "incomplete-signature-doc", "index-in-func-name", "invisible", "jump-local-scope", @@ -280,6 +282,7 @@ "miss-sep-in-table", "miss-space-between", "miss-symbol", + "missing-global-doc", "missing-parameter", "missing-return", "missing-return-value", @@ -395,6 +398,17 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Any", + "Opened", + "None", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -419,7 +433,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Any", "Opened", @@ -539,6 +553,18 @@ ], "type": "string" }, + "conventions": { + "default": "Fallback", + "description": "* global-element", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Fallback" + ], + "type": "string" + }, "duplicate": { "default": "Fallback", "description": "* duplicate-index\n* duplicate-set-field", @@ -565,7 +591,7 @@ }, "luadoc": { "default": "Fallback", - "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", + "description": "* circle-doc-class\n* doc-field-no-class\n* duplicate-doc-alias\n* duplicate-doc-field\n* duplicate-doc-param\n* incomplete-signature-doc\n* missing-global-doc\n* undefined-doc-class\n* undefined-doc-name\n* undefined-doc-param\n* unknown-cast-variable\n* unknown-diag-code\n* unknown-operator", "enum": [ "Error", "Warning", @@ -948,6 +974,19 @@ ], "type": "string" }, + "global-element": { + "default": "None", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Any", "description": "Enable cannot use global variables ( `_ENV` is set to `nil`) diagnostics.", @@ -961,6 +1000,19 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "None", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "invisible": { "default": "Any", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -987,6 +1039,19 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "None", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Any", + "Opened", + "None", + "Any!", + "Opened!", + "None!" + ], + "type": "string" + }, "missing-parameter": { "default": "Any", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", @@ -1712,6 +1777,21 @@ ], "type": "string" }, + "global-element": { + "default": "Warning", + "description": "Enable diagnostics to warn about global elements.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "global-in-nil-env": { "default": "Warning", "description": "Enable cannot use global variables ( `_ENV` is set to `nil`) diagnostics.", @@ -1727,6 +1807,21 @@ ], "type": "string" }, + "incomplete-signature-doc": { + "default": "Warning", + "description": "Incomplete @param or @return annotations for functions.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "invisible": { "default": "Warning", "description": "Enable diagnostics for accesses to fields which are invisible.", @@ -1757,6 +1852,21 @@ ], "type": "string" }, + "missing-global-doc": { + "default": "Warning", + "description": "Missing annotations for globals! Global functions must have a comment and annotations for all parameters and return values.", + "enum": [ + "Error", + "Warning", + "Information", + "Hint", + "Error!", + "Warning!", + "Information!", + "Hint!" + ], + "type": "string" + }, "missing-parameter": { "default": "Warning", "description": "Enable diagnostics for function calls where the number of arguments is less than the number of annotated function parameters.", -- GitLab