[new release] dune (15 packages) (3.16.0) #26101
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fast, portable, and opinionated build system
CHANGES:
Added
allow libraries with the same
(name ..)
in projects as long as they don'tconflict during resolution (via
enabled_if
). (feat: support libraries with the same name in multiple contexts dune#10307, @anmonteiro,@jchavarri)
dune describe pp
now finds the exact module and the stanza it belongs to,instead of guessing the name of the preprocessed file. (fix(describe-pp): try more candidates for pped dialect sources dune#10321, @anmonteiro)
Print the result of
dune describe pp
with the respective dialect printer.(feat(describe-pp): print reason files with
refmt
dune#10322, @anmonteiro)Add new flag
--context
todune ocaml-merlin
, which allows to select aDune context when requesting Merlin config. Add
dune describe contexts
subcommand. Introduce a field
generate_merlin_rules
for contexts declaredin the workspace, that allows to optionally produce Merlin rules for other
contexts besides the one selected for Merlin (merlin: add new contexts commands dune#10324, @jchavarri)
melange: add include paths for private library
.cmj
files during JSemission. (fix(melange): add
.cmj
include dirs for installed private libs dune#10416, @anmonteiro)dune ocaml-merlin
: communicate additional directivesSOURCE_ROOT
,UNIT_NAME
(the actual name with wrapping) andINDEX
with the paths to theindex(es). ([5.2] Build occurrences index for Merlin dune#10422, @voodoos)
Add a new alias
@ocaml-index
that uses theocaml-index
binary to generateindexes that can be read by tools such as Merlin to provide project-wide
references search. ([5.2] Build occurrences index for Merlin dune#10422, @voodoos)
merlin: add optional
(merlin_reader CMD)
construct to(dialect)
stanza toconfigure a merlin reader (Communicate READER to merlin for configured dialects dune#8567, @andreypopp)
Changed
melange: treat private libraries with
(package ..)
as public libraries,fixing an issue where
import
paths were wrongly emitted. (fix(melange): treat private libraries with(package ..)
as public libs dune#10415,@anmonteiro)
install
.glob
files for Coq theories too ([coq] [fix] Install .glob files dune#10602, @ejgallego)Fixed
Don't try to document non-existent libraries in doc-new target (doc-new: Omit docs for 'empty libraries' dune#10319, fixes
dune build @doc-new
treats dependency errors as fatal dune#10056, @jonludlam)Make
dune-site
'sload_all
function look forMETA
files so that itdoesn't fail on empty directories in the plugin directory (Look for META files rather than just directories to list plugins dune#10458, fixes
An empty directory in the plugin directory makes
load_all
fail dune#10457, @shym)Fix incorrect warning for libraries defined inside non-existant directories
using
(subdir ..)
and used by executables usingdune-build-info
(fix: remove incorrect warning when using dune-build-info and (subir ..) dune#10525,@rgrinberg)
Don't try to take build lock when running
coq top --no-build
(fix: don't take build lock forcoq top --no-build
dune#10547, fixesRunning "dune coq top --no-build ..." tries to take the lock dune#7671, @lzy0505)
Make sure to truncate dune's lock file after locking and unlocking so that
users cannot observe incorrect pid's (fix: truncate lock file dune#10575, @rgrinberg)
mdx: link mdx binary with
byte_complete
. This fixes(libraries)
withforeign archives on Linux. (fix(mdx): link mdx binary with byte_complete dune#10586, fixes mdx stanzas do not work with shared libraries dune#10582, @anmonteiro)
virtual libraries: fix an issue where linking an executable involving several
virtual libries would cause an error. (fix: virtual libraries bug dune#10581, fixes dune variants - how they are supposed to work and scale? dune#10460, @rgrinberg)