From 02a0010a8a7270200021eb4932e826ae06d5c5cc Mon Sep 17 00:00:00 2001 From: Bryan Davis Date: Fri, 10 Oct 2025 10:45:17 -0600 Subject: [PATCH 1/4] readthedocs: Use latest ubuntu and python --- .readthedocs.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.readthedocs.yaml b/.readthedocs.yaml index dc1500b..3547fc2 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -3,9 +3,9 @@ version: 2 build: - os: ubuntu-22.04 + os: ubuntu-lts-latest tools: - python: "3.11" + python: latest python: install: From ded7def5eb1491366b54cc86b27c3566a697473f Mon Sep 17 00:00:00 2001 From: Bryan Davis Date: Fri, 10 Oct 2025 10:45:53 -0600 Subject: [PATCH 2/4] docs: remove deprecated get_html_theme_path usage --- docs/conf.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 6741ba9..fbae1f5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -2,8 +2,6 @@ import datetime import importlib.metadata -import sphinx_rtd_theme - extensions = [ "sphinx.ext.autodoc", "sphinx.ext.intersphinx", @@ -30,7 +28,6 @@ master_doc = "index" pygments_style = "sphinx" html_theme = "sphinx_rtd_theme" -html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] html_static_path = ["_static"] suppress_warnings = ["image.nonlocal_uri"] From 0d5b6958be2cce26acffaba1db8827b699fabd3a Mon Sep 17 00:00:00 2001 From: Bryan Davis Date: Fri, 10 Oct 2025 11:01:15 -0600 Subject: [PATCH 3/4] ci: Update tested versions Add 3.12, 3.13, and 3.14. Drop 3.7 and 3.8. --- .github/workflows/tox.yml | 5 +++-- pyproject.toml | 7 +------ tox.ini | 16 +++++++++------- 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/.github/workflows/tox.yml b/.github/workflows/tox.yml index 8d928b1..c0bfbda 100644 --- a/.github/workflows/tox.yml +++ b/.github/workflows/tox.yml @@ -18,11 +18,12 @@ jobs: fail-fast: false matrix: py: - - "3.7" - - "3.8" - "3.9" - "3.10" - "3.11" + - "3.12" + - "3.13" + - "3.14" os: - ubuntu-latest # - macos-latest diff --git a/pyproject.toml b/pyproject.toml index 9f09ef3..76c3f6e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,11 +20,6 @@ classifiers = [ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", "Topic :: Communications :: Chat :: Internet Relay Chat", ] dynamic = [ @@ -55,7 +50,7 @@ source = "vcs" [tool.black] line_length = 88 -target_version = ["py37"] +target_version = ["py39"] [tool.isort] known_first_party = ["ib3", "tests"] diff --git a/tox.ini b/tox.ini index 22c07b8..6cf72f5 100644 --- a/tox.ini +++ b/tox.ini @@ -3,11 +3,12 @@ requires = tox>=4.2 env_list = lint + py314 + py313 + py312 py311 py310 py39 - py38 - py37 docs pkg_meta skip_missing_interpreters = true @@ -23,7 +24,7 @@ commands = pytest tests/ [testenv:lint] -base_python = py311 +base_python = py314 deps = pre-commit>=3.2 commands = @@ -41,7 +42,7 @@ commands = [testenv:pkg_meta] description = check that generated pacakges are valid -base_python = py311 +base_python = py314 skip_install = true deps = build[virtualenv]>=1.0.3 @@ -78,8 +79,9 @@ output = dist/coverage.xml [gh] python = - 3.7 = py37 - 3.8 = py38 3.9 = py39 3.10 = py310 - 3.11 = lint, py311, docs, pkg_meta + 3.11 = py311 + 3.12 = py312 + 3.13 = py313 + 3.14 = lint, py314, docs, pkg_meta From 786cc32367aeb78ce1ffeb894c639160b0f0234a Mon Sep 17 00:00:00 2001 From: Bryan Davis Date: Fri, 10 Oct 2025 13:42:28 -0600 Subject: [PATCH 4/4] ci: Update linters and run with py3.13 * Bump pre-commit and linter library versions * Run pre-commit under py3.13 (3.14 has library issues that need to resolve upstream.) --- .pre-commit-config.yaml | 34 +++++++++++++++++----------------- tox.ini | 6 +++--- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0109ffc..08b00c7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,8 +1,8 @@ default_language_version: - python: python3.11 + python: python3.13 repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 + rev: v6.0.0 hooks: - id: check-ast - id: check-builtin-literals @@ -15,52 +15,52 @@ repos: - id: trailing-whitespace - id: name-tests-test - repo: https://github.com/asottile/add-trailing-comma - rev: v3.1.0 + rev: v3.2.0 hooks: - id: add-trailing-comma args: ["--py36-plus"] - repo: https://github.com/asottile/pyupgrade - rev: v3.13.0 + rev: v3.21.0 hooks: - id: pyupgrade args: ["--py37-plus"] - repo: https://github.com/PyCQA/isort - rev: 5.12.0 + rev: 6.1.0 hooks: - id: isort args: ["--profile", "black", "--filter-files"] - repo: https://github.com/psf/black - rev: 23.9.1 + rev: 25.9.0 hooks: - id: black - repo: https://github.com/asottile/blacken-docs - rev: 1.16.0 + rev: 1.20.0 hooks: - id: blacken-docs - additional_dependencies: [black==23.9.1] + additional_dependencies: [black==25.9.0] - repo: https://github.com/pre-commit/pygrep-hooks rev: v1.10.0 hooks: - id: rst-backticks - repo: https://github.com/tox-dev/tox-ini-fmt - rev: "1.3.1" + rev: "1.7.0" hooks: - id: tox-ini-fmt args: ["-p", "lint"] - repo: https://github.com/PyCQA/flake8 - rev: 6.1.0 + rev: 7.3.0 hooks: - id: flake8 additional_dependencies: - - flake8-bugbear==23.3.12 - - flake8-comprehensions==3.11.1 - - flake8-pytest-style==1.7.2 + - flake8-bugbear==24.12.12 + - flake8-comprehensions==3.17.0 + - flake8-pytest-style==2.1.0 - flake8-unused-arguments==0.0.13 - - flake8-noqa==1.3.1 - - pep8-naming==0.13.3 + - flake8-noqa==1.4.0 + - pep8-naming==0.15.1 - flake8-pyproject==1.2.3 - repo: https://github.com/PyCQA/doc8 - rev: v1.1.1 + rev: v2.0.0 hooks: - id: doc8 - repo: meta @@ -68,6 +68,6 @@ repos: - id: check-hooks-apply - id: check-useless-excludes - repo: https://github.com/rhysd/actionlint - rev: v1.6.26 + rev: v1.7.7 hooks: - id: actionlint diff --git a/tox.ini b/tox.ini index 6cf72f5..0753d51 100644 --- a/tox.ini +++ b/tox.ini @@ -24,7 +24,7 @@ commands = pytest tests/ [testenv:lint] -base_python = py314 +base_python = py313 deps = pre-commit>=3.2 commands = @@ -83,5 +83,5 @@ python = 3.10 = py310 3.11 = py311 3.12 = py312 - 3.13 = py313 - 3.14 = lint, py314, docs, pkg_meta + 3.13 = lint, py313 + 3.14 = py314, docs, pkg_meta