Merlin 5.1-502 for OCaml 5.2
We are pleased to announce the release of Merlin 5.1-502
. This is an important release that brings a lot of backend changes and a major
new feature: project-wide occurrences queries.
Try it by running dune build @ocaml-index
(since dune 3.16.0
) and performing a reference query!
More information can be found in the discuss announcement and the wiki.
See full changelog
- merlin binary
- Support project-wide occurrences queries using index files (ocaml/merlin#1766)
- The file format is described in library
Merlin_lib.index_format
- Two new configuration directives are introduced:
SOURCE_ROOT
that is used to resolve relative paths found in the indexes.INDEX
that is used to declare the list of index files Merlin should use when looking for occurrences.
- The file format is described in library
- A new
UNIT_NAME
configuration directive that can be used to tell Merlin the correct name of the current unit in the presence of wrapping (ocaml/merlin#1776) - Perform incremental indexation of the buffer when typing. (ocaml/merlin#1777)
merlin-lib.commands
: Add afind_command_opt
alternative tofind_command
that does not raise (ocaml/merlin#1778)- Prevent uid clashes by not returning PWO for defs located in the current interface file (ocaml/merlin#1781)
- Reset uid counters when restoring the typer cache so that uids are stable across re-typing (ocaml/merlin#1779)
- Improve the behavior on occurrences when the cursor is on a label / constructor declaration (ocaml/merlin#1785)
- Support project-wide occurrences queries using index files (ocaml/merlin#1766)
- editor modes
- emacs: add basic support for project-wide occurrences (ocaml/merlin#1766)
- vim: add basic support for project-wide occurrences (ocaml/merlin#1767, @Julow)