-
Notifications
You must be signed in to change notification settings - Fork 418
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
Allow installing multiple applications at once #1102
Conversation
This is my take on responding to #971, happy to receive comments if a different approach may work better. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an approach for creating a separate virtual environment for each of the packages.
Should an option be added to install all into the same one?
Also, I'd think one should also be able to remove and upgrade multiple packages. But that's out of the scope of this PR.
Co-authored-by: chrysle <fritzihab@posteo.de>
I agree with your comment about removing and upgrading multiple packages. For installing multiple packages to the same virtual environment, would the current approach be to install one, and then inject the others, using the Personally I would lean away from having the extra install option, to keep things simple. |
This is already avaiable with |
Though this doesn't invite you to install multiple packages at once and doesn't make them globally available. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs merge conflicts fixed.
Seems stalled, we can reopen if you pick it up again. |
Fix conflicts and formatting.
Apologies for the delay, merged latest changes from the main branch now and fixed any conflicts etc. |
Seems you still need to fix some tests. 🤔 |
I've just re-ran |
No failure on main https://github.com/pypa/pipx/actions/runs/7219455002 |
Push a new commit to trigger a new CI run. |
Looks like 3.8 and 3.9 fail because the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/changelog.md
Summary of changes
As a response to issue #971, the
commands.install
function is modified to take lists of package names/specs as arguments, and iterate through the lists, installing each application separately. The associated CLI functions and help strings are updated to reflect this. Thecommands.reinstall
function is also modified to ensure it complies with the new argument requirements ofcommands.install
. Two tests have been added (replicatingtest_install_easy_packages
andtest_install_tricky_packages
, but doing multiple packages at once).Test plan
Tested by manually running
and also with the new unit tests.
Resolves #971