Releases: ocaml/dune
2.4.0
CHANGES:
-
Add
mdx
extension and stanza version 0.1 (#3094, @NathanReb) -
Allow to make Odoc warnings fatal. This is configured from the
(env ...)
stanza. (#3029, @Julow) -
Fix separate compilation of JS when findlib is not installed. (#3177, @nojb)
-
Add a
dune describe
command to obtain the topology of a dune workspace, for
projects such as ROTOR. (#3128, @diml) -
Add
plugin
linking mode for executables and the(embed_in_plugin_libraries ...)
field. (#3141, @nojb) -
Dune will no longer build shared objects for stubs if
supports_shared_libraries
is false (#3225, fixes #3222, @rgrinberg) -
Fix a memory leak in the file-watching mode (
dune build -w
)
(#3220, @snowleopard and @aalekseyev)
2.3.1
CHANGES:
-
Fix versioning of artifact variables (eg %{cmxa:...}), which were introduced
in 2.0, not 1.11. (#3149, @nojb) -
Fix a bug introduced in 2.3.0 where dune insists on using
fswatch
on linux
(even wheninotifywait
is available). (#3162, @aalekseyev) -
Fix a bug causing all executables to be considered as optional (#3163, @diml)
2.3.0
CHANGES:
-
Improve validation and error handling of arguments to
dune init
(#3103, fixes
#3046, @shonfeder) -
dune init exec NAME
now uses theNAME
argument for private modules (#3103,
fixes #3088, @shonfeder) -
Avoid linear walk to detect children, this should greatly improve
performance when a target has a large number of dependencies (#2959,
@ejgallego, @aalekseyev, @Armael) -
[coq] Add
(boot)
option to(coq.theories)
to enable bootstrap of
Coq's stdlib (#3096, @ejgallego) -
[coq] Deprecate
public_name
field in favour ofpackage
(#2087, @ejgallego) -
Better error reporting for "data only" and "vendored" dirs. Using these with
anything else than a strict subdirectory or*
will raise an error. The
previous behavior was to just do nothing (#3056, fixes #3019, @voodoos) -
Fix bootstrap on bytecode only switches on windows or where
-j1
is set.
(#3112, @xclerc, @rgrinberg) -
Allow
enabled_if
fields inexecutable(s)
stanzas (#3137, fixes #1690
@voodoos) -
Do not fail if
ocamldep
,ocamlmklib
, orocaml
are absent. Wait for them
to be used to fail (#3138, @rgrinberg) -
Introduce a
strict_package_deps
mode that verifies that dependencies between
packages in the workspace are specified correctly. (@rgrinberg, #3117) -
Make sure the
@all
alias is defined when nodune
file is present
in a directory (#2946, fix #2927, @diml)
2.2.0
CHANGES:
-
dune test
is now a command alias fordune runtest
. This is to make the CLI
less idiosyncratic (#3006, @shonfeder) -
Allow to set menhir flags in the
env
stanza using themenhir_flags
field.
(#2960, fix #2924, @bschommer) -
By default, do not show the full command line of commands executed
bydune
whendune
is executed insidedune
. This is to make
integration tests more reproducible (#3042, @diml) -
dune subst
now works even without opam files (#2955, fixes #2910,
@fangyi-zhou and @diml) -
Hint when trying to execute an executable defined in the current directory
without using the./
prefix (#3041, fixes #1094, @voodoos). -
Extend the list of modifiers that can be nested under
with-accepted-exit-codes
withchdir
,setenv
,ignore-<outputs>
,
with-stdin-from
andwith-<outputs>-to
(#3027, fixes #3014, @voodoos) -
It is now an error to have a preprocessing dependency on a ppx rewriter
library that is not marked as(kind ppx_rewriter)
(#3039, @snowleopard). -
Fix permissions of files promoted to the source tree when using the
shared cache. In particular, make them writable by the user (#3043,
fixes #3026, @diml) -
Only detect internal OCaml tools with
.opt
extensions. Previously, this
detection applied to other binaries as well (@kit-ty-kate, @rgrinberg, #3051). -
Give the user a proper error message when they try to promote into a source
directory that doesn't exist. (#3073, fix #3069, @rgrinberg) -
Correctly build vendored packages in
-p
mode. These packages were
incorrectly filtered out before. (#3705, @diml) -
make
now prints a message explaining the main targets available
(#3085, fix #3078, @diml) -
Add a
byte_complete
executable mode to build programs as
self-contained bytecode programs
(#3076, fixes #1519, @diml)
2.1.3
2.1.2
2.1.1
CHANGES:
-
Guess foreign archives & native archives for libraries defined using the
META
format. (#2994, @rgrinberg, @anmonteiro) -
Fix generation of
.merlin
files when depending on local libraries with more
than one source directory. (#2983, @rgrinberg)
2.1.0
CHANGES:
-
Attach cinaps stanza actions to both
@runtest
and@cinaps
aliases
(#2831, @NathanReb) -
Add variables
%{lib-private...}
and%{libexec-private...}
for finding
build paths of files in public and private libraries within the same
project. (#2901, @snowleopard) -
Add
--mandir
option to$ dune install
. This option allows to override the
installation directory for man pages. (#2915, fixes #2670, @rgrinberg) -
Fix
dune --version
. The bootstrap didn't compute the version
correctly. (#2929, fixes #2911, @diml) -
Do not open the log file in
dune clean
. (#2965, fixes #2964 and
#2921, @diml) -
Support passing two arguments to
=
,<>
, ... operators in package
dependencies so that we can have things such as(<> :os win32)
(#2965, @diml)
2.0.1
1.0+beta20.2
CHANGES:
- Do not install empty .dune files to reduce the amount of warning
when jbuilder and dune >= 2.0.0 are co-installed (@diml)