Tags: ELLIOTTCABLE/dune
Tags
Release 3.10.0 CHANGES: - Add `dune show rules` as alias of the `dune rules` command. (ocaml#8000, @Alizter) - Fix `%{deps}` to expand properly in `(cat ...)` when containing 2 or more items. (ocaml#8196, @Alizter) - Add `dune show installed-libraries` as an alias of the `dune installed-libraries` command. (ocaml#8135, @Alizter) - Fix the `severity` of error messages sent over RPC which was missing. (ocaml#8193, @Alizter) - Add `dune build --dump-gc-stats FILE` argument to dump garbage collection stats to a named file. (ocaml#8072, @Alizter) - Fix bug with ppx and Reason syntax due to missing dependency in sandboxed action (ocaml#7932, fixes ocaml#7930, @Alizter) - Add `dune describe package-entries` to print all package entries (ocaml#7480, @moyodiallo) - Improve `dune describe external-lib-deps` by adding the internal dependencies for more information. (ocaml#7478, @moyodiallo) - Re-enable background file digests on Windows. The files are now open in a way that prevents race condition around deletion. (ocaml#8262, fixes ocaml#8268, @emillon)
Release 3.9.0 CHANGES: - Validate file extension for `$ dune ocaml top-module`. (ocaml#8005, fixes ocaml#8004, @3Rafal) - Include the time it takes to read/write state files when `--trace-file` is enabled (ocaml#7960, @rgrinberg) - Add `dune show` command group which is an alias of `dune describe`. (ocaml#7946, @Alizter) - Include source tree scans in the traces produced by `--trace-file` (ocaml#7937, @rgrinberg) - Cinaps: The promotion rules for cinaps would only offer one file at a time no matter how many promotions were available. Now we offer all the promotions at once (ocaml#7901, @rgrinberg) - Do not re-run OCaml syntax files on every iteration of the watch mode. This is too memory consuming. (ocaml#7894, fix ocaml#6900, @rgrinberg) - Add `--all` option to `dune rpc status` to show all Dune RPC servers running. (ocaml#8011, fix ocaml#7902, @Alizter) - Remove some compatibility code for old version of dune that generated `.merlin` files. Now dune will never remove `.merlin` files automatically (ocaml#7562) - Add `dune show env` command and make `dune printenv` an alias of it. (ocaml#7985, @Alizter) - Add additional metadata to the traces provided by `--trace-file` whenever `--trace-extended` is passed (ocaml#7778, @rleshchinskiy) - Extensions used in `(dialect)` can contain periods (e.g., `cppo.ml`). (ocaml#7782, fixes ocaml#7777, @nojb) - Allow `(include_subdirs qualified)` to be used when libraries define a `(modules ...)` field (ocaml#7797, fixes ocaml#7597, @anmonteiro) - `$ dune describe` is now a command group, so arguments to subcommands must be passed after subcommand itself. (ocaml#7919, @Alizter) - The `interface` and `implementation` fields of a `(dialect)` are now optional (ocaml#7757, @gpetiot) - Add commands `dune show targets` and `dune show aliases` that display all the available targets and aliases in a given directory respectively. (ocaml#7770, grants ocaml#265, @Alizter) - Allow multiple globs in library's `(stdlib (internal_modules ..))` (@anmonteiro, ocaml#7878) - Attach melange rules to the default alias (ocaml#7926, @haochenx) - In opam constraints, reject `(and)` and `(or)` with no arguments at parse time (ocaml#7730, @emillon) - Compute digests and manage sandboxes in background threads (ocaml#7947, @rgrinberg) - Add `(build_if)` to the `(test)` stanza. When it evaluates to false, the executable is not built. (ocaml#7899, fixes ocaml#6938, @emillon) - Add necessary parentheses in generated opam constraints (ocaml#7682, fixes ocaml#3431, @Lucccyo)
Release 3.8.0 CHANGES: - Fix string quoting in the json file written by `--trace-file` (ocaml#7773, @rleshchinskiy) - Read `pkg-config` arguments from the `PKG_CONFIG_ARGN` environment variable (ocaml#1492, ocaml#7734, @anmonteiro) - Correctly set `MANPATH` in `dune exec`. Previously, we would use the `bin/` directory of the context. (ocaml#7655, @rgrinberg) - Allow overriding the `ocaml` binary with findlib configuration (ocaml#7648, @rgrinberg) - merlin: ignore instrumentation settings for preprocessing. (ocaml#7606, fixes ocaml#7465, @Alizter) - When a rule's action is interrupted, delete any leftover directory targets. This is consistent with how we treat file targets. (ocaml#7564, @rgrinberg) - Fix plugin loading with findlib. The functionality was broken in 3.7.0. (ocaml#7556, @anmonteiro) - Introduce a `public_headers` field on libraries. This field is like `install_c_headers`, but it allows to choose the extension and choose the paths for the installed headers. (ocaml#7512, @rgrinberg) - Load the host context `findlib.conf` when cross-compiling (ocaml#7428, fixes ocaml#1701, @rgrinberg, @anmonteiro) - Add a `coqdoc_flags` field to the `coq.theory` stanza allowing the user to pass extra arguments to `coqdoc`. (ocaml#7676, fixes ocaml#7954 @Alizter) - Resolve `ppx_runtime_libraries` in the target context when cross compiling (ocaml#7450, fixes ocaml#2794, @anmonteiro) - Use `$PKG_CONFIG`, when set, to find the `pkg-config` binary (ocaml#7469, fixes ocaml#2572, @anmonteiro) - Modules that were declared in `(modules_without_implementation)`, `(private_modules)` or `(virtual_modules)` but not declared in `(modules)` will cause Dune to emit a warning which will become an error in 3.9. (ocaml#7608, fixes ocaml#7026, @Alizter) - Preliminary support for Coq compiled intefaces (`.vos` files) enabled via `(mode vos)` in `coq.theory` stanzas. This can be used in combination with `dune coq top` to obtain fast re-building of dependencies (with no checking of proofs) prior to stepping into a file. (ocaml#7406, @rlepigre) - Fix dune crashing on MacOS in watch mode whenever `$PATH` contains `$PWD` (ocaml#7441, fixes ocaml#6907, @rgrinberg) - Fix `dune install` when cross compiling (ocaml#7410, fixes ocaml#6191, @anmonteiro, @rizo) - Find `pps` dependencies in the host context when cross-compiling, (ocaml#7410, fixes ocaml#4156, @anmonteiro) - Dune in watch mode no longer builds concurrent rules in serial (ocaml#7395 @rgrinberg, @jchavarri) - Dune can now detect Coq theories from outside the workspace. This allows for composition with installed theories (not necessarily installed with Dune). (ocaml#7047, @Alizter, @ejgallego) - `dune coq top` now correctly respects the project root when called from a subdirectory. However, absolute filenames passed to `dune coq top` are no longer supported (due to being buggy) (ocaml#7357, fixes ocaml#7344, @rlepigre and @Alizter) - Added a `--no-build` option to `dune coq top` for avoiding rebuilds (ocaml#7380, fixes ocaml#7355, @Alizter) - RPC: Ignore SIGPIPE when clients suddenly disconnect (ocaml#7299, ocaml#7319, fixes ocaml#6879, @rgrinberg) - Always clean up the UI on exit. (ocaml#7271, fixes ocaml#7142 @rgrinberg) - Bootstrap: remove reliance on shell. Previously, we'd use the shell to get the number of processors. (ocaml#7274, @rgrinberg) - Bootstrap: correctly detect the number of processors by allowing `nproc` to be looked up in `$PATH` (ocaml#7272, @Alizter) - Speed up file copying on macos by using `clonefile` when available (@rgrinberg, ocaml#7210) - Adds support for loading plugins in toplevels (ocaml#6082, fixes ocaml#6081, @ivg, @richardlford) - Support commands that output 8-bit and 24-bit colors in the terminal (ocaml#7188, @Alizter) - Speed up rule generation for libraries and executables with many modules (ocaml#7187, @jchavarri) - Add `--watch-exclusions` to Dune build options (ocaml#7216, @jonahbeckford) - Do not re-render UI on every frame if the UI doesn't change (ocaml#7186, fix ocaml#7184, @rgrinberg) - Make coq_db creation in scope lazy (@ejgallego, ocaml#7133) - Non-user proccesses such as version control or config checking are now run silently. (ocaml#6994, fixes ocaml#4066, @Alizter) - Add the `--display-separate-messages` flag to separate the error messages produced by commands with a blank line. (ocaml#6823, fixes ocaml#6158, @esope) - Accept the Ordered Set Language for the `modes` field in `library` stanzas (ocaml#6611, @anmonteiro). - dune install now respects --display quiet mode (ocaml#7116, fixes ocaml#4573, fixes ocaml#7106, @Alizter) - Stub shared libraries (dllXXX_stubs.so) in Dune-installed libraries could not be used as dependencies of libraries in the workspace (eg when compiling to bytecode and/or Javascript). This is now fixed. (ocaml#7151, @nojb) - Allow the main module of a library with `(stdlib ...)` to depend on other libraries (ocaml#7154, @anmonteiro). - Bytecode executables built for JSOO are linked with `-noautolink` and no longer depend on the shared stubs of their dependent libraries (ocaml#7156, @nojb) - Added a new user action `(concurrent )` which is like `(progn )` but runs the actions concurrently. (ocaml#6933, @Alizter) - Allow `(stdlib ...)` to be used with `(wrapped false)` in library stanzas (ocaml#7139, @anmonteiro). - Allow parallel execution of inline tests partitions (ocaml#7012, @hhugo) - Support `(link_flags ...)` in `(cinaps ...)` stanza. (ocaml#7423, fixes ocaml#7416, @nojb) - Allow `(package ...)` in any position within `(rule ...)` stanza (ocaml#7445, @Leonidas-from-XIV) - Always include `opam` files in the generated `.install` file. Previously, it would not be included whenever `(generate_opam_files true)` was set and the `.install` file wasn't yet generated. (ocaml#7547, @rgrinberg) - Fix regression where Merlin was unable to handle filenames with uppercase letters under Windows. (ocaml#7577, @nojb) - On nix+macos, pass `-f` to the codesign hook to avoid errors when the binary is already signed (ocaml#7183, fixes ocaml#6265, @greedy) - Fix bug where RPC clients built with dune-rpc-lwt would crash when closing their connection to the server (ocaml#7581, @gridbugs) - Introduce mdx stanza 0.4 requiring mdx >= 2.3.0 which updates the default list of files to include `*.mld` files (ocaml#7582, @Leonidas-from-XIV) - Fix RPC server on Windows (used for OCaml-LSP). (ocaml#7666, @nojb) - Coq language versions less 0.8 are deprecated, and will be removed in an upcoming Dune version. All users are required to migrate to `(coq lang 0.8)` which provides the right semantics for theories that have been globally installed, such as those coming from opam (@ejgallego, @Alizter) - Bump minimum version of the dune language for the melange syntax extension from 3.7 to 3.8 (ocaml#7665, @jchavarri)
Release 3.7.0 CHANGES: - Allow running `$ dune exec` in watch mode (with the `-w` flag). In watch mode, `$ dune exec` the executed binary whenever it is recompiled. (ocaml#6966, @gridbugs) - `coqdep` is now called once per theory, instead of one time per Coq file. This should significantly speed up some builds, as `coqdep` startup time is often heavy (ocaml#7048, @Alizter, @ejgallego) - Add `map_workspace_root` dune-project stanza to allow disabling of mapping of workspace root to `/workspace_root`. (ocaml#6988, fixes ocaml#6929, @richardlford) - Fix handling of support files generated by odoc. (ocaml#6913, @jonludlam) - Fix parsing of OCaml errors that contain code excerpts with `...` in them. (ocaml#7008, @rgrinberg) - Pre-emptively clear screen in watch mode (ocaml#6987, fixes ocaml#6884, @rgrinberg) - Fix cross compilation configuration when a context with targets is itself a host of another context (ocaml#6958, fixes ocaml#6843, @rgrinberg) - Fix parsing of the `<=` operator in *blang* expressions of `dune` files. Previously, the operator would be interpreted as `<`. (ocaml#6928, @tatchi) - Fix `--trace-file` output. Dune now emits a single *complete* event for every executed process. Unterminated *async* events are no longer written. (ocaml#6892, @rgrinberg) - Fix preprocessing with `staged_pps` (ocaml#6748, fixes ocaml#6644, @rgrinberg) - Use colored output with MDX when Dune colors are enabled. (ocaml#6462, @MisterDA) - Make `dune describe workspace` return consistent dependencies for executables and for libraries. By default, compile-time dependencies towards PPX-rewriters are from now not taken into account (but runtime dependencies always are). Compile-time dependencies towards PPX-rewriters can be taken into account by providing the `--with-pps` flag. (ocaml#6727, fixes ocaml#6486, @esope) - Print missing newline after `$ dune exec`. (ocaml#6821, fixes ocaml#6700, @rgrinberg, @Alizter) - Fix binary corruption when installing or promoting in parallel (ocaml#6669, fixes ocaml#6668, @edwintorok) - Use colored output with GCC and Clang when compiling C stubs. The flag `-fdiagnostics-color=always` is added to the `:standard` set of flags. (ocaml#4083, @MisterDA) - Fix the parsing of decimal and hexadecimal escape literals in `dune`, `dune-package`, and other dune s-expression based files (ocaml#6710, @shym) - Report an error if `dune init ...` would create a "dune" file in a location which already contains a "dune" directory (ocaml#6705, @gridbugs) - Fix the parsing of alerts. They will now show up in diagnostics correctly. (ocaml#6678, @rginberg) - Fix the compilation of modules generated at link time when `implicit_transitive_deps` is enabled (ocaml#6642, @rgrinberg) - Allow `$ dune utop` to load libraries defined in data only directories defined using `(subdir ..)` (ocaml#6631, @rgrinberg) - Format dune files when they are named `dune-file`. This occurs when we enable the alternative file names project option. (ocaml#6566, @rgrinberg) - Move `$ dune ocaml-merlin -dump-config=$dir` to `$ dune ocaml merlin dump-config $dir`. (ocaml#6547, @rgrinberg) - Allow compilation rules to be impacted by `(env ..)` stanzas that modify the environment or set binaries. (ocaml#6527, @rgrinberg) - Coq native mode is now automatically detected by Dune starting with Coq lang 0.7. `(mode native)` has been deprecated in favour of detection from the configuration of Coq. (ocaml#6409, @Alizter) - Print "Leaving Directory" whenever "Entering Directory" is printed. (ocaml#6419, fixes ocaml#138, @cpitclaudel, @rgrinberg) - Allow `$ dune ocaml dump-dot-merlin` to run in watch mode. Also this command shouldn't print "Entering Directory" mesages. (ocaml#6497, @rgrinberg) - `dune clean` should no longer fail under Windows due to the inability to remove the `.lock` file. Also, bring the implementation of the global lock under Windows closer to that of Unix. (ocaml#6523, @nojb) - Remove "Entering Directory" messages for `$ dune install`. (ocaml#6513, @rgrinberg) - Stop passing `-q` flag in `dune coq top`, which allows for `.coqrc` to be loaded. (ocaml#6848, fixes ocaml#6847, @Alizter) - Fix missing dependencies when detecting the kind of C compiler we're using (ocaml#6610, fixes ocaml#6415, @emillon) - Allow `(include_subdirs qualified)` for OCaml projects. (ocaml#6594, fixes ocaml#1084, @rgrinberg) - Accurately determine merlin configuration for all sources selected with `copy#` and `copy_files#`. The old heuristic of looking for a module in parent directories is removed (ocaml#6594, @rgrinberg) - Fix inline tests with *js_of_ocaml* and whole program compilation mode enabled (ocaml#6645, @hhugo) - Fix *js_of_ocaml* separate compilation rules when `--enable=effects` ,`--enable=use-js-string` or `--toplevel` is used. (ocaml#6714, ocaml#6828, ocaml#6920, @hhugo) - Fix *js_of_ocaml* separate compilation in presence of linkall (ocaml#6832, ocaml#6916, @hhugo) - Remove spurious build dir created when running `dune init proj ...` (ocaml#6707, fixes ocaml#5429, @gridbugs) - Allow `--sandbox` to affect `ocamldep` invocations. Previously, they were wrongly marked as incompatible (ocaml#6749, @rgrinberg) - Validate the command line arguments for `$ dune ocaml top-module`. This command requires one positional argument (ocaml#6796, fixes ocaml#6793, @rgrinberg) - Add a `dune cache size` command for displaying the size of the cache (ocaml#6638, @Alizter) - Fix dependency cycle when installing files to the bin section with `glob_files` (ocaml#6764, fixes ocaml#6708, @gridbugs) - Handle "Too many links" errors when using Dune cache on Windows (ocaml#6993, @nojb) - Allow the `cinaps` stanza to set a custom alias. By default, if the alias is not set then the cinaps actions will be attached to both `@cinaps` and `@runtest` (ocaml#6991, @rgrinberg) - Add `(using ctypes 0.3)`. When used, paths in `(ctypes)` are interpreted relative to where the stanza is defined. (ocaml#6883, fixes ocaml#5325, @emillon) - Auto-detect `dune-workspace` files as `dune` files in Emacs (ocaml#7061, @ilankri) - Add native support for polling mode on Windows (ocaml#7010, @yams-yams, @nojb)
Release 3.6.0 CHANGES: - Forbid multiple instances of dune running concurrently in the same workspace. (ocaml#6360, fixes ocaml#236, @rgrinberg) - Allow promoting into source directories specified by `subdir` (ocaml#6404, fixes ocaml#3502, @rgrinberg) - Make dune describe workspace return the correct root path (ocaml#6380, fixes ocaml#6379, @esope) - Introduce a `$ dune ocaml top-module` subcommand to load modules directly without sealing them behind the signature. (ocaml#5940, @rgrinberg) - [ctypes] do not mangle user written names in the ctypes stanza (ocaml#6374, fixes ocaml#5561, @rgrinberg) - Support `CLICOLOR` and `CLICOLOR_FORCE` to enable/disable/force ANSI colors. (ocaml#6340, fixes ocaml#6323, @MisterDA). - Forbid private libraries with `(package ..)` set from depending on private libraries that don't belong to a package (ocaml#6385, fixes ocaml#6153, @rgrinberg) - Allow `Byte_complete` binaries to be installable (ocaml#4873, @AltGr, @rgrinberg) - Revive `$ dune external-lib-deps` under `$ dune describe external-lib-deps`. (ocaml#6045, @moyodiallo) - Fix running inline tests in bytecode mode (ocaml#5622, fixes ocaml#5515, @dariusf) - [ctypes] always re-run `pkg-config` because we aren't tracking its external dependencies (ocaml#6052, @rgrinberg) - [ctypes] remove dependency on configurator in the generated rules (ocaml#6052, @rgrinberg) - Build progress status now shows number of failed jobs (ocaml#6242, @Alizter) - Allow absolute build directories to find public executables. For example, those specified with `(deps %{bin:...})` (ocaml#6326, @anmonteiro) - Create a fake socket file `_build/.rpc/dune` on windows to allow rpc clients to connect using the build directory. (ocaml#6329, @rgrinberg) - Prevent crash if absolute paths are used in the install stanza and in recursive globs. These cases now result in a user error. (ocaml#6331, @gridbugs) - Add `(glob_files <glob>)` and `(glob_files_rec <glob>)` terms to the `files` field of the `install` stanza (ocaml#6250, closes ocaml#6018, @gridbugs) - Allow `:standard` in the `(modules)` field of the `coq.pp` stanza (ocaml#6229, fixes ocaml#2414, @Alizter) - Fix passing of flags to dune coq top (ocaml#6369, fixes ocaml#6366, @Alizter) - Extend the promotion CLI to a `dune promotion` group: `dune promote` is moved to `dune promotion apply` (the former still works) and the new `dune promotion diff` command can be used to just display the promotion without applying it. (ocaml#6160, fixes ocaml#5368, @emillon)
Release 3.5.0 CHANGES: - macOS: Handle unknown fsevents without crashing (ocaml#6217, @rgrinberg) - Enable file watching on MacOS SDK < 10.13. (ocaml#6218, @rgrinberg) - Sandbox running cinaps actions starting from cinaps 1.1 (ocaml#6176, @rgrinberg) - Add a `runtime_deps` field in the `cinaps` stanza to specify runtime dependencies for running the cinaps preprocessing action (ocaml#6175, @rgrinberg) - Shadow alias module `Foo__` when building a library `Foo` (ocaml#6126, @rgrinberg) - Extend dune describe to include the root path of the workspace and the relative path to the build directory. (ocaml#6136, @reubenrowe) - Allow dune describe workspace to accept directories as arguments. The provided directories restrict the worskpace description to those directories. (ocaml#6107, fixes ocaml#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` (ocaml#6065, @rgrinberg) - Disallow generating targets in sub direcories in inferred rules. The check to forbid this was accidentally done only for manually specified targets (ocaml#6031, @rgrinberg) - Do not ignore rules marked `(promote (until-clean))` when `--ignore-promoted-rules` (or `-p`) is passed. (ocaml#6010, fixes ocaml#4401, @emillon) - Dune no longer considers .aux files as targets during Coq compilation. This means that .aux files are no longer cached. (ocaml#6024, fixes ocaml#6004, @Alizter) - Cinaps actions are now sandboxed by default (ocaml#6062, @rgrinberg) - Allow rules producing directory targets to be not sandboxed (ocaml#6056, @rgrinberg) - Introduce a `dirs` field in the `install` stanza to install entire directories (ocaml#5097, fixes ocaml#5059, @rgrinberg) - Menhir rules are now sandboxed by default (ocaml#6076, @rgrinberg) - Allow rules producing directory targets to create symlinks (ocaml#6077, fixes ocaml#5945, @rgrinberg) - Inline tests are now sandboxed by default (ocaml#6079, @rgrinberg) - Fix build-info version when used with flambda (ocaml#6089, fixes ocaml#6075, @jberdine) - Add an `(include <file>)` term to the `include_dirs` field for adding directories to the include paths sourced from a file. (ocaml#6058, fixes ocaml#3993, @gridbugs) - Support `(extra_objects ...)` field in `(executable ...)` and `(library ...)` stanzas (ocaml#6084, fixes ocaml#4129, @gridbugs) - Fix compilation of Dune under esy on Windows (ocaml#6109, fixes ocaml#6098, @nojb) - Improve error message when parsing several licenses in `(license)` (ocaml#6114, fixes ocaml#6103, @emillon) - odoc rules now about `ODOC_SYNTAX` and will rerun accordingly (ocaml#6010, fixes ocaml#1117, @emillon) - dune install: copy files in an atomic way (ocaml#6150, @emillon) - Add `%{coq:...}` macro for accessing data about the configuration about Coq. For instance `%{coq:version}` (ocaml#6049, @Alizter) - update vendored copy of cmdliner to 1.1.1. This improves the built-in documentation for command groups such as `dune ocaml`. (ocaml#6038, @emillon, ocaml#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)`. (ocaml#6165 ocaml#6164, fixes ocaml#6163, @ejgallego @Alizter @LasseBlaauwbroek) - on macOS, sign executables produced by artifact substitution (ocaml#6137, ocaml#6231, fixes ocaml#5650, fixes ocaml#6226, @emillon) - Added an (aliases ...) field to the (rules ...) stanza which allows the specification of multiple aliases per rule (ocaml#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. (ocaml#6167 , workarounds ocaml#5767, @ejgallego) - Allow include statement in install stanza (ocaml#6139, fixes ocaml#256, @gridbugs) - Handle CSI n K code in ANSI escape codes from commands. (ocaml#6214, fixes ocaml#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 (ocaml#5649, @voodoos)
Release 3.4.1 CHANGES: - Fix build on cygwin/i686-w64-mingw32 (ocaml#6008, @kit-ty-kate)
Release 3.4.0 CHANGES: - Make `dune describe` correctly handle overlapping implementations for virtual libraries (ocaml#5971, fixes ocaml#5747, @esope) - Building the `@check` alias should make sure the libraries and executables don't have dependency cycles (ocaml#5892, @rgrinberg) - [ctypes] Add support for the `errno` parameter using the `errno_policy` field in the ctypes settings. (ocaml#5827, @droyo) - Fix `dune coq top` when it is invoked on files from a subdirectory of the directory containing the associated stanza (ocaml#5784, fixes ocaml#5552, @ejgallego, @rlepigre, @Alizter) - Fix hint when an invalid module name is found. (ocaml#5922, fixes ocaml#5273, @emillon) - The `(cat)` action now supports several files. (ocaml#5928, fixes ocaml#5795, @emillon) - Dune no longer uses shimmed `META` files for OCaml 5.x, solely using the ones installed by the compiler. (ocaml#5916, @dra27) - Fix handling of the `(deps)` field in `(test)` stanzas when there is an `.expected` file. (ocaml#5952, ocaml#5951, fixes ocaml#5950, @emillon) - Ignore insignificant filesystem events. This stops RPC in watch mode from flashing errors on insignificant file system events such as changes in the `.git/` directory. (ocaml#5953, @rgrinberg) - Fix parsing more error messages emitted by the OCaml compiler. In particular, messages where the excerpt line number started with a blank character were skipped. (ocaml#5981, @rgrinberg) - env stanza: warn if some rules are ignored because they appear after a wildcard rule. (ocaml#5898, fixes ocaml#5886, @emillon) - On Windows, XDG_CACHE_HOME is taken to be the `FOLDERID_InternetCache` if unset, and XDG_CONFIG_HOME and XDG_DATA_HOME are both taken to be `FOLDERID_LocalAppData` if unset. (ocaml#5943, fixes ocaml#5808, @nojb)
Release 3.3.1 CHANGES: - Improve parsing of ocamlc errors. We now correctly strip excerpts and parse alerts (ocaml#5879, @rgrinberg)
Release 3.3.0 CHANGES: - Sandbox preprocessing, lint, and dialect rules by default. All these rules now require precise dependency specifications (ocaml#5807, @rgrinberg) - Allow list expansion in the `pps` specification for preprocessing (ocaml#5820, @Firobe) - Add warnings 67-69 to dune's default set of warnings. These are warnings of the form "unused X.." (ocaml#5844, @rgrinbreg) - Introduce project "composition" for coq theories. Coq theories in separate projects can now refer to each other when in the same workspace (ocaml#5784, @Alitzer, @rgrinberg) - Fix hint message for ``data_only_dirs`` that wrongly mentions the unknown constructor ``data_only`` (ocaml#5803, @lambdaxdotx) - Fix creating sandbox directory trees by getting rid of buggy memoization (@5794, @rgrinberg, @snowleopard) - Handle directory dependencies in sandboxed rules. Previously, the parents of these directory dependencies weren't created. (ocaml#5754, @rgrinberg) - Set the exit code to 130 when dune is terminated with a signal (ocaml#5769, fixes ocaml#5757) - Support new locations of unix, str, dynlink in OCaml >= 5.0 (ocaml#5582, @dra27) - The ``coq.theory`` stanza now produces rules for running ``coqdoc``. Given a theory named ``mytheory``, the directory targets ``mytheory.html/`` and ``mytheory.tex/`` or additionally the aliases `@doc` and `@doc-latex` will build the HTML and LaTeX documentation repsectively. (ocaml#5695, fixes ocaml#3760, @Alizter) - Coq theories marked as `(boot)` cannot depend on other theories (ocaml#5867, @ejgallego) - Ignore `bigarray` in `(libraries)` with OCaml >= 5.0. (ocaml#5526, fixes ocaml#5494, @moyodiallo) - Start with :standard when building the ctypes generated foreign stubs so that we include important compiler flags, such as -fPIC (ocaml#5816, fixes ocaml#5809).
PreviousNext