[new release] xdg, stdune, ordering, ocamlc-loc, fiber, dyn, dune, dune-site, dune-rpc, dune-rpc-lwt, dune-private-libs, dune-glob, dune-configurator, dune-build-info, dune-action-plugin and chrome-trace (3.2.0)
CHANGES:
- Fixed ``dune describe workspace --with-deps`` so that it correctly
handles Reason files, as well as files any other dialect. (ocaml/dune#5701, @esope)
- Disable alerts when compiling code in vendored directories (ocaml/dune#5683,
@NathanReb)
- Fixed ``dune describe --with-deps``, that crashed when some
preprocessing was required in a dune file using ``per_module``.
(ocaml/dune#5682, fixes ocaml/dune#5680, @esope)
- Add `$ dune describe pp` to print the preprocssed ast of sources. (ocaml/dune#5615,
fixes ocaml/dune#4470, @cannorin)
- Report dune file evaluation errors concurrently. In the same way we report
build errors. (ocaml/dune#5655, @rgrinberg)
- Watch mode now default to clearing the terminal on rebuild (ocaml/dune#5636, fixes,
ocaml/dune#5216, @rgrinberg)
- The output of jobs that finished but were cancelled is now omitted. (ocaml/dune#5631,
fixes ocaml/dune#5482, @rgrinberg)
- Allows to configure all the default destination directories with `./configure`
(adds `bin`, `sbin`, `data`, `libexec`). Use `OPAM_SWITCH_PREFIX` instead of
calling the `opam` binaries in `dune install`. Fix handling of multiple
`libdir` in `./configure` for handling `/usr/lib/ocaml/` and
`/usr/local/lib/ocaml`. In `dune install` forbid relative directories in
`libdir`, `docdir` and others specific directory setting because their handling
was inconsistent (ocaml/dune#5516, fixes ocaml/dune#3978 and ocaml/dune#5455, @bobot)
- `--terminal-persistence=clear-on-rebuild` will no longer destroy scrollback
on some terminals (ocaml/dune#5646, @rgrinberg)
- Add a fmt command as a shortcut of `dune build @fmt --auto-promote` (ocaml/dune#5574,
@tmattio)
- Watch mode now tracks copied external files, external directories for
dependencies, dune files in OCaml syntax, files used by `include` stanzas,
dune-project, opam files, libraries builtin with compiler, and foreign
sources (ocaml/dune#5627, ocaml/dune#5645, ocaml/dune#5652, ocaml/dune#5656, ocaml/dune#5672, ocaml/dune#5691, ocaml/dune#5722, fixes ocaml/dune#5331,
@rgrinberg)
- Improve metrics for cram tests. Include test names in the event and add a
category for cram tests (ocaml/dune#5626, @rgrinberg)
- Allow specifying multiple licenses in project file (ocaml/dune#5579, fixes ocaml/dune#5574,
@liyishuai)
- Match `glob_files` only against files in external directories (ocaml/dune#5614, fixes
ocaml/dune#5540, @rgrinberg)
- Add pid's to chrome trace output (ocaml/dune#5617, @rgrinberg)
- Fix race when creating local cache directory (ocaml/dune#5613, fixes ocaml/dune#5461, @rgrinberg)
- Add `not` to boolean expressions (ocaml/dune#5610, fix ocaml/dune#5503, @rgrinberg)
- Fix relative dependencies outside the workspace (ocaml/dune#4035, fixes ocaml/dune#5572, @bobot)
- Allow to specify `--prefix` via the environment variable
`DUNE_INSTALL_PREFIX` (ocaml/dune#5589, @vapourismo)
- Dune-site.plugin: add support for `archive(native|byte, plugin)` used in the
wild before findlib documented `plugin(native|byte)` in 2015 (ocaml/dune#5518, @bobot)
- Fix a bug where Dune would not correctly interpret `META` files in alternative
layout (ie when the META file is named `META.$pkg`). The `Llvm` bindings were
affected by this issue. (ocaml/dune#5619, fixes ocaml/dune#5616, @nojb)
- Support `(binaries)` in `(env)` in dune-workspace files (ocaml/dune#5560, fix ocaml/dune#5555,
@emillon)
- (mdx) stanza: add support for (locks). (ocaml/dune#5628, fixes ocaml/dune#5489, @emillon)
- (mdx) stanza: support including files in different directories using relative
paths, and provide better error messages when paths are invalid (ocaml/dune#5703, ocaml/dune#5704,
fixes ocaml/dune#5596, @emillon)
- Fix ctypes rules for external lib names which aren't valid ocaml names
(ocaml/dune#5667, fixes ocaml/dune#5511, @Khady)