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

Prepare for new menuinst; non-win platforms #11035

Closed
wants to merge 27 commits into from

Conversation

jaimergp
Copy link
Contributor

@jaimergp jaimergp commented Nov 10, 2021

Part of the CEP efforts.

Right now this is using menuinst from the experimental builds available at jaimergp/label/menuinst_dev, which are coming from this other PR (cep branch).

Summary of changes:

  • Remove on_win checks for menuinst code paths.
  • Use the new menuinst API, falling back to menuinst._legacy when needed.
  • Enable --shortcuts and --no-shortcuts CLI flags in non-windows platforms.
  • Add --shortcuts-only†‡ flag to CLI and context, which adds better support for constructor's menu_packages option.
  • Add menuinst=2 specific tests in the integration suite

† This allows us to remove the conda-standalone constructor --mk-menus/--rm-menus code paths, simplifying the patches on the conda-standalone project. Note this can be further simplified by improving the conda run support on conda-standalone.

‡ This can be implemented with a dual --shortcuts too. If shortcuts is set to True (bare --shortcuts), same behaviour is kept. If the user sets it to a list of packages, then it behaves as shortcuts_only (e.g. --shortcuts=package_a,package_b). However, this is trickier to implement (and I am not sure it's even possible without big changes to context / argparse). Hence why I opted for --shortcuts-only above: it is one more flag, yes, but maintains better legacy behaviour and we can see precedents for this in the --channel-priority expansion. Note it can be used several times like --shortcuts-only=python --shortcuts-only=numpy.

@jaimergp

This comment was marked as outdated.

@jaimergp jaimergp changed the title Prepare for new menuinst; non-win platforms (WIP) Prepare for new menuinst; non-win platforms Mar 28, 2022
@jaimergp jaimergp closed this Mar 28, 2022
@jaimergp jaimergp reopened this Mar 28, 2022
@jaimergp jaimergp marked this pull request as ready for review March 29, 2022 10:00
@jaimergp jaimergp requested a review from a team as a code owner March 29, 2022 10:00
@travishathaway travishathaway added the source::partner created by or for an Anaconda, Inc. partner company label Jun 28, 2022
@jaimergp
Copy link
Contributor Author

@kenodegard, I am seeing some environment stacking errors strikingly similar those described in #11257 (comment) and related work (linux integration group 1). I don't get how or why changing menuinst stuff would affect that part of the code but what do I know... do you mind sharing any pointers you might have if you have time at some point? Thank you!

@jaimergp
Copy link
Contributor Author

Well turns out you should NOT install things after conda init --dev because if the dependencies pull in conda again it might undo the initialization and you are back to store-bought conda, which might break tests unexpectedly. I am surprised it didn't break more stuff, but I guess we should add a test to check this condition specifically...

@jaimergp jaimergp added the build::review trigger a build for this PR label Sep 26, 2022
@jaimergp
Copy link
Contributor Author

Continues in #11882 (token needed for canary builds)

@jaimergp jaimergp closed this Sep 26, 2022
@github-actions github-actions bot added the locked [bot] locked due to inactivity label Sep 27, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 27, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
build::review trigger a build for this PR cla-signed [bot] added once the contributor has signed the CLA locked [bot] locked due to inactivity source::partner created by or for an Anaconda, Inc. partner company
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

3 participants