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

Fix display of env activation message and co #3715

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Hind-M
Copy link
Member

@Hind-M Hind-M commented Dec 30, 2024

@Hind-M Hind-M added the release::bug_fixes For PRs fixing bugs label Dec 30, 2024
@Hind-M Hind-M marked this pull request as ready for review December 30, 2024 15:34
libmamba/include/mamba/core/transaction.hpp Show resolved Hide resolved
micromamba/tests/test_create.py Outdated Show resolved Hide resolved
Comment on lines +540 to +545
// Print activation message only if the environment is freshly created
if (create_env)
{
print_activation_message(ctx);
}

Copy link
Member

Choose a reason for hiding this comment

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

Currently the message is shown for installations and updates if the target prefix is different than the currently activated one. Should we preserve this behavior?

Also, should the message rather be printer after the call to install_for_other_pkgmgr (namely just before the else)?

Copy link
Member Author

Choose a reason for hiding this comment

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

Currently the message is shown for installations and updates if the target prefix is different than the currently activated one. Should we preserve this behavior?

Indeed, and I was going to keep it that way but I realized conda was only showing activation message with environment creation, and that actually makes more sense and is less verbose (recommending env activation sounds relevant when the user creates a new environment but seems redundant when installing/updating).
For now, I suggest to do it this way, and if we want to restore the previous behavior, that should be straightforward by adding print_activation_message where needed.

Also, should the message rather be printer after the call to install_for_other_pkgmgr (namely just before the else)?

Good question! I put it right after the transaction execution to preserve the order of printing messages (since it was inside Transaction::execute()). But that could be discussed: either consider that the transaction is finished and print the activation message, and then handle pip packages (or anything else?) considering we do not recommend it (cf. warning that we added recently) or print the activation message after everything is done including things we don't really approve.
Note however that install_for_other_pkgmgr does not involve Transaction so it's supposed to be done with before handling other pkg managers.
In my opinion, let's keep it as it is.

Comment on lines +650 to +655
// Print activation message only if the environment is freshly created
if (create_env)
{
print_activation_message(ctx);
}

Copy link
Member

Choose a reason for hiding this comment

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

Same suggestions as above.

Side-note: are there a way we could factor (parts of) install_explicit_with_transaction and install_specs_impl in another PR?

Copy link
Member Author

Choose a reason for hiding this comment

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

Side-note: are there a way we could factor (parts of) install_explicit_with_transaction and install_specs_impl in another PR?

Depends on what we want to refactor and if we need some parts in the codebase reworked first. But we can look into it.

Copy link
Member

@jjerphan jjerphan left a comment

Choose a reason for hiding this comment

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

Thank you, @Hind-M.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release::bug_fixes For PRs fixing bugs
Projects
None yet
2 participants