Releases: ocaml/ocaml-lsp
1.20.1-4.14
CHANGES:
Fixes
- Deactivate the
jump
code actions by default. Clients can enable them with
themerlinJumpCodeActions
configuration option. Alternatively a custom
request is provided for ad hoc use of the feature. (#1411)
1.20.1
1.20.0-4.14
CHANGES:
Features
-
Add custom
ocamllsp/typeSearch
request (#1369) -
Make MerlinJump code action configurable (#1376)
-
Add custom
ocamllsp/jump
request (#1374)
Fixes
1.20.0
CHANGES:
Features
-
Add custom
ocamllsp/typeSearch
request (#1369) -
Make MerlinJump code action configurable (#1376)
-
Add custom
ocamllsp/jump
request (#1374)
Fixes
1.19.0
1.18.0
CHANGES:
Features
-
Introduce a configuration option to control dune diagnostics. The option is
calledduneDiganostics
and it may be set to{ enable: false }
to disable
diagnostics. (#1221) -
Support folding of
ifthenelse
expressions (#1031) -
Improve hover behavior (#1245)
Hovers are no longer displaye on useless parsetree nodes such as keywords,
comments, etc.Multiline hovers are now filtered away.
Display expanded ppx's in the hover window.
-
Improve document symbols (#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
orlet%bench
in the outline. -
Introduce a
destruct-line
code action. This is an improved version of the
olddestruct
code action. (#1283) -
Improve signature inference to only include types for elements that were
absent from the signature. Previously, all signature items would always be
inserted. (#1289) -
Add an
update-signature
code action to update the types of elements that
were already present in the signature (#1289) -
Add custom
ocamllsp/merlinCallCompatible
request (#1265) -
Add custom
ocamllsp/typeEnclosing
request (#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. (#1237) -
Correctly accept the
--clientProcessId
flag. (#1242) -
Disable automatic completion and signature help inside comments (#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. (#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~
. (#1277) -
Stop generating inlay hints on generated code (#1290)
-
Fix parenthesizing of function types in
SignatureHelp
(#1296) -
Fix syntax documentation rendering (#1318)
1.17.0
CHANGES:
Fixes
-
Fix missing super & subscripts in markdown documentation. (#1170)
-
Do not invoke dune at all if
--fallback-read-dot-merlin
flag is on. (#1173) -
Fix semantic highlighting of infix operators that contain '.'. (#1186)
-
Disable highlighting unit as an enum member to fix comment highlighting bug. (#1185)
-
Improve type-on-hover and type-annotate efficiency by only formatting the type
of the first enclosing. (#1191, #1196) -
Fix the encoding of URI's to match how vscode does it (#1197)
-
Fix parsing of completion prefixes (#1181)
Features
-
Compatibility with Odoc 2.3.0, with support for the introduced syntax: tables,
and "codeblock output" (#1184) -
Display text of references in doc strings (#1166)
-
Add mark/remove unused actions for open, types, for loop indexes, modules,
match cases, rec, and constructors (#1141) -
Offer auto-completion for the keyword
in
(#1217)
1.16.2
1.16.1
1.16.0-4.14
CHANGES:
Fixes
-
Disable code lens by default. The support can be re-enabled by explicitly
setting it in the configuration. (#1134) -
Fix initilization of
ocamlformat-rpc
in some edge cases when ocamlformat is
initialized concurrently (#1132) -
Kill unnecessary
$ dune ocaml-merlin
with SIGTERM rather than SIGKILL
(#1124) -
Refactor comment parsing to use
odoc-parser
andcmarkit
instead of
octavius
andomd
(#1088)This allows users who migrated to omd 2.X to install ocaml-lsp-server in the
same opam switch.We also slightly improved markdown generation support and fixed a couple in
the generation of inline heading and module types. -
Allow opening documents that were already open. This is a workaround for
neovim's lsp client (#1067) -
Disable type annotation for functions (#1054)
-
Respect codeActionLiteralSupport capability (#1046)
-
Fix a document syncing issue when utf-16 is the position encoding (#1004)
-
Disable "Type-annotate" action for code that is already annotated.
(#1037), fixes
#1036 -
Fix semantic highlighting of long identifiers when using preprocessors
(#1049, fixes
#1034) -
Fix the type of DocumentSelector in cram document registration (#1068)
-
Accept the
--clientProcessId
command line argument. (#1074) -
Accept
--port
as a synonym for--socket
. (#1075) -
Fix connecting to dune rpc on Windows. (#1080)