ci: Use Python virtual environment in "x86_64-macos-native" job
What changed, and why it matters
This change is a routine cleanup of the project's automated macOS testing configuration. It makes the 'symbol check' step use a Python virtual environment consistently across two similar jobs and removes a duplicate copy of the same script. There is no security-relevant change to the actual Bitcoin/libsecp256k1 code, no fix for a vulnerability, and no indication of a security issue.
No security action needed. This is a normal CI maintenance commit.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit refactors the GitHub Actions CI workflow for the x86_64-macos-native job. It introduces a YAML anchor &SYMBOL_CHECK_MACOS that creates a Python venv, installs the lief package inside it, and runs tools/symbol-check.py on the built macOS dynamic library. The same anchor is then reused in the arm64-macos-native job, replacing an inline duplicate of the same steps. The functional behavior is unchanged; only CI maintainability is improved.
Changed components
.github/workflows/ci.ymlInspect captured patch +7 / −12
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6176751..59d2251 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -469,9 +469,14 @@ jobs:
env: ${{ matrix.env_vars }}
run: ./ci/ci.sh
- - name: Symbol check
+ - &SYMBOL_CHECK_MACOS
+ name: Symbol check
+ env:
+ VIRTUAL_ENV: '${{ github.workspace }}/venv'
run: |
python3 --version
+ python3 -m venv $VIRTUAL_ENV
+ export PATH="$VIRTUAL_ENV/bin:$PATH"
python3 -m pip install lief
python3 ./tools/symbol-check.py .libs/libsecp256k1.dylib
@@ -512,17 +517,7 @@ jobs:
ln -s $(brew --prefix gcc)/bin/gcc-?? /usr/local/bin/gcc
- *CI_SCRIPT_ON_HOST
-
- - name: Symbol check
- env:
- VIRTUAL_ENV: '${{ github.workspace }}/venv'
- run: |
- python3 --version
- python3 -m venv $VIRTUAL_ENV
- export PATH="$VIRTUAL_ENV/bin:$PATH"
- python3 -m pip install lief
- python3 ./tools/symbol-check.py .libs/libsecp256k1.dylib
-
+ - *SYMBOL_CHECK_MACOS
- *PRINT_LOGS
win64-native:
Why this scored 15/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.