From 35c820de5fc7eada14ce1285683d79a388c35c44 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:17:27 +0500 Subject: [PATCH 1/7] Bump tools. --- .pre-commit-config.yaml | 8 ++++++-- pyproject.toml | 10 ++++++++-- tox.ini | 2 +- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 993fba7..85d6979 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,6 +1,6 @@ repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.16.10 + rev: v0.17.0 hooks: - id: ruff-check args: [ --fix ] @@ -10,7 +10,7 @@ repos: hooks: - id: blacken-docs additional_dependencies: - - black==26.10.0 + - black==26.10.1 - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: @@ -20,6 +20,10 @@ repos: rev: v1.0.2 hooks: - id: sphinx-lint +- repo: https://github.com/rhysd/actionlint + rev: v1.7.12 + hooks: + - id: actionlint - repo: https://github.com/zizmorcore/zizmor-pre-commit rev: v1.30.1 hooks: diff --git a/pyproject.toml b/pyproject.toml index c76beec..5feed4d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -73,11 +73,11 @@ allow_untyped_defs = true # variable regardless of its type. disallow_subclassing_any = false -[tool.pytest.ini_options] +[tool.pytest] addopts = [ "--doctest-modules", ] -xfail_strict = true +strict = true filterwarnings = [ "error", ] @@ -94,6 +94,12 @@ extend-select = [ "COM", # pydocstyle "D", + # pycodestyle + "E4", + "E7", + "E9", + # Pyflakes + "F", # flake8-future-annotations "FA", # flynt diff --git a/tox.ini b/tox.ini index 7d74424..9deb195 100644 --- a/tox.ini +++ b/tox.ini @@ -15,7 +15,7 @@ envlist = [testenv] deps = coverage >= 7.10.6 - pytest + pytest >= 9.0.0 pytest-cov >= 7.0.0 commands = pytest {posargs:--cov-config=pyproject.toml --cov=formerly --cov-report=term-missing --cov-report=xml --junitxml=testenv.junit.xml -o junit_family=legacy formerly tests} From e2861e540b5ef3607853b4bbd819d490be9803a0 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:17:43 +0500 Subject: [PATCH 2/7] Add dependabot. --- .github/dependabot.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..623d48c --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,12 @@ +version: 2 +updates: + - package-ecosystem: github-actions + directory: "/" + schedule: + interval: monthly + groups: + github-actions: + patterns: + - "*" + cooldown: + default-days: 7 From e7c287a40353d8bcdf014ba6bb8fead8bbe66c7b Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:18:41 +0500 Subject: [PATCH 3/7] Add Typing :: Typed. --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 5feed4d..7cb4528 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -30,6 +30,7 @@ classifiers = [ "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules", + "Typing :: Typed", ] requires-python = ">=3.10" From 37b42284a4bc7a09cd46b08c05d402bae48a2fa3 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:19:42 +0500 Subject: [PATCH 4/7] Add Python 3.15. --- .github/workflows/ci.yml | 5 +++++ pyproject.toml | 1 + tox.ini | 1 + 3 files changed, 7 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ddfac8a..35287fe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -45,6 +45,10 @@ jobs: env: TOXENV: py coverage: true + - python-version: "3.15" + env: + TOXENV: py + coverage: true - python-version: "pypy3.11" env: TOXENV: pypy3 @@ -65,6 +69,7 @@ jobs: uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: ${{ matrix.python-version }} + allow-prereleases: true - name: Set up uv uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0 diff --git a/pyproject.toml b/pyproject.toml index 7cb4528..ff9604b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,6 +27,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: 3.15", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules", diff --git a/tox.ini b/tox.ini index 9deb195..21e75fd 100644 --- a/tox.ini +++ b/tox.ini @@ -10,6 +10,7 @@ envlist = py312 py313 py314 + py315 pypy3 [testenv] From 2725f8eb583f31f3d9d2e0cd6a00af8d70f1c2a3 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:21:07 +0500 Subject: [PATCH 5/7] Drop Python 3.10. --- .github/workflows/ci.yml | 6 +----- pyproject.toml | 3 +-- tox.ini | 4 +--- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 35287fe..e922614 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,10 +25,6 @@ jobs: fail-fast: false matrix: include: - - python-version: "3.10" - env: - TOXENV: py - coverage: true - python-version: "3.11" env: TOXENV: py @@ -53,7 +49,7 @@ jobs: env: TOXENV: pypy3 coverage: true - - python-version: "3.10" + - python-version: "3.11" env: TOXENV: mypy - python-version: "3.14" diff --git a/pyproject.toml b/pyproject.toml index ff9604b..b3259ef 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,7 +22,6 @@ classifiers = [ "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", @@ -33,7 +32,7 @@ classifiers = [ "Topic :: Software Development :: Libraries :: Python Modules", "Typing :: Typed", ] -requires-python = ">=3.10" +requires-python = ">=3.11" [project.urls] Homepage = "https://github.com/scrapy/formerly" diff --git a/tox.ini b/tox.ini index 21e75fd..780eb8a 100644 --- a/tox.ini +++ b/tox.ini @@ -5,8 +5,6 @@ envlist = pre-commit mypy twinecheck - py310 - py311 py312 py313 py314 @@ -22,7 +20,7 @@ commands = pytest {posargs:--cov-config=pyproject.toml --cov=formerly --cov-report=term-missing --cov-report=xml --junitxml=testenv.junit.xml -o junit_family=legacy formerly tests} [testenv:mypy] -basepython = python3.10 +basepython = python3.11 deps = {[testenv]deps} mypy==2.4.0 From aa1b2cde9711618a94d2985411cf59372abc8618 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:21:54 +0500 Subject: [PATCH 6/7] Add pypy3.12. --- .github/workflows/ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e922614..76e0340 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,6 +49,10 @@ jobs: env: TOXENV: pypy3 coverage: true + - python-version: "pypy3.12" + env: + TOXENV: pypy3 + coverage: true - python-version: "3.11" env: TOXENV: mypy From 1b843b6df530faa820f2852e177660716cfde459 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Sun, 11 Oct 2026 14:23:14 +0500 Subject: [PATCH 7/7] Typo. --- tox.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/tox.ini b/tox.ini index 780eb8a..4f08ca1 100644 --- a/tox.ini +++ b/tox.ini @@ -5,6 +5,7 @@ envlist = pre-commit mypy twinecheck + py311 py312 py313 py314