From 3b0e81d4f69ecbc74637a9b6d244645010938280 Mon Sep 17 00:00:00 2001 From: Jan Max Meyer Date: Tue, 5 May 2026 17:44:24 +0200 Subject: [PATCH] chore: Update minimum dependency to Python 3.13 Remove Python 3.12 compatibility code. --- .github/workflows/pep8.yaml | 2 +- .github/workflows/python-test.yaml | 2 +- pyproject.toml | 4 ++-- src/viur/core/config.py | 6 +----- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/pep8.yaml b/.github/workflows/pep8.yaml index ca8adf2a3..4890e715a 100644 --- a/.github/workflows/pep8.yaml +++ b/.github/workflows/pep8.yaml @@ -12,7 +12,7 @@ jobs: linter: strategy: matrix: - python: [ "3.12" ] + python: [ "3.13" ] runs-on: ubuntu-latest steps: diff --git a/.github/workflows/python-test.yaml b/.github/workflows/python-test.yaml index ed09ccaad..96f486bac 100644 --- a/.github/workflows/python-test.yaml +++ b/.github/workflows/python-test.yaml @@ -12,7 +12,7 @@ jobs: test: strategy: matrix: - python: [ "3.12", "3.13" ] + python: [ "3.13", "3.14" ] runs-on: ubuntu-latest steps: diff --git a/pyproject.toml b/pyproject.toml index a89b34d91..b1feb2c05 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,7 +34,7 @@ dependencies = [ "user-agents~=2.0", "webob~=1.0", ] -requires-python = ">=3.12" +requires-python = ">=3.13" authors = [ { name = "Mausbrand Informationssysteme GmbH", email = "devs@viur.dev" }, ] @@ -50,8 +50,8 @@ classifiers = [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", - "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Topic :: Software Development :: Libraries :: Application Frameworks", ] diff --git a/src/viur/core/config.py b/src/viur/core/config.py index a66451215..16b585fb3 100644 --- a/src/viur/core/config.py +++ b/src/viur/core/config.py @@ -21,11 +21,7 @@ from viur.core.tasks import CustomEnvironmentHandler from viur.core import i18n -# Construct an alias with a generic type to be able to write Multiple[str] -# TODO: Backward compatible implementation, refactor when viur-core -# becomes >= Python 3.12 with a type statement (PEP 695) -_T = t.TypeVar("_T") -Multiple: t.TypeAlias = list[_T] | tuple[_T] | set[_T] | frozenset[_T] # TODO: Refactor for Python 3.12 +type Multiple[T] = list[T] | tuple[T] | set[T] | frozenset[T] class CaptchaDefaultCredentialsType(t.TypedDict):