Age | Commit message (Collapse) | Author |
|
Not all clients implement the client capability: `configuration`, which
was added in version 3.6.0 of the Language Server Protocol. The LSP
Specification also states:
> A missing property should be interpreted as an absence of the capability.
Above claims are possible to verify by reading the mentioned spec. at:
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_configuration
Hence this change modifies behaviour to only call the method on clients
explicitly announcing to support it.
Most affected test-cases are updated to work with this commit, however
one test gets disabled. That disabled test suite is in serious need of
added documentation explaining its design. The few comments which are
there seem highly unsufficient, and since they are written in simplified
chinese they practically are of no use to most potential contributors.
This commit makes the lua-language-server work with vim-ale.
|
|
|
|
|
|
|
|
|
|
|
|
This reverts commit c59bd7f4765a8016dfbbf3c8c9879387ca86acfd.
|
|
This reverts commit 719d7c2ba63c5a0207604a40cdf0b78a02b0eb78.
|
|
This reverts commit a47b432b13f1d4bfa415185bb305b3672bc22d7d.
|
|
This reverts commit e00877e09dd86208f18dd11d6aab444301ce8b03.
|
|
|
|
Throttle calls to await.delay() in some diagnostics
|
|
|
|
|
|
These 5 diagnostics cause ~70% of all calls to await.delay() by
diagnostics which in turn is about ~20% of the total runtime of
diagnostics.
Out of these diagnostics only assign-type-mismatch commonly exceeds
runtimes of 100ms (worst observed in my dataset was 7 seconds) and
even then it still attempts to call await.delay() over 1500 times
per second, so throttling by a factor of 15 is still fine.
|
|
|
|
|
|
|
|
Disable await.delay() when running --check
|
|
This makes --check about 25% faster.
|
|
|
|
This reverts commit 739449db06a48ba511b0044934f98e9bfe40e30d.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Add setting to find globals using regex
|
|
Add multi-process support to --check.
|
|
Links like [mySymbol](lua://mySymbol) in a comment will now be resolved to a URI pointing to the actual file where `mySymbol` can be found.
|
|
|
|
|
|
Set the parameter --num_threads to the desired number of worker tasks to
potentially speed up --check.
This works by spawning multiple sub-proccesses that each run the desired
diagnostics on a subset of the workspace. Each process will still load
and compile the entire workspace, so there are diminishing returns and
memory usage increases linearly with the number of threads.
Overall this can reduce the runtime by about ~50% for my projects,
example results:
Workspace 1, dominated by a few large/complex files
1 thread: 49.7 seconds
2 threads: 31.8 seconds
4 threads: 23.6 seconds
8 threads: 24.4 seconds
Workspace 2, large number of small-ish files
1 thread: 96.0 seconds
2 threads: 76.5 seconds
4 threads: 49.5 seconds
8 threads: 38.1 seconds
|
|
Improve checkIsUndefinedGlobal to avoid unecessary checks and tables
|
|
Output more details while running --check
|
|
This enables writing partial output if you press ctrl-c after seeing
the first errors show up.
|
|
|
|
If I explicitly click on "Diagnose workspace" I would expect it to show
me *all* the diagnostics similar to how --check in a CI would check my
project.
This makes it easier for users to check their whole workspace after
making changes to some library or core function that potentially affects
a large number of files that are usually only checked once opened.
|
|
|
|
|
|
|
|
|
|
|
|
|