The odoc team is pleased to announce the release of odoc 3.2.1!
Highlights
OCaml 5.5.0 support
odoc now compiles against, and produces documentation for, OCaml 5.5.0 (@panglesd, @xvw, #1406).
OxCaml support
odoc now supports OxCaml natively, thanks to @lukemaurer and @art-w (#1399). Right now this is very bare-bones, but full support for the various features of OxCaml is already in progress. If you’re interested, check out the PRs!
One thing worth flagging: because OxCaml is moving much faster than upstream OCaml, each odoc release will likely support only a single OxCaml release, in contrast to our usual policy of supporting every OCaml back to 4.08. If you’re documenting an OxCaml project, please use a matched pair of odoc and oxcaml-compiler.
Added
- Persistent LaTeX macros in the HTML/KaTeX backend (@dlesbre, #1391).
- The
markdown-generatecommand now accepts multiple.odoclfiles in a single invocation, so you no longer need to wrap it in a shell loop (@davesnx, #1387).
Changed / Fixed
- Fixed two long-standing compile-time crashes, #930 and #1385 (@jonludlam, #1400).
- The Markdown backend now assumes
ocamlas the language id on declarations, and collects code snippets into a single block with comments rather than splitting variants/records per constructor/field. - URL remapping now works correctly for page references (@jonludlam, #1395).
- Incremental builds no longer break under the conditions described in #1396 (@jonludlam, #1402).
--warn-errornow reliably promotes all warnings to errors (@jonludlam, #1402).- Polymorphic arguments are no longer missing their parentheses (@art-w, #1404).
- Fixed a regression that broke docs for packages depending on
baseunder OCaml 5.5.0 (@jonludlam, #1426, #1427). - Fixed a regression that broke docs for packages depending on
merlin-lib(@jonludlam, #1429, #1430).
Installation
opam update
opam install odoc
Use
Please use odoc_driver to build and test your package’s docs locally and to see how they will look on ocaml.org.
Odig and Dune continue to work as before, no changes required. Full support for all of the features of odoc 3.x is being worked on in Dune.
Thanks
Thanks to everyone who contributed code, reviews, bug reports, and testing for this release: @art-w, @davesnx, @dlesbre, @jonludlam, @lukemaurer, @panglesd, and @xvw, and anyone else I’ve forgotten!
As always, please report any issues on github.