Le 11/07/2019 à 22:24, Ralf Treinen a écrit : > I see that you have uploaded ocaml 4.08 to experimental, so that is great > news. I suppose that means that an ocaml transition is upcoming, once > ocaml has made it through the NEW queue (which currently has a 5 month > backlog)?
It depends on when it will make through the NEW queue... Besides, there is an ocaml 4.09.0~beta1, so I guess it's wiser to wait for 4.09.0 to do the transition. A few words about OCaml 4.08.0... There has been many changes since unstable's version (4.05.0), which dates back to two years ago (at least). In particular: - the configure script has been changed to autoconf - ocaml-mode has been dropped (now a separate project) - the nums library has been dropped (probably also a separate project, but there is also zarith) Many debian/patches do not apply and are not obviously adapted; I chose to drop them for this upload to experimental. In particular: - a patch to allow compilation of ocaml-generated C files with a C++ compiler, submitted upstream but somehow forgotten (the error being multiple declarations of the same name) - a patch to change the behaviour of -custom, which has been rejected upstream because they don't want people to use -custom (the error being stripping such binaries would remove also the bytecode) - a patch to use deterministic names for preprocessed files, never submitted upstream it seems (the error being unreproducible builds) - a patch to take into account hardening flags, never submitted I may or may not rewrite those patches; if someone else does it, please also submit upstream. Now comments on the packaging... - dh_autoreconf and dh_dwz fail miserably; it should be investigated - I wrote a new script to dispatch the files to the binary packages. I didn't find an easy way to dispatch manpages (the .3o ones, there are so many of them and stdlib, otherlibs, compiler-libs are all mixed), so I put them in a new binary package ocaml-man (hence the NEW processing) About 4.09.0... (I'm writing the following as I am thinking about it) The graph library has moved to a separate project. This means there is no X any more in OCaml (the -nox distinction is no longer relevant). I propose to review the binary package layout: - put contents of /usr/lib/ocaml to libstdlib-ocaml{,-dev} and handle it like other OCaml libraries (in particular w.r.t. dh_ocaml) - put /usr/bin/ocamlrun* (and its manpages) to ocaml-base (and make it depend on libstdlib-ocaml) - put rest of /usr/bin (and its manpages) to ocaml (and make it depend on libstdlib-ocaml-dev) - put rest of /usr/share/man (.3o manpages) to libstdlib-ocaml-doc - retire ocaml-interp, ocaml-compiler-libs, ocaml-base-nox and ocaml-nox (i.e. make them transitional now and later remove them) Rationale: - ocaml-base/ocaml would be mostly empty with the current scheme - ocaml-interp contains only "ocaml" these days and it's counter-intuitive to not have "ocaml" installed when one installs the "ocaml" package - compiled-libs are now installed upstream, fully acknowledged by the community, and under the same license as everything else I expect these changes to break things in reverse-dependencies... but isn't now (i.e. the beginning of a new release cycle) the right moment to break things? Any opinions? Cheers, -- Stéphane