The release of OCaml 4.13.0 is getting closer.
The set of new features has been stabilized, and core opam packages already
work with this release (see http://check.ocamllabs.io). After two alpha releases,
we have created a first beta version to help you update your softwares and libraries
ahead of the release.
If you find any bugs, please report them here:
The full release of OCaml 4.13.0 is currently planned for September.
Happy hacking,
Florian Angeletti for the OCaml team.
Installation instructions
The base compiler can be installed as an opam switch with the following commands
opam update
opam switch create 4.13.0~beta1 --repositories=default,beta=git+https://github.com/ocaml/ocaml-beta-repository.git
If you want to tweak the configuration of the compiler, you can switch to the option variant with:
opam update
opam switch create <switch_name> --packages=ocaml-variants.4.13.0~beta1+options,<option_list> --repositories=default,beta=git+https://github.com/ocaml/ocaml-beta-repository.git
where <option_list>
is a comma separated list of ocaml-option-* packages. For instance, for a flambda and no-flat-float-array switch:
opam switch create 4.13.0~beta1+flambda+nffa --packages=ocaml-variants.4.13.0~beta1+options,ocaml-option-flambda,ocaml-option-no-flat-float-array --repositories=default,beta=git+https://github.com/ocaml/ocaml-beta-repository.git
All available options can be listed with opam search ocaml-option
.
The source code for the beta release is also available at these addresses:
https://github.com/ocaml/ocaml/archive/4.13.0-beta1.tar.gz
https://caml.inria.fr/pub/distrib/ocaml-4.13/ocaml-4.13.0~beta1.tar.gz
Changes since the last alpha release
-
10549: Stack overflow detection and naked pointers checking for ARM64
(Xavier Leroy, review by Stephen Dolan) -
10442, 10446: Fix regression in the toplevel to #directory caused by
corrections and improvements to the Load_path in 9611. #directory now
adds the path to the start of the load path again (so files in the newly
added directory take priority).
(David Allsopp, report by Vasile Rotaru, review by Florian Angeletti
and Nicolás Ojeda Bär) -
10450, 10558: keep %apply and %revapply primitives working with abstract
types. This breach of backward compatibility was only present in the alpha
releases of OCaml 4.13.0 .
(Florian Angeletti, review by Thomas Refis and Leo White) -
10380: Correct handling of UTF-8 paths in configure on Windows
(David Allsopp, review by Sébastien Hinderer) -
10543: Fix Ast_mapper to apply the mapping function to the constants in
“interval” patternsc1..c2
.
(Guillaume Petiot, review by Gabriel Scherer and Nicolás Ojeda Bär) -
10550, 10551: fix pretty-print of gadt-pattern-with-type-vars
(Chet Murthy, review by Gabriel Scherer) -
10497: Styling changes in the post-processed HTML manual (webman)
(Wiktor Kuchta, review by Florian Angeletti)