Skip to content

Commit 6e3bbf8

Browse files
committed
chore: force bulk update just to get to see a diff
1 parent d9a6d2a commit 6e3bbf8

File tree

16 files changed

+334
-169
lines changed

16 files changed

+334
-169
lines changed

.github/workflows/test-python.yml

Lines changed: 50 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,62 +4,62 @@
44
name: Test Python Code
55

66
on:
7-
pull_request:
8-
paths:
9-
- 'src/**/*.py'
10-
- 'tests/**/*.py'
11-
- 'noxfile.py'
12-
- 'pyproject.toml'
13-
- '.coveragerc'
14-
- '.github/workflows/test-python.yml'
15-
push:
16-
branches:
17-
- main
18-
- master
19-
paths:
20-
- 'src/**/*.py'
21-
- 'tests/**/*.py'
22-
- 'noxfile.py'
23-
- 'pyproject.toml'
24-
- '.coveragerc'
25-
- '.github/workflows/test-python.yml'
7+
pull_request:
8+
paths:
9+
- "src/**/*.py"
10+
- "tests/**/*.py"
11+
- "noxfile.py"
12+
- "pyproject.toml"
13+
- ".coveragerc"
14+
- ".github/workflows/test-python.yml"
15+
push:
16+
branches:
17+
- main
18+
- master
19+
paths:
20+
- "src/**/*.py"
21+
- "tests/**/*.py"
22+
- "noxfile.py"
23+
- "pyproject.toml"
24+
- ".coveragerc"
25+
- ".github/workflows/test-python.yml"
2626

27-
workflow_dispatch:
27+
workflow_dispatch:
2828

2929
jobs:
30-
test-python:
31-
name: Run Python Tests on ${{ matrix.os }}/${{ matrix.python-version }}
32-
runs-on: ${{ matrix.os }}
33-
strategy:
34-
matrix:
35-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
36-
os: [ubuntu-latest, windows-latest, macos-latest]
30+
test-python:
31+
name: Run Python Tests on ${{ matrix.os }}/${{ matrix.python-version }}
32+
runs-on: ${{ matrix.os }}
33+
strategy:
34+
matrix:
35+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
36+
os: [ubuntu-latest, windows-latest, macos-latest]
3737

38-
steps:
39-
- name: Checkout code
40-
uses: actions/checkout@v4
38+
steps:
39+
- name: Checkout code
40+
uses: actions/checkout@v4
4141

42-
- name: Install uv
43-
uses: astral-sh/setup-uv@v6
42+
- name: Install uv
43+
uses: astral-sh/setup-uv@v6
4444

45-
- name: Set up Python
46-
uses: actions/setup-python@v5
47-
with:
48-
python-version: ${{ matrix.python-version }}
45+
- name: Set up Python
46+
uses: actions/setup-python@v5
47+
with:
48+
python-version: ${{ matrix.python-version }}
4949

50-
- name: Run test suite
51-
run: uvx nox -s test-python
50+
- name: Run test suite
51+
run: uvx nox -s test-python
5252

53-
- name: Upload test reports
54-
uses: actions/upload-artifact@v4
55-
with:
56-
name: test-results-${{ matrix.os }}-py${{ matrix.python-version }}
57-
path: test-results/*.xml
58-
retention-days: 5
53+
- name: Upload test reports
54+
uses: actions/upload-artifact@v4
55+
with:
56+
name: test-results-${{ matrix.os }}-py${{ matrix.python-version }}
57+
path: tests/results/*.xml
58+
retention-days: 5
5959

60-
- name: Upload coverage report
61-
uses: actions/upload-artifact@v4
62-
with:
63-
name: coverage-report-${{ matrix.os }}-py${{ matrix.python-version }}
64-
path: coverage.xml
65-
retention-days: 5
60+
- name: Upload coverage report
61+
uses: actions/upload-artifact@v4
62+
with:
63+
name: coverage-report-${{ matrix.os }}-py${{ matrix.python-version }}
64+
path: coverage.xml
65+
retention-days: 5

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ build/ # Build artifacts from setuptools/build backends
3636
.pytest_cache/ # Pytest cache directory
3737
htmlcov/ # Coverage HTML reports (default output dir)
3838
.coverage* # Coverage data files (default name pattern)
39-
test-results/ # Directory for JUnit/Coverage XML reports (as configured in noxfile)
39+
coverage.*
40+
tests/results/ # Directory for JUnit/Coverage XML reports (as configured in noxfile)
4041

4142
# Editor/IDE specific files
4243
.vscode/ # VS Code settings (if not shared via devcontainer)

.pre-commit-config.yaml

Lines changed: 71 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,41 +3,79 @@
33
default_stages: [pre-commit]
44

55
repos:
6-
- repo: https://github.com/pre-commit/pre-commit-hooks
7-
rev: v5.0.0
8-
hooks:
9-
- id: check-added-large-files
10-
args: ["--maxkb=2000"]
11-
- id: check-yaml
12-
- id: check-toml
13-
- id: end-of-file-fixer
14-
- id: trailing-whitespace
6+
- repo: local
7+
hooks:
8+
- id: check-added-large-files
9+
name: Check for added large files
10+
entry: check-added-large-files
11+
language: system
12+
- id: check-toml
13+
name: Check Toml
14+
entry: check-toml
15+
language: system
16+
types: [toml]
17+
- id: check-yaml
18+
name: Check Yaml
19+
entry: check-yaml
20+
language: system
21+
types: [yaml]
22+
- id: darglint
23+
name: darglint
24+
entry: darglint
25+
language: system
26+
types: [python]
27+
stages: [manual]
28+
- id: end-of-file-fixer
29+
name: Fix End of Files
30+
entry: end-of-file-fixer
31+
language: system
32+
types: [text]
33+
stages: [pre-commit, pre-push, manual]
34+
- id: ruff-lint
35+
name: Ruff Lint
36+
entry: ruff check
37+
language: system
38+
types: [python]
39+
require_serial: true
40+
args: [--fix]
41+
- id: ruff-format
42+
name: Ruff Format
43+
entry: ruff format
44+
language: system
45+
types: [python]
46+
require_serial: true
47+
- id: trailing-whitespace
48+
name: Trim Trailing Whitespace
49+
entry: trailing-whitespace-fixer
50+
language: system
51+
types: [text]
52+
stages: [pre-commit, pre-push, manual]
1553

16-
- repo: https://github.com/astral-sh/ruff-pre-commit
17-
rev: v0.11.11
18-
hooks:
19-
- id: ruff-format
20-
args: [--config=.ruff.toml]
54+
- repo: https://github.com/astral-sh/ruff-pre-commit
55+
rev: v0.11.11
56+
hooks:
57+
- id: ruff-format
58+
args: [--config=.ruff.toml]
2159

22-
- id: ruff
23-
args: [--fix, --exit-non-zero-on-fix, --config=.ruff.toml]
60+
- id: ruff-check
61+
args: [--fix, --diff, --exit-non-zero-on-fix, --config=.ruff.toml]
2462

25-
- repo: https://github.com/doublify/pre-commit-rust
26-
rev: master
27-
hooks:
28-
- id: fmt
29-
- id: clippy
30-
args: ["--all-features", "--", "--write"]
31-
- id: cargo-check
63+
- repo: https://github.com/doublify/pre-commit-rust
64+
rev: master
65+
hooks:
66+
- id: fmt
67+
- id: clippy
68+
args: ["--all-features", "--", "--write"]
69+
- id: cargo-check
3270

33-
- repo: https://github.com/pre-commit/mirrors-prettier
34-
rev: v2.6.0
35-
hooks:
36-
- id: prettier
71+
- repo: https://github.com/pre-commit/mirrors-prettier
72+
rev: v2.6.0
73+
hooks:
74+
- id: prettier
3775

38-
- repo: https://github.com/commitizen-tools/commitizen
39-
rev: v4.8.2
40-
hooks:
41-
- id: commitizen
42-
- id: commitizen-branch
43-
stages: [ commit-msg ]
76+
- repo: https://github.com/commitizen-tools/commitizen
77+
rev: v4.8.2
78+
hooks:
79+
- id: commitizen
80+
- id: commitizen-branch
81+
stages: [commit-msg]

docs/codeofconduct.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Code of Conduct
2+
3+
```{include} ../CODE_OF_CONDUCT.md
4+
5+
```

docs/conf.py

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
"""Sphinx configuration."""
2+
3+
project = "Robust Python Demo"
4+
author = "Kyle Oliver"
5+
copyright = "2025, Kyle Oliver" # noqa
6+
7+
release = "0.0.0"
8+
version = ".".join(release.split(".")[:2])
9+
10+
extensions = [
11+
"sphinx.ext.intersphinx",
12+
"sphinx.ext.napoleon",
13+
"sphinxcontrib.typer",
14+
"myst_parser",
15+
"sphinx_autodoc_typehints",
16+
"sphinx_copybutton",
17+
"sphinx_tabs.tabs",
18+
]
19+
templates_path = ["_templates"]
20+
21+
exclude_patterns = [
22+
"_build",
23+
"Thumbs.db",
24+
".DS_Store",
25+
".venv",
26+
".nox",
27+
"rust",
28+
"tests",
29+
"cookiecutter.json",
30+
"README.md",
31+
"noxfile.py",
32+
".pre-commit-config.yaml",
33+
"pyproject.toml",
34+
]
35+
36+
myst_enable_extensions = [
37+
"amsmath",
38+
"colon_fence",
39+
"deflist",
40+
"dollarmath",
41+
"html_admonition",
42+
"html_image",
43+
"replacements",
44+
"smartquotes",
45+
"strikethrough",
46+
"substitution",
47+
"tasklist",
48+
"attrs_inline",
49+
"attrs_block",
50+
]
51+
52+
intersphinx_mapping = {
53+
"python": ("https://docs.python.org/3", None),
54+
"pip": ("https://pip.pypa.io/en/stable/", None),
55+
}
56+
57+
html_theme = "furo"

docs/contributing.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Contributing
2+
3+
```{include} ../CONTRIBUTING.md
4+
---
5+
end-before: <!-- github-only -->
6+
---
7+
```
8+
9+
[code of conduct]: codeofconduct

docs/index.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
```{include} ../README.md
2+
---
3+
end-before: <!-- github-only -->
4+
---
5+
```
6+
7+
[license]: license
8+
[contributor guide]: contributing
9+
[command-line reference]: usage
10+
11+
```{toctree}
12+
---
13+
hidden:
14+
maxdepth: 1
15+
---
16+
17+
usage
18+
reference
19+
contributing
20+
Code of Conduct <codeofconduct>
21+
License <license>
22+
Changelog <https://github.com/56kyle/robust-python-demo/releases>
23+
```

docs/license.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# License
2+
3+
```{literalinclude} ../LICENSE
4+
---
5+
language: none
6+
---
7+
```

docs/reference.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Reference
2+
3+
## robust_python_demo
4+
5+
```{eval-rst}
6+
.. automodule:: robust_python_demo
7+
:members:
8+
```

docs/usage.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Usage
2+
3+
```{eval-rst}
4+
.. click:: robust_python_demo.__main__:main
5+
:prog: robust-python-demo
6+
:nested: full
7+
```

0 commit comments

Comments
 (0)