Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0eb2291

Browse files
authored
[3.14] Forward-port 'check-abi' CI job from 3.13 (GH-133614)
Also add the python3.14.abi file as generated by the new job and removethe 'main branch only' entry from .gitignore.The only difference from the 3.13 job is the addition of `with.python-version: 3.x`to the `setup-python` configuration to pacify a warning.
1 parent7504fe6 commit0eb2291

File tree

3 files changed

+31388
-3
lines changed

3 files changed

+31388
-3
lines changed

‎.github/workflows/build.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,53 @@ jobs:
4343
if:fromJSON(needs.build-context.outputs.run-docs)
4444
uses:./.github/workflows/reusable-docs.yml
4545

46+
check-abi:
47+
name:'Check if the ABI has changed'
48+
runs-on:ubuntu-22.04# 24.04 causes spurious errors
49+
needs:build-context
50+
if:needs.build-context.outputs.run-tests == 'true'
51+
steps:
52+
-uses:actions/checkout@v4
53+
with:
54+
persist-credentials:false
55+
-uses:actions/setup-python@v5
56+
with:
57+
python-version:'3.x'
58+
-name:Install dependencies
59+
run:|
60+
sudo ./.github/workflows/posix-deps-apt.sh
61+
sudo apt-get install -yq abigail-tools
62+
-name:Build CPython
63+
env:
64+
CFLAGS:-g3 -O0
65+
run:|
66+
# Build Python with the libpython dynamic library
67+
./configure --enable-shared
68+
make -j4
69+
-name:Check for changes in the ABI
70+
id:check
71+
run:|
72+
if ! make check-abidump; then
73+
echo "Generated ABI file is not up to date."
74+
echo "Please add the release manager of this branch as a reviewer of this PR."
75+
echo ""
76+
echo "The up to date ABI file should be attached to this build as an artifact."
77+
echo ""
78+
echo "To learn more about this check: https://devguide.python.org/getting-started/setup-building/index.html#regenerate-the-abi-dump"
79+
echo ""
80+
exit 1
81+
fi
82+
-name:Generate updated ABI files
83+
if:${{ failure() && steps.check.conclusion == 'failure' }}
84+
run:|
85+
make regen-abidump
86+
-uses:actions/upload-artifact@v4
87+
name:Publish updated ABI files
88+
if:${{ failure() && steps.check.conclusion == 'failure' }}
89+
with:
90+
name:abi-data
91+
path:./Doc/data/*.abi
92+
4693
check-autoconf-regen:
4794
name:'Check if Autoconf files are up to date'
4895
# Don't use ubuntu-latest but a specific version to make the job

‎.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,3 @@ Python/frozen_modules/MANIFEST
170170
# Ignore ./python binary on Unix but still look into ./Python/ directory.
171171
/python
172172
!/Python/
173-
174-
# main branch only: ABI files are not checked/maintained.
175-
Doc/data/python*.abi

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp