conda-forge / miniforge

A conda-forge distribution.
https://conda-forge.org/miniforge
Other
6.15k stars 318 forks source link

Enforcing system requirements - Miniforge3 Blocker #614

Closed jaimergp closed 1 week ago

jaimergp commented 1 month ago

I noticed that we are documenting now our base system requirements. constructor right now won't do much to enforce it though. I've opened https://github.com/conda/constructor/pull/809 to deal with this upstream but it hasn't landed yet (needs review).

When it does land, we should probably add this to construct.yaml so the installer fails to start:

virtual_specs:
  - __glibc >=2.17  # [linux]
  - __osx >=10.13   # [osx]
isuruf commented 1 month ago

So, are we going to keep making micromamba and conda-standalone with the older glibc versions? Otherwise that CONDA_EXEC call is going to crash without a useful message.

hmaarrfk commented 1 month ago

Note that i haven't made the latest the official release. So I'm going to hold off until we resolve this discussion

jaimergp commented 1 month ago

So, are we going to keep making micromamba and conda-standalone with the older glibc versions?

We can either do that, or add some bash code to find out about __glibc and __osx without conda in that PR. We can also add some error handling to the conda-standalone crash saying something like "We couldn't identify your system requirements. A possible explanation is that you may be using an older GLIBC version, but we require >=2.17".

Let me know which one is preferred.

jaimergp commented 1 month ago

add some bash code to find out about __glibc and __osx without conda in that PR

Ended up writing some code for this. Reviews welcome 🙏

hmaarrfk commented 1 month ago

I take it we are waiting for your hard work to get merged: https://github.com/conda-forge/constructor-feedstock/pull/80

including this message for general visibility about the process!

jaimergp commented 1 month ago

That's one blocker resolved, yes. Unfortunately there's another one in conda-standalone at https://github.com/conda/conda-standalone/pull/90. We need that one to make a release including https://github.com/conda/conda-standalone/pull/89.

It will be ready by EOD or Monday the latest.

jaimergp commented 1 month ago

Sorry about the delay. https://github.com/conda-forge/conda-standalone-feedstock/pull/79 is now merged so this should get unblocked briefly. We need to add the virtual_specs config to our config. Opening a PR now.

hmaarrfk commented 1 month ago

I was hoping we could have "1 release" without any blackouts periods, so we can tell people that need to freeze to an older installer to use that.

is that still on the table?

jaimergp commented 1 month ago

We will need to comment out a couple things in the input file, but yes, we have time. We can release brownout-equipped release right after.

hmaarrfk commented 1 month ago

great! thanks.

In supporting people at my company i find that error messages need to have clear instructions with them.

You are encouraged to do X. But if you want, you can pin to Y and add to your technical debt.

is the kind of message I envision.

marcoesters commented 4 weeks ago

FYI, we just released a patch version for constructor that should move #626 forward once the package is built and uploaded.