Files
neovim/runtime/doc
Sean Dewar cc87dda31a fix(lsp): do not assume client capability exists in watchfiles check (#24550)
PR #23689 assumes `client.config.capabilities.workspace.didChangeWatchedFiles`
exists when checking `dynamicRegistration`, but thats's true only if it was
passed to `vim.lsp.start{_client}`.

This caused #23806 (still an issue in v0.9.1; needs manual backport), but #23681
fixed it by defaulting `config.capabilities` to `make_client_capabilities` if
not passed to `vim.lsp.start{_client}`.

However, the bug resurfaces on HEAD if you provide a non-nil `capabilities` to
`vim.lsp.start{_client}` with missing fields (e.g: not made via
`make_client_capabilities`).

From what I see, the spec says such missing fields should be interpreted as an
absence of the capability (including those indicated by missing sub-fields):
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#clientCapabilities

Also, suggest `vim.empty_dict()` for an empty dict in
`:h vim.lsp.start_client()` (`{[vim.type_idx]=vim.types.dictionary}`
no longer works anyway, probably since the cjson switch).
2023-08-04 08:10:54 +02:00
..
2023-08-03 14:01:53 +02:00
2023-07-25 05:07:13 -07:00
2023-06-25 17:14:28 +02:00
2023-04-17 15:46:24 +08:00
2023-06-25 17:14:28 +02:00
2023-04-04 19:07:33 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2021-09-10 08:48:27 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-06-27 10:21:27 -07:00
2023-06-19 02:24:44 -07:00
2023-05-13 21:33:22 +02:00
2023-08-03 08:35:10 -07:00
2023-08-03 08:35:10 -07:00
2023-08-03 08:35:10 -07:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2022-10-14 08:01:13 -07:00
2023-07-25 05:07:13 -07:00
2023-07-17 17:09:16 +01:00
2023-08-03 14:01:53 +02:00
2022-12-11 18:41:26 -08:00
2023-06-25 17:14:28 +02:00
2018-10-29 09:55:07 +01:00
2023-06-25 17:14:28 +02:00
2015-08-15 15:25:30 -03:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-04-23 15:22:55 +02:00
2023-01-01 15:05:13 +01:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-06-11 12:40:22 +01:00
2023-04-04 19:07:33 +02:00
2023-07-25 05:07:13 -07:00
2022-09-26 17:43:23 +08:00
2023-06-26 11:29:12 +02:00
2023-08-03 08:35:10 -07:00
2023-07-25 05:07:13 -07:00
2023-07-25 05:07:13 -07:00
2023-06-11 12:40:22 +01:00
2023-05-15 09:38:32 +02:00
2023-04-23 15:22:55 +02:00
2023-04-11 19:10:36 +02:00
2023-01-03 10:07:43 +00:00
2023-06-25 17:14:28 +02:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-07-25 05:07:13 -07:00
2023-06-25 17:14:28 +02:00
2021-05-01 22:29:03 -04:00
2023-06-25 17:14:28 +02:00
2018-10-29 10:01:44 +01:00
2021-04-29 09:27:19 -04:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-06-25 17:14:28 +02:00
2021-04-29 20:42:16 -04:00
2023-06-26 11:29:12 +02:00
2023-07-25 05:07:13 -07:00
2021-04-27 09:21:34 -04:00
2023-06-19 08:40:33 -07:00
2023-01-03 10:07:43 +00:00
2023-08-03 14:01:53 +02:00
2023-06-25 17:14:28 +02:00
2023-08-03 08:35:10 -07:00
2023-05-13 21:33:22 +02:00
2023-06-25 17:14:28 +02:00