-
-
Notifications
You must be signed in to change notification settings - Fork 30.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch '3.12' into backport-a53812d-3.12
- Loading branch information
Showing
550 changed files
with
41,093 additions
and
32,470 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -55,6 +55,8 @@ jobs: | |
if: needs.check_source.outputs.run_tests == 'true' | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: actions/setup-python@v5 | ||
- name: Install dependencies | ||
run: | | ||
|
@@ -91,6 +93,51 @@ jobs: | |
name: abi-data | ||
path: ./Doc/data/*.abi | ||
|
||
check_autoconf_regen: | ||
name: 'Check if Autoconf files are up to date' | ||
# Don't use ubuntu-latest but a specific version to make the job | ||
# reproducible: to get the same tools versions (autoconf, aclocal, ...) | ||
runs-on: ubuntu-24.04 | ||
container: | ||
image: ghcr.io/python/autoconf:2024.10.16.11360930377 | ||
timeout-minutes: 60 | ||
needs: check_source | ||
if: needs.check_source.outputs.run_tests == 'true' | ||
steps: | ||
- name: Install Git | ||
run: | | ||
apt update && apt install git -yq | ||
git config --global --add safe.directory "$GITHUB_WORKSPACE" | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 1 | ||
persist-credentials: false | ||
- name: Runner image version | ||
run: echo "IMAGE_VERSION=${ImageVersion}" >> $GITHUB_ENV | ||
- name: Check Autoconf and aclocal versions | ||
run: | | ||
grep "Generated by GNU Autoconf 2.71" configure | ||
grep "aclocal 1.16.5" aclocal.m4 | ||
grep -q "runstatedir" configure | ||
grep -q "PKG_PROG_PKG_CONFIG" aclocal.m4 | ||
- name: Regenerate autoconf files | ||
# Same command used by Tools/build/regen-configure.sh ($AUTORECONF) | ||
run: autoreconf -ivf -Werror | ||
- name: Check for changes | ||
run: | | ||
git add -u | ||
changes=$(git status --porcelain) | ||
# Check for changes in regenerated files | ||
if test -n "$changes"; then | ||
echo "Generated files not up to date." | ||
echo "Perhaps you forgot to run make regen-configure ;)" | ||
echo "configure files must be regenerated with a specific version of autoconf." | ||
echo "$changes" | ||
echo "" | ||
git diff --staged || true | ||
exit 1 | ||
fi | ||
check_generated_files: | ||
name: 'Check if generated files are up to date' | ||
# Don't use ubuntu-latest but a specific version to make the job | ||
|
@@ -101,6 +148,8 @@ jobs: | |
if: needs.check_source.outputs.run_tests == 'true' | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.x' | ||
|
@@ -119,19 +168,10 @@ jobs: | |
uses: hendrikmuhs/[email protected] | ||
with: | ||
save: false | ||
- name: Check Autoconf and aclocal versions | ||
run: | | ||
grep "Generated by GNU Autoconf 2.71" configure | ||
grep "aclocal 1.16.5" aclocal.m4 | ||
grep -q "runstatedir" configure | ||
grep -q "PKG_PROG_PKG_CONFIG" aclocal.m4 | ||
- name: Configure CPython | ||
run: | | ||
# Build Python with the libpython dynamic library | ||
./configure --config-cache --with-pydebug --enable-shared | ||
- name: Regenerate autoconf files | ||
# Same command used by Tools/build/regen-configure.sh ($AUTORECONF) | ||
run: autoreconf -ivf -Werror | ||
- name: Build CPython | ||
run: | | ||
# Deepfreeze will usually cause global objects to be added or removed, | ||
|
@@ -248,13 +288,14 @@ jobs: | |
|
||
build_ubuntu_ssltests: | ||
name: 'Ubuntu SSL tests with OpenSSL' | ||
runs-on: ubuntu-22.04 | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 60 | ||
needs: check_source | ||
if: needs.check_source.outputs.run_tests == 'true' | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-22.04] | ||
openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2] | ||
env: | ||
OPENSSL_VER: ${{ matrix.openssl_ver }} | ||
|
@@ -263,6 +304,8 @@ jobs: | |
LD_LIBRARY_PATH: ${{ github.workspace }}/multissl/openssl/${{ matrix.openssl_ver }}/lib | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- name: Runner image version | ||
run: echo "IMAGE_VERSION=${ImageVersion}" >> $GITHUB_ENV | ||
- name: Restore config.cache | ||
|
@@ -284,7 +327,7 @@ jobs: | |
uses: actions/cache@v4 | ||
with: | ||
path: ./multissl/openssl/${{ env.OPENSSL_VER }} | ||
key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }} | ||
key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }} | ||
- name: Install OpenSSL | ||
if: steps.cache-openssl.outputs.cache-hit != 'true' | ||
run: python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux | ||
|
@@ -315,6 +358,8 @@ jobs: | |
PYTHONSTRICTEXTENSIONBUILD: 1 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- name: Register gcc problem matcher | ||
run: echo "::add-matcher::.github/problem-matchers/gcc.json" | ||
- name: Install dependencies | ||
|
@@ -397,7 +442,7 @@ jobs: | |
# | ||
# (GH-104097) test_sysconfig is skipped because it has tests that are | ||
# failing when executed from inside a virtual environment. | ||
${{ env.VENV_PYTHON }} -m test \ | ||
"${VENV_PYTHON}" -m test \ | ||
-W \ | ||
-o \ | ||
-j4 \ | ||
|
@@ -429,6 +474,8 @@ jobs: | |
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- name: Runner image version | ||
run: echo "IMAGE_VERSION=${ImageVersion}" >> $GITHUB_ENV | ||
- name: Restore config.cache | ||
|
@@ -454,7 +501,7 @@ jobs: | |
uses: actions/cache@v4 | ||
with: | ||
path: ./multissl/openssl/${{ env.OPENSSL_VER }} | ||
key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }} | ||
key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }} | ||
- name: Install OpenSSL | ||
if: steps.cache-openssl.outputs.cache-hit != 'true' | ||
run: python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
name: Reusable macOS | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
|
@@ -26,6 +28,8 @@ jobs: | |
runs-on: ${{ inputs.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
persist-credentials: false | ||
- name: Runner image version | ||
run: echo "IMAGE_VERSION=${ImageVersion}" >> $GITHUB_ENV | ||
- name: Restore config.cache | ||
|
@@ -34,7 +38,10 @@ jobs: | |
path: config.cache | ||
key: ${{ github.job }}-${{ inputs.os }}-${{ env.IMAGE_VERSION }}-${{ inputs.config_hash }} | ||
- name: Install Homebrew dependencies | ||
run: brew install pkg-config [email protected] xz gdbm tcl-tk | ||
run: | | ||
brew install pkg-config [email protected] xz gdbm tcl-tk@8 | ||
# Because alternate versions are not symlinked into place by default: | ||
brew link --overwrite tcl-tk@8 | ||
- name: Configure CPython | ||
run: | | ||
GDBM_CFLAGS="-I$(brew --prefix gdbm)/include" \ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.