Description
🚀 feature request
I'm considering writing a repository rule which will download all wheels in a requirement manifest using pip download
and skip resolving.
Relevant Rules
pip_download would be an analogue to pip_install
-->
Description
The motivation for this is the fact that there are multiple ways to resolve deps in python see #373. If users want to resolve their dependency set outside of rules_python it would be convenient if they could leverage rules_python's ability to unpack and expose py_library targets without waiting on the resolve step.
As a corollary it could be useful to download and expose wheels from a manifest file that contains multiple versions of the same package, for monorepo's that support multiple dependency universes. Transitive dependencies linking would be left to users in this case, when building a py_binary.
Describe the solution you'd like
A pip_download repo rule which consumes a requirements.txt file and downloads requirements without using the pip resolver.
Describe alternatives you've considered
Users could write their own repo rule to fetch the relevant wheels from the manifest and use the rules_python workspace and build file generation helpers to expose the wheels they downloaded. This might fall out of the scope of rules_python.