From: Florian Angeletti <florian.angeletti@inria.fr>
To: caml-list <caml-list@inria.fr>
Subject: [Caml-list] OCaml 4.13.0, second alpha release
Date: Mon, 19 Jul 2021 10:08:01 +0200 (CEST) [thread overview]
Message-ID: <699800193.58280357.1626682081811.JavaMail.zimbra@inria.fr> (raw)
In-Reply-To: <646221067.24276589.1622831690277.JavaMail.zimbra@inria.fr>
[-- Attachment #1: Type: text/plain, Size: 4720 bytes --]
Dear OCaml users,
The release of OCaml 4.13.0 is approaching. We have released a second alpha
version to help fellow hackers join us early in our bug hunting and
opam ecosystem fixing fun (see below for the installation instructions).
You can see the progress on this front at https://github.com/ocaml/opam-repository/issues/18791 .
Beyond the usual bug fixes (see the full list below), this second alpha integrates a new feature for native
generated code: poll points. Those poll points currently fixes some issues with signals in non-allocating loops
in native code. More importantly, they are a prerequisite for the multicore runtime.
Another change is the removal of the removal of interbranch propagation of type information.
The feature, already postponed from 4.12, has been removed to focus for now on better error
message in the `-principal` mode.
If you find any bugs, please report them here:
https://github.com/ocaml/ocaml/issues
The first beta release may follow soon since the opam ecosystem is in quite good shape;
and we are on track for a full release in 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~alpha2 --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~alpha2+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~alpha2+flambda+nffa --packages=ocaml-variants.4.13.0~alpha2+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".
If you want to test this version, it is advised to install the alpha opam repository
https://github.com/kit-ty-kate/opam-alpha-repository
with
opam repo add alpha git://github.com/kit-ty-kate/opam-alpha-repository.git
This alpha repository contains various fixes in the process of being upstreamed.
The source code for the alpha is also available at these addresses:
https://github.com/ocaml/ocaml/archive/4.13.0-alpha2.tar.gz
https://caml.inria.fr/pub/distrib/ocaml-4.13/ocaml-4.13.0~alpha2.tar.gz
------------------------------------
Changes since the first alpha release
-------------------------------------
New feature:
-----------------
- #10039: Safepoints
Add poll points to native generated code. These are effectively
zero-sized allocations and fix some signal and remembered set
issues. Also multicore prerequisite.
(Sadiq Jaffer, Stephen Dolan, Damien Doligez, Xavier Leroy,
Anmol Sahoo, Mark Shinwell, review by Damien Doligez, Xavier Leroy,
and Mark Shinwell)
New bug fixes:
-------------------
- #10449: Fix major GC work accounting (the GC was running too fast).
(Damien Doligez, report by Stephen Dolan, review by Nicolás Ojeda Bär and
Sadiq Jaffer)
- #10454: Check row_more in nondep_type_rec.
(Leo White, review by Thomas Refis)
- #10468: Correctly pretty print local type substitution, e.g. type t := ...,
with -dsource
(Matt Else, review by Florian Angeletti)
- #10461, #10498: `caml_send*` helper functions take derived pointers
as arguments. Those must be declared with type Addr instead of Val.
Moreover, poll point insertion must be disabled for `caml_send*`,
otherwise the derived pointer is live across a poll point.
(Vincent Laviron and Xavier Leroy, review by Xavier Leroy and Sadiq Jaffer)
- #10478: Fix segfault under Windows due to a mistaken initialization of thread
ID when a thread starts.
(David Allsopp, Nicolás Ojeda Bär, review by Xavier Leroy)
Removed feature:
------------------------
* #9811: remove propagation from previous branches
Type information inferred from previous branches was propagated in
non-principal mode. Revert this for better compatibility with
-principal mode.
For the time being, infringing code should result in a principality warning.
(Jacques Garrigue, review by Thomas Refis and Gabriel Scherer)
The up-to-date list of changes for OCaml 4.13 is available at https://github.com/ocaml/ocaml/blob/4.13/Changes .
[-- Attachment #2: Type: text/html, Size: 5234 bytes --]
next prev parent reply other threads:[~2021-07-19 8:08 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-04 18:34 [Caml-list] OCaml 4.13.0, first " Florian Angeletti
2021-07-19 8:08 ` Florian Angeletti [this message]
2021-08-25 18:16 ` [Caml-list] OCaml 4.13.0, first beta release Florian Angeletti
2021-09-10 13:05 ` [Caml-list] OCaml 4.13.0, first release candidate Florian Angeletti
2021-09-16 8:32 ` [Caml-list] OCaml 4.13.0, second " Florian Angeletti
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=699800193.58280357.1626682081811.JavaMail.zimbra@inria.fr \
--to=florian.angeletti@inria.fr \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox