Commit c6f15fe
committed
Fail build-all loudly; cap cbor2 <6 on PyPy/Windows only (#1859)
The post-merge 26.6.1 dev release failed strict fileset validation with a
missing pypy311-win-amd64 wheel. Two defects:
1. build-all (justfile) swallowed per-interpreter build failures: a failing
'just build <venv>' did not fail the recipe (no set -e; the loop ended in
'ls'), so the Windows wheels job went green while silently omitting a wheel.
Now build-all attempts all interpreters but exits non-zero if any failed,
naming them - the same false-green class as #1856 / zlmdb#116.
2. The PyPy/Windows build aborted installing the core dependency cbor2: cbor2
6.x is Rust/pyo3-only (no PyPy/Windows wheel, and the pure-Python fallback +
CBOR2_BUILD_C_EXTENSION toggle were removed in the 6.0 rewrite), so pip built
from sdist and the pyo3 link failed (unresolved PyPyModule_FromDefAndSpec2,
a known pyo3-on-PyPy/Windows limitation). Cap cbor2 < 6 *only* on PyPy/Windows
via environment markers - the 5.x line ships a pure-Python wheel and runs at
near-native speed on PyPy - while keeping cbor2 6.x everywhere else.
PyPy/Windows is kept as a build target and a required release artifact; the
native NVX build is attempted there (it was never reached before, since cbor2
aborted first). If NVX itself turns out not to compile on PyPy/Windows, the
now-loud build-all will surface it and we retreat to excluding PyPy/Windows.
Note: This work was completed with AI assistance (Claude Code).1 parent ebde079 commit c6f15fe
3 files changed
Lines changed: 23 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
| 33 | + | |
32 | 34 | | |
33 | 35 | | |
34 | 36 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1635 | 1635 | | |
1636 | 1636 | | |
1637 | 1637 | | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
1638 | 1646 | | |
1639 | | - | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
1640 | 1650 | | |
1641 | 1651 | | |
| 1652 | + | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
1642 | 1656 | | |
1643 | 1657 | | |
1644 | 1658 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
54 | | - | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
55 | 60 | | |
56 | 61 | | |
57 | 62 | | |
| |||
0 commit comments