Convert packages from opam tu cudf directly #1204

merged 7 commits into from Feb 28, 2014


None yet
1 participant

AltGr commented Feb 27, 2014

See d3dd9b0 for the details

AltGr added some commits Feb 27, 2014

@AltGr AltGr Convert packages from opam to cudf directly
We used to convert through Debian, which had its merits, but their needs differ.
Doing the conversion directly actually yields simpler code, reduces the potential bug surface,
makes the the cudf files smaller AND gives us more expressivity.

Closes #1185
Closes #1179

Instead of sorting all _mentionned_ versions of a package as done in Debian and mentionned by #1179 (comment)
I chose to sort all _existing_ versions. This has the merit of being much more stable, as we can have universes with the same packages but different constraint sets (for optional dependency handling). This used to be handled with a hack that made sure to still _mention_ the same packages.
Of course, constraints need then to be rewritten if they were mentionning versions that didn't exist, but that's not too complex.

We still rely on the Debian _version ordering_ function, there should be no harm in that.
@AltGr AltGr Skip the final 'command opam xxx failed' unless in verbose mode
this is redundant since there must be more precise error messages, and we already
got the return value of the program for that
@AltGr AltGr Cause computation: factorise a tiny bit of code b056a3c
@AltGr AltGr Fixed resolution with the internal heuristic
'dose-dummy-request' packages were left in the universe.
@AltGr AltGr Don't download archives in 'fake' mode 09b47ae
@AltGr AltGr Improve action debug printing cb1e921
@AltGr AltGr Make the --cudf option also output a graph of the actions 2902bc7

@AltGr AltGr added a commit that referenced this pull request Feb 28, 2014

@AltGr AltGr Merge pull request #1204 from OCamlPro/direct-to-cudf
Convert packages from opam tu cudf directly

@AltGr AltGr merged commit ebfebf5 into ocaml:master Feb 28, 2014

1 check passed

default The Travis CI build passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment