10000 RFC: Pip download only mode for exposing requirements · Issue #386 · bazel-contrib/rules_python · GitHub
[go: up one dir, main page]

Skip to content
RFC: Pip download only mode for exposing requirements #386
Closed
@hrfuller

Description

@hrfuller

🚀 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0