build: build wheel and sdist separately
What changed, and why it matters
This commit changes the project's automated build script so that Python wheel and source distribution packages are built in two separate steps instead of one combined step. The commit message says this is a workaround because something in the secp256k1 auxiliary macros breaks when both are built together. The wheel is only used for a quick smoke test; the final artifact they keep is the source distribution. There is no indication this is a security fix.
No security action required. Treat as a routine CI/build maintenance change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The .gitlab-ci.yml job build_wally_release_files is updated to run python3 -m build --wheel, move the resulting .whl out of dist/, then run python3 -m build --sdist. The smoke-test install now uses the wheel from ${CI_PROJECT_DIR} rather than from dist/, and cleanup removes the wheel from ${CI_PROJECT_DIR}. This avoids a build-time interaction between wheel and sdist generation involving secp256k1 auxiliary macros. No cryptographic, memory-safety, or runtime code is changed.
Changed components
.gitlab-ci.ymlInspect captured patch +5 / −3
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0b1ef8d..2a51179 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -121,13 +121,15 @@ build_wally_release_files:
paths:
- dist/*
script:
- - python3 -m build
+ - python3 -m build --wheel
+ - mv dist/*.whl ${CI_PROJECT_DIR}
+ - python3 -m build --sdist
- virtualenv -p python3 .smoketest
- source .smoketest/bin/activate
- - pip install --find-links=./dist wallycore
+ - pip install --find-links=${CI_PROJECT_DIR} wallycore
- python -c "import wallycore as w; assert w.hex_from_bytes(w.hex_to_bytes('ff')) == 'ff'"
- deactivate
- - rm -rf .smoketest dist/*.whl
+ - rm -rf .smoketest ${CI_PROJECT_DIR}/*.whl
- mv dist wally_dist
- ./tools/build_android_libraries.sh
- mv release wallycore-android-jni
Why this scored 12/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.