diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e1ccbf4d..419e619c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,7 +27,7 @@ jobs: if: "! contains(toJSON(github.event.commits.*.message), '[skip ci]')" strategy: matrix: - python-version: [3.8, "3.10", "3.11", "3.13", "pypy-3.9"] + python-version: [3.9, "3.10", "3.11", "3.13", "pypy-3.9"] platform: [ubuntu-latest, windows-latest] exclude: - platform: windows-latest diff --git a/README.md b/README.md index e776f128..55fd6817 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Version][]][1] ## Installation -Fontmake requires Python 3.8 or later. +Fontmake requires Python 3.9 or later. Releases are available on [PyPI][] and can be installed with [pip][]. diff --git a/requirements.txt b/requirements.txt index 9e6fa7d3..d0306fbe 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,14 +1,14 @@ -fonttools[ufo,repacker,lxml,unicode]==4.55.0; platform_python_implementation == 'CPython' -fonttools[ufo,repacker,unicode]==4.55.0; platform_python_implementation != 'CPython' -glyphsLib==6.9.5 -ufo2ft==3.3.1 +fonttools[ufo,repacker,lxml,unicode]==4.59.1; platform_python_implementation == 'CPython' +fonttools[ufo,repacker,unicode]==4.59.1; platform_python_implementation != 'CPython' +glyphsLib==6.11.6 +ufo2ft==3.6.0 fontMath==0.9.4 booleanOperations==0.9.0 -ufoLib2==0.17.0 +ufoLib2==0.18.1 cffsubr==0.3.0 compreffor==0.5.6 -ttfautohint-py==0.5.1 +ttfautohint-py==0.6.0 # optional, for experimental reading/writing ufoLib2's UFO as json -cattrs==24.1.2 -orjson==3.10.12; platform_python_implementation == 'CPython' +cattrs==25.1.1 +orjson==3.11.3; platform_python_implementation == 'CPython' diff --git a/setup.py b/setup.py index 6c878da7..85bfc06b 100644 --- a/setup.py +++ b/setup.py @@ -30,10 +30,10 @@ dep_versions = { "fontMath": ">=0.9.4", - "fonttools": ">=4.54.1", - "glyphsLib": ">=6.9.2", - "ufo2ft": ">=3.3.1", - "ufoLib2": ">=0.16.0", + "fonttools": ">=4.59.1", + "glyphsLib": ">=6.11.6", + "ufo2ft": ">=3.6.0", + "ufoLib2": ">=0.18.1", } dep_extras = { @@ -45,13 +45,13 @@ } extras_require = { - "pathops": ["skia-pathops>=0.3.0"], + "pathops": ["skia-pathops>=0.8.0"], # this is now default; kept here for backward compatibility "lxml": [], # MutatorMath is no longer supported but a dummy extras is kept below # to avoid fontmake installation failing if requested "mutatormath": [], - "autohint": ["ttfautohint-py>=0.5.0"], + "autohint": ["ttfautohint-py>=0.6.0"], # For reading/writing ufoLib2's .ufo.json files (cattrs + orjson) "json": [f"ufoLib2[json]{dep_versions['ufoLib2']}"], # For compiling GPOS/GSUB using the harfbuzz repacker @@ -95,7 +95,7 @@ package_dir={"": "Lib"}, entry_points={"console_scripts": ["fontmake = fontmake.__main__:main"]}, setup_requires=wheel + ["setuptools_scm"], - python_requires=">=3.8", + python_requires=">=3.9", install_requires=install_requires, extras_require=extras_require, classifiers=[ diff --git a/tox.ini b/tox.ini index 352bb4e8..d83962f7 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = lint, py3{8,9,10,11,12,13}, pypy3, coverage-report +envlist = lint, py3{9,10,11,12,13}, pypy3, coverage-report skip_missing_interpreters = true [testenv]