Skip to content

3.2.0

Compare
Choose a tag to compare
@rgrinberg rgrinberg released this 17 May 05:03
· 4104 commits to main since this release

CHANGES:

  • Fixed dune describe workspace --with-deps so that it correctly
    handles Reason files, as well as files any other dialect. (#5701, @esope)

  • Disable alerts when compiling code in vendored directories (#5683,
    @NathanReb)

  • Fixed dune describe --with-deps, that crashed when some
    preprocessing was required in a dune file using per_module.
    (#5682, fixes #5680, @esope)

  • Add $ dune describe pp to print the preprocssed ast of sources. (#5615,
    fixes #4470, @cannorin)

  • Report dune file evaluation errors concurrently. In the same way we report
    build errors. (#5655, @rgrinberg)

  • Watch mode now default to clearing the terminal on rebuild (#5636, fixes,
    #5216, @rgrinberg)

  • The output of jobs that finished but were cancelled is now omitted. (#5631,
    fixes #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 (#5516, fixes #3978 and #5455, @bobot)

  • --terminal-persistence=clear-on-rebuild will no longer destroy scrollback
    on some terminals (#5646, @rgrinberg)

  • Add a fmt command as a shortcut of dune build @fmt --auto-promote (#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 (#5627, #5645, #5652, #5656, #5672, #5691, #5722, fixes #5331,
    @rgrinberg)

  • Improve metrics for cram tests. Include test names in the event and add a
    category for cram tests (#5626, @rgrinberg)

  • Allow specifying multiple licenses in project file (#5579, fixes #5574,
    @liyishuai)

  • Match glob_files only against files in external directories (#5614, fixes
    #5540, @rgrinberg)

  • Add pid's to chrome trace output (#5617, @rgrinberg)

  • Fix race when creating local cache directory (#5613, fixes #5461, @rgrinberg)

  • Add not to boolean expressions (#5610, fix #5503, @rgrinberg)

  • Fix relative dependencies outside the workspace (#4035, fixes #5572, @bobot)

  • Allow to specify --prefix via the environment variable
    DUNE_INSTALL_PREFIX (#5589, @vapourismo)

  • Dune-site.plugin: add support for archive(native|byte, plugin) used in the
    wild before findlib documented plugin(native|byte) in 2015 (#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. (#5619, fixes #5616, @nojb)

  • Support (binaries) in (env) in dune-workspace files (#5560, fix #5555,
    @emillon)

  • (mdx) stanza: add support for (locks). (#5628, fixes #5489, @emillon)

  • (mdx) stanza: support including files in different directories using relative
    paths, and provide better error messages when paths are invalid (#5703, #5704,
    fixes #5596, @emillon)

  • Fix ctypes rules for external lib names which aren't valid ocaml names
    (#5667, fixes #5511, @Khady)