rattler icon indicating copy to clipboard operation
rattler copied to clipboard

libsolv-rs is choosing slightly older libgfortran5 (on macos-arm64)

Open wolfv opened this issue 2 years ago • 3 comments

When installing numpy on macOS ARM64, the new libsolv implementation picks libgfortran5-12.2.0-h0eea778_32.

Conda and mamba choose libgfortran5-12.3.0-ha3a6a3e_0.

I wonder if that has to do with libgfortran-5.0.0-12_3_0_hd922786_0 vs. libgfortran-5.0.0-12_2_0_hd922786_32. If we compare / sort by build number vs. build string we might pick the older one (because it has a much higer build number).

wolfv avatar Jul 23 '23 09:07 wolfv

I think what happens is that first libgfortran-5.0.0-12_2_0_hXXX_32 is picked (also with micromamba).

With micromamba, the following happens:

  • libgfortran-5.0.0 depends on libgfortran5 >=11.3, and then libgfortran5-12.3.0 is selected (which has a constraint on libgfortran *_0). Since we selected _32 before, it backtracks, and selects the appropriate 12_3_0_hXXX_0 version. However, the rattler solver picks 12.2 immediately and doesn't do another round of backtracking.

wolfv avatar Jul 23 '23 11:07 wolfv

A test-case that shows this behavior was added in #267

wolfv avatar Jul 23 '23 14:07 wolfv

This issue has become quite stale, especially since we use resolvo most of the time. Would you mind if I close this?

baszalmstra avatar Feb 29 '24 10:02 baszalmstra