Skip to content

Commit 5f4b7df

Browse files
authored
📌 Drop support for Python 3.8; add support for Python 3.13; closes #6 and #7 (#8)
1 parent f3d488f commit 5f4b7df

8 files changed

Lines changed: 13 additions & 13 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# cookiecutter-python-cli-app
22

3-
[![Supported Python Versions](https://img.shields.io/badge/python-3.8%20|%203.9%20|%203.10%20|%203.11%20|%203.12-blue)](https://github.com/sgraaf/cookiecutter-python-cli-app)
3+
[![Supported Python Versions](https://img.shields.io/badge/python-3.9%20|%203.10%20|%203.11%20|%203.12%20|%203.13-blue)](https://github.com/sgraaf/cookiecutter-python-cli-app)
44
[![Nox](https://img.shields.io/badge/%F0%9F%A6%8A-Nox-D85E00.svg)](https://github.com/wntrblm/nox)
55
[![Code style: Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/format.json)](https://github.com/astral-sh/ruff)
66
[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)
@@ -32,4 +32,4 @@ cookiecutter gh:sgraaf/cookiecutter-python-cli-app
3232
- Documentation with [Sphinx](https://www.sphinx-doc.org/en/master/), [MyST](https://myst-parser.readthedocs.io/en/latest/), and [Read the Docs](https://readthedocs.org/) using the [Furo](https://pradyunsg.me/furo/) theme
3333
- Automated release builds and uploads to [PyPI](https://pypi.org/)
3434

35-
This template supports Python 3.8, 3.9, 3.10, 3.11 and 3.12.
35+
This template supports Python 3.9, 3.10, 3.11, 3.12 and 3.13.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ ignore = [
1212
"S607", # start-process-with-partial-path
1313
]
1414
src = ["hooks"]
15-
target-version = "py38" # the minimum Python version supported, used by pyupgrade
15+
target-version = "py39" # the minimum Python version supported, used by pyupgrade

{{ cookiecutter.app_name }}/.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
- name: Install Python
1717
uses: actions/setup-python@v5
1818
with:
19-
python-version: "3.12"
19+
python-version: "3.13"
2020
cache: pip
2121

2222
- name: Publish to PyPI

{{ cookiecutter.app_name }}/.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ jobs:
1717
strategy:
1818
matrix:
1919
python_version:
20-
- "3.8"
2120
- "3.9"
2221
- "3.10"
2322
- "3.11"
2423
- "3.12"
24+
- "3.13"
2525

2626
steps:
2727
- name: Checkout the repo

{{ cookiecutter.app_name }}/.readthedocs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ version: 2
66
build:
77
os: ubuntu-22.04
88
tools:
9-
python: "3.12"
9+
python: "3.13"
1010

1111
sphinx:
1212
configuration: docs/conf.py

{{ cookiecutter.app_name }}/noxfile.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
# if (match := re.search(r"Programming Language :: Python :: (?P<version>3\.\d+)", line)) is not None:
1616
# cog.outl(f'"{match.group("version")}",')
1717
# ]]]
18-
"3.8",
1918
"3.9",
2019
"3.10",
2120
"3.11",
2221
"3.12",
22+
"3.13",
2323
# [[[end]]]
2424
]
2525

@@ -28,7 +28,7 @@
2828
# rtd = yaml.safe_load(open(".readthedocs.yaml"))
2929
# cog.outl(f'DOCS_PYTHON_VERSION = "{rtd["build"]["tools"]["python"]}"')
3030
# ]]]
31-
DOCS_PYTHON_VERSION = "3.12"
31+
DOCS_PYTHON_VERSION = "3.13"
3232
# [[[end]]]
3333

3434
ROOT_DIR = Path(__file__).resolve().parent

{{ cookiecutter.app_name }}/pyproject.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ classifiers = [
2929
{% endif -%}
3030
"Programming Language :: Python",
3131
"Programming Language :: Python :: 3",
32-
"Programming Language :: Python :: 3.8",
3332
"Programming Language :: Python :: 3.9",
3433
"Programming Language :: Python :: 3.10",
3534
"Programming Language :: Python :: 3.11",
3635
"Programming Language :: Python :: 3.12",
36+
"Programming Language :: Python :: 3.13",
3737
"Programming Language :: Python :: 3 :: Only",
3838
"Typing :: Typed",
3939
]
40-
requires-python = "~=3.8"
40+
requires-python = "~=3.9"
4141
dependencies = [
4242
"click",
4343
{%- if cookiecutter.use_rich %}
@@ -91,7 +91,7 @@ lint.ignore = [
9191
"INP", # flake8-no-pep420
9292
]
9393
src = ["src", "tests", "docs"]
94-
target-version = "py38" # the minimum Python version supported, used by pyupgrade
94+
target-version = "py39" # the minimum Python version supported, used by pyupgrade
9595

9696
[tool.ruff.lint.per-file-ignores]
9797
"__init__.py" = [

{{ cookiecutter.app_name }}/tests/utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
"""Utility functions for testing {{ cookiecutter.app_name }}."""
22

3-
import subprocess
3+
from collections.abc import Sequence
44
from dataclasses import dataclass
55
from os import PathLike
6-
from typing import Any, Sequence, Union
6+
from typing import Any, Union
77

88
# copied from `typeshed`
99
StrOrBytesPath = Union[str, bytes, PathLike]

0 commit comments

Comments
 (0)