aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/net
Commit message (Collapse)AuthorAge
* fix(lua): enable param-type-mismatch diagnosticLewis Russell2026-09-28
| | | | | | | | | Problem: Argument type mismatches are excluded from EmmyLua checks. Solution: Correct runtime annotations and calls, document local checker workarounds, and enable the diagnostic. AI-assisted
* fix(lua): enable nil-safety diagnostics in runtime codeLewis Russell2026-09-25
| | | | | | | | | | | | Enable EmmyLua's need-check-nil diagnostic and resolve nullable values through more precise types, explicit invariants, and guards for missing runtime state. Keep analyzer-specific workarounds local and update the affected API documentation. Exclude the bundled re.lua from analysis so its nil-check warnings do not fail CI. AI-assisted
* fix(lua): add missing param annotations (#41911)Lewis Russell2026-09-15
|
* fix(lsp): stale client when rpc.connect fails #41792stenja2026-09-09
| | | | | | | | | | | | | | | | Problem: When vim.lsp.rpc.connect is used for an LSP and the connection fails (due to ECONNREFUSED, for example), the LSP client is left uninitialized. Subsequent calls to vim.lsp.start will reuse the uninitialized client, but no new connection will be attempted. Solution: When vim.lsp.rpc.connect encounters a connection error, terminate the client. This allows the user to do something in response to the failed connection in the on_exit callback, and also makes it so subsequent attempts to start the LSP will try to establish a new connection rather than using the previous uninitialized client. Co-authored-by: Jason Stenftenagel <jasonstenftenagel@gmail.com>
* build: replace LuaLS with EmmyLuaLewis Russell2026-09-07
| | | | | | | | | | | | | | | Problem: LuaLS struggles with the generics used in Nvim's runtime, requiring broad diagnostic suppressions. Indexing is also slow. Solution: Use EmmyLua for type checks in the build and CI. It offers more sophisticated type checking, substantially better support for generics, and much better flow analysis. Correct the affected annotations. Use `@internal`, supported directly by EmmyLua, instead of `@nodoc` for shared internal declarations, and support it in the help parser. AI-assisted
* fix(ssh): compare table length in the SSH config #41637Volodymyr Chernetskyi2026-09-03
| | | | | | | | | | | | | | | | | | Problem: `parse_ssh_config()` compares tables against a freshly allocated empty table. - In `parse_multiple_values()`, the guard which avoids flushing an empty accumulator never applies. Runs of separators and trailing whitespace push empty strings into the results, and `is_valid()` does not filter them. `Host alpha beta ` parses as `{ 'alpha', '', 'beta' }`. - In `parse_value()`, the condition reduces to `chr == '"' and quoted`. `quoted` starts false and only that branch sets it, so it can never become true: quotes are never recognised and are inserted literally, and the unterminated-quote check is unreachable. Solution: Compare `#val` instead. Add a test for repeated and trailing separators. AI-assisted
* refactor(net): parameterize transport logging #40022Yi Ming2026-06-02
|
* refactor: rename `vim.transport` to `vim.net.transport` #40021Yi Ming2026-05-28
|
* refactor(lsp): avoid using coroutine when parsing framesYi Ming2026-05-22
|
* refactor(lsp): message stream abstraction for message framingYi Ming2026-05-22
|
* refactor(lsp): move `vim.lsp._transport` to `vim.net._transport`Yi Ming2026-05-22
|
* feat(ssh): SSH configuration parser #35027Siddhant Agarwal2025-08-17