Use mamba to present unsolvable environments quickly [testing]
This MR updates the render.py
script to use mamba
to render environments, and if that passes do it all again with conda
.
This is because mamba
presents a human-readable description of an unsolvable environment in a tiny fraction of the time that conda
attempts to work out all of the possible conflicts (and then prints a thousand lines of potential conflicts, most of which don't actually conflict). If mamba
does solve the environment, we go back to conda
to get the canonical environment solution (mamba
and conda
do things subtly differently, and I trust conda
more).
As an example, the failure from https://git.ligo.org/computing/conda/-/jobs/1549332 would now present the following log entry after only 13 seconds (rather than the 2 hours it actually took):
[2021-09-15 12:34:50] igwn-conda | render | CRITICAL | Encountered problems while solving:
- package gds-frameio-base-2.19.5-h8cbb357_2 requires gds-base >=2.19.7,<2.20.0a0, but none of the providers can be installed