5 ms·
My wishlist: a mirror metadata service like Yarn to force pypi to innovate more. Pip is slow because it doesn't store the dependency metadata and has to downloa
by KRAKRISMOTT 3y ago
My wishlist: a mirror metadata service like Yarn to force pypi to innovate more. Pip is slow because it doesn't store the dependency metadata and has to download all upstream dependencies during the resolution phase. They were too busy wasting time on minor issues like domain squatting than core dependency resolution concerns. I also want to see Python support simultaneously conflicting diamond dependencies like Npm and Cargo. Python doesn't even support shading. One old dependency and your whole build breaks, with no recourse aside from forking upstream.
- thejcannon 3y agoYour first request is granted: https://peps.python.org/pep-0658/ https://peps.python.org/pep-0658/
- bombolo 3y agoIf your software requires 2 different versions of the same library, there is something deeply wrong with it.
- fooker 3y agoIt's fairly common in the compilers/tools world to have automated workflows to test against different tools and libraries.
- KRAKRISMOTT 3y agoMost of the time diamond dependencies are upstream, not because the software itself requires two versions.
- bombolo 3y ago[flagged]
- mirashii 3y ago> Pip is slow because it doesn't store the dependency metadata and has to download all upstream dependencies during the resolution phase. This isn’t really true and hasn’t been for a long time. It relies on package authors to include the dependency metadata, but pypi has published it and pip has used it going back to at least 2017, if not earlier. They could do more to enforce it, but there’s a lot more to the story of why pip is slow than this.