Skip to content

Commit 54d64df

Browse files
hf-kkleinKonstantin
andauthored
chore: officially support Python 3.14 & drop 3.9; run simplified CI on 3.14 (#194)
Co-authored-by: Konstantin <[email protected]>
1 parent 12e2a8e commit 54d64df

File tree

8 files changed

+22
-42
lines changed

8 files changed

+22
-42
lines changed

.github/workflows/coverage.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@ name: "Coverage"
33
on: [push]
44
jobs:
55
coverage:
6-
runs-on: ${{ matrix.os }}
7-
strategy:
8-
matrix:
9-
python-version: ["3.13"]
10-
os: [ubuntu-latest]
6+
runs-on: ubuntu-latest
117
steps:
128
- uses: actions/checkout@v5
13-
- name: Set up Python ${{ matrix.python-version }}
9+
- name: Set up Python
1410
uses: actions/setup-python@v6
1511
with:
16-
python-version: ${{ matrix.python-version }}
12+
python-version: 3.14
1713
- name: Install dependencies
1814
run: |
1915
python -m pip install --upgrade pip

.github/workflows/formatting.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,16 @@ name: "Formatting"
33
on: [push]
44
jobs:
55
black:
6-
runs-on: ${{ matrix.os }}
6+
runs-on: ubuntu-latest
77
strategy:
88
matrix:
9-
python-version: ["3.13"]
10-
os: [ubuntu-latest]
119
tool: ["black", "isort"]
1210
steps:
1311
- uses: actions/checkout@v5
14-
- name: Set up Python ${{ matrix.python-version }}
12+
- name: Set up Python
1513
uses: actions/setup-python@v6
1614
with:
17-
python-version: ${{ matrix.python-version }}
15+
python-version: 3.14
1816
- name: Install dependencies
1917
run: |
2018
python -m pip install --upgrade pip

.github/workflows/packaging_test.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@ name: "Packaging Test"
33
on: [pull_request]
44
jobs:
55
check_packaging:
6-
runs-on: ${{ matrix.os }}
7-
strategy:
8-
matrix:
9-
python-version: ["3.11", "3.12", "3.13"]
10-
os: [ubuntu-latest]
6+
runs-on: ubuntu-latest
117
steps:
128
- uses: actions/checkout@v5
13-
- name: Set up Python ${{ matrix.python-version }}
9+
- name: Set up Python
1410
uses: actions/setup-python@v6
1511
with:
16-
python-version: ${{ matrix.python-version }}
12+
python-version: 3.14
1713
- name: Install dependencies
1814
run: |
1915
python -m pip install --upgrade pip

.github/workflows/python-publish.yml

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,13 @@ on:
1414
jobs:
1515
tests:
1616
if: startsWith(github.ref, 'refs/tags/v')
17-
runs-on: ${{ matrix.os }}
18-
strategy:
19-
matrix:
20-
python-version: ["3.13"]
21-
os: [ubuntu-latest]
17+
runs-on: ubuntu-latest
2218
steps:
2319
- uses: actions/checkout@v5
24-
- name: Set up Python ${{ matrix.python-version }}
20+
- name: Set up Python
2521
uses: actions/setup-python@v6
2622
with:
27-
python-version: ${{ matrix.python-version }}
23+
python-version: 3.14
2824
- name: Install tox
2925
run: |
3026
python -m pip install --upgrade pip
@@ -35,11 +31,7 @@ jobs:
3531
3632
build-n-publish:
3733
name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
38-
runs-on: ${{ matrix.os }}
39-
strategy:
40-
matrix:
41-
python-version: [ "3.12" ]
42-
os: [ ubuntu-latest ]
34+
runs-on: ubuntu-latest
4335
# Specifying a GitHub environment, # Specifying a GitHub environment, which is strongly recommended by PyPI: https://docs.pypi.org/trusted-publishers/adding-a-publisher/
4436
# you have to create an environment in your repository settings and add the environment name here
4537
environment: release
@@ -52,7 +44,7 @@ jobs:
5244
- name: Set up Python
5345
uses: actions/setup-python@v6
5446
with:
55-
python-version: ${{ matrix.python-version }}
47+
python-version: 3.14
5648
- name: Install dependencies
5749
run: |
5850
python -m pip install --upgrade pip

.github/workflows/pythonlint.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,16 @@ on: [push]
44
jobs:
55
pylint:
66
name: Python Code Quality and Lint
7-
runs-on: ${{ matrix.os }}
7+
runs-on: ubuntu-latest
88
strategy:
99
matrix:
10-
python-version: ["3.13"]
11-
os: [ubuntu-latest]
1210
linter-env: ["linting", "type_check"]
1311
steps:
1412
- uses: actions/checkout@v5
15-
- name: Set up Python ${{ matrix.python-version }}
13+
- name: Set up Python
1614
uses: actions/setup-python@v6
1715
with:
18-
python-version: ${{ matrix.python-version }}
16+
python-version: 3.14
1917
- name: Install Dependencies
2018
run: |
2119
python -m pip install --upgrade pip

.github/workflows/unittests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
runs-on: ${{ matrix.os }}
77
strategy:
88
matrix:
9-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
9+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
1010
os: [ubuntu-latest]
1111
steps:
1212
- uses: actions/checkout@v5

pyproject.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name = "python-generics"
33
description = "A package to determine the values of generic classes through instances or subclasses "
44
license = { text = "MIT" }
5-
requires-python = ">=3.9"
5+
requires-python = ">=3.10"
66
authors = [{ name = "Hochfrequenz Unternehmensberatung GmbH", email = "[email protected]" }]
77
keywords = ["python", "generics"]
88
classifiers = [
@@ -13,11 +13,11 @@ classifiers = [
1313
"Operating System :: OS Independent",
1414
"Programming Language :: Python",
1515
"Programming Language :: Python :: 3 :: Only",
16-
"Programming Language :: Python :: 3.9",
1716
"Programming Language :: Python :: 3.10",
1817
"Programming Language :: Python :: 3.11",
1918
"Programming Language :: Python :: 3.12",
2019
"Programming Language :: Python :: 3.13",
20+
"Programming Language :: Python :: 3.14",
2121
]
2222
dependencies = [] # add all the dependencies from requirements.in here, too
2323
dynamic = ["readme", "version"]
@@ -54,7 +54,7 @@ Homepage = "https://github.com/Hochfrequenz/python-generics"
5454

5555
[tool.black]
5656
line-length = 120
57-
target_version = ["py39", "py310", "py311", "py312", "py313"]
57+
target_version = ["py310", "py311", "py312", "py313", "py314"]
5858

5959
[tool.isort]
6060
line_length = 120

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# This file is autogenerated by pip-compile with Python 3.11
2+
# This file is autogenerated by pip-compile with Python 3.12
33
# by the following command:
44
#
55
# pip-compile requirements.in

0 commit comments

Comments
 (0)