Skip to content

refactor(limited api): add explicit wheel.py-api to pyproject.toml #1852

Merged
rapids-bot[bot] merged 1 commit intorapidsai:mainfrom
gforsyth:explicit-wheel-py-api
Feb 26, 2026
Merged

refactor(limited api): add explicit wheel.py-api to pyproject.toml #1852
rapids-bot[bot] merged 1 commit intorapidsai:mainfrom
gforsyth:explicit-wheel-py-api

Conversation

@gforsyth
Copy link
Copy Markdown
Contributor

Description

As part of rapidsai/build-planning#42 I added support for building limited API wheels and conda packages.

To enable a RAPIDS-wide bump of the lower-bound of the limited API version we use (currently cp311), the flags that set these options are passed in via environment variables.

This leads us to an issue where local developer builds, either in devcontainers or otherwise, will build without the limited API, unless devs have set an (otherwise unnecessary) environment variable.

So here, I set the py-api version explicitly, so that local builds will always produce limited API wheels and so better reflect what we build and test in CI.

We retain the ability to bump all of RAPIDS to a different cp3xx value because the flag passed in by our scripts overrides the value set in the pyproject.toml. There may be short periods where the flags we are building with and the flags set in pyproject.toml differ, but that should happen infrequently at best.

@gforsyth gforsyth requested a review from a team as a code owner February 25, 2026 17:05
@gforsyth gforsyth added non-breaking Introduces a non-breaking change improvement Improves an existing functionality and removed non-breaking Introduces a non-breaking change labels Feb 25, 2026
@jameslamb jameslamb removed the request for review from KyleFromNVIDIA February 25, 2026 18:28
@gforsyth
Copy link
Copy Markdown
Contributor Author

/merge

@rapids-bot rapids-bot Bot merged commit d0c54f0 into rapidsai:main Feb 26, 2026
124 of 127 checks passed
tfeher pushed a commit to Stardust-SJF/cuvs_rabitq that referenced this pull request Mar 3, 2026
rapidsai#1852)

As part of rapidsai/build-planning#42 I added support for building limited API wheels and conda packages.

To enable a RAPIDS-wide bump of the lower-bound of the limited API version we use (currently `cp311`), the flags that set these options are passed in via environment variables.

This leads us to an issue where local developer builds, either in devcontainers or otherwise, will build without the limited API, unless devs have set an (otherwise unnecessary) environment variable.

So here, I set the `py-api` version explicitly, so that local builds will always produce limited API wheels and so better reflect what we build and test in CI.

We retain the ability to bump all of RAPIDS to a different `cp3xx` value because the flag passed in by our scripts overrides the value set in the `pyproject.toml`.  There may be short periods where the flags we are building with and the flags set in `pyproject.toml` differ, but that should happen infrequently at best.

Authors:
  - Gil Forsyth (https://github.com/gforsyth)

Approvers:
  - James Lamb (https://github.com/jameslamb)

URL: rapidsai#1852
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants