Skip to content

ci: drop custom NumPy builds for Python 3.15 - #2411

Open
tirthpatel90 wants to merge 4 commits into
NVIDIA:mainfrom
tirthpatel90:drop-numpy-315-ci
Open

ci: drop custom NumPy builds for Python 3.15#2411
tirthpatel90 wants to merge 4 commits into
NVIDIA:mainfrom
tirthpatel90:drop-numpy-315-ci

Conversation

@tirthpatel90

Copy link
Copy Markdown

Description

Fixes #2401

This PR removes custom NumPy build and wheel installation steps for Python 3.15 across CI workflow files (build-wheel.yml, test-wheel-linux.yml, and test-wheel-windows.yml) now that pre-built NumPy 3.15 nightly wheels are available.

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

Signed-off-by: tirthpatel90 <tirthpatel5393@gmail.com>
@copy-pr-bot

copy-pr-bot Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the CI/CD CI/CD infrastructure label Jul 23, 2026
@mdboom

mdboom commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

/ok to test b33bb7c

@github-actions

Copy link
Copy Markdown

@mdboom

mdboom commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

It's going to be hard to evaluate this PR until the Python 3.15 is green on main again. Our self-built Numpy is segfaulting on import on main, and this upstream build of Numpy also is. It's great that the behavior matches, but we can't really evaluate that Numpy is working in CI until Numpy and/or CPython fixes the bug that is causing the segfault.

So we might just need to sit on this one for a while.

@seberg seberg left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, but as the issue says, this should use the scientific-python-nightly-wheels not build from scratch.
Effectively, this just moved the build from build-time to test time. (Which pointed to it not being NumPy but rather an ABI change in CPython, but that is beside the point.)

Updating this will indeed not fix things since NumPy is also build with b2 but the main blocker for merging is that we should use the nightlies and not build from scratch.

@tirthpatel90

Copy link
Copy Markdown
Author

Hi @seberg, I have updated the workflows to pass PIP_EXTRA_INDEX_URL for Python 3.15 so pip fetches pre-built nightly wheels from the scientific-python-nightly-wheels index instead of building from source. Thanks for pointing that out!

- name: Enable Scientific Python Nightly Wheels for Python 3.15
if: ${{ startsWith(matrix.PY_VER, '3.15') }}
shell: bash --noprofile --norc -xeuo pipefail {0}
run: echo "PIP_EXTRA_INDEX_URL=https://pypi.anaconda.org/scientific-python-nightly-wheels/simple" >> "$GITHUB_ENV"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately, I don't think this'll work, for two reasons:

  1. We actually have narrow version pins numpy<2.5
  2. I believe pip will still prefer the 2.5.x sdist and compile from scratch.

So, I think we need to relax the pin to <=2.6.0.dev0 (all numpy pre-releases). We could do that in env-vars via env vars by setting up what you have here plus PIP_ONLY_BINARY=numpy (to avoid pip prefering to build 2.5.x).
(We don't need PIP_PRE=1 if we change the pin, pip should eventually find that version if no other version has a wheel that works.)

Sorry for the creep, maybe I'll push it or follow-up too: The windows Python 3.15 jobs were currently deleted, can you try re-adding them now that we don't have to build NumPy anymore?
(if not that is fine, I'll follow up).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD CI/CD infrastructure

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Drop NumPy builds for Python 3.15 from CI

3 participants