Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump compat releases (for 4.09.0 with dune 2.3.0) #4097

Closed
wants to merge 2 commits into from
Closed

Bump compat releases (for 4.09.0 with dune 2.3.0) #4097

wants to merge 2 commits into from

Conversation

ghost
Copy link

@ghost ghost commented Feb 23, 2020

src_ext changes needed to fix building with 4.09.0 and dune 2.3.0. Additionally, where possible, URLs have been upgraded to https.

@ghost
Copy link
Author

ghost commented Feb 23, 2020

CI fails with 4.02.3 (https://travis-ci.org/ocaml/opam/jobs/654180813)

@rjbou
Copy link
Collaborator

rjbou commented Feb 24, 2020

Thanks for the proposal!

It fails because cppo is not compatible with ocaml <4.03. For the moment, we keep opam compatible with ocaml.4.02.3.

@ghost
Copy link
Author

ghost commented Feb 24, 2020

How can we support 4.09 and newer, while also building with 4.02? Maybe check ocaml -vnum in Makefile.sources?

@ghost
Copy link
Author

ghost commented Feb 24, 2020

Alternatively, we could bump the minimum OCaml version, if that's acceptable. However, I suspect that would break compatibility promises, so no.

@ghost
Copy link
Author

ghost commented Feb 24, 2020

Is it correct that opam master or 2.0 should build on 4.02 and 4.10, or is the idea that one must keep a [4.02..4.08] switch around for that purpose? Or is the right way bootstraping opam from scratch, ignoring switches from ~/.opam and any other global ocaml?

@rjbou
Copy link
Collaborator

rjbou commented Feb 25, 2020

It is correct, on the idea, we want opam compatible with 4.02.3 → 4.10.0. Concretely, opam packages are ftm not 4.10.0 compatible (missing stdlib-shims for 4.10.0, and adding it via a variable ocaml:version is not possible —package vars are not resolved at this step).
There is no right way to install opam, it differs from several user workflows.

But here, the blocking point is only about cppo.1.6.6 that is incompatible with ocaml.4.02.3 and concerns only the opamless opam install. Keeping it to 1.6.5 would be ok. I just tested on a switch with ocaml.4.10.0 & cppo.1.6.5 with no error.

Bumping the minimum ocaml version should be discussed. With buster release, it is no more so blocking (even if it remains the default in oldstable), and most os/distro have their packages > 4.02.3.

@ghost
Copy link
Author

ghost commented Feb 25, 2020

Only cppo.1.6.6 includes ocaml-community/cppo@2d93c68, which allows building with a newer dune. I think you're saying we can't resolve the situation by conditionally selecting lib-ext sources, correct? If that's the case, maybe I should try using make cold instead.

@rjbou
Copy link
Collaborator

rjbou commented Feb 26, 2020

The stdlib-shims seems to be a local issue (mine), not seen as an issue during the 4.10 ecosystem testing.

On having a conditional selecting lib-ext source, it depends on make cold purpose: just permitting to compile from scratch (in that case some changes are needed but it's possible), or also ensure to always have the same bundle.

@ghost
Copy link
Author

ghost commented Feb 28, 2020

I don't mind using make cold, if it works reliably and is a supported option. That said, are you saying we should try to make the ./configure && make lib-ext && make route work with 4.02 up to 4.10? If so, what can I do to fix the issues?

@rjbou
Copy link
Collaborator

rjbou commented Mar 3, 2020

lib-ext is used also for mmake cold, that's why i'm talking about it.

And yes, we want to keep ftm ./configure && make lib-ext && make work for ocaml 4.02.3 → 4.10.
After discussion with @AltGr, we have to remain unicity of sources of lib-ext, in order to always have the same bundle of version, for each opam version.
For 2.0 branch, we don't bump version unless it is needed, but we can on master, btu the problem is that cmdliner bump have a 4.03.0 restriction.

@AltGr AltGr closed this Mar 9, 2020
@rjbou
Copy link
Collaborator

rjbou commented Mar 9, 2020

Closing this PR based on 2.0.

@rjbou rjbou mentioned this pull request Jun 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants