Skip to content

3.5.0

Compare
Choose a tag to compare
@emillon emillon released this 19 Oct 13:58
· 3758 commits to main since this release
77c1e6f

CHANGES:

  • macOS: Handle unknown fsevents without crashing (#6217, @rgrinberg)

  • Enable file watching on MacOS SDK < 10.13. (#6218, @rgrinberg)

  • Sandbox running cinaps actions starting from cinaps 1.1 (#6176, @rgrinberg)

  • Add a runtime_deps field in the cinaps stanza to specify runtime
    dependencies for running the cinaps preprocessing action (#6175, @rgrinberg)

  • Shadow alias module Foo__ when building a library Foo (#6126, @rgrinberg)

  • Extend dune describe to include the root path of the workspace and the
    relative path to the build directory. (#6136, @reubenrowe)

  • Allow dune describe workspace to accept directories as arguments.
    The provided directories restrict the worskpace description to those
    directories. (#6107, fixes #3893, @esope)

  • Add a terminal persistence mode that attempts to clear the terminal history.
    It is enabled by setting terminal persistence to
    clear-on-rebuild-and-flush-history (#6065, @rgrinberg)

  • Disallow generating targets in sub direcories in inferred rules. The check to
    forbid this was accidentally done only for manually specified targets (#6031,
    @rgrinberg)

  • Do not ignore rules marked (promote (until-clean)) when
    --ignore-promoted-rules (or -p) is passed. (#6010, fixes #4401, @emillon)

  • Dune no longer considers .aux files as targets during Coq compilation. This
    means that .aux files are no longer cached. (#6024, fixes #6004, @Alizter)

  • Cinaps actions are now sandboxed by default (#6062, @rgrinberg)

  • Allow rules producing directory targets to be not sandboxed (#6056,
    @rgrinberg)

  • Introduce a dirs field in the install stanza to install entire
    directories (#5097, fixes #5059, @rgrinberg)

  • Menhir rules are now sandboxed by default (#6076, @rgrinberg)

  • Allow rules producing directory targets to create symlinks (#6077, fixes
    #5945, @rgrinberg)

  • Inline tests are now sandboxed by default (#6079, @rgrinberg)

  • Fix build-info version when used with flambda (#6089, fixes #6075, @jberdine)

  • Add an (include <file>) term to the include_dirs field for adding
    directories to the include paths sourced from a file. (#6058, fixes #3993,
    @gridbugs)

  • Support (extra_objects ...) field in (executable ...) and (library ...) stanzas (#6084, fixes #4129, @gridbugs)

  • Fix compilation of Dune under esy on Windows (#6109, fixes #6098, @nojb)

  • Improve error message when parsing several licenses in (license) (#6114,
    fixes #6103, @emillon)

  • odoc rules now about ODOC_SYNTAX and will rerun accordingly (#6010, fixes
    #1117, @emillon)

  • dune install: copy files in an atomic way (#6150, @emillon)

  • Add %{coq:...} macro for accessing data about the configuration about Coq.
    For instance %{coq:version} (#6049, @Alizter)

  • update vendored copy of cmdliner to 1.1.1. This improves the built-in
    documentation for command groups such as dune ocaml. (#6038, @emillon,
    #6169, @shonfeder)

  • The test suite for Coq now requires Coq >= 8.16 due to changes in the
    plugin loading mechanism upstream (which now uses Findlib).

  • Starting with Coq build language 0.6, theories can be built without importing
    Coq's standard library by including (stdlib no).
    (#6165 #6164, fixes #6163, @ejgallego @Alizter @LasseBlaauwbroek)

  • on macOS, sign executables produced by artifact substitution (#6137, #6231,
    fixes #5650, fixes #6226, @emillon)

  • Added an (aliases ...) field to the (rules ...) stanza which allows the
    specification of multiple aliases per rule (#6194, @Alizter)

  • The (coq.theory ...) stanza will now ensure that for each declared (plugin ...), the META file for it is built before calling coqdep. This enables
    the use of the new Findlib-based loading method in Coq 8.16; however as of
    Coq 8.16.0, Coq itself has some bugs preventing this to work yet. (#6167 ,
    workarounds #5767, @ejgallego)

  • Allow include statement in install stanza (#6139, fixes #256, @gridbugs)

  • Handle CSI n K code in ANSI escape codes from commands. (#6214, fixes #5528,
    @emillon)

  • Add a new experimental feature mode_specific_stubs that allows the
    specification of different flags and sources for foreign stubs depending on
    the build mode (#5649, @voodoos)