Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/actionlint.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
config-variables: null

# Pending release of actionlint > 1.7.12 for ubuntu-26.04* support:
# https://github.com/rhysd/actionlint/pull/683
self-hosted-runner:
labels:
- ubuntu-26.04
- ubuntu-26.04-arm

paths:
.github/workflows/**/*.yml:
ignore:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/add-issue-header.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ permissions:

jobs:
add-header:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: write
timeout-minutes: 5
Expand Down
16 changes: 9 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ jobs:
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
runs-on: ubuntu-26.04
container:
image: ghcr.io/python/autoconf:2025.01.02.12581854023
timeout-minutes: 60
Expand Down Expand Up @@ -143,7 +143,7 @@ jobs:
name: 'Check if generated 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
runs-on: ubuntu-26.04
timeout-minutes: 60
needs: build-context
if: needs.build-context.outputs.run-tests == 'true'
Expand Down Expand Up @@ -272,6 +272,8 @@ jobs:
free-threading:
- false
- true
# For BOLT jobs, https://apt.llvm.org/llvm.sh doesn't support LLVM 19
# on Ubuntu 26.04, so stick to Ubuntu 24.04 until LLVM is upgraded.
os:
- ubuntu-24.04
- ubuntu-24.04-arm
Expand All @@ -297,7 +299,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04]
os: [ubuntu-26.04]
ssllib:
# See Tools/ssl/make_ssl_data.py for notes on adding a new version
## OpenSSL
Expand Down Expand Up @@ -370,7 +372,7 @@ jobs:
- arch: aarch64
runs-on: macos-26
- arch: x86_64
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04

runs-on: ${{ matrix.runs-on }}
steps:
Expand Down Expand Up @@ -417,7 +419,7 @@ jobs:

test-hypothesis:
name: "Hypothesis tests on Ubuntu"
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
timeout-minutes: 60
needs: build-context
if: needs.build-context.outputs.run-ubuntu == 'true'
Expand Down Expand Up @@ -528,7 +530,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04]
os: [ubuntu-26.04]
env:
OPENSSL_VER: 3.5.7
PYTHONSTRICTEXTENSIONBUILD: 1
Expand Down Expand Up @@ -592,7 +594,7 @@ jobs:

cross-build-linux:
name: Cross build Linux
runs-on: ubuntu-latest
runs-on: ubuntu-26.04
timeout-minutes: 60
needs: build-context
if: needs.build-context.outputs.run-ubuntu == 'true'
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/jit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ env:
jobs:
interpreter:
name: Interpreter (Debug)
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
timeout-minutes: 60
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
Expand Down Expand Up @@ -138,6 +138,8 @@ jobs:
- true
- false
include:
# https://apt.llvm.org/llvm.sh doesn't support LLVM 19
# on Ubuntu 26.04, so stick to Ubuntu 24.04 until LLVM is upgraded.
- target: x86_64-unknown-linux-gnu/gcc
runner: ubuntu-24.04
- target: aarch64-unknown-linux-gnu/gcc
Expand All @@ -162,6 +164,8 @@ jobs:
linux-extras:
name: ${{ matrix.name }}

# https://apt.llvm.org/llvm.sh doesn't support LLVM 19 on Ubuntu 26.04,
# so stick to Ubuntu 24.04 until LLVM is upgraded.
runs-on: ubuntu-24.04
timeout-minutes: 60
strategy:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/new-bugs-announce-notifier.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permissions:

jobs:
notify-new-bugs-announce:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
issues: read
timeout-minutes: 10
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/posix-deps-apt.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,20 @@ apt-get update
apt-get -yq --no-install-recommends install \
build-essential \
pkg-config \
curl \
gdb \
lcov \
libb2-dev \
libbz2-dev \
libffi-dev \
libgdbm-dev \
libgdbm-compat-dev \
libgdbm-dev \
liblzma-dev \
libncurses5-dev \
libreadline6-dev \
libsqlite3-dev \
libssl-dev \
libzstd-dev \
lzma \
lzma-dev \
strace \
tk-dev \
uuid-dev \
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/require-pr-label.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
label-dnm:
name: DO-NOT-MERGE
if: github.repository_owner == 'python'
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
pull-requests: read
timeout-minutes: 10
Expand All @@ -28,7 +28,7 @@ jobs:
label-reviews:
name: Unresolved review
if: github.repository_owner == 'python'
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
pull-requests: read
timeout-minutes: 10
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/reusable-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ jobs:
# Run "doctest" on HEAD as new syntax doesn't exist in the latest stable release
doctest:
name: 'Doctest'
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
timeout-minutes: 60
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/reusable-emscripten.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ env:
jobs:
build-emscripten-reusable:
name: 'build and test'
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
timeout-minutes: 40
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/reusable-san.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ jobs:
&& ' (free-threading)'
|| ''
}}
# https://apt.llvm.org/llvm.sh doesn't support LLVM 20 on Ubuntu 26.04,
# so stick to Ubuntu 24.04 until LLVM is upgraded.
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/reusable-ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ jobs:
run: sudo ./.github/workflows/posix-deps-apt.sh
- name: Install Clang and BOLT
if: ${{ fromJSON(inputs.bolt-optimizations) }}
# For BOLT jobs, https://apt.llvm.org/llvm.sh doesn't support LLVM 19
# on Ubuntu 26.04, so stick to Ubuntu 24.04 until LLVM is upgraded.
run: |
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh 19
sudo apt-get install --no-install-recommends bolt-19
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/reusable-wasi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ env:
jobs:
build-wasi-reusable:
name: 'build and test'
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
timeout-minutes: 60
env:
WASMTIME_VERSION: 38.0.3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permissions:
jobs:
stale:
if: github.repository_owner == 'python'
runs-on: ubuntu-latest
runs-on: ubuntu-slim
permissions:
pull-requests: write
timeout-minutes: 10
Expand Down
9 changes: 4 additions & 5 deletions .github/workflows/tail-call.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,13 +100,13 @@ jobs:
matrix:
include:
- target: x86_64-unknown-linux-gnu/gcc
runner: ubuntu-24.04
runner: ubuntu-26.04
configure_flags: --with-pydebug
- target: x86_64-unknown-linux-gnu/gcc-free-threading
runner: ubuntu-24.04
runner: ubuntu-26.04
configure_flags: --disable-gil
- target: aarch64-unknown-linux-gnu/gcc
runner: ubuntu-24.04-arm
runner: ubuntu-26.04-arm
configure_flags: --with-pydebug
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
Expand All @@ -117,8 +117,7 @@ jobs:
python-version: '3.11'
- name: Build
run: |
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ env.LLVM_VERSION }}
export PATH="$(llvm-config-${{ env.LLVM_VERSION }} --bindir):$PATH"
# On ubuntu-26.04 image, clang is clang-21 by default
CC=clang-${{ env.LLVM_VERSION }} ./configure --with-tail-call-interp ${{ matrix.configure_flags }}
make all --jobs 4
- name: Test
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/verify-expat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ concurrency:

jobs:
verify:
runs-on: ubuntu-latest
runs-on: ubuntu-slim
timeout-minutes: 5
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
Expand Down
Loading