Skip to content

Commit 955103a

Browse files
authored
Merge branch 'main' into patch-1
2 parents e95410b + a42e8ad commit 955103a

77 files changed

Lines changed: 3092 additions & 1987 deletions

Some content is hidden

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

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: Farama-Foundation

.github/workflows/build-docs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Build main branch documentation website
22

33
on:
44
push:
5-
branches: [master]
5+
branches: [main]
66

77
permissions:
88
contents: write
@@ -15,7 +15,7 @@ jobs:
1515
SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1616

1717
steps:
18-
- uses: actions/checkout@v6
18+
- uses: actions/checkout@v7
1919

2020
- uses: actions/setup-python@v6
2121
with:

.github/workflows/build-python.yml

Lines changed: 69 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
pre-commit:
2525
runs-on: ubuntu-latest
2626
steps:
27-
- uses: actions/checkout@v6
27+
- uses: actions/checkout@v7
2828
- uses: actions/setup-python@v6
2929
with:
3030
python-version: '3.12'
@@ -58,23 +58,23 @@ jobs:
5858
runs-on: ${{ matrix.runs-on }}
5959

6060
steps:
61-
- uses: actions/checkout@v6
61+
- uses: actions/checkout@v7
6262

6363
- uses: actions/setup-python@v6
6464
with:
6565
python-version: ${{ matrix.python }}
6666

6767
- name: Install CUDA Toolkit (Linux)
6868
if: runner.os == 'Linux'
69-
uses: Jimver/cuda-toolkit@v0.2.30
69+
uses: Jimver/cuda-toolkit@v0.2.35
7070
with:
7171
cuda: '12.6.2'
7272
method: 'network'
7373
sub-packages: '["nvcc", "cudart"]'
7474

7575
- name: Install CUDA Toolkit (Windows)
7676
if: runner.os == 'Windows'
77-
uses: Jimver/cuda-toolkit@v0.2.30
77+
uses: Jimver/cuda-toolkit@v0.2.35
7878
with:
7979
cuda: '12.6.2'
8080
method: 'network'
@@ -110,12 +110,12 @@ jobs:
110110
runs-on: ${{ matrix.runs-on }}
111111

112112
steps:
113-
- uses: actions/checkout@v6
113+
- uses: actions/checkout@v7
114114

115115
# For Linux, the CUDA Toolkit is installed the dockerfile
116116
- name: Install CUDA Toolkit (Windows)
117117
if: runner.os == 'Windows'
118-
uses: Jimver/cuda-toolkit@v0.2.30
118+
uses: Jimver/cuda-toolkit@v0.2.35
119119
with:
120120
cuda: '12.6.2'
121121
method: 'network'
@@ -124,13 +124,13 @@ jobs:
124124
- name: Set up Docker Buildx
125125
if: runner.os == 'linux'
126126
id: buildx
127-
uses: docker/setup-buildx-action@v3
127+
uses: docker/setup-buildx-action@v4
128128
with:
129129
install: true
130130
- name: Build Docker image with vcpkg
131131
if: runner.os == 'linux'
132132
# using build-push-action (without push) to make use of cache arguments
133-
uses: docker/build-push-action@v6
133+
uses: docker/build-push-action@v7
134134
with:
135135
context: .
136136
file: ".github/docker/manylinux-${{ matrix.arch }}-vcpkg.Dockerfile"
@@ -142,12 +142,12 @@ jobs:
142142
run: ./scripts/download_unpack_roms.sh
143143

144144
- name: Build wheels
145-
uses: pypa/cibuildwheel@v3.0
145+
uses: pypa/cibuildwheel@v4.1
146146
env:
147147
CIBW_ARCHS: "${{ matrix.arch }}"
148148

149149
- name: Upload wheels
150-
uses: actions/upload-artifact@v6
150+
uses: actions/upload-artifact@v7
151151
with:
152152
name: wheels-${{ runner.os }}-${{ matrix.arch }}
153153
path: ./wheelhouse/*.whl
@@ -169,87 +169,108 @@ jobs:
169169
python: '3.10'
170170
wheel-name: 'cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
171171
arch: 'x86_64'
172-
- runs-on: ubuntu-latest
173-
python: '3.11'
174-
wheel-name: 'cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
175-
arch: 'x86_64'
176-
- runs-on: ubuntu-latest
177-
python: '3.12'
178-
wheel-name: 'cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
179-
arch: 'x86_64'
172+
# - runs-on: ubuntu-latest
173+
# python: '3.11'
174+
# wheel-name: 'cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
175+
# arch: 'x86_64'
176+
# - runs-on: ubuntu-latest
177+
# python: '3.12'
178+
# wheel-name: 'cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
179+
# arch: 'x86_64'
180180
- runs-on: ubuntu-latest
181181
python: '3.13'
182182
wheel-name: 'cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
183183
arch: 'x86_64'
184+
- runs-on: ubuntu-latest
185+
python: '3.14'
186+
wheel-name: 'cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64'
187+
arch: 'x86_64'
184188

185189
- runs-on: ubuntu-24.04-arm
186190
python: '3.10'
187191
wheel-name: 'cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
188192
arch: 'aarch64'
189-
- runs-on: ubuntu-24.04-arm
190-
python: '3.11'
191-
wheel-name: 'cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
192-
arch: 'aarch64'
193-
- runs-on: ubuntu-24.04-arm
194-
python: '3.12'
195-
wheel-name: 'cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
196-
arch: 'aarch64'
193+
# - runs-on: ubuntu-24.04-arm
194+
# python: '3.11'
195+
# wheel-name: 'cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
196+
# arch: 'aarch64'
197+
# - runs-on: ubuntu-24.04-arm
198+
# python: '3.12'
199+
# wheel-name: 'cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
200+
# arch: 'aarch64'
197201
- runs-on: ubuntu-24.04-arm
198202
python: '3.13'
199203
wheel-name: 'cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
200204
arch: 'aarch64'
205+
- runs-on: ubuntu-24.04-arm
206+
python: '3.14'
207+
wheel-name: 'cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64'
208+
arch: 'aarch64'
201209

202210
- runs-on: windows-latest
203211
python: '3.10'
204212
wheel-name: 'cp310-cp310-win_amd64'
205213
arch: AMD64
206-
- runs-on: windows-latest
207-
python: '3.11'
208-
wheel-name: 'cp311-cp311-win_amd64'
209-
arch: AMD64
210-
- runs-on: windows-latest
211-
python: '3.12'
212-
wheel-name: 'cp312-cp312-win_amd64'
213-
arch: AMD64
214+
# - runs-on: windows-latest
215+
# python: '3.11'
216+
# wheel-name: 'cp311-cp311-win_amd64'
217+
# arch: AMD64
218+
# - runs-on: windows-latest
219+
# python: '3.12'
220+
# wheel-name: 'cp312-cp312-win_amd64'
221+
# arch: AMD64
214222
- runs-on: windows-latest
215223
python: '3.13'
216224
wheel-name: 'cp313-cp313-win_amd64'
217225
arch: AMD64
226+
- runs-on: windows-latest
227+
python: '3.14'
228+
wheel-name: 'cp314-cp314-win_amd64'
229+
arch: AMD64
230+
# Jax doesn't support 3.14t on Windows
231+
# - runs-on: windows-latest
232+
# python: '3.14t'
233+
# wheel-name: 'cp314-cp314t-win_amd64'
234+
# arch: AMD64
218235

219236
- runs-on: macos-latest
220237
python: '3.10'
221238
wheel-name: 'cp310-cp310-macosx_13_0_arm64'
222239
arch: arm64
223-
- runs-on: macos-latest
224-
python: '3.11'
225-
wheel-name: 'cp311-cp311-macosx_13_0_arm64'
226-
arch: arm64
227-
- runs-on: macos-latest
228-
python: '3.12'
229-
wheel-name: 'cp312-cp312-macosx_13_0_arm64'
230-
arch: arm64
240+
# - runs-on: macos-latest
241+
# python: '3.11'
242+
# wheel-name: 'cp311-cp311-macosx_13_0_arm64'
243+
# arch: arm64
244+
# - runs-on: macos-latest
245+
# python: '3.12'
246+
# wheel-name: 'cp312-cp312-macosx_13_0_arm64'
247+
# arch: arm64
231248
- runs-on: macos-latest
232249
python: '3.13'
233250
wheel-name: 'cp313-cp313-macosx_13_0_arm64'
234251
arch: arm64
252+
- runs-on: macos-latest
253+
python: '3.14'
254+
wheel-name: 'cp314-cp314-macosx_13_0_arm64'
255+
arch: arm64
235256

236257
runs-on: ${{ matrix.runs-on }}
237258

238259
steps:
239-
- uses: actions/checkout@v6
260+
- uses: actions/checkout@v7
240261
- uses: actions/setup-python@v6
241262
with:
242263
python-version: ${{ matrix.python }}
243264

244-
- uses: actions/download-artifact@v7
265+
- uses: actions/download-artifact@v8
245266
with:
246267
name: wheels-${{ runner.os }}-${{ matrix.arch }}
247268

248269
- run: ls
249270

250271
- name: Install ALE wheel
251272
# wildcarding doesn't work for some reason, therefore, update the project version here
252-
run: python -m pip install "ale_py-0.11.2-${{ matrix.wheel-name }}.whl[test]"
273+
run: python -m pip install "ale_py-0.12.0-${{ matrix.wheel-name }}.whl[test]"
253274

254275
- name: Test
255276
run: python -m pytest
@@ -279,20 +300,20 @@ jobs:
279300
runs-on: ${{ matrix.runs-on }}
280301

281302
steps:
282-
- uses: actions/checkout@v6
303+
- uses: actions/checkout@v7
283304
- uses: actions/setup-python@v6
284305
with:
285306
python-version: "3.13"
286307

287-
- uses: actions/download-artifact@v7
308+
- uses: actions/download-artifact@v8
288309
with:
289310
name: wheels-${{ runner.os }}-${{ matrix.arch }}
290311

291312
- run: ls
292313

293314
- name: Install ALE wheel
294315
# wildcarding doesn't work for some reason, therefore, update the project version here
295-
run: python -m pip install "ale_py-0.11.2-${{ matrix.wheel-name }}.whl[test]"
316+
run: python -m pip install "ale_py-0.12.0-${{ matrix.wheel-name }}.whl[test]"
296317

297318
- name: Install NumPy 1.X
298319
run: python -m pip install "numpy<2.0"

.github/workflows/build-release.yml

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,19 @@ jobs:
3030
runs-on: ${{ matrix.runs-on }}
3131

3232
steps:
33-
- uses: actions/checkout@v6
33+
- uses: actions/checkout@v7
3434

3535
- name: Set up Docker Buildx
3636
if: runner.os == 'linux'
3737
id: buildx
38-
uses: docker/setup-buildx-action@v3
38+
uses: docker/setup-buildx-action@v4
3939
with:
4040
install: true
4141

4242
- name: Build Docker image with vcpkg
4343
if: runner.os == 'linux'
4444
# using build-push-action (without push) to make use of cache arguments
45-
uses: docker/build-push-action@v6
45+
uses: docker/build-push-action@v7
4646
with:
4747
context: .
4848
file: ".github/docker/manylinux-${{ matrix.arch }}-vcpkg.Dockerfile"
@@ -54,12 +54,12 @@ jobs:
5454
run: ./scripts/download_unpack_roms.sh
5555

5656
- name: Build wheels
57-
uses: pypa/cibuildwheel@v3.0
57+
uses: pypa/cibuildwheel@v4.1
5858
env:
5959
CIBW_ARCHS: "${{ matrix.arch }}"
6060

6161
- name: Upload wheels
62-
uses: actions/upload-artifact@v6
62+
uses: actions/upload-artifact@v7
6363
with:
6464
name: wheels-${{ matrix.runs-on }}-${{ matrix.arch }}
6565
path: ./wheelhouse/*.whl
@@ -73,39 +73,39 @@ jobs:
7373

7474
steps:
7575
# create the `ale_py-*.*.*.tar.gz` for source building
76-
- uses: actions/checkout@v6
76+
- uses: actions/checkout@v7
7777
- uses: actions/setup-python@v6
7878
with:
7979
python-version: '3.12'
80-
- run: pip install setuptools
81-
- run: python setup.py sdist
80+
- run: pip install build
81+
- run: python -m build --sdist
8282

83-
- uses: actions/download-artifact@v7
83+
- uses: actions/download-artifact@v8
8484
with:
8585
name: wheels-windows-latest-AMD64
8686
path: dist
8787

88-
- uses: actions/download-artifact@v7
88+
- uses: actions/download-artifact@v8
8989
with:
9090
name: wheels-ubuntu-latest-x86_64
9191
path: dist
9292

93-
- uses: actions/download-artifact@v7
93+
- uses: actions/download-artifact@v8
9494
with:
9595
name: wheels-ubuntu-24.04-arm-aarch64
9696
path: dist
9797

98-
- uses: actions/download-artifact@v7
98+
- uses: actions/download-artifact@v8
9999
with:
100100
name: wheels-macos-latest-arm64
101101
path: dist
102102

103103
- run: ls dist/
104104

105105
- name: Upload wheels to release
106-
uses: softprops/action-gh-release@v2
106+
uses: softprops/action-gh-release@v3
107107
with:
108-
files: dist/*.wheel
108+
files: dist/*
109109

110110
- name: Publish to PyPi test
111111
uses: pypa/gh-action-pypi-publish@release/v1
@@ -120,10 +120,10 @@ jobs:
120120
runs-on: ubuntu-latest
121121

122122
steps:
123-
- uses: actions/checkout@v6
123+
- uses: actions/checkout@v7
124124

125125
- name: Setup Emscripten
126-
uses: mymindstorm/setup-emsdk@v14
126+
uses: mymindstorm/setup-emsdk@v16
127127
with:
128128
version: '3.1.68'
129129
actions-cache-folder: 'emsdk-cache'
@@ -148,12 +148,12 @@ jobs:
148148
EMSDK_PATH: ${{ env.EMSDK }}
149149

150150
- name: Upload standalone bundle to release
151-
uses: softprops/action-gh-release@v2
151+
uses: softprops/action-gh-release@v3
152152
with:
153153
files: dist/*.zip
154154

155155
- name: Upload NPM package artifact
156-
uses: actions/upload-artifact@v6
156+
uses: actions/upload-artifact@v7
157157
with:
158158
name: npm-package
159159
path: dist/npm/
@@ -166,7 +166,7 @@ jobs:
166166
# if: ${{ secrets.NPM_TOKEN != '' }}
167167
#
168168
# steps:
169-
# - uses: actions/download-artifact@v7
169+
# - uses: actions/download-artifact@v8
170170
# with:
171171
# name: npm-package
172172
# path: dist/npm/

0 commit comments

Comments
 (0)