-
Notifications
You must be signed in to change notification settings - Fork 371
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Cannot install irmin-unix.1.3.3 in a ocaml-base-compiler.4.05.0 switch #4203
Comments
The solver take too much time find a solution.
To reduce this time, you can also fix some dependencies version. |
Thanks @rjbou for your quick reply and suggestion! actually I am a bit puzzled to notice this behavior, given the installation attempt was done in a fresh switch… (it didn't work either in a non-empty switch anyway) Do you think we can find a better solution than this workaround?
|
We have some upcoming solver improvements in a future version of opam that will resolve these, but the current workaround in a released opam is indeed to tighten the specifications. You could have a go at tightening the bounds on some of the dependencies and submitting that to opam-repository, where we could merge it as a workaround. (for historical versions of packages, tightening bounds is no big deal). As a higher level question, is there any reason you can't use irmin.2.1 for learn-ocaml? There are significant improvements from the last few years that you'll miss with irmin.1.x. cc @samoht @craigfe |
Thanks @avsm for your feedback!
the main reason was just that learn-ocaml is tied to ocaml 4.05.0 currently (notably as its ppx codebase relies on the 4.05 AST) so a possible strategy would have been to add irmin.1.4 for now to address ocaml-sf/learn-ocaml#348, then later migrate to irmin 2.1 (as soon as the ocaml-version is bumped) Otherwise, another solution (that would avoid this irmin migration) would be to use irmin 2.1 from now on, making learn-ocaml master require, say, ocaml @yurug do you have an opinion / objection on this idea? |
Thanks for providing a failure case, and sorry for the trouble. I'll record it for our solver benches. |
Cudf file for the solver request: https://gist.github.com/AltGr/7d7bc4544dc53a1e28f52b25ac80d282 |
Using the z3 solver variant, the resolution succeeds in 15s. You need opam compiled with z3 installed ( |
href: ocaml/opam#4203 (comment) With this patch, time bash -c 'yes n | opam install irmin-unix.1.3.3' in an ocaml-base-compiler.4.05.0 switch only takes 17.9s (i/o ~10mn).
Hi @AltGr
OK! so I've just opened PR ocaml/opam-repository#16508 following @avsm's suggestion. FYI after the proposed pinnings, the constraints resolution with the default solver only takes 17.9s:
|
Thanks for the feedback! |
This is hopefully improved both with opam 2.1.0 and with the recompiled solver in opam 2.0.9. It was also mitigated in opam-repository. Please re-open if not! |
With @Aleridia, we try to install irmin in a OCaml 4.05.0 switch, but we get the following issue:
Any ideas? some other infos I should provide to make this report more complete?
The text was updated successfully, but these errors were encountered: