Skip to content

Commit 51bd7d2

Browse files
hugovkradarhere
andauthored
Drop support for Python 3.8 (#8183)
Co-authored-by: Andrew Murray <[email protected]> Co-authored-by: Andrew Murray <[email protected]>
1 parent 7537ce8 commit 51bd7d2

37 files changed

+66
-67
lines changed

.appveyor.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ environment:
2121
- PYTHON: C:/Python312
2222
ARCHITECTURE: x86
2323
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
24-
- PYTHON: C:/Python38-x64
24+
- PYTHON: C:/Python39-x64
2525
ARCHITECTURE: AMD64
26-
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
26+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
2727

2828

2929
install:
@@ -38,7 +38,7 @@ install:
3838
- path c:\nasm-2.16.03;C:\Program Files\gs\gs10.03.1\bin;%PATH%
3939
- cd c:\pillow\winbuild\
4040
- ps: |
41-
c:\python38\python.exe c:\pillow\winbuild\build_prepare.py -v --depends=C:\pillow-depends\
41+
c:\python39\python.exe c:\pillow\winbuild\build_prepare.py -v --depends=C:\pillow-depends\
4242
c:\pillow\winbuild\build\build_dep_all.cmd
4343
$host.SetShouldExit(0)
4444
- path C:\pillow\winbuild\build\bin;%PATH%

.ci/install.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ if [[ $(uname) != CYGWIN* ]]; then
4848
# Pyroma uses non-isolated build and fails with old setuptools
4949
if [[
5050
$GHA_PYTHON_VERSION == pypy3.9
51-
|| $GHA_PYTHON_VERSION == 3.8
5251
|| $GHA_PYTHON_VERSION == 3.9
5352
]]; then
5453
# To match pyproject.toml

.github/workflows/test-cygwin.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
strategy:
3636
fail-fast: false
3737
matrix:
38-
python-minor-version: [8, 9]
38+
python-minor-version: [9]
3939

4040
timeout-minutes: 40
4141

.github/workflows/test-docker.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ jobs:
4949
fedora-39-amd64,
5050
fedora-40-amd64,
5151
gentoo,
52-
ubuntu-20.04-focal-amd64,
5352
ubuntu-22.04-jammy-amd64,
5453
ubuntu-24.04-noble-amd64,
5554
]

.github/workflows/test-windows.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
strategy:
3636
fail-fast: false
3737
matrix:
38-
python-version: ["pypy3.10", "pypy3.9", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
38+
python-version: ["pypy3.10", "pypy3.9", "3.9", "3.10", "3.11", "3.12", "3.13"]
3939

4040
timeout-minutes: 30
4141

.github/workflows/test.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ jobs:
4848
"3.11",
4949
"3.10",
5050
"3.9",
51-
"3.8",
5251
]
5352
include:
5453
- python-version: "3.11"
@@ -59,13 +58,9 @@ jobs:
5958
# M1 only available for 3.10+
6059
- os: "macos-13"
6160
python-version: "3.9"
62-
- os: "macos-13"
63-
python-version: "3.8"
6461
exclude:
6562
- os: "macos-14"
6663
python-version: "3.9"
67-
- os: "macos-14"
68-
python-version: "3.8"
6964

7065
runs-on: ${{ matrix.os }}
7166
name: ${{ matrix.os }} Python ${{ matrix.python-version }}

.github/workflows/wheels.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ jobs:
4141
python-version:
4242
- pp39
4343
- pp310
44-
- cp38
4544
- cp39
4645
- cp310
4746
- cp311
@@ -136,8 +135,6 @@ jobs:
136135
CIBW_MANYLINUX_PYPY_X86_64_IMAGE: ${{ matrix.manylinux }}
137136
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.manylinux }}
138137
CIBW_PRERELEASE_PYTHONS: True
139-
CIBW_SKIP: pp38-*
140-
CIBW_TEST_SKIP: cp38-macosx_arm64
141138
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macosx_deployment_target }}
142139

143140
- uses: actions/upload-artifact@v4
@@ -208,7 +205,6 @@ jobs:
208205
CIBW_BEFORE_ALL: "{package}\\winbuild\\build\\build_dep_all.cmd"
209206
CIBW_CACHE_PATH: "C:\\cibw"
210207
CIBW_PRERELEASE_PYTHONS: True
211-
CIBW_SKIP: pp38-*
212208
CIBW_TEST_SKIP: "*-win_arm64"
213209
CIBW_TEST_COMMAND: 'docker run --rm
214210
-v {project}:C:\pillow

Tests/helper.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,10 @@
1111
import sys
1212
import sysconfig
1313
import tempfile
14+
from collections.abc import Sequence
1415
from functools import lru_cache
1516
from io import BytesIO
16-
from typing import Any, Callable, Sequence
17+
from typing import Any, Callable
1718

1819
import pytest
1920
from packaging.version import parse as parse_version

Tests/test_file_eps.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -385,9 +385,10 @@ def test_timeout(test_file: str) -> None:
385385
def test_bounding_box_in_trailer() -> None:
386386
# Check bounding boxes are parsed in the same way
387387
# when specified in the header and the trailer
388-
with Image.open("Tests/images/zero_bb_trailer.eps") as trailer_image, Image.open(
389-
FILE1
390-
) as header_image:
388+
with (
389+
Image.open("Tests/images/zero_bb_trailer.eps") as trailer_image,
390+
Image.open(FILE1) as header_image,
391+
):
391392
assert trailer_image.size == header_image.size
392393

393394

Tests/test_file_gif.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
from __future__ import annotations
22

33
import warnings
4+
from collections.abc import Generator
45
from io import BytesIO
56
from pathlib import Path
6-
from typing import Generator
77

88
import pytest
99

0 commit comments

Comments
 (0)