Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2025 Priorities #2520

Open
rickeylev opened this issue Dec 23, 2024 · 2 comments
Open

2025 Priorities #2520

rickeylev opened this issue Dec 23, 2024 · 2 comments

Comments

@rickeylev
Copy link
Collaborator

rickeylev commented Dec 23, 2024

This issue is to capture some of the topics that we, the rules_python maintainers, are particularly interested in this coming year. These are topics where we'd be particularly excited by PRs or design discussions.

Note that these are not promises of particular work. This is still a community driven project, so people work on what they find interesting or rewarding.

Topics are in no particular order. Discussion for a topic should be in their associated issue. This is not an exclusive list.

cc @aignas @groodt

@rickeylev rickeylev pinned this issue Dec 23, 2024
@aignas
Copy link
Collaborator

aignas commented Dec 24, 2024

I have modified the list above to include more references and I realized that I want to stabilize the #260 work and make it default at some point.

@aignas
Copy link
Collaborator

aignas commented Mar 29, 2025

@arrdem, the above bullet point summarizes all of the related tickets to close #260 and stabilize the feature.

I think the main issues are two:

  1. not having PEP508 support in starlark means that the APIs are brittle and we require to pass a lot of things to whl_library as parameters instead of via load to the macro phase. The refactor(pypi): implement PEP508 compliant marker evaluation #2692 and then WIP refactor(pypi): pep508 parsing in starlark #2629 should address that. Once that is done I can refactor the passing of experimental_index_platforms and fix [pypi] Support python micro version in env marker based dependency evaluation #2319.
  2. Then we should rewrite the experimental_index_url configuration API to be more similar to uv.defaults and uv.configure, so that we have the right level of expressions to configure the target platforms. That should also make things harder to misuse.
  3. Doing the above will mean that we have a solid foundation to correctly setup dependencies for any python package given the target platforms (very similar what rules_pycross is doing) and we can turn on the experimental_index_url by default.

Related items but not strictly necessary needed:

  1. Separate out the whl_library for building with pip (ticket TBD), just extracting wheels (once PEP508 is done that would be possible without the interpreter) and setting up sources for py_sdist (Support building from sdist in a build action #2410).
  2. I think there is something else but I can't remember right now.

That is about it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants