[fonttools/fonttools] 547d3e: Require Python 3.11 or later

0 views
Skip to first unread message

Cosimo Lupo

unread,
Sep 18, 2026, 6:03:35 AM (yesterday) Sep 18
to fontto...@googlegroups.com
Branch: refs/heads/bump-python-311
Home: https://github.com/fonttools/fonttools
Commit: 547d3ebbc33c07788ff4420fa83566b5e39acdf1
https://github.com/fonttools/fonttools/commit/547d3ebbc33c07788ff4420fa83566b5e39acdf1
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M .github/workflows/test.yml
M .readthedocs.yml
M Doc/source/index.rst
M README.rst
M mypy.ini
M pyproject.toml
M setup.py
M tox.ini

Log Message:
-----------
Require Python 3.11 or later

3.10 reaches end of life in October 2026. Drop it from python_requires,
the classifiers, the CI matrix and tox envlist, and bump the black target
and the readthedocs builder (which pip-installs the package, so it has to
satisfy python_requires). mypy's python_version was still on 3.9, bump
that too.

Also replace the NEP 29 reference in the README: NEP 29 is superseded by
SPEC 0, whose schedule would put us on 3.13 already, which is too
aggressive for fonttools. Point at Python's own supported versions
instead, which is what a >=3.11 floor follows anyway.

Fixes #4183



To unsubscribe from these emails, change your notification settings at https://github.com/fonttools/fonttools/settings/notifications

Cosimo Lupo

unread,
Sep 18, 2026, 8:31:14 AM (yesterday) Sep 18
to fontto...@googlegroups.com
Branch: refs/heads/main
Commit: e8485c4b84b6e18f957c52b8dae34760061d8026
https://github.com/fonttools/fonttools/commit/e8485c4b84b6e18f957c52b8dae34760061d8026
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M Lib/fontTools/misc/enumTools.py
M Lib/fontTools/pens/pointPen.py

Log Message:
-----------
[enumTools] drop the StrEnum backport now that we require 3.11

enum.StrEnum is always available, so pointPen imports it straight from the
stdlib. fontTools.misc.enumTools has been public since 4.60.0, so I left it
as a re-export instead of removing it.


Commit: 42ab00f2e25b7e3d2ec038b51cbfa16289b61c9f
https://github.com/fonttools/fonttools/commit/42ab00f2e25b7e3d2ec038b51cbfa16289b61c9f
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M tox.ini

Log Message:
-----------
tox.ini: add 3.15 to envlist


Commit: ac636290584c99bd6abc6f5350641a15d4291051
https://github.com/fonttools/fonttools/commit/ac636290584c99bd6abc6f5350641a15d4291051
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M requirements.txt

Log Message:
-----------
Test Python 3.15 with current dependency wheels

Use SciPy 1.18.1 on Python 3.15, where it supplies cp315 wheels, while retaining SciPy 1.16.3 for Python 3.11 through 3.14. Update lxml and PyObjC to releases with Python 3.15 wheels.


Commit: c9ad44c775bd3b20f0a9bcfa181b60fb204a9d01
https://github.com/fonttools/fonttools/commit/c9ad44c775bd3b20f0a9bcfa181b60fb204a9d01
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M .github/workflows/test.yml

Log Message:
-----------
Test Python 3.15 release candidate on Linux


Commit: a92774a2930b685742edfbff0347fd3a4221ae6b
https://github.com/fonttools/fonttools/commit/a92774a2930b685742edfbff0347fd3a4221ae6b
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M setup.py

Log Message:
-----------
Advertise Python 3.15 compatibility


Commit: aede9884df200c76654b7399bb11f4070e12d762
https://github.com/fonttools/fonttools/commit/aede9884df200c76654b7399bb11f4070e12d762
Author: Cosimo Lupo <cos...@anthrotype.com>
Date: 2026-09-18 (Fri, 18 Sep 2026)

Changed paths:
M .github/workflows/test.yml
M .readthedocs.yml
M Doc/source/index.rst
M Lib/fontTools/misc/enumTools.py
M Lib/fontTools/pens/pointPen.py
M README.rst
M mypy.ini
M pyproject.toml
M requirements.txt
M setup.py
M tox.ini

Log Message:
-----------
Merge pull request #4196 from fonttools/bump-python-311

Require Python 3.11+ and add explicit support for 3.15


Compare: https://github.com/fonttools/fonttools/compare/1c02fb7394d3...aede9884df20
Reply all
Reply to author
Forward
0 new messages