-
Notifications
You must be signed in to change notification settings - Fork 326
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add changelog for the latest ocaml-lsp release (#2593)
Co-authored-by: Christine Rose <[email protected]>
- Loading branch information
1 parent
92fc20c
commit 02b1134
Showing
1 changed file
with
87 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
--- | ||
title: OCaml-LSP 1.18.0 | ||
tags: [ocaml-lsp, platform] | ||
changelog: | | ||
## Features | ||
- Introduce a configuration option to control Dune diagnostics. The option is called `duneDiganostics`, and it may be set to `{ enable: false }` to disable diagnostics. (ocaml/ocaml-lsp#1221) | ||
- Support folding of `ifthenelse` expressions (ocaml/ocaml-lsp#1031) | ||
- Improve hover behavior (ocaml/ocaml-lsp#1245) | ||
Hovers are no longer displayed on useless parse tree nodes such as keywords, comments, etc. | ||
Multiline hovers are now filtered away. | ||
Display expanded PPXs in the hover window. | ||
- Improve document symbols (ocaml/ocaml-lsp#1247) | ||
Use the parse tree instead of the typed tree. This means that document | ||
symbols will work even if the source code doesn't type check. | ||
Include symbols at arbitrary depth. | ||
Differentiate functions / types / variants / etc. | ||
This now includes PPXs like `let%expect_test` or `let%bench` in the outline. | ||
- Introduce a `destruct-line` code action. This is an improved version of the | ||
old `destruct` code action. (ocaml/ocaml-lsp#1283) | ||
- Improve signature inference to only include types for elements that were | ||
absent from the signature. Previously, all signature items would always be | ||
inserted. (ocaml/ocaml-lsp#1289) | ||
- Add an `update-signature` code action to update the types of elements that | ||
were already present in the signature (ocaml/ocaml-lsp#1289) | ||
- Add custom | ||
[`ocamllsp/merlinCallCompatible`](https://github.com/ocaml/ocaml-lsp/blob/e165f6a3962c356adc7364b9ca71788e93489dd0/ocaml-lsp-server/docs/ocamllsp/merlinCallCompatible-spec.md) | ||
request (ocaml/ocaml-lsp#1265) | ||
- Add custom [`ocamllsp/typeEnclosing`](https://github.com/ocaml/ocaml-lsp/blob/109801e56f2060caf4487427bede28b824f4f1fe/ocaml-lsp-server/docs/ocamllsp/typeEnclosing-spec.md) request (ocaml/ocaml-lsp#1304) | ||
## Fixes | ||
- Detect document kind by looking at Merlin's `suffixes` config. | ||
This enables more LSP features for non-`.ml/.mli` files. Though it still | ||
depends on Merlin's support. (ocaml/ocaml-lsp#1237) | ||
- Correctly accept the `--clientProcessId` flag. (ocaml/ocaml-lsp#1242) | ||
- Disable automatic completion and signature help inside comments (ocaml/ocaml-lsp#1246) | ||
- Includes a new optional/configurable option to toggle syntax documentation. If | ||
toggled on, allows display of syntax documentation on hover tooltips. Can be | ||
controlled via environment variables and by GUI for VS code. (ocaml/ocaml-lsp#1218) | ||
- For completions on labels that the LSP gets from Merlin, take into account | ||
whether the prefix being completed starts with `~` or `?`. Change the label | ||
completions that start with `?` to start with `~` when the prefix being | ||
completed starts with `~`. (ocaml/ocaml-lsp#1277) | ||
- Fix document syncing (ocaml/ocaml-lsp#1278, ocaml/ocaml-lsp#1280, fixes ocaml/ocaml-lsp#1207) | ||
- Stop generating inlay hints on generated code (ocaml/ocaml-lsp#1290) | ||
- Fix parenthesising of function types in `SignatureHelp` (ocaml/ocaml-lsp#1296) | ||
- Fix syntax documentation rendering (ocaml/ocaml-lsp#1318) | ||
--- | ||
|
||
We are pleased to announce the release of OCaml LSP 1.18.0. This version comes with a lot of fixes and new features. | ||
|
||
Notable features that are included in this release are: | ||
- Improved hover behavior with less noisy hovers on some parse tree nodes such as keywords, comments, etc., along with support for hovering over PPX annotations and preview the generated code. | ||
- Some additional custom queries, particularly `TypeEnclosing` | ||
- Folding `ifthenelse` expressions | ||
- A new configuration option to control Dune diagnostics | ||
- Improved document symbols | ||
|
||
...and many fixes to a handful of issues. | ||
|
||
Feedback is very much welcomed on the the [Discuss Announcement](https://discuss.ocaml.org/t/ann-ocaml-lsp-1-18-0/14952) post and do not hesistate to report issues in the [issue tracker](https://github.com/ocaml/ocaml-lsp/issues). |