Open
Description
What's the problem this feature will solve?
At the moment when the final install step starts pip gives no output what it is doing, in some real world cases (e.g. large pytorch installations or airflow installs) this steps can take over 30 seconds on fast machines, so minutes on slow machines. The user is left wondering if anything is happening.
Describe the solution you'd like
I would like to see the following improvements:
- 1. Log a message that pip is starting to install packages
- 2. Present a progress bar that tracks the number of packages installed out of the total packages to be installed
- 3. Improve any obvious performance bottlenecks (see follow up post with profile)
- 4. Run installs in parallel (made seperate issue Install packages in parallel #12742)
Alternative Solutions
I think at a bare minimum there should be a log message that lets the user know what's happening.
Additional context
uv runs installs in parallel, and following their issue tracker it does not appear to be problematic, to do this a cli option to control the maximum number would need to be added, the same as how there is a PR for parallel downloads to do this.
Code of Conduct
- I agree to follow the PSF Code of Conduct.