Skip to content

Commit fe34f01

Browse files
committed
Merge branch 'main' into remove-sprite-optionals
2 parents 0a8311e + aa236dd commit fe34f01

File tree

158 files changed

+3389
-935
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+3389
-935
lines changed

.github/workflows/build-debian-multiarch.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ jobs:
108108
109109
# Upload the generated files under github actions assets section
110110
- name: Upload dist
111-
uses: actions/upload-artifact@v4
111+
uses: actions/upload-artifact@v5
112112
with:
113113
name: pygame-multiarch-${{ matrix.arch }}-dist
114114
path: ~/artifacts/*.whl
@@ -121,7 +121,7 @@ jobs:
121121
runs-on: ubuntu-22.04
122122
steps:
123123
- name: Download all multiarch artifacts
124-
uses: actions/download-artifact@v5
124+
uses: actions/download-artifact@v6
125125
with:
126126
name: pygame-multiarch-armv7-dist
127127
path: ~/artifacts

.github/workflows/build-emsdk.yml

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -32,43 +32,45 @@ concurrency:
3232
cancel-in-progress: true
3333

3434
jobs:
35-
build:
35+
build-pygbag:
3636
runs-on: ubuntu-22.04
3737
env:
3838
# pin SDK version to the latest, update manually
39-
SDK_VERSION: 3.1.32.0
40-
SDK_ARCHIVE: python3.11-wasm-sdk-Ubuntu-22.04.tar.lz4
39+
SDK_VERSION: 3.1.61.12bi
40+
SDK_ARCHIVE: python3.13-wasm-sdk-Ubuntu-22.04.tar.lz4
4141
SDKROOT: /opt/python-wasm-sdk
42+
PYBUILD: 3.13
4243

4344
steps:
4445
- uses: actions/checkout@v5.0.0
4546

46-
- name: Regen with latest cython (using system python3)
47-
run: |
48-
pip3 install cython==3.0.10
49-
python3 setup.py cython_only
50-
5147
- name: Install python-wasm-sdk
5248
run: |
5349
sudo apt-get install lz4
54-
echo https://github.com/pygame-web/python-wasm-sdk/releases/download/$SDK_VERSION/$SDK_ARCHIVE
5550
curl -sL --retry 5 https://github.com/pygame-web/python-wasm-sdk/releases/download/$SDK_VERSION/$SDK_ARCHIVE | tar xvP --use-compress-program=lz4
56-
# do not let SDL1 interfere
57-
rm -rf /opt/python-wasm-sdk/emsdk/upstream/emscripten/cache/sysroot/include/SDL
5851
working-directory: /opt
5952

6053
- name: Build WASM with emsdk
61-
run: |
62-
${SDKROOT}/python3-wasm setup.py build -j$(nproc)
63-
64-
- name: Generate libpygame.a static binaries archive
65-
run: |
66-
mkdir -p dist
67-
SYS_PYTHON=python3 /opt/python-wasm-sdk/emsdk/upstream/emscripten/emar rcs dist/libpygame.a $(find build/temp.wasm32-*/ | grep o$)
54+
run: ${SDKROOT}/python3-wasm dev.py build --wheel
6855

6956
# Upload the generated files under github actions assets section
7057
- name: Upload dist
71-
uses: actions/upload-artifact@v4
58+
uses: actions/upload-artifact@v5
7259
with:
7360
name: pygame-wasm-dist
7461
path: ./dist/*
62+
63+
build-pyodide:
64+
name: Pyodide build
65+
runs-on: ubuntu-latest
66+
steps:
67+
- uses: actions/checkout@v5.0.0
68+
69+
- uses: pypa/cibuildwheel@v3.2.1
70+
env:
71+
CIBW_PLATFORM: pyodide
72+
73+
- uses: actions/upload-artifact@v5
74+
with:
75+
name: pyodide-wheels
76+
path: wheelhouse/*.whl

.github/workflows/build-macos.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ jobs:
2424
matrix:
2525
# make arm64 deps and x86_64 deps
2626
include:
27-
- { macarch: arm64, os: macos-14 }
28-
- { macarch: x86_64, os: macos-13 }
27+
- { macarch: arm64, os: macos-15 }
28+
- { macarch: x86_64, os: macos-15 }
2929

3030
steps:
3131
- uses: actions/checkout@v5.0.0
3232

3333
- name: Test for Mac Deps cache hit
3434
id: macdep-cache
35-
uses: actions/cache@v4.2.4
35+
uses: actions/cache@v4.3.0
3636
with:
3737
path: ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
3838
# The hash of all files in buildconfig manylinux-build and macdependencies is
@@ -51,7 +51,7 @@ jobs:
5151
5252
# Uncomment when you want to manually verify the deps by downloading them
5353
# - name: Upload Mac deps
54-
# uses: actions/upload-artifact@v4
54+
# uses: actions/upload-artifact@v5
5555
# with:
5656
# name: pygame-mac-deps-${{ matrix.macarch }}
5757
# path: ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
@@ -64,8 +64,8 @@ jobs:
6464
fail-fast: false # if a particular matrix build fails, don't skip the rest
6565
matrix:
6666
include:
67-
- { macarch: arm64, os: macos-14 }
68-
- { macarch: x86_64, os: macos-13 }
67+
- { macarch: arm64, os: macos-15 }
68+
- { macarch: x86_64, os: macos-15 }
6969

7070
env:
7171
MAC_ARCH: ${{ matrix.macarch }}
@@ -99,28 +99,28 @@ jobs:
9999
- uses: actions/checkout@v5.0.0
100100

101101
- name: pip cache
102-
uses: actions/cache@v4.2.4
102+
uses: actions/cache@v4.3.0
103103
with:
104104
path: ~/Library/Caches/pip # This cache path is only right on mac
105105
key: pip-cache-${{ matrix.macarch }}-${{ matrix.os }}
106106

107107
- name: Fetch Mac deps
108108
id: macdep-cache
109-
uses: actions/cache@v4.2.4
109+
uses: actions/cache@v4.3.0
110110
with:
111111
path: ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
112112
key: macdep-${{ hashFiles('buildconfig/manylinux-build/**') }}-${{ hashFiles('buildconfig/macdependencies/*.sh') }}-${{ matrix.macarch }}
113113
fail-on-cache-miss: true
114114

115115
- name: Install uv for speed
116-
uses: astral-sh/setup-uv@v6
116+
uses: astral-sh/setup-uv@v7
117117
with:
118-
version: "0.8.3"
118+
version: "0.9.2"
119119

120120
- name: Build and test wheels
121-
uses: pypa/cibuildwheel@v3.1.4
121+
uses: pypa/cibuildwheel@v3.2.1
122122

123-
- uses: actions/upload-artifact@v4
123+
- uses: actions/upload-artifact@v5
124124
with:
125125
name: pygame-wheels-macos-${{ matrix.macarch }}
126126
path: ./wheelhouse/*.whl

.github/workflows/build-manylinux.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- uses: actions/checkout@v5.0.0
3737

3838
- name: Log in to the Container registry
39-
uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1
39+
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef
4040
with:
4141
registry: ghcr.io
4242
username: ${{ github.actor }}
@@ -74,11 +74,11 @@ jobs:
7474
CIBW_MANYLINUX_AARCH64_IMAGE: ghcr.io/${{ github.repository }}_aarch64:${{ steps.meta.outputs.version }}
7575
CIBW_MANYLINUX_PYPY_AARCH64_IMAGE: ghcr.io/${{ github.repository }}_aarch64:${{ steps.meta.outputs.version }}
7676

77-
uses: pypa/cibuildwheel@v3.1.4
77+
uses: pypa/cibuildwheel@v3.2.1
7878

7979
# We upload the generated files under github actions assets
8080
- name: Upload dist
81-
uses: actions/upload-artifact@v4
81+
uses: actions/upload-artifact@v5
8282
with:
8383
name: pygame-wheels-manylinux-${{ matrix.arch }}
8484
path: ./wheelhouse/*.whl

.github/workflows/build-sdl3.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ jobs:
5353

5454
steps:
5555
- uses: actions/checkout@v5.0.0
56+
- uses: actions/setup-python@v6
57+
with:
58+
python-version: '3.14'
5659

5760
- name: Install pygame deps (linux)
5861
if: matrix.os == 'ubuntu-24.04'

.github/workflows/build-ubuntu-sdist.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
sudo apt-get update --fix-missing
5151
sudo apt-get install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libfreetype6-dev libportmidi-dev python3-dev
5252
pip3 install --upgrade pip
53-
pip3 install build numpy>=1.21.0
53+
pip3 install build numpy
5454
5555
- name: Make sdist and install it
5656
run: |
@@ -62,15 +62,14 @@ jobs:
6262
SDL_VIDEODRIVER: "dummy"
6363
SDL_AUDIODRIVER: "disk"
6464
run: python3 -m pygame.tests -v --exclude opengl,music,timing --time_out 300
65+
working-directory: ${{ github.workspace }}/..
6566

6667
- name: Test typestubs
67-
run: |
68-
pip3 install mypy==1.13.0
69-
python3 buildconfig/stubs/stubcheck.py
68+
run: python3 dev.py stubs
7069

7170
# We upload the generated files under github actions assets
7271
- name: Upload sdist
73-
uses: actions/upload-artifact@v4
72+
uses: actions/upload-artifact@v5
7473
with:
7574
name: pygame-wheels-sdist
7675
path: dist/*.tar.gz

.github/workflows/build-windows.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,19 +33,19 @@ jobs:
3333
steps:
3434
- uses: actions/checkout@v5.0.0
3535

36-
- uses: TheMrMilchmann/setup-msvc-dev@v3 # this lets us use the developer command prompt on windows
36+
- uses: TheMrMilchmann/setup-msvc-dev@v4 # this lets us use the developer command prompt on windows
3737
with:
3838
arch: ${{ matrix.msvc-dev-arch }}
3939

4040
- name: Install uv for speed
41-
uses: astral-sh/setup-uv@v6
41+
uses: astral-sh/setup-uv@v7
4242
with:
43-
version: "0.8.3"
43+
version: "0.9.2"
4444

4545
- name: Build and test wheels
46-
uses: pypa/cibuildwheel@v3.1.4
46+
uses: pypa/cibuildwheel@v3.2.1
4747

48-
- uses: actions/upload-artifact@v4
48+
- uses: actions/upload-artifact@v5
4949
with:
5050
name: pygame-wheels-windows-${{ matrix.winarch }}
5151
path: ./wheelhouse/*.whl

.github/workflows/release-gh-draft.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- uses: actions/checkout@v5.0.0
3030

3131
- name: Download all artifacts
32-
uses: actions/download-artifact@v5
32+
uses: actions/download-artifact@v6
3333
with:
3434
path: pygame-wheels
3535
merge-multiple: true
@@ -41,7 +41,7 @@ jobs:
4141
run: echo "VER=${GITHUB_REF_NAME#'release/'}" >> $GITHUB_OUTPUT
4242

4343
- name: Generate release attestation
44-
uses: actions/attest-build-provenance@v2.4.0
44+
uses: actions/attest-build-provenance@v3.0.0
4545
with:
4646
subject-path: "pygame-wheels/*"
4747

.github/workflows/run-ubuntu-checks.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,8 @@ jobs:
5353
os: [ ubuntu-24.04 ]
5454
# check our min python (minor) version and our max python (minor) version
5555
python: [
56-
3.9.23,
57-
3.13.5,
58-
3.14.0rc1
56+
3.10.17,
57+
3.14.0,
5958
]
6059

6160
env:
@@ -88,7 +87,7 @@ jobs:
8887
8988
- name: Cache debug python build
9089
id: cache-python
91-
uses: actions/cache@v4.2.4
90+
uses: actions/cache@v4.3.0
9291
with:
9392
key: ${{ matrix.python }}
9493
path: ~/.pyenv/versions/${{ matrix.python }}-debug/**
@@ -124,7 +123,7 @@ jobs:
124123
- name: Upload coverage html
125124
# want to continue only if the coverage generation was successful
126125
if: ${{ steps.gen-coverage.conclusion == 'success' && !cancelled() }}
127-
uses: actions/upload-artifact@v4
126+
uses: actions/upload-artifact@v5
128127
with:
129128
name: pygame-coverage-${{ matrix.os }}-${{ matrix.python }}
130129
path: ./out

.pre-commit-config.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
repos:
88
- repo: https://github.com/pre-commit/pre-commit-hooks
9-
rev: v5.0.0
9+
rev: v6.0.0
1010
hooks:
1111
- id: end-of-file-fixer
1212
exclude: |
@@ -26,7 +26,7 @@ repos:
2626
)$
2727
2828
- repo: https://github.com/astral-sh/ruff-pre-commit
29-
rev: v0.11.12
29+
rev: v0.14.0
3030
hooks: # See pyproject.toml for configuration options.
3131
- id: ruff
3232
name: ruff-sort-imports
@@ -35,7 +35,7 @@ repos:
3535
types_or: [ python, pyi, jupyter ]
3636

3737
- repo: https://github.com/pre-commit/mirrors-clang-format
38-
rev: v20.1.5
38+
rev: v21.1.2
3939
hooks:
4040
- id: clang-format
4141
exclude: |

0 commit comments

Comments
 (0)