From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id C44655D5 for ; Wed, 9 Feb 2022 09:07:03 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.88,355,1635199200"; d="scan'208,217";a="20435642" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 09 Feb 2022 10:07:02 +0100 Received: by sympa.inria.fr (Postfix, from userid 20132) id 6B510E0384; Wed, 9 Feb 2022 10:07:02 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 37A20E037F for ; Wed, 9 Feb 2022 10:06:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=date:from:to:message-id:in-reply-to:references:subject: mime-version; bh=LyXfjQW/kSs0ynLJOhzgtEgkV/svv5daYIML1k9C6C4=; b=aJOCmN4D3uodiLGhXpM5HjTYCHJXX28tcio0MoOumcd0sSzDCl7So+mZ YKOBQzYMAMR3D1q4s9MrU7lN6qlbu+1+nDKDYr2Ep08Ejx0iB2tT7wQ2R 9Q7Z9Oi02DkXbygXBlyKlMekeYRF2BnPELSFWNKoqzLBD53Q3im05nyP3 w=; X-IronPort-AV: E=Sophos;i="5.88,355,1635199200"; d="scan'208,217";a="20435618" X-MGA-submission: =?us-ascii?q?MDGUaKQGCvoX/FoRvbMJ1sCB/E12uJeV+J6dPy?= =?us-ascii?q?VgL8DB5xDehKUsATEBt4qg1K0cvG0w3iZR/wqbFOse6RlnDgVuNEJpXD?= =?us-ascii?q?A6FuaE2PUdVWc+msO6Emhd7WLfdiiOI4/eM4g/EUJciEBpyOTOh3OKlK?= =?us-ascii?q?kK0x/FzyAZbAo9HK8MjcrPTQ=3D=3D?= Received: from zcs-store1.inria.fr ([128.93.142.28]) by mail2-relais-roc.national.inria.fr with ESMTP; 09 Feb 2022 10:06:59 +0100 Date: Wed, 9 Feb 2022 10:06:59 +0100 (CET) From: Florian Angeletti To: caml-list Message-ID: <630752073.2252125.1644397619093.JavaMail.zimbra@inria.fr> In-Reply-To: <1390603013.13233975.1642755682071.JavaMail.zimbra@inria.fr> References: <1390603013.13233975.1642755682071.JavaMail.zimbra@inria.fr> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_a92811f8-25f9-483e-8860-0ad77aceda81" X-Originating-IP: [90.61.50.120] X-Mailer: Zimbra 8.8.15_GA_4203 (ZimbraWebClient - FF96 (Linux)/8.8.15_GA_4232) Thread-Topic: OCaml 4.14.0, second alpha release Thread-Index: eAt9DUocBl209Plx0Qr0ttAbdCveIVF8ri5t Subject: [Caml-list] OCaml 4.14.0, second alpha release Reply-To: Florian Angeletti X-Loop: caml-list@inria.fr X-Sequence: 18692 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: --=_a92811f8-25f9-483e-8860-0ad77aceda81 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Dear OCaml users,=20 The release of OCaml 4.14.0 is approaching. We have released a second alpha= version to help fellow hackers join us early in our bug hunting and opam e= cosystem fixing fun (see below for the installation instructions).=20 You can see the progress on this front at https://github.com/ocaml/opam-rep= ository/issues/20501 .=20 If you find any bugs, please report them here:=20 https://github.com/ocaml/ocaml/issues=20 Compared to the last alpha release, we have exceptionally a new feature for= writing future-compatible early thread exit in 4.14.0 .=20 The second notable change is a major fix in the typechecker for escaping ex= istential types when using GADTs, that might break existing code that relie= d on the broken types. However, there are currently no known instance of pa= ckage broken by this change in the opam repository.=20 The other fixes are more usual and should be fairly safe.=20 With the current state of the opam ecosystem, we are expecting to have a fi= rst beta release ready soon.=20 Happy hacking,=20 Florian Angeletti for the OCaml team.=20 Changes compared to the first alpha=20 ------------------------------------------------=20 The full list of new features and bug fixes, is available at:=20 https://github.com/ocaml/ocaml/blob/4.14/Changes=20 ## New feature=20 - #10951: Introduce the Thread.Exit exception as an alternative way to=20 terminate threads prematurely. This alternative way will become=20 the standard way in 5.00.=20 (Xavier Leroy, review by Florian Angeletti)=20 ## Major new bug fix=20 - #10907, #10959: Wrong type inferred from existential types=20 (Jacques Garrigue and Gabriel Scherer, report by @dyzsr, review by Leo Whit= e)=20 ## New bug fixes=20 + #10596, +#10978: Add with_open_bin, with_open_text and with_open_gen to= =20 In_channel and Out_channel. Also, add In_channel.input_all.=20 (Nicol=E1s Ojeda B=E4r, review by Daniel B=FCnzli, J=E9r=E9mie Dimino, Dami= en Doligez=20 and Xavier Leroy)=20 - #10839: Fix regression of #show when printing class type=20 (=C9lie Brami, review by Florian Angeletti)=20 - #10836, #10952: avoid internal typechecker errors when checking signature= =20 inclusion in presence of incompatible types.=20 (Florian Angeletti, report by Craig Ferguson, review by Gabriel Scherer)=20 ## Deprecation fine tuning=20 + #10675, +#10937: Emit deprecation warnings when old C runtime function na= mes=20 are used. This will break C stub code that uses these old names and=20 treats warnings as errors. The workaround is to use the new names.=20 (Xavier Leroy and David Allsopp, review by S=E9bastien Hinderer and=20 Damien Doligez)=20 ## Tools fine tuning=20 - #10846: add the `-shape` command-line option to ocamlobjinfo. When readin= g a=20 `cmt` file, shape information will only be shown if that option is used.=20 (Ulysse G=E9rard, review by Florian Angeletti)=20 Installation instructions=20 ------------------------------=20 The base compiler can be installed as an opam switch with the following com= mands=20 opam update=20 opam switch create 4.14.0~alpha2 --repositories=3Ddefault,beta=3Dgit+https:= //github.com/ocaml/ocaml-beta-repository.git=20 With opam 2.1, the previous command line can be simplified to=20 opam update=20 opam switch create 4.14.0~alpha2=20 If you want to tweak the configuration of the compiler, you can switch to t= he option variant with:=20 opam update=20 opam switch create --packages=3Docaml-variants.4.14.0~alpha2+= options, --repositories=3Ddefault,beta=3Dgit+https://github.co= m/ocaml/ocaml-beta-repository.git=20 or with opam 2.1:=20 opam update=20 opam switch create ocaml-variants.4.14.0~alpha2+options =20 where is a comma separated list of ocaml-option-* packages. F= or instance, for a flambda and no-flat-float-array switch:=20 opam switch create 4.14.0~alpha2+flambda+nffa ocaml-variants.4.14.0~alpha2+= options ocaml-option-flambda ocaml-option-no-flat-float-array=20 All available options can be listed with "opam search ocaml-option".=20 If you want to test this version, it is advised to install the alpha opam r= epository=20 https://github.com/kit-ty-kate/opam-alpha-repository=20 with=20 opam repo add alpha git://github.com/kit-ty-kate/opam-alpha-repository.git= =20 This alpha repository contains various fixes in the process of being upstre= amed.=20 The source code for the alpha is also available at these addresses:=20 https://github.com/ocaml/ocaml/archive/4.14.0-alpha2.tar.gz=20 https://caml.inria.fr/pub/distrib/ocaml-4.14/ocaml-4.14.0~alpha2.tar.gz=20 --=_a92811f8-25f9-483e-8860-0ad77aceda81 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Dear OCaml users,

The release of OCa= ml 4.14.0 is approaching. We have released a second alpha version to help f= ellow hackers join us early in our bug hunting and opam ecosystem fixing fu= n (see below for the installation instructions).
You can see the progres= s on this front at https://github.com/ocaml/opam-repository/issues/20501 .<= br>
If you find any bugs, please report them here:

  https:/= /github.com/ocaml/ocaml/issues

Compared to the last alpha release, w= e have exceptionally a new feature for writing future-compatible early thre= ad exit in 4.14.0 .
The second notable change is a major fix in t= he typechecker for escaping existential types when using GADTs, that might = break existing code that relied on the broken types. However, there are cur= rently no known instance of package broken by this change in the opam repos= itory.
The other fixes are more usual and should be fairly safe.<= /div>

With the current state of the opam ecosystem, we are expectin= g to have a first beta release ready soon.

Happy hacking,
Florian= Angeletti for the OCaml team.

Changes compared to the first alpha------------------------------------------------

The full list of = new features and bug fixes, is available at:

  https://github.c= om/ocaml/ocaml/blob/4.14/Changes

## New feature

- #10951: Int= roduce the Thread.Exit exception as an alternative way to
  termina= te threads prematurely.  This alternative way will become
  th= e standard way in 5.00.
  (Xavier Leroy, review by Florian Angelett= i)


## Major new bug fix


- #10907, #10959: Wrong type = inferred from existential types
  (Jacques Garrigue and Gabriel Sch= erer, report by @dyzsr, review by Leo White)


## New bug fixes
+ #10596, +#10978: Add with_open_bin, with_open_text and with_open_gen= to
  In_channel and Out_channel. Also, add In_channel.input_all.   (Nicol=E1s Ojeda B=E4r, review by Daniel B=FCnzli, J=E9r=E9m= ie Dimino, Damien Doligez
   and Xavier Leroy)

- #10839= : Fix regression of #show when printing class type
  (=C9lie Brami,= review by Florian Angeletti)

- #10836, #10952: avoid internal typec= hecker errors when checking signature
  inclusion in presence of in= compatible types.
  (Florian Angeletti, report by Craig Ferguson, r= eview by Gabriel Scherer)

## Deprecation fine tuning

+ #10675= , +#10937: Emit deprecation warnings when old C runtime function names
&= nbsp;  are used.  This will break C stub code that uses these old= names and
   treats warnings as errors.  The workaround = is to use the new names.
   (Xavier Leroy and David Allsopp, r= eview by S=E9bastien Hinderer and
    Damien Doligez)
=
## Tools fine tuning

- #10846: add the `-shape` command-line opt= ion to ocamlobjinfo. When reading a
  `cmt` file, shape information= will only be shown if that option is used.
  (Ulysse G=E9rard, rev= iew by Florian Angeletti)


Installation instructions
---------= ---------------------
The base compiler can be installed as an opam swit= ch with the following commands

opam update
opam switch create 4.1= 4.0~alpha2 --repositories=3Ddefault,beta=3Dgit+https://github.com/ocaml/oca= ml-beta-repository.git

With opam 2.1, the previous command line can = be simplified to

opam update
opam switch create 4.14.0~alpha2
=
If you want to tweak the configuration of the compiler, you can switch = to the option variant with:

opam update
opam switch create <sw= itch_name> --packages=3Docaml-variants.4.14.0~alpha2+options,<option_= list> --repositories=3Ddefault,beta=3Dgit+https://github.com/ocaml/ocaml= -beta-repository.git

or with opam 2.1:

opam update
opam sw= itch create <switch_name> ocaml-variants.4.14.0~alpha2+options <op= tion_list>

where <option_list> is a comma separated list of= ocaml-option-* packages. For instance, for a flambda and no-flat-float-arr= ay switch:

opam switch create 4.14.0~alpha2+flambda+nffa ocaml-varia= nts.4.14.0~alpha2+options ocaml-option-flambda ocaml-option-no-flat-float-a= rray

All available options can be listed with "opam search ocaml-opt= ion".

If you want to test this version, it is advised to install the= alpha opam repository

https://github.com/kit-ty-kate/opam-alpha-rep= ository

with

opam repo add alpha git://github.com/kit-ty-kate= /opam-alpha-repository.git

This alpha repository contains various fi= xes in the process of being upstreamed.

The source code for the alph= a is also available at these addresses:

 https://github.com/oca= ml/ocaml/archive/4.14.0-alpha2.tar.gz
 https://caml.inria.fr/pub/di= strib/ocaml-4.14/ocaml-4.14.0~alpha2.tar.gz

--=_a92811f8-25f9-483e-8860-0ad77aceda81--