Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .cookiecutter.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"_commit": "c0dc52f406bfda76f69a2a9ed9694bf15d213d34",
"_commit": "b34f76d47340e575885b5a23a58d974734369ed5",
"_template": "C:\\Users\\56kyl\\source\\repos\\cookiecutter-robust-python",
"add_rust_extension": false,
"author": "Kyle Oliver",
Expand All @@ -8,8 +8,8 @@
"email": "56kyleoliver+cookiecutter-robust-python@gmail.com",
"friendly_name": "Robust Python Demo",
"license": "MIT",
"max_python_version": "3.13",
"min_python_version": "3.9",
"max_python_version": "3.14",
"min_python_version": "3.10",
"package_name": "robust_python_demo",
"project_name": "robust-python-demo",
"repository_host": "github.com",
Expand Down
8 changes: 4 additions & 4 deletions .cruft.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"template": "C:\\Users\\56kyl\\source\\repos\\cookiecutter-robust-python",
"commit": "c0dc52f406bfda76f69a2a9ed9694bf15d213d34",
"commit": "b34f76d47340e575885b5a23a58d974734369ed5",
"checkout": null,
"context": {
"cookiecutter": {
"project_name": "robust-python-demo",
"package_name": "robust_python_demo",
"friendly_name": "Robust Python Demo",
"min_python_version": "3.9",
"max_python_version": "3.13",
"min_python_version": "3.10",
"max_python_version": "3.14",
"add_rust_extension": false,
"author": "Kyle Oliver",
"email": "56kyleoliver+cookiecutter-robust-python@gmail.com",
Expand All @@ -20,7 +20,7 @@
"license": "MIT",
"development_status": "Development Status :: 1 - Planning",
"_template": "C:\\Users\\56kyl\\source\\repos\\cookiecutter-robust-python",
"_commit": "c0dc52f406bfda76f69a2a9ed9694bf15d213d34"
"_commit": "b34f76d47340e575885b5a23a58d974734369ed5"
}
},
"directory": null
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/.python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.13
3.14
6 changes: 3 additions & 3 deletions .github/workflows/test-python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ jobs:
strategy:
matrix:
include:
- { python: "3.9", os: "ubuntu-latest" }
- { python: "3.10", os: "ubuntu-latest" }
- { python: "3.11", os: "ubuntu-latest" }
- { python: "3.12", os: "ubuntu-latest" }
- { python: "3.13", os: "ubuntu-latest" }
- { python: "3.13", os: "macos-latest" }
- { python: "3.13", os: "windows-latest" }
- { python: "3.14", os: "ubuntu-latest" }
- { python: "3.14", os: "macos-latest" }
- { python: "3.14", os: "windows-latest" }
steps:
- name: Checkout code
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/typecheck-python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
os: [ubuntu-latest]

steps:
Expand Down
2 changes: 1 addition & 1 deletion .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: 2
build:
os: ubuntu-22.04
tools:
python: "3.13"
python: "3.14"

python:
install:
Expand Down
4 changes: 2 additions & 2 deletions .ruff.toml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ exclude = [
line-length = 120
indent-width = 4

# Assume Python 3.9
target-version = "py39"
# Assume Python 3.10
target-version = "py310"

[lint]
# https://docs.astral.sh/ruff/rules
Expand Down
36 changes: 36 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
## v0.30.0 (2025-11-10)

## v0.27.0 (2025-09-18)

## v0.26.0 (2025-09-18)

## v0.25.0 (2025-09-18)

## v0.24.0 (2025-08-01)

## v0.23.0 (2025-08-01)

## v0.22.0 (2025-07-29)

## v0.21.0 (2025-07-27)

## v0.20.0 (2025-07-27)

## v0.19.0 (2025-07-27)

## v0.18.0 (2025-07-27)

## v0.17.0 (2025-07-26)

## v0.16.0 (2025-07-26)

## v0.14.0 (2025-07-18)

## v0.13.0 (2025-07-18)

## v0.12.0 (2025-07-18)

## v0.11.0 (2025-07-18)

## v0.10.0 (2025-07-18)

## v0.29.0 (2025-11-02)

## v0.27.0 (2025-09-18)
Expand Down
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ representative at an online or offline event.

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
[56kyleoliver@gmail.com](mailto:56kyleoliver@gmail.com).
[cookiecutter.robust.python@gmail.com](mailto:cookiecutter.robust.python@gmail.com).
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
Expand Down
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ We welcome pull requests! For significant changes, it's best to open an issue fi

### Prerequisites

- Python 3.9+ (this project supports Python 3.9-3.13)
- Python 3.10+ (this project supports Python 3.10-3.14)
- [uv][uv-documentation] for dependency management
- Git for version control

Expand Down Expand Up @@ -84,7 +84,7 @@ We welcome pull requests! For significant changes, it's best to open an issue fi
uvx nox -s tests-python

# Run tests for a specific Python version
uvx nox -s tests-python-313
uvx nox -s tests-python-314

# Run a specific test file
uvx nox -s tests-python -- tests/unit_tests/test_specific.py
Expand Down Expand Up @@ -210,4 +210,4 @@ _This project was generated from the [cookiecutter-robust-python][cookiecutter-r
[bandit-documentation]: https://bandit.readthedocs.io/
[conventional-commits]: https://www.conventionalcommits.org/
[pytest-documentation]: https://docs.pytest.org/
[cookiecutter-robust-python]: https://github.com/56kyle/cookiecutter-robust-python
[cookiecutter-robust-python]: https://github.com/robust-python/cookiecutter-robust-python
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,5 +91,5 @@ Distributed under the terms of the **MIT** license. See [LICENSE](LICENSE) for d

<!-- Reference Links -->

[cookiecutter-robust-python]: https://github.com/56kyle/cookiecutter-robust-python
[cookiecutter-robust-python]: https://github.com/robust-python/cookiecutter-robust-python
[documentation]: https://robust-python-demo.readthedocs.io/
5 changes: 3 additions & 2 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
nox.options.default_venv_backend = "uv"

# Logic that helps avoid metaprogramming in cookiecutter-robust-python
MIN_PYTHON_VERSION_SLUG: int = int("3.9".lstrip("3."))
MAX_PYTHON_VERSION_SLUG: int = int("3.13".lstrip("3."))
MIN_PYTHON_VERSION_SLUG: int = int("3.10".lstrip("3."))
MAX_PYTHON_VERSION_SLUG: int = int("3.14".lstrip("3."))

PYTHON_VERSIONS: List[str] = [
f"3.{VERSION_SLUG}" for VERSION_SLUG in range(MIN_PYTHON_VERSION_SLUG, MAX_PYTHON_VERSION_SLUG + 1)
Expand Down Expand Up @@ -156,6 +156,7 @@ def docs_build(session: Session) -> None:
session.log("Building documentation.")
session.run("sphinx-build", "-b", "html", "docs", str(docs_build_dir), "-W")


@nox.session(python=DEFAULT_PYTHON_VERSION, name="docs", tags=[DOCS, BUILD])
def docs(session: Session) -> None:
"""Build and serve the project documentation (Sphinx)."""
Expand Down
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
[project]
name = "robust-python-demo"
version = "0.29.0"
version = "0.30.0"
description = "robust-python-demo"
authors = [
{ name = "Kyle Oliver", email = "56kyleoliver+cookiecutter-robust-python@gmail.com" },
]
license = "MIT"
license-files = ["LICENSE"]
readme = "README.md"
requires-python = ">=3.9,<4.0"
requires-python = ">=3.10,<4.0"
keywords = [
"robust-python-demo",
]
classifiers = [
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3 :: Only",
]
dependencies = [
Expand Down
2 changes: 1 addition & 1 deletion pyrightconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,5 @@
"basic": true,
"reportMissingParameterType": "warning",
"reportOptionalOperand": "warning",
"pythonVersion": "3.9"
"pythonVersion": "3.10"
}
2 changes: 1 addition & 1 deletion scripts/setup-git.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ def get_parser() -> argparse.ArgumentParser:
"""Creates the argument parser for setup-git."""
parser: argparse.ArgumentParser = argparse.ArgumentParser(
prog="setup-git",
usage="python ./scripts/setup-git.py . -u 56kyle -n robust-python-demo",
usage="python ./scripts/setup-git.py . -u robust-python -n robust-python-demo",
description="Set up the provided cookiecutter-robust-python project's git repo.",
)
parser.add_argument(
Expand Down
2 changes: 1 addition & 1 deletion scripts/setup-remote.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ def get_parser() -> argparse.ArgumentParser:
"""Creates the argument parser for setup-remote."""
parser: argparse.ArgumentParser = argparse.ArgumentParser(
prog="setup-remote",
usage="python ./scripts/setup-remote.py . --host github.com --path 56kyle/robust-python-demo",
usage="python ./scripts/setup-remote.py . --host github.com --path robust-python/robust-python-demo",
description="Set up the provided cookiecutter-robust-python project's remote repo connection.",
)
parser.add_argument(
Expand Down
2 changes: 1 addition & 1 deletion scripts/setup-venv.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ def main() -> None:
def get_parser() -> argparse.ArgumentParser:
"""Creates the argument parser for setup-venv."""
parser: argparse.ArgumentParser = argparse.ArgumentParser(
prog="setup-venv", usage="python ./scripts/setup-venv.py . -p '3.9'"
prog="setup-venv", usage="python ./scripts/setup-venv.py . -p '3.10'"
)
parser.add_argument(
"path",
Expand Down
Loading