LuaLS processes the wrong LuaDoc for Penlight tablex.filter
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Riproduci la diagnostica in VS Code con LuaLS e l’addon Penlight, quindi esamina library/pl/tablex.lua intorno alla riga 545, in particolare le due definizioni di tablex.filter. Segui il modo in cui LuaLS risolve queste definizioni e verifica che venga selezionato l’overload generico, così che l’esempio non segnali più un argomento di funzione non valido.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
Which OS are you using?
Windows
What is the issue affecting?
Libraries
Expected Behaviour
local tablex = require("pl.tablex")
tablex.filter(
{},
function() end -- no linting error
)
Actual Behaviour
local tablex = require("pl.tablex")
tablex.filter(
{},
function() end -- Cannot assign `function` to parameter `"()"|"<"|"<="|"=="|">"...(+5)`. (...)
)
Reproduction steps
- Setup LuaLS and copy example code into a .lua file
- Install Penlight using the Addon Manager
Additional Notes
Here's an extract of the LuaDoc. LuaLS seems to always pick the second definition instead of the first one which has the annotations for using a generic function.
---@generic T, A
---@param t T[]
---@param pred fun(val: T, arg: A): any
---@param arg A
---@return T[]
---@nodiscard
function tablex.filter(t, pred, arg) end
---filter an array's values using a predicate function
---@generic T
---@param t T[] -- a list-like table
---@param pred pl.BoolBinOpString -- a boolean function
---@param arg any -- optional argument to be passed as second argument of the predicate
---@return T[]
---@nodiscard
function tablex.filter(t, pred, arg) end
Log File
I set --loglevel=trace and added the code to an empty file while having tail running on the log but there are no relevant details.
$ tail -f ./file_home_function_git_dragdown-modules.log
[13:59:35.741][debug][#0:script/vm/node.lua:490]: clearNodeCache
[13:59:35.741][trace][#0:script/files.lua:286]: Set text: untitled:Untitled-1 takes 0.00012299999999987 sec.
[13:59:35.741][trace][#0:script/files.lua:695]: Compile State: untitled:Untitled-1
[13:59:35.843][debug][#0:script/provider/provider.lua:1120]: textDocument/semanticTokens/range
[13:59:35.857][debug][#0:script/provider/diagnostic.lua:330]: publishDiagnostics untitled:Untitled-1 2
[13:59:40.272][debug][#0:script/vm/node.lua:490]: clearNodeCache
[13:59:40.273][trace][#0:script/files.lua:286]: Set text: untitled:Untitled-1 takes 0.00021399999999971 sec.
[13:59:40.373][trace][#0:script/files.lua:695]: Compile State: untitled:Untitled-1
[13:59:40.374][debug][#0:script/provider/provider.lua:1120]: textDocument/semanticTokens/range
[13:59:40.381][info] [#0:script/provider/diagnostic.lua:171]: clearDiagnostics untitled:Untitled-1
[13:59:47.118][debug][#0:script/vm/node.lua:490]: clearNodeCache
[13:59:47.118][trace][#0:script/files.lua:286]: Set text: untitled:Untitled-1 takes 0.00020199999999981 sec.
[13:59:47.219][trace][#0:script/files.lua:695]: Compile State: untitled:Untitled-1
[13:59:47.220][debug][#0:script/provider/provider.lua:1120]: textDocument/semanticTokens/range
[13:59:47.232][debug][#0:script/provider/diagnostic.lua:330]: publishDiagnostics untitled:Untitled-1 2
- Lingua principale
- Lua
- Stelle
- 4.4k
- Fork
- 442
- Merge medio
- 8g 9h
- PR unite (30g)
- 1
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di LuaLS/lua-language-server
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
LuaLS/lua-language-server#1776 ·
-
泛型for迭代器的类型推导漏掉了带__call的类 Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
LuaLS/lua-language-server#3463 · 5 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
LuaLS/lua-language-server#3461 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
LuaLS/lua-language-server#3460 · 1 commento · 1 reazione ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
LuaLS/lua-language-server#3459 · 1 reazione ·
Tutte le issue di LuaLS/lua-language-server
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
HenrikBengtsson/CBI-software#134 ·
-
Nmap
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
secondlife/slua#96 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100