Drop numpy upper bound, run CI weekly - #5
Merged
Conversation
The <2.4 cap was there to keep numba installable, but numba is not a runtime dependency — it only enters through the dev group, via s2mosaic -> numbagg -> numba. The cap therefore constrained every downstream install to protect a package users never receive. numba also declares its own numpy ceiling (numpy<2.6 as of 0.67), so the resolver handles the dev-side constraint without help here. With the bound gone, a fresh resolve moves numpy to 2.5.2 on 3.12+ and 2.4.6 on 3.11, pulling numba 0.67 and llvmlite 0.49 with it. The full non-e2e suite passes there (163 passed) on 3.13 / numpy 2.5.2. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
No lockfile is committed (uv.lock is gitignored), so uv resolves dependencies fresh on every CI run. A scheduled build therefore tests against current upstream releases and will surface a breaking numpy or numba version before users hit it — which matters more now that the numpy upper bound is gone. Also adds workflow_dispatch so the job can be triggered by hand rather than only on the cron. e2e tests stay excluded: they need a GPU, which GitHub-hosted runners do not provide. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Drop the numpy upper bound
numpy>=2.0,<2.4→numpy>=2.0.The cap existed to keep numba installable, but numba is not a runtime dependency — it only enters through the dev group, via
s2mosaic→numbagg→numba. The bound therefore constrained every downstream install to protect a package users never receive. numba also declares its own ceiling (numpy<2.6as of 0.67), so the resolver handles the dev-side constraint without help.A fresh resolve after the change:
3.11 stops at 2.4.6 and 3.10 at 2.2.6 because numpy dropped those interpreters, not because of anything in our tree.
Full non-e2e suite passes on the upgraded set — 163 passed, 36 deselected, on 3.13 / numpy 2.5.2.
Run CI weekly
Adds
schedule: "0 0 * * 0"(Sundays 00:00 UTC) andworkflow_dispatch.uv.lockis gitignored, so uv resolves fresh on every CI run — a scheduled build tests against current upstream releases and will surface a breaking numpy or numba version before users hit it. That matters more now that the upper bound is gone.e2e tests stay excluded; they need a GPU, which GitHub-hosted runners don't provide.
Notes
🤖 Generated with Claude Code