Previously discussed: https://www.redhat.com/archives/libguestfs/2017-September/msg00203.html
Currently libguestfs and virt-v2v require OCaml >= 4.01. (That's perhaps theoretical, as I don't think anyone is really compiling them with such an old compiler). This causes a bunch of trouble. To my mind the major things are: - Having to have the "Bytes" compatibility module (added in OCaml 4.02). - Conditional on -runtime-variant _pic (added in OCaml 4.03). - Not being able to use ppx extension points, which means we have lots of repetitive string_of_* functions that could be mostly eliminated (needs OCaml >= 4.02). - Match + catch (needs OCaml >= 4.02) https://blog.janestreet.com/pattern-matching-and-exception-handling-unite/ - Warnings about "noalloc" (>= 4.03) and "Pervasives" (>= 4.07). I guess it's also the case that some dependencies that we require don't actually work on OCaml 4.01. Here are some common distros and the versions of OCaml available: Arch (Extra) OCaml 4.09 Debian stable OCaml 4.05 Debian testing OCaml 4.08 Fedora 31 OCaml 4.08 OpenSUSE OCaml 4.05 RHEL 7 OCaml 4.05 RHEL 8 OCaml 4.07 Ubuntu 16.04 OCaml 4.02 Ubuntu 18.04 OCaml 4.05 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 I think we should move the minimum to 4.05 since that covers everything except the old Ubuntu LTS (and that's their fault for releasing an LTS with a version of OCaml which was already nearly 2 years out of date, and not updating it in the meantime). 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 _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
