-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[new release] dune (15 packages) (3.11.0) #24510
Conversation
CHANGES: - `enabled_if` now supports `arch_sixtyfour` variable (ocaml/dune#8023, fixes ocaml/dune#7997, @Alizter) - Use `posix_spawn` instead of `fork` on MacOS. This gives us a performance boost and allows us to re-enable thread. (ocaml/dune#8090, @rgrinberg) - Experimental: Added a `$ dune monitor` command that can connect to a running `dune build` in watch mode and display the errors and progress. (ocaml/dune#8152, @Alizter) - The `progress` RPC procedure now has an extra field for the `In_progress` constructor for the number of failed jobs. (ocaml/dune#8212, @Alizter) - Add a `--preview` flag to `dune fmt` which causes it to print out the changes it would make without applying them (ocaml/dune#8289, @gridbugs) - Introduce `(source_trees ..)` to the install stanza to allow installing entire source trees. (ocaml/dune#8349, @rgrinberg) - Add `--stop-on-first-error` option to `dune build` which will terminate the build when the first error is encountered. (ocaml/dune#8400, @pmwhite and @Alizter) - Dune now displays the number of errors when waiting for changes in watch mode. (ocaml/dune#8408, fixes ocaml/dune#6889, @Alizter) - Add `with_prefix` keyword for changing the prefix of the destination of installed files matched by globs. (ocaml/dune#8416, @gridbugs) - Added experimental `--display tui` option for Dune that opens an interactive Terminal User Interface (TUI) when Dune is running. Press '?' to open up a help screen when running for more information. (ocaml/dune#8429, @Alizter and @rgrinberg) - Add a `warnings` field to `dune-project` files as a unified mechanism to enable or disable dune warnings (@rgrinberg, 8448) - `dune exec`: support syntax like `%{bin:program}`. This can appear anywhere in the command line, so things like `dune exec time %{bin:program}` now work. (ocaml/dune#6035, ocaml/dune#8474, fixes ocaml/dune#2691, @emillon, @Leonidas-from-XIV) - Make copy sandbox support directory targets. (ocaml/dune#8705, fixes ocaml/dune#7724, @emillon) - Add a new alias `@doc-json` to build odoc documentation in JSON format. This output can be consumed by external tools. (ocaml/dune#8178, @emillon) - Modules that were declared in `(modules_without_implementation)`, `(private_modules)` or `(virtual_modules)` but not declared in `(modules)` will raise an error. (ocaml/dune#7674, @Alizter) - No longer emit linkopts(javascript) in META files (ocaml/dune#8168, @hhugo) - Deprecate install destination paths beginning with ".." to prevent packages escaping their designated installation directories. (ocaml/dune#8350, @gridbugs) - RPC message styles are now serialised meaning that RPC diagnostics keep their Ansi styling. (ocaml/dune#8516, fixes ocaml/dune#6921, @Alizter) - Truncate output from actions that produce too much output (@tov, ocaml/dune#8351) - Allow libraries to shadow OCaml builtin libraries. Previously, builtin libraries would always take precedence. (@rgrinberg, ocaml/dune#8558) - Remove warning against `.dune` files generated by pre dune 2.0 (ocaml/dune#8611, @rgrinberg) - `dune utop` no longer links `utop` in "custom" mode, which should make this command considerably faster. (ocaml/dune#8631, fixes ocaml/dune#6894, @nojb) - Ensure that package names in `dune-project` are valid opam package names. (ocaml/dune#8331, @emillon) - init: check that module names are valid (ocaml/dune#8644, fixes ocaml/dune#8252, @emillon) - dune init: parse `--public` as a public name (ocaml/dune#8603, fixes ocaml/dune#7108, @emillon) - Stop signing source files with substitutions. Sign only binaries instead (ocaml/dune#8361, fixes ocaml/dune#8360, @anmonteiro) - Remove versions 0.1 and 0.2 of the experimental ctypes extension. (ocaml/dune#8293, @emillon)
I'll have a detailed look at the failures on Monday. |
All good for me, these are not regressions. |
ping? |
This comment was marked as outdated.
This comment was marked as outdated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good to me, but someone with more experience should double-check.
FYI, the newline issues in |
Thanks! (I figured out exactly the same thing by trying to reproduce locally after crossing out the item after finding the commits that fixes it) |
Looks good to me from scanning the failures. Might you create an issue about the |
I believe the problem has been fixed on the upstream (xref: nuscr/nuscr@ba4c7b2). I'll open a PR to ignore CI failures for the affected versions to reduce noise. edit: since it's tricky to ignore tests on the CI (so far as I tried), and it's probably not a good idea to disable the tests at all, I ended up patching the tests using the upstream fix. |
Fast, portable, and opinionated build system
CHANGES:
enabled_if
now supportsarch_sixtyfour
variable (feature: allow arch_sixtyfour in enabled_if dune#8023, fixes Support the "word_size" variable in "enabled_if". dune#7997,@Alizter)
Use
posix_spawn
instead offork
on MacOS. This gives us a performanceboost and allows us to re-enable thread. (feature: use posix_spawn on macos dune#8090, @rgrinberg)
Experimental: Added a
$ dune monitor
command that can connect to a runningdune build
in watch mode and display the errors and progress. (feature: dune monitor dune#8152,@Alizter)
The
progress
RPC procedure now has an extra field for theIn_progress
constructor for the number of failed jobs. (feature(rpc): add failed jobs to progress dune#8212, @Alizter)
Add a
--preview
flag todune fmt
which causes it to print out the changesit would make without applying them (Add flag to
dune fmt
to disable promoting dune#8289, @gridbugs)Introduce
(source_trees ..)
to the install stanza to allow installingentire source trees. (feature: allow installing source trees dune#8349, @rgrinberg)
Add
--stop-on-first-error
option todune build
which will terminate thebuild when the first error is encountered. (feature: add --stop-on-first-error CLI option dune#8400, @pmwhite and @Alizter)
Dune now displays the number of errors when waiting for changes in watch
mode. (feature: show number of errors when waiting in watch mode dune#8408, fixes Watch mode should count failures when pending dune#6889, @Alizter)
Add
with_prefix
keyword for changing the prefix of the destination ofinstalled files matched by globs. (Add with_prefix keyword for installing globs dune#8416, @gridbugs)
Added experimental
--display tui
option for Dune that opens an interactiveTerminal User Interface (TUI) when Dune is running. Press '?' to open up a
help screen when running for more information. (TUI dune#8429, @Alizter and
@rgrinberg)
Add a
warnings
field todune-project
files as a unified mechanism toenable or disable dune warnings (@rgrinberg, 8448)
dune exec
: support syntax like%{bin:program}
. This can appear anywherein the command line, so things like
dune exec time %{bin:program}
now work.(dune exec: support pform syntax dune#6035, dune exec: support pform syntax (rebased) dune#8474, fixes Allow dune exec underneath perf rather than having to specify a target from _build. dune#2691, @emillon, @Leonidas-from-XIV)
Make copy sandbox support directory targets. (Add directory target support to copy sandbox dune#8705, fixes Copying Sandbox & Directory Targets dune#7724, @emillon)
Add a new alias
@doc-json
to build odoc documentation in JSON format. Thisoutput can be consumed by external tools. (feature: dune build @doc-json dune#8178, @emillon)
Modules that were declared in
(modules_without_implementation)
,(private_modules)
or(virtual_modules)
but not declared in(modules)
will raise an error. (chore: make undeclared modules check an error dune#7674, @Alizter)
No longer emit linkopts(javascript) in META files (remove linkopts(javascript) from META dune#8168, @hhugo)
Deprecate install destination paths beginning with ".." to prevent packages
escaping their designated installation directories. (fix: Prevent relative install destinations leaking outside package install dir dune#8350, @gridbugs)
RPC message styles are now serialised meaning that RPC diagnostics keep their
Ansi styling. (rpc: serialize user message styles dune#8516, fixes Extend diagnostics RPC with display markup dune#6921, @Alizter)
Truncate output from actions that produce too much output (@tov, chore(pkg): Update our vendored OPAM copy dune#8351)
Allow libraries to shadow OCaml builtin libraries. Previously, builtin
libraries would always take precedence. (@rgrinberg, fix: allow shadowing builtins dune#8558)
Remove warning against
.dune
files generated by pre dune 2.0 (fix: remove check for [.dune] files dune#8611,@rgrinberg)
dune utop
no longer linksutop
in "custom" mode, which should make thiscommand considerably faster. (dune utop: do not do custom linking dune#8631, fixes Revamp dune utop for greater speed dune#6894, @nojb)
Ensure that package names in
dune-project
are valid opam package names.(feature: check package names are valid opam names dune#8331, @emillon)
init: check that module names are valid (fix(init): check that module names are valid dune#8644, fixes Dune allows the creation of projects starting with numbers and the error message when building doesn't say it can't dune#8252, @emillon)
dune init: parse
--public
as a public name (fix(init): parse --public as a public name dune#8603, fixes Dune init's--public
doesn't allow dashes dune#7108, @emillon)Stop signing source files with substitutions. Sign only binaries instead
(fix: only sign executables dune#8361, fixes Artifact substitution tries to sign
.ml
files dune#8360, @anmonteiro)Remove versions 0.1 and 0.2 of the experimental ctypes extension. (Delete ctypes extensions 0.1 and 0.2 dune#8293,
@emillon)