Skip to content

Commit b6e74d1

Browse files
committed
Merge branch 'main' of https://github.com/pygame-community/pygame-ce into events-as-types-python
2 parents ed33f48 + 6026d1e commit b6e74d1

File tree

120 files changed

+1797
-744
lines changed

Some content is hidden

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

120 files changed

+1797
-744
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
- run:
4343
name: Build the Linux wheels.
4444
command: |
45-
pip3 install --user cibuildwheel==2.21.3
45+
pip3 install --user cibuildwheel==2.22.0
4646
PATH="$HOME/.local/bin:$PATH" cibuildwheel --output-dir wheelhouse
4747
4848
- store_artifacts:

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

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,11 @@ jobs:
9696
install: ${{ env.INSTALL_CMD }}
9797

9898
# Build a wheel, install it for running unit tests.
99-
# --no-build-isolation is passed so that preinstalled meson-python can be used
100-
# (done for optimization reasons)
99+
# pip does not know that ninja is installed, and tries to install it again.
100+
# so pass --ignore-dep ninja explicitly
101101
run: |
102-
echo "\nBuilding pygame wheel\n"
103-
pip3 wheel . --no-build-isolation --wheel-dir /artifacts -vvv
104-
echo "\nInstalling wheel\n"
105-
pip3 install --no-index --pre --break-system-packages --find-links /artifacts pygame-ce
102+
echo "\nBuilding and installing pygame wheel\n"
103+
PIP_BREAK_SYSTEM_PACKAGES=1 python3 dev.py --ignore-dep ninja build --wheel /artifacts --lax
106104
echo "\nRunning tests\n"
107105
export SDL_VIDEODRIVER=dummy
108106
export SDL_AUDIODRIVER=disk

.github/workflows/build-macos.yml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151

5252
- name: Test for Mac Deps cache hit
5353
id: macdep-cache
54-
uses: actions/cache@v4.1.2
54+
uses: actions/cache@v4.2.0
5555
with:
5656
path: ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
5757
# The hash of all files in buildconfig manylinux-build and macdependencies is
@@ -64,7 +64,7 @@ jobs:
6464
if: steps.macdep-cache.outputs.cache-hit != 'true'
6565
run: |
6666
export MAC_ARCH="${{ matrix.macarch }}"
67-
brew install coreutils pkg-config
67+
brew install coreutils
6868
cd buildconfig/macdependencies
6969
bash ./build_mac_deps.sh
7070
@@ -104,7 +104,6 @@ jobs:
104104

105105
# Setup macOS dependencies
106106
CIBW_BEFORE_ALL: |
107-
brew install pkg-config
108107
cd buildconfig/macdependencies
109108
cp -r ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }} ${{ github.workspace }}/pygame_mac_deps
110109
bash ./install_mac_deps.sh
@@ -119,14 +118,14 @@ jobs:
119118
- uses: actions/checkout@v4.2.2
120119

121120
- name: pip cache
122-
uses: actions/cache@v4.1.2
121+
uses: actions/cache@v4.2.0
123122
with:
124123
path: ~/Library/Caches/pip # This cache path is only right on mac
125124
key: pip-cache-${{ matrix.macarch }}-${{ matrix.os }}
126125

127126
- name: Fetch Mac deps
128127
id: macdep-cache
129-
uses: actions/cache@v4.1.2
128+
uses: actions/cache@v4.2.0
130129
with:
131130
path: ${{ github.workspace }}/pygame_mac_deps_${{ matrix.macarch }}
132131
key: macdep-${{ hashFiles('buildconfig/manylinux-build/**') }}-${{ hashFiles('buildconfig/macdependencies/*.sh') }}-${{ matrix.macarch }}
@@ -135,10 +134,10 @@ jobs:
135134
- name: Install uv for speed
136135
uses: yezz123/setup-uv@v4
137136
with:
138-
uv-version: "0.4.10"
137+
uv-version: "0.5.4"
139138

140139
- name: Build and test wheels
141-
uses: pypa/cibuildwheel@v2.21.3
140+
uses: pypa/cibuildwheel@v2.22.0
142141

143142
- uses: actions/upload-artifact@v4
144143
with:

.github/workflows/build-manylinux.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,14 @@ jobs:
6868

6969
- name: Extract metadata (tags, labels) for Docker
7070
id: meta
71-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81
71+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96
7272
with:
7373
images: ghcr.io/${{ github.repository }}_${{ matrix.arch }}
7474
tags: type=raw,value=${{ hashFiles('buildconfig/manylinux-build/**') }}
7575

7676
- name: Build and push Docker image
7777
if: steps.inspect.outcome == 'failure'
78-
uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75
78+
uses: docker/build-push-action@48aba3b46d1b1fec4febb7c5d0c644b249a11355
7979
with:
8080
context: ${{ github.workspace }}/buildconfig/manylinux-build/docker_base
8181
file: ${{ github.workspace }}/buildconfig/manylinux-build/docker_base/Dockerfile-${{ matrix.arch }}
@@ -91,7 +91,7 @@ jobs:
9191
CIBW_MANYLINUX_I686_IMAGE: ghcr.io/${{ github.repository }}_i686:${{ steps.meta.outputs.version }}
9292
CIBW_MANYLINUX_PYPY_I686_IMAGE: ghcr.io/${{ github.repository }}_i686:${{ steps.meta.outputs.version }}
9393

94-
uses: pypa/cibuildwheel@v2.21.3
94+
uses: pypa/cibuildwheel@v2.22.0
9595

9696
# We upload the generated files under github actions assets
9797
- name: Upload dist

.github/workflows/build-on-msys2.yml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,12 +68,10 @@ jobs:
6868
# mingw-w64-${{ matrix.env }}-freetype
6969
# mingw-w64-${{ matrix.env }}-portmidi
7070

71-
- name: Building pygame wheel
72-
run: |
73-
pip3 wheel . --wheel-dir /artifacts -vvv --no-build-isolation
74-
75-
- name: Installing wheel
76-
run: pip3 install --no-index --pre --find-links /artifacts pygame-ce
71+
# pip does not know that ninja is installed, and tries to install it again.
72+
# so pass --ignore-dep ninja explicitly
73+
- name: Build and install pygame wheel
74+
run: python3 dev.py --ignore-dep ninja build --wheel /artifacts --lax
7775

7876
- name: Run tests
7977
env:

.github/workflows/build-sdl3.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,9 @@ jobs:
5656

5757
- name: Install pygame deps (linux)
5858
if: matrix.os == 'ubuntu-24.04'
59-
run: sudo apt-get install libfreetype6-dev libportmidi-dev python3-dev
59+
run: |
60+
sudo apt-get update --fix-missing
61+
sudo apt-get install libfreetype6-dev libportmidi-dev python3-dev
6062
6163
- name: Install pygame deps (mac)
6264
if: matrix.os == 'macos-14'
@@ -87,6 +89,11 @@ jobs:
8789
- name: Build with SDL3
8890
run: python3 dev.py build --sdl3
8991

92+
# eventually we need to run all tests, but for now test that importing pygame
93+
# works
94+
- name: Test import works
95+
run: python3 -c 'import pygame'
96+
9097
# - name: Run tests
9198
# env:
9299
# SDL_VIDEODRIVER: "dummy"

.github/workflows/build-windows.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,10 @@ jobs:
5959
- name: Install uv for speed
6060
uses: yezz123/setup-uv@v4
6161
with:
62-
uv-version: "0.4.10"
62+
uv-version: "0.5.4"
6363

6464
- name: Build and test wheels
65-
uses: pypa/cibuildwheel@v2.21.3
65+
uses: pypa/cibuildwheel@v2.22.0
6666

6767
- uses: actions/upload-artifact@v4
6868
with:

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
run: echo "VER=${GITHUB_REF_NAME#'release/'}" >> $GITHUB_OUTPUT
6262

6363
- name: Generate release attestation
64-
uses: actions/attest-build-provenance@v1.4.3
64+
uses: actions/attest-build-provenance@v2.0.1
6565
with:
6666
subject-path: "pygame-wheels/*"
6767

README.rst

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
|PyPiVersion| |PyPiLicense|
99
|Python3| |GithubCommits| |BlackFormatBadge|
1010

11-
**English** `简体中文`_ `繁體中文`_ `Français`_ `فارسی`_ `Español`_ `日本語`_ `Italiano`_
11+
**English** `简体中文`_ `繁體中文`_ `Français`_ `فارسی`_ `Español`_ `日本語`_ `Italiano`_ `Русский`_
1212
---------------------------------------------------------------------------------------------------
1313

1414
Pygame_ is a free and open-source cross-platform library
@@ -139,9 +139,9 @@ Dependency versions:
139139

140140

141141
+----------+------------------------+
142-
| CPython | >= 3.8 (Or use PyPy3) |
142+
| CPython | >= 3.9 (Or use PyPy3) |
143143
+----------+------------------------+
144-
| SDL | >= 2.0.10 |
144+
| SDL | >= 2.0.14 |
145145
+----------+------------------------+
146146
| SDL_mixer| >= 2.0.4 |
147147
+----------+------------------------+
@@ -221,3 +221,4 @@ See docs/licenses for licenses of dependencies.
221221
.. _Español: ./docs/readmes/README.es.rst
222222
.. _日本語: ./docs/readmes/README.ja.rst
223223
.. _Italiano: ./docs/readmes/README.it.rst
224+
.. _Русский: ./docs/readmes/README.ru.rst

buildconfig/download_win_prebuilt.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,8 @@ def get_urls(x86=True, x64=True):
7878
url_sha1 = []
7979
url_sha1.extend([
8080
[
81-
'https://github.com/libsdl-org/SDL/releases/download/release-2.30.9/SDL2-devel-2.30.9-VC.zip',
82-
'd89a2ad46b98ba08db5ec5877cb2fde46e127825',
81+
'https://github.com/libsdl-org/SDL/releases/download/release-2.30.10/SDL2-devel-2.30.10-VC.zip',
82+
'42378fd090d547d03dca8c9df584ba8f38555809',
8383
],
8484
[
8585
'https://github.com/libsdl-org/SDL/releases/download/preview-3.1.6/SDL3-devel-3.1.6-VC.zip',
@@ -238,12 +238,12 @@ def copy(src, dst):
238238
copy(
239239
os.path.join(
240240
temp_dir,
241-
'SDL2-devel-2.30.9-VC/SDL2-2.30.9'
241+
'SDL2-devel-2.30.10-VC/SDL2-2.30.10'
242242
),
243243
os.path.join(
244244
move_to_dir,
245245
prebuilt_dir,
246-
'SDL2-2.30.9'
246+
'SDL2-2.30.10'
247247
)
248248
)
249249
copy(

0 commit comments

Comments
 (0)