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

Add tests for micromamba, transmuation and miniforge #503

Closed
wants to merge 1 commit into from

Conversation

chrisburr
Copy link
Contributor

@chrisburr chrisburr commented Mar 13, 2022

This is the promised PR to improve the test coverage, in particular:

  • Run all of the examples with both conda-standalone and micromamba
  • Add an example that looks like miniforge (not technically needed, but tests a anaconda.org hosted channel and helps the next point)
  • Adds an example which uses transmutation of packages to .conda

Along the way I found a bug that the CI often tested the latest release from the defaults channel rather than the current commit. I've fixed this by setting channel_priority: strict.

@anaconda-issue-bot anaconda-issue-bot added the cla-signed [bot] added once the contributor has signed the CLA label Mar 13, 2022
@jezdez jezdez mentioned this pull request Mar 14, 2022
3 tasks
@chrisburr chrisburr force-pushed the um-testing branch 7 times, most recently from 0295cdf to 4a38a10 Compare March 14, 2022 13:29
@chrisburr chrisburr marked this pull request as ready for review March 14, 2022 13:54
@chrisburr
Copy link
Contributor Author

I'm not testing on Windows as micromamba isn't used for Windows+miniforge and I don't have the means to debug it easily. (It seems like the tests deadlock in the CI.)

@chrisburr
Copy link
Contributor Author

For reference here is the deadlocked pipeline for Windows: https://github.com/conda/constructor/runs/5536429721?check_suite_focus=true

Copy link
Member

@jezdez jezdez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a quick review and question about the which use, minor need for fixing the condition.

scripts/run_examples.py Outdated Show resolved Hide resolved
which_cmd = ["conda", "run", "--name", env_name, "which", "micromamba"]
errored, micromamba_path = _execute(which_cmd)
if errored:
_execute(["conda", "create", "--name", env_name, "--yes", "-c", "conda-forge", "micromamba"])
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't this be checking latest micromamba version? Usually new micromamba releases break something and this would make constructor break too. (Unless micromamba tests itself against constructor)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't this be checking latest micromamba version?

Yes it is, though I think it's good to catch those breaks here. As it's maturing I hope micromamba's test suite is becoming good enough to minimise the amount of regressions for constructor.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no test at all in micromamba for constructor which is why there are constant failures in miniforge.
I think it's good to have a test here, but it should be after a constructor test has been added to micromamba.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we pin the micromamba version and auto update it via auto update PRs?

@jaimergp
Copy link
Contributor

@chrisburr is it ok if I resume the work here and commit to your branch or would you rather I open a new PR based on this one?

@chrisburr
Copy link
Contributor Author

@jaimergp Thanks for picking this up! I'm happy for you to do whichever you find easiest 😄

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Jan 17, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jan 17, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cla-signed [bot] added once the contributor has signed the CLA locked [bot] locked due to inactivity
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

6 participants