# dune release history: Coq out, Melange sandboxing rolled back

Source page: https://dev-news.anonyfox.com/dune/

Every dune release since 2024 from GitHub, a terrain of fixed, added and changed changelog entries per release since 2025, and what 3.24 removed and reverted.

## Where it stands (2026-10-24)

Dune 3.24.0 came out on 21 June 2026 and removed the deprecated Coq build language: projects that still declare (using coq ...) now get an error pointing them at Rocq. The same release made directory targets generally available, enabled the relocatable compiler by default for package management and capped sandbox creation at 250 concurrent sandboxes.

A month later 3.24.1 reverted sandboxing Melange rules by default in the library and melange.emit stanzas, because in Melange libraries with many modules, creating and destroying sandboxes dominated build time. 3.24.2 followed on 3 August with two fixes and is still the latest release twelve weeks on. Each of the three minors before it, 3.21 to 3.23, opened with 37 to 48 changelog entries.

## Latest stable releases

- [3.24.2](https://github.com/ocaml/dune/releases/tag/3.24.2) (2026-08-03): Add the implicit unix dependency required by MDX 2.6 and later to
- [3.24.1](https://github.com/ocaml/dune/releases/tag/3.24.1) (2026-07-21): Fix an internal error (modulesandobjdir: failed lookup) when generating
- [3.24.0](https://github.com/ocaml/dune/releases/tag/3.24.0) (2026-06-21): Fix promotion failure when a target changes from a directory to a file
- [3.23.1](https://github.com/ocaml/dune/releases/tag/3.23.1) (2026-05-14): Fix the menhir opam dependency injection introduced in 3.23. Dune
- [3.23.0](https://github.com/ocaml/dune/releases/tag/3.23.0) (2026-05-04): Auto-inject "menhir" {>= "20180523"} into generated opam files when the
- [3.22.2](https://github.com/ocaml/dune/releases/tag/3.22.2) (2026-04-10): Revert the change in behavior of --diff-command back to 3.21. Non-existent
- [3.22.1](https://github.com/ocaml/dune/releases/tag/3.22.1) (2026-04-01): Restore compatibility with Windows 7
- [3.22.0](https://github.com/ocaml/dune/releases/tag/3.22.0) (2026-03-19): Dyn.tostring now uses a smarter way to convert floats. This ensures that
- [3.21.1](https://github.com/ocaml/dune/releases/tag/3.21.1) (2026-02-11): Fix build issues on NetBSD and OpenBSD via update of vendored ocaml-lmdb
- [3.21.0](https://github.com/ocaml/dune/releases/tag/3.21.0) (2026-01-12): Fix includesubdirs qualified incorrectly picking the furthest module
- [3.20.2](https://github.com/ocaml/dune/releases/tag/3.20.2) (2025-09-03): Fix jsoo separate compilation with moduleswithoutimplementation. Regression
- [3.20.1](https://github.com/ocaml/dune/releases/tag/3.20.1) (2025-08-25): Fix runtest-js mistakenly depending on byte (fixes #12243, #12242,
- [3.20.0](https://github.com/ocaml/dune/releases/tag/3.20.0) (2025-08-19): Stop re-running cram tests after promotion when it's not necessary (#11994,
- [3.19.1](https://github.com/ocaml/dune/releases/tag/3.19.1) (2025-06-11): Revert changes in dune exec behaviour introduced in 3.19.0. (#11879, fixes
- [3.19.0](https://github.com/ocaml/dune/releases/tag/3.19.0) (2025-05-21): Fixed a bug that was causing cram tests attached to multiple aliases to be run multiple

Releases since 2024: 33 stable, 0 prereleases. JSON: https://dev-news.anonyfox.com/dune.json. Feed: https://dev-news.anonyfox.com/dune/feed.xml
