Tags: n-osborne/dune
Tags
Release 3.19.1 CHANGES: - Revert changes in `dune exec` behaviour introduced in 3.19.0. (ocaml#11879, fixes ocaml#11870, ocaml#11867 and ocaml#11881, @Alizter)
Release 3.19.0 CHANGES: - Fixed a bug that was causing cram tests attached to multiple aliases to be run multiple times. (ocaml#11547, @Alizter) - Fix: pass pkg-config (extra) args in all pkgconfig invocations. A missing --personality flag would result in pkgconf not finding libraries in some contexts. (ocaml#11619, @MisterDA) - Fix: Evaluate `enabled_if` when computing the stubs for stanzas such as `foreign_library` (ocaml#11707, @Alizter, @rgrinberg) - Fix $ dune describe pp for libraries in the presence of `(include_subdirs unqualified)` (ocaml#11729, fixes ocaml#10999, @rgrinberg) - Fix `$ dune subst` in sub directories of a git repository (ocaml#11760, fixes ocaml#11045, @Richard-Degenne) - Fix a crash involving `Path.drop_prefix` when using Melange on Windows (ocaml#11767, @nojb) - Added detection and warning for common typos in package dependency constraints (ocaml#11600, fixes ocaml#11575, @kemsguy7) - Added `(extra_objects)` field to `(foreign_library)` stanza with `(:include)` support. (ocaml#11683, @Alizter) - Allow build RPC messages to be handled by dune's RPC server in eager watch mode (ocaml#11622, @gridbugs) - Allow concurrent build with RPC server (ocaml#11712, @gridbugs)
Release 3.19.0~alpha0 CHANGES: - Fixed a bug that was causing cram tests attached to multiple aliases to be run multiple times. (ocaml#11547, @Alizter) - Fix: pass pkg-config (extra) args in all pkgconfig invocations. A missing --personality flag would result in pkgconf not finding libraries in some contexts. (ocaml#11619, @MisterDA) - Fix: Evaluate `enabled_if` when computing the stubs for stanzas such as `foreign_library` (ocaml#11707, @Alizter, @rgrinberg) - Fix $ dune describe pp for libraries in the presence of `(include_subdirs unqualified)` (ocaml#11729, fixes ocaml#10999, @rgrinberg) - Fix `$ dune subst` in sub directories of a git repository (ocaml#11760, fixes ocaml#11045, @Richard-Degenne) - Fix a crash involving `Path.drop_prefix` when using Melange on Windows (ocaml#11767, @nojb) - Added detection and warning for common typos in package dependency constraints (ocaml#11600, fixes ocaml#11575, @kemsguy7) - Added `(extra_objects)` field to `(foreign_library)` stanza with `(:include)` support. (ocaml#11683, @Alizter) - Allow build RPC messages to be handled by dune's RPC server in eager watch mode (ocaml#11622, @gridbugs) - Allow concurrent build with RPC server (ocaml#11712, @gridbugs)
Release 3.18.0 CHANGES: - Support HaikuOS: don't call `execve` since it's not allowed if other pthreads have been created. The fact that Haiku can't call `execve` from other threads than the principal thread of a process (a team in haiku jargon), is a discrepancy to POSIX and hence there is a [bug about it](https://dev.haiku-os.org/ticket/18665). (@Sylvain78, ocaml#10953) - Fix flag ordering in generated Merlin configurations (ocaml#11503, @voodoos, fixes ocaml/merlin#1900, reported by @vouillon) - Add `(format-dune-file <src> <dst>)` action. It provides a replacement to `dune format-dune-file` command. (ocaml#11166, @nojb) - Allow the `--prefix` flag when configuring dune with `ocaml configure.ml`. This allows to set the prefix just like `$ dune install --prefix`. (ocaml#11172, @rgrinberg) - Allow arguments starting with `+` in preprocessing definitions (starting with `(lang dune 3.18)`). (@amonteiro, ocaml#11234) - Support for opam `(maintenance_intent ...)` in dune-project (ocaml#11274, @art-w) - Validate opam `maintenance_intent` (ocaml#11308, @art-w) - Support `not` in package dependencies constraints (ocaml#11404, @art-w, reported by @hannesm) - Warn when failing to discover root due to reads failing. The previous behavior was to abort. (@KoviRobi, ocaml#11173) - Use shorter path for inline-tests artifacts. (@hhugo, ocaml#11307) - Allow dash in `dune init` project name (ocaml#11402, @art-w, reported by @saroupille) - On Windows, under heavy load, file delete operations can sometimes fail due to AV programs, etc. Guard against it by retrying the operation up to 30x with a 1s waiting gap (ocaml#11437, fixes ocaml#11425, @MSoegtropIMC) - Cache: we now only store the executable permission bit for files (ocaml#11541, fixes ocaml#11533, @ElectreAAS) - Display negative error codes on Windows in hex which is the more customary way to display `NTSTATUS` codes (ocaml#11504, @MisterDA)
Release 3.18.0~alpha0 CHANGES: - Support HaikuOS: don't call `execve` since it's not allowed if other pthreads have been created. The fact that Haiku can't call `execve` from other threads than the principal thread of a process (a team in haiku jargon), is a discrepancy to POSIX and hence there is a [bug about it](https://dev.haiku-os.org/ticket/18665). (@Sylvain78, ocaml#10953) - Fix flag ordering in generated Merlin configurations (ocaml#11503, @voodoos, fixes ocaml/merlin#1900, reported by @vouillon) - Add `(format-dune-file <src> <dst>)` action. It provides a replacement to `dune format-dune-file` command. (ocaml#11166, @nojb) - Allow the `--prefix` flag when configuring dune with `ocaml configure.ml`. This allows to set the prefix just like `$ dune install --prefix`. (ocaml#11172, @rgrinberg) - Allow arguments starting with `+` in preprocessing definitions (starting with `(lang dune 3.18)`). (@amonteiro, ocaml#11234) - Support for opam `(maintenance_intent ...)` in dune-project (ocaml#11274, @art-w) - Validate opam `maintenance_intent` (ocaml#11308, @art-w) - Support `not` in package dependencies constraints (ocaml#11404, @art-w, reported by @hannesm) - Warn when failing to discover root due to reads failing. The previous behavior was to abort. (@KoviRobi, ocaml#11173) - Use shorter path for inline-tests artifacts. (@hhugo, ocaml#11307) - Allow dash in `dune init` project name (ocaml#11402, @art-w, reported by @saroupille) - On Windows, under heavy load, file delete operations can sometimes fail due to AV programs, etc. Guard against it by retrying the operation up to 30x with a 1s waiting gap (ocaml#11437, fixes ocaml#11425, @MSoegtropIMC) - Cache: we now only store the executable permission bit for files (ocaml#11541, fixes ocaml#11533, @ElectreAAS) - Display negative error codes on Windows in hex which is the more customary way to display `NTSTATUS` codes (ocaml#11504, @MisterDA)
Release 3.17.2 CHANGES: - Fix a crash in the Melange rules that would prevent compiling public library implementations of virtual libraries. (@amonteiro, ocaml#11248) - Pass `melange.emit`'s `compile_flags` to the JS emission phase. (@amonteiro,
Release 3.17.1 CHANGES: - When a library declares `(no_dynlink)`, then the `.cmxs` file for it is no longer built. (ocaml#11176, @nojb) - Fix bug that could result in corrupted file copies by Dune, for example when using the `copy_files#` stanza or the `copy#` action. (@nojb, ocaml#11194, fixes ocaml#11193) - Remove useless error message when running `$ dune subst` in empty projects. (@rgrinberg, ocaml#11204, fixes ocaml#11200)
Release 3.17.0 CHANGES: - Show the context name for errors happening in non-default contexts. (ocaml#10414, fixes ocaml#10378, @jchavarri) - Correctly declare dependencies of indexes so that they are rebuilt when needed. (ocaml#10623, @voodoos) - Don't depend on coq-stdlib being installed when expanding variables of the `coq.version` family (ocaml#10631, fixes ocaml#10629, @gares) - Error out if no files are found when using `copy_files`. (ocaml#10649, @jchavarri) - Re_export dune-section private library in the dune-site library stanza, in order to avoid failure when generating and building sites modules with implicit_transitive_deps = false. (ocaml#10650, fixes ocaml#9661, @MA0100) - Expect test fixes: support multiple modes and fix dependencies when there is a custom runner (ocaml#10671, @vouillon) - In a `(library)` stanza with `(extra_objects)` and `(foreign_stubs)`, avoid double linking the extra object files in the final executable. (ocaml#10783, fixes ocaml#10785, @nojb) - Map `(re_export)` library dependencies to the `exports` field in `META` files, and vice-versa. This field was proposed in to https://discuss.ocaml.org/t/proposal-a-new-exports-field-in-findlib-meta-files/13947. The field is included in Dune-generated `META` files only when the Dune lang version is >= 3.17. (ocaml#10831, fixes ocaml#10830, @nojb) - Fix staged pps preprocessors on Windows (which were not working at all previously) (ocaml#10869, fixes ocaml#10867, @nojb) - Fix `dune describe` when an executable is disabled with `enabled_if`. (ocaml#10881, fixes ocaml#10779, @moyodiallo) - Fix an issue where C stubs would be rebuilt whenever the stderr of Dune was redirected. (ocaml#10883, fixes ocaml#10882, @nojb) - Fix the URL opened by the command `dune ocaml doc`. (ocaml#10897, @gridbugs) - Fix the file referred to in the error/warning message displayed due to the dune configuration version not supporting a particular configuration stanza in use. (ocaml#10923, @H-ANSEN) - Fix `enabled_if` when it uses `env` variable. (ocaml#10936, fixes ocaml#10905, @moyodiallo) - Fix exec -w for relative paths with --root argument (ocaml#10982, @gridbugs) - Do not ignore the `(locks ..)` field in the `test` and `tests` stanza (ocaml#11081, @rgrinberg) - Tolerate files without extension when generating merlin rules. (ocaml#11128, @anmonteiro) - Make Merlin/OCaml-LSP aware of "hidden" dependencies used by `(implicit_transitive_deps false)` via the `-H` compiler flag. (ocaml#10535, @voodoos) - Add support for the -H flag (introduced in OCaml compiler 5.2) in dune (requires lang versions 3.17). This adaptation gives the correct semantics for `(implicit_transitive_deps false)`. (ocaml#10644, fixes ocaml#9333, ocsigen/tyxml#274, ocaml#2733, ocaml#4963, @MA0100) - Add support for specifying Gitlab organization repositories in `source` stanzas (ocaml#10766, fixes ocaml#6723, @H-ANSEN) - New option to control jsoo sourcemap generation in env and executable stanza (ocaml#10777, fixes ocaml#10673, @hhugo) - One can now control jsoo compilation_mode inside an executable stanza (ocaml#10777, fixes ocaml#10673, @hhugo) - Add support for specifying default values of the `authors`, `maintainers`, and `license` stanzas of the `dune-project` file via the dune config file. Default values are set using the `(project_defaults)` stanza (ocaml#10835, @H-ANSEN) - Add names to source tree events in performance traces (ocaml#10884, @jchavarri) - Add `codeberg` as an option for defining project sources in dune-project files. For example, `(source (codeberg user/repo))`. (ocaml#10904, @nlordell) - `dune runtest` can now run individual tests with `dune runtest mytest.t` (ocaml#11041, @Alizter). - Wasm_of_ocaml support (ocaml#11093, @vouillon) - Add a `coqdep_flags` field to the `coq` field of the `env` stanza, and to the `coq.theory` stanza, allowing to configure `coqdep` flags. (ocaml#11094, @rlepigre) - Remove all remnants of the experimental `patch-back-source-tree`. (ocaml#10771, @rgrinberg) - Change the preset value for author and maintainer fields in the `dune-project` file to encourage including emails. (ocaml#10848, @punchagan) - Tweak the preset value for tags in the `dune-project` file to hint at topics not having a special meaning. (ocaml#10849, @punchagan) - Change some colors to improve readability in light-mode terminals (ocaml#10890, @gridbugs) - Forward the linkall flag to jsoo in whole program compilation as well (ocaml#10935, @hhugo) - Configurator uses `pkgconf` as pkg-config implementation when available and forwards it the `target` of `ocamlc -config`. (ocaml#10937, @pirbo) - Enable Dune cache by default. Add a new Dune cache setting `enabled-except-user-rules`, which enables the Dune cache, but excludes user-written rules from it. This is a conservative choice that can avoid breaking rules whose dependencies are not correctly specified. This is the current default. (ocaml#10944, ocaml#10710, @nojb, @ElectreAAS) - Do not add `dune` dependency in `dune-project` when creating projects with `dune init proj`. The Dune dependency is implicitely added when generating opam files (ocaml#11129, @Leonidas-from-XIV)
PreviousNext