Skip to content

Releases: ocaml/merlin

4.17-501

26 Sep 16:36
Compare
Choose a tag to compare

CHANGES:

Thu Sep 26 18:48:42 CEST 2024

  • merlin binary
    • A new WRAPPING_PREFIX configuration directive that can be used to tell Merlin
      what to append to the current unit name in the presence of wrapping (#1788)
    • Add -unboxed-types and -no-unboxed-types as ocaml ignored flags (#1795, fixes #1794)
    • destruct: Refinement in the presence of optional arguments (#1800 #1807, fixes #1770)
    • Implement new expand-node command for expanding PPX annotations (#1745)
    • Implement new inlay-hints command for adding hints on a sourcetree (#1812)
    • Add signature-help command (#1720)
    • Implement new search-by-type command for searching values by types (#1828)
    • Fix dot-merlin-reader ignoring SOURCE_ROOT and STDLIB directives
      (#1839, #1803)
  • editor modes
    • vim: fix python-3.12 syntax warnings in merlin.py (#1798)
    • vim: Dead code / doc removal for previously deleted MerlinPhrase command (#1804)
    • emacs: Improve the way that result of polarity search is displayed (#1814)
    • emacs: Add merlin-search-by-type, merlin-search-by-polarity and change the
      behaviour of merlin-search to switch between by-type or by-polarity
      depending on the query (#1828)

4.17-414

26 Sep 16:41
Compare
Choose a tag to compare

CHANGES:

Thu Sep 26 18:48:42 CEST 2024

  • merlin binary
    • A new WRAPPING_PREFIX configuration directive that can be used to tell Merlin
      what to append to the current unit name in the presence of wrapping (#1788)
    • Add -unboxed-types and -no-unboxed-types as ocaml ignored flags (#1795, fixes #1794)
    • destruct: Refinement in the presence of optional arguments (#1800 #1807, fixes #1770)
    • Implement new expand-node command for expanding PPX annotations (#1745)
    • Implement new inlay-hints command for adding hints on a sourcetree (#1812)
    • Add signature-help command (#1720)
    • Implement new search-by-type command for searching values by types (#1828)
    • Fix dot-merlin-reader ignoring SOURCE_ROOT and STDLIB directives
      (#1839, #1803)
  • editor modes
    • vim: fix python-3.12 syntax warnings in merlin.py (#1798)
    • vim: Dead code / doc removal for previously deleted MerlinPhrase command (#1804)
    • emacs: Improve the way that result of polarity search is displayed (#1814)
    • emacs: Add merlin-search-by-type, merlin-search-by-polarity and change the
      behaviour of merlin-search to switch between by-type or by-polarity
      depending on the query (#1828)

5.1-502

18 Jun 09:33
ce00b5b
Compare
Choose a tag to compare

CHANGES:

Tue Jun 18 12:00:42 CEST 2024

  • merlin binary
    • Support project-wide occurrences queries using index files (#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.
    • 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 (#1776)
    • Perform incremental indexation of the buffer when typing. (#1777)
    • merlin-lib.commands: Add a find_command_opt`` alternative to find_command` that does not raise (#1778)
    • Prevent uid clashes by not returning PWO for defs located in the current
      interface file (#1781)
    • Reset uid counters when restoring the typer cache so that uids are stable
      across re-typing (#1779)
    • Improve the behavior on occurrences when the cursor is on a label /
      constructor declaration (#1785)
  • editor modes
    • emacs: add basic support for project-wide occurrences (#1766)
    • vim: add basic support for project-wide occurrences (#1767, @Julow)

4.16-501

10 Jun 16:04
9084463
Compare
Choose a tag to compare

CHANGES:

Mon Jun 10 17:35:42 CEST 2024

  • merlin binary
    • Addition of a merlin-lib.commands library which disassociates the
      execution of commands from the new_protocol, from the binary, allowing
      it to be invoked from other projects (#1758)
    • merlin-lib.commands: Add a find_command_opt alternative to
      find_command that does not raise (#1778)

4.16-414

10 Jun 15:41
16a1274
Compare
Choose a tag to compare

CHANGES:

Mon Jun 10 17:35:42 CEST 2024

  • merlin binary
    • Addition of a merlin-lib.commands library which disassociates the
      execution of commands from the new_protocol, from the binary, allowing
      it to be invoked from other projects (#1758)
    • merlin-lib.commands: Add a find_command_opt alternative to
      find_command that does not raise (#1778)

4.15-501

31 May 12:04
Compare
Choose a tag to compare

CHANGES:

May May 31 14:02:42 CET 2024

  • merlin binary
    • destruct: Removal of residual patterns (#1737, fixes #1560)
    • Do not erase fields' names when destructing punned record fields (#1734,
      fixes #1661)
    • Ignore SIGPIPE in the Merlin server process (#1746)
    • Fix lexing of quoted strings in comments (#1754, fixes #1753)
    • Improve cursor position detection in longidents (#1756)

4.15-414

31 May 12:10
Compare
Choose a tag to compare

CHANGES:

Fri May 31 14:02:42 CEST 2024

  • merlin binary
    • destruct: Removal of residual patterns (#1737, fixes #1560)
    • Do not erase fields' names when destructing punned record fields (#1734,
      fixes #1661)
    • Ignore SIGPIPE in the Merlin server process (#1746)
    • Fix lexing of quoted strings in comments (#1754, fixes #1753)
    • Improve cursor position detection in longidents (#1756)

5.0-502

17 May 17:59
Compare
Choose a tag to compare

CHANGES:

Fri May 17 19:59:42 CET 2024

  • merlin binary
    • Support for OCaml 5.2 (#1757)
    • destruct: Removal of residual patterns (#1737, fixes #1560)
    • Do not erase fields' names when destructing punned record fields (#1734,
      fixes #1661)
    • Ignore SIGPIPE in the Merlin server process (#1746)
    • Fix lexing of quoted strings in comments (#1754, fixes #1753)
    • Improve cursor position detection in longidents (#1756)
    • Addition of a merlin-lib.commands library which disassociates the
      execution of commands from the new_protocol, from the binary, allowing
      it to be invoked from other projects (#1758)
    • New occurrences backend: Don't index occurrences when merlin.hide
      attribute is present. (#1768)
    • Use the new uid_to_decl table in 5.2's cmt files to get documentation.
      (#1773)

4.14-502~preview2

16 Apr 15:17
Compare
Choose a tag to compare

CHANGES:

Fri Feb 16 17:31:42 CET 2024

  • merlin binary
    • Preliminary support for OCaml 5.2

4.14-501

22 Feb 12:22
Compare
Choose a tag to compare

CHANGES:

Thu Feb 22 14:00:42 CET 2024

  • merlin binary
    • Add a "heap_mbytes" field to Merlin server responses to report heap usage (#1717)
    • Add cache stats to telemetry (#1711)
    • Add new SyntaxDocument command to find information about the node under the cursor (#1706)
    • Fix FLG -pp ppx.exe -as-pp/-dump-ast use of invalid shell redirection when
      direct process launch on Windows. (#1723, fixes #1722)
    • Add a query_num field to the ocamlmerlin responses to detect server crashes (#1716)
    • Jump to cases within a match statement (#1726)
    • Jump to module-type (#1728, partially fixes #1656)
    • Exposes stable functions for configuration handling and pattern variable
      destruction. (#1730)
  • editor modes
    • vim: load merlin under the ocamlinterface and ocamllex filetypes (#1340)
    • Fix merlinpp not using binary file open (#1725, fixes #1724)