Skip to content

Improve the pip.parse API to allow for incremental building of the configuration #2747

@aignas

Description

@aignas

Currently the API for defining different parameters by target platform is not ideal and we need to jump over hoops whilst trying to maintain it. The main difficulties are:

  • We would like to specify different pip.parse attributes per target platform, but we cannot, because some of the parameters need to be labels, label lists or other.
  • We cannot have overrides for these things easily and the definitions of what those target platforms are are hard-coded in the code.

The idea that I have is to reuse the same recipe from #2578, where we create a builder for the configuration and it allows us easily define:

What is more the override API could be blended in more easily to provide better support for specifying different, patches, etc.

TODO:

  • Design defaults and configure APIs and use that to set the defaults within rules_python for selecting the whls.
  • Do the same for index_url setting, at some point rules_python could set the default index_url to default to the new code path.
  • Transition the current pip.parse to use pip.configure under the hood.

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions