+ notes: '35 Linux wheels upstream (abi: cp310,cp311,cp312,cp313,cp314,cp39); no riscv64 on PyPI or pypi.riseproject.dev. PR #2646 (draft) mirrors upstream wheels.yaml: cibuildwheel with the build frontend, manylinux+musllinux x cp312/cp313/cp314/cp314t. setup.py runs Conan, which builds OpenSSL 3.6.0 statically from source (no conancenter riscv64 binaries); that takes ~20 min of a ~35 min (manylinux) / ~60 min (musllinux) leg. The only build deviation is CONAN_OPENSSL_CONFIGURATION=linux-generic64. The openssl recipe has no riscv64 row and falls back to linux-generic32, and linux64-riscv64 fails at the final link with R_RISCV_JAL truncated against AES_set_encrypt_key (aes-riscv64.pl jal to a PLT-routed global in a 20 MB .so; recorded as gotcha 625). A licence patch (To upstream) adds LICENSE.sqlcipher (SQLCipher 4.12.0 community, BSD-3-Clause) and LICENSE.openssl (Apache-2.0). An inline smoke test asserts them and does an encryption round-trip, since upstream tests never set a key; it runs as python -P because {project}/sqlcipher3.egg-info shadowed importlib.metadata (note added to gotcha 612). Run 37053416378 (linux-generic64): all 8 legs built, auditwheel grafted nothing (no gpl_sources needed), and upstream 345 tests passed on all 8; only the smoke test licence check failed, on the egg-info shadowing. That is fixed in 81de5dc and verified locally. Run 37061341745 has the fix and was queued on a saturated riscv64 pool at hand-off; pr-checks are green. Worktree .claude/worktrees/sqlcipher3, branch sqlcipher3.'
0 commit comments