Commit 774e988
ci: validate
* Fix cuda-version pin lag breaking local pixi run test
The bindings were regenerated against CUDA 13.3.0 (cc50515), adding NVRTC
symbols (NVRTC_ERROR_BUSY, nvrtcBundledHeadersInfo, nvrtcGetBundledHeadersInfo),
but the pixi cuda-version pins stayed at 13.2 in cuda_bindings/pixi.toml and
cuda_core/pixi.toml. `pixi run test` then built 13.3-referencing Cython code
against a 13.2 nvrtc.h and failed with "'nvrtcBundledHeadersInfo' was not
declared in this scope". CI was unaffected because it builds wheels from
ci/versions.yml (13.3.0) rather than via pixi run test.
Bump the cuda-version pins (build-variants + feature.cu13) from 13.2.* to
13.3.* in both packages so the local toolkit matches the regenerated sources
and ci/versions.yml. Re-solved pixi.lock files accordingly.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Place cython-test .so in tests/cython regardless of cwd
tests/cython/build_tests.py runs `build_ext --inplace`, which writes the
compiled .so relative to the current working directory. pixi runs the
build-cython-tests task from the project root, so the .so landed in the
package root instead of tests/cython/, where pytest imports it by bare module
name. The test only passed previously because a correctly-placed .so from an
earlier build persisted (gitignored); a clean checkout fails with
ModuleNotFoundError.
chdir to the script directory before build_ext --inplace so the .so lands next
to its .pyx in both cuda_bindings and cuda_core (kept aligned per #1978).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: validate pixi run test source-build (PR smoke + nightly GPU)
Main CI tests prebuilt wheels and never exercises the pixi source build, so
that developer path rots silently on CUDA-pin / generated-source / conda-forge
/ cython-build drift (#2182, #2183).
Add a workflow that runs the pixi source build:
- build-smoke (PRs touching the at-risk files): CPU-only. Source-builds
bindings + core, imports them, builds the cython test extensions and checks
placement. Catches the compile / ABI / .so-placement regressions without a GPU.
- full-test (nightly + manual): GPU runner, full `pixi run test`.
Shared pixi install factored into a composite action with an explicit,
asserted version pin.
Relates to #2183 (validate the source-build path over time); the regressions
this guards against are #2182, fixed by #2180.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: declare linux-amd64-gpu-l4-latest-1 self-hosted runner label for actionlint
actionlint validates static runner labels against its known set; the new
full-test job uses a literal GPU label (existing GPU jobs dodge this by
building the label from a matrix expression). Declare it so pre-commit's
actionlint hook passes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: checkout full history + tags so setuptools-scm derives the real version
A shallow checkout has no tags, so the source-built packages get
setuptools-scm's 0.1.dev1 fallback. cuda.core's import-time guard then
rejects cuda.bindings ("12.x or 13.x must be installed"). Use fetch-depth: 0
in both jobs so the build resolves the real 13.x version.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: use pinned prefix-dev/setup-pixi instead of curl|bash installer
Addresses review (@mdboom): the composite action shelled out to
`curl -fsSL https://pixi.sh/install.sh | bash`, an unverified installer
(the codecov.io supply-chain failure mode). Replace it with
prefix-dev/setup-pixi pinned to a commit SHA (v0.9.6) — its install logic
is auditable and pinned — and delete the composite action file.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: switch workflow to pinned prefix-dev/setup-pixi (fixup)
The prior commit only removed the composite action file; this commits the
workflow change that actually uses prefix-dev/setup-pixi@<sha> in both jobs
(and drops the now-unneeded curl from the container apt install). Without
this the workflow referenced the deleted ./.github/actions/setup-pixi.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>pixi run test source-build (PR smoke + nightly GPU) (#2185)1 parent 6df4e75 commit 774e988
2 files changed
Lines changed: 150 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
0 commit comments