From 5c8163b2ccbe9b22dd72238b4877ab6993494b16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bern=C3=A1t=20G=C3=A1bor?= Date: Sat, 7 Sep 2024 08:34:38 -0700 Subject: [PATCH] Add 3.13 to CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Bernát Gábor --- .github/workflows/check.yml | 4 +++- .pre-commit-config.yaml | 4 ++-- pyproject.toml | 26 +++++++++++++------------- tox.ini | 21 +++++++++++---------- 4 files changed, 29 insertions(+), 26 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 4505e10767..343cf15dab 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -20,6 +20,7 @@ jobs: fail-fast: false matrix: py: + - "3.13" - "3.12" - "3.11" - "3.10" @@ -43,6 +44,7 @@ jobs: uses: actions/setup-python@v5 with: python-version: ${{ matrix.py }} + allow-prereleases: true - name: Pick environment to run run: | import os; import platform; import sys; from pathlib import Path @@ -52,7 +54,7 @@ jobs: file_handler.write(env) shell: python - name: Setup test suite - run: tox r -vv --notest + run: tox r -vv --notest --skip-missing-interpreters false - name: Run test suite run: tox r --skip-pkg-install env: diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ab38d2b7b2..cfdd620785 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -15,7 +15,7 @@ repos: - id: codespell additional_dependencies: ["tomli>=2.0.1"] - repo: https://github.com/tox-dev/tox-ini-fmt - rev: "1.3.1" + rev: "1.3.2" hooks: - id: tox-ini-fmt args: ["-p", "fix"] @@ -24,7 +24,7 @@ repos: hooks: - id: pyproject-fmt - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.6.3" + rev: "v0.6.4" hooks: - id: ruff-format - id: ruff diff --git a/pyproject.toml b/pyproject.toml index 8fe6f1748c..99b55e6d7f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,7 @@ dynamic = [ "version", ] dependencies = [ - "cachetools>=5.4", + "cachetools>=5.5", "chardet>=5.2", "colorama>=0.4.6", "filelock>=3.15.4", @@ -58,21 +58,21 @@ dependencies = [ "platformdirs>=4.2.2", "pluggy>=1.5", "pyproject-api>=1.7.1", - "tomli>=2.0.1; python_version<'3.11'", + "tomli>=2.0.1; python_version < '3.11'", "virtualenv>=20.26.3", ] optional-dependencies.docs = [ - "furo>=2024.7.18", - "sphinx>=7.4.7", - "sphinx-argparse-cli>=1.16", - "sphinx-autodoc-typehints>=2.2.3", + "furo>=2024.8.6", + "sphinx>=8.0.2", + "sphinx-argparse-cli>=1.17", + "sphinx-autodoc-typehints>=2.4", "sphinx-copybutton>=0.5.2", "sphinx-inline-tabs>=2023.4.21", "sphinxcontrib-towncrier>=0.2.1a0", - "towncrier>=23.11", + "towncrier>=24.8", ] optional-dependencies.testing = [ - "build[virtualenv]>=1.2.1", + "build[virtualenv]>=1.2.2", "covdefaults>=2.3", "detect-test-pollution>=1.2", "devpi-process>=1", @@ -87,9 +87,9 @@ optional-dependencies.testing = [ "pytest-mock>=3.14", "pytest-xdist>=3.6.1", "re-assert>=1.1", - "setuptools>=70.3", - "time-machine>=2.14.2; implementation_name!='pypy'", - "wheel>=0.43", + "setuptools>=74.1.2", + "time-machine>=2.15; implementation_name != 'pypy'", + "wheel>=0.44", ] urls.Documentation = "https://tox.wiki" urls.Homepage = "http://tox.readthedocs.org" @@ -141,10 +141,10 @@ lint.ignore = [ ] lint.per-file-ignores."tests/**/*.py" = [ "D", # don't care about documentation in tests - "FBT", # don"t care about booleans as positional arguments in tests + "FBT", # don't care about booleans as positional arguments in tests "INP001", # no implicit namespace "PLR2004", # Magic value used in comparison, consider replacing with a constant variable - "S101", # asserts allowed in tests... + "S101", # asserts allowed in tests "S603", # `subprocess` call: check for execution of untrusted input ] lint.isort = { known-first-party = [ diff --git a/tox.ini b/tox.ini index dc96c5af9f..85d95bc673 100644 --- a/tox.ini +++ b/tox.ini @@ -3,11 +3,12 @@ requires = tox>=4.2 env_list = fix - py312 - py311 - py310 - py39 - py38 + 3.13 + 3.12 + 3.11 + 3.10 + 3.9 + 3.8 cov type docs @@ -40,7 +41,7 @@ commands = description = format the code base to adhere to our styles, and complain about what we cannot do automatically skip_install = true deps = - pre-commit>=3.8 + pre-commit-uv>=4.1 pass_env = {[testenv]passenv} PROGRAMDATA @@ -51,8 +52,8 @@ commands = [testenv:type] description = run type check on code base deps = - mypy==1.11 - types-cachetools>=5.4.0.20240717 + mypy==1.11.2 + types-cachetools>=5.5.0.20240820 types-chardet>=5.0.4.6 commands = mypy src/tox @@ -71,7 +72,7 @@ commands = description = check that the long description is valid skip_install = true deps = - build[virtualenv]>=1.2.1 + build[virtualenv]>=1.2.2 check-wheel-contents>=0.6 twine>=5.1.1 commands = @@ -85,7 +86,7 @@ skip_install = true deps = gitpython>=3.1.43 packaging>=24.1 - towncrier>=23.11 + towncrier>=24.8 commands = python {toxinidir}/tasks/release.py --version {posargs}