Previously:
https://listman.redhat.com/archives/libguestfs/2020-March/msg00063.html
https://listman.redhat.com/archives/libguestfs/2017-September/msg00203.html
Our current minimum version across projects is 4.03.
We still use "noalloc" in a few places which causes this warning:
ocamlopt.opt -warn-error +A-3 -c NBDKit.ml -o NBDKit.cmx
File "NBDKit.ml", line 155, characters 0-70:
155 | external set_name : string -> unit = "ocaml_nbdkit_set_name"
"noalloc"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Alert deprecated: [@@noalloc] should be used instead of "noalloc"
I just noticed now that this change was made in 4.03 -- I will go
ahead and fix this everywhere today.
Should we move to a newer minimum version? If we moved to 4.07 then
we could also get rid of the warnings about Pervasives (replaced by
Stdlib), eg:
File "std_utils.ml", line 329, characters 26-44:
329 | let sort_uniq ?(cmp = Pervasives.compare) xs =
^^^^^^^^^^^^^^^^^^
Alert deprecated: module Stdlib.Pervasives
Use Stdlib instead.
However 4.07 was only released in 2018, and this would mean removing
RHEL 7 compatibility (officially -- it's sort of unofficially not
supported already). More irritatingly, FreeBSD is stuck on 4.05.
There are no particularly compelling new features at the moment.
Here are the common distros and versions (< 4.07 marked with '*'):
Arch (Extra) OCaml 4.12
Debian stable OCaml 4.11
Debian testing OCaml 4.11
Fedora 31 OCaml 4.08
Fedora 35 OCaml 4.12
FreeBSD (ports) OCaml 4.05 *
OpenSUSE OCaml 4.13
RHEL 7 OCaml 4.05 *
RHEL 8 OCaml 4.07
RHEL 9 OCaml 4.11
Ubuntu 16.04 OCaml 4.02 *
Ubuntu 18.04 OCaml 4.05 *
Ubuntu 20.04 OCaml 4.08
Ubuntu 21.04 OCaml 4.11
And here are the release dates of the OCaml compiler:
OCaml version Release date
4.02 2014-08
4.03 2016-04
4.04 2016-11
4.05 2017-07
4.06 2017-11
4.07 2018-07
4.08 2019-06
4.09 2019-09
4.10 2020-02
4.11 2020-08
4.12 2021-02
4.13 2021-09
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v