The Dune team is pleased to announce the release of Dune 3.9.0. It comes with
many new features, including:
- a new
dune showcommand to display various pieces of information. - some fixes in the dialect support that will make it easier to work with Dream’s eml files
- a new
(build_if)toggle in the(test)stanza which will help packaging nonportable tests and benchmarks.
Added
-
Include the time it takes to read/write state files when
--trace-fileis
enabled (#7960, @rgrinberg) -
Include source tree scans in the traces produced by
--trace-file(#7937,
@rgrinberg) -
Add
--alloption todune rpc statusto show all Dune RPC servers running.
(#8011, fix #7902, @Alizter) -
Add additional metadata to the traces provided by
--trace-filewhenever
--trace-extendedis passed (#7778, @rleshchinskiy) -
$ dune describeis now a command group, so arguments to subcommands must be
passed after subcommand itself. (#7919, @Alizter) -
Add
dune showcommand group which is an alias ofdune describe. (#7946,
@Alizter) -
Add
dune show envcommand and makedune printenvan alias of it. (#7985,
@Alizter) -
Add commands
dune show targetsanddune show aliasesthat display all the
available targets and aliases in a given directory respectively. (#7770,
grants #265, @Alizter) -
Extensions used in
(dialect)can contain periods (e.g.,cppo.ml). (#7782,
fixes #7777, @nojb) -
The
interfaceandimplementationfields of a(dialect)are now optional
(#7757, @gpetiot) -
Add
(build_if)to the(test)stanza. When it evaluates to false, the
executable is not built. (#7899, fixes #6938, @emillon) -
Allow
(include_subdirs qualified)to be used when libraries define a
(modules ...)field (#7797, fixes #7597, @anmonteiro) -
Allow multiple globs in library’s
(stdlib (internal_modules ..))
(@anmonteiro, #7878)
Changed
-
Do not re-run OCaml syntax files on every iteration of the watch mode. This
is too memory consuming. (#7894, fix #6900, @rgrinberg) -
Attach melange rules to the default alias (#7926, @haochenx)
-
Compute digests and manage sandboxes in background threads (#7947,
@rgrinberg)
Fixed
-
Validate file extension for
$ dune ocaml top-module. (#8005, fixes #8004,
@3Rafal) -
Cinaps: The promotion rules for cinaps would only offer one file at a time no
matter how many promotions were available. Now we offer all the promotions at
once (#7901, @rgrinberg) -
Add necessary parentheses in generated opam constraints (#7682, fixes #3431,
@Lucccyo)
Removed
-
Remove some compatibility code for old version of dune that generated
.merlinfiles. Now dune will never remove.merlinfiles automatically
(#7562) -
In opam constraints, reject
(and)and(or)with no arguments at parse
time (#7730, @emillon)