For my sins I'm doing a scratch build of OCaml 5.0.0 alpha 1 here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=91701007
Looking at this there are quite a few larger changes in packaging:
- It seems as if this generates META files for stdlib libraries,
whereas previously those were generated by ocaml-findlib. (This is
a more sensible way to do things, but still a large packaging
change from our point of view.)
- It puts libraries like dynlink, unix etc into subdirectories,
previously only threads was in a subdirectory.
- Various extra unexpected files are packaged. See diff attached.
I'm expecting this will break a lot of things.
5.0.0 also includes multicore support, and is not fully backwards
compatible with all C extensions. I believe the main change will be
for extensions which are relying on converting raw C pointers to OCaml
pointers without wrapping/hiding them in a Custom value. An example
of the deprecated behaviour is in ocaml-ancient which is a package I
will likely drop.
Some other useful links:
https://discuss.ocaml.org/t/ocaml-5-0-first-normal-alpha-release/10216
https://github.com/ocaml/opam-repository/issues/21526
https://github.com/ocaml/ocaml/blob/5.0/Changes
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org