-
Notifications
You must be signed in to change notification settings - Fork 323
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Announce for the second release candidate of OCaml 5.1.0 (#1513)
* Announce for the second release candidate of OCaml 5.1.0 * Name fix * Various fixes * One minor spelling/formatting change change log to changelog * Fix format --------- Co-authored-by: Christine Rose <[email protected]>
- Loading branch information
1 parent
783c8ee
commit 53c0890
Showing
1 changed file
with
59 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
--- | ||
title: OCaml 5.1.0 - Second Release Candidate | ||
description: Second Release Candidate of OCaml 5.1.0 | ||
date: "2023-08-29" | ||
tags: [ocaml, release] | ||
changelog: | | ||
## Last Minute Bug Fixes | ||
### Type System: | ||
* (*breaking change*) [#6941](https://github.com/ocaml/ocaml/issues/6941), [#11187](https://github.com/ocaml/ocaml/issues/11187), +[#12483](https://github.com/ocaml/ocaml/issues/12483): prohibit using classes through recursive modules | ||
inheriting or including a class belonging to a mutually-recursive module | ||
would previous behave incorrectly, and now results in a clean error. | ||
(Leo White, review by Gabriel Scherer and Florian Angeletti) | ||
### Runtime | ||
- [#12481](https://github.com/ocaml/ocaml/issues/12481), [#12505](https://github.com/ocaml/ocaml/issues/12505): Fix incorrect initialization of array expressions | ||
`[|e1;...;eN|]` when `N` is large enough to require major heap allocation. | ||
(Xavier Leroy, report by Andrey Popp, analysis by KC Sivaramakrishnan | ||
and Vincent Laviron, review by Gabriel Scherer) | ||
--- | ||
In the last two weeks, two significant bugs have been discovered in the release candidate for OCaml 5.1.0 (one affecting the type system, another in the runtime). | ||
|
||
Those bugs are now fixed and we are publishing a second release candidate to check that everything is in order before the release in the upcoming week. | ||
|
||
If you find any bugs, please report them on [OCaml's issue tracker](https://github.com/ocaml/ocaml/issues). | ||
|
||
The full changelog for OCaml 5.1.0 is available [on GitHub](https://github.com/ocaml/ocaml/blob/5.1/Changes). | ||
A short summary of the two fixed bugs in this release candidate is also available below. | ||
|
||
--- | ||
## Installation Instructions | ||
|
||
The base compiler can be installed as an opam switch with the following commands on opam 2.1 and later: | ||
```bash | ||
opam update | ||
opam switch create 5.1.0~rc2 | ||
``` | ||
|
||
The source code for the release candidate is also directly available on: | ||
|
||
* [GitHub](https://github.com/ocaml/ocaml/archive/5.1.0-rc2.tar.gz) | ||
* [OCaml archives at Inria](https://caml.inria.fr/pub/distrib/ocaml-5.1/ocaml-5.1.0~rc2.tar.gz) | ||
|
||
### Fine-Tuned Compiler Configuration | ||
|
||
If you want to tweak the configuration of the compiler, you can switch to the option variant with: | ||
```bash | ||
opam update | ||
opam switch create <switch_name> ocaml-variants.5.1.0~rc2+options <option_list> | ||
``` | ||
where `<option_list>` is a comma-separated list of `ocaml-option-*` packages. For instance, for a `flambda` and `no-flat-float-array` switch: | ||
```bash | ||
opam switch create 5.1.0~rc2+flambda+nffa ocaml-variants.5.1.0~rc2+options ocaml-option-flambda ocaml-option-no-flat-float-array | ||
``` | ||
|
||
All available options can be listed with `opam search ocaml-option`. |