You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repo has three distinct concerns: a **cookiecutter/copier template** for new Python projects (`{{cookiecutter.project_name}}/`), a **repo-review plugin** (`src/sp_repo_review/`), and a **Jekyll-based developer guide** (`docs/`).
3
+
This repo has three distinct concerns: a **cookiecutter/copier template** for
4
+
new Python projects (`{{cookiecutter.project_name}}/`), a **repo-review plugin**
5
+
(`src/sp_repo_review/`), and a **Jekyll-based developer guide** (`docs/`).
4
6
5
7
## Key commands
6
8
@@ -17,46 +19,69 @@ Important: tests run with `PYTHONWARNDEFAULTENCODING=1`.
17
19
18
20
### Cookie template validation
19
21
20
-
The noxfile generates temporary projects for **all 9 backends** × **vcs on/off** × **3 docs engines** (sphinx/mkdocs/zensical). These are slow.
22
+
The noxfile generates temporary projects for **all 9 backends** × **vcs on/off**
23
+
× **3 docs engines** (sphinx/mkdocs/zensical). These are slow.
21
24
22
25
-`nox -s "tests(hatch)"` — run generated project tests for a single backend
23
26
-`nox -s "lint(hatch)"` — run pre-commit (`prek`) on generated project
24
27
-`nox -s "dist(hatch)"` — verify build output includes LICENSE
25
28
-`nox -s "native(hatch)"` — test hatch/pdm/poetry native test runners
26
-
-`nox -s compare_copier` — verify cookiecutter and copier produce identical files
29
+
-`nox -s compare_copier` — verify cookiecutter and copier produce identical
30
+
files
27
31
-`nox -s compare_cruft` — verify cookiecutter and cruft produce identical files
28
32
-`nox -s gha_bump` — bump GitHub Actions versions across docs and templates
29
33
-`nox -s pc_bump` — bump pre-commit hook versions across docs and templates
30
34
31
35
## Architecture notes
32
36
33
-
-**Template directory**: `{{cookiecutter.project_name}}/` contains the cookiecuttter template. Copier reads `copier.yml`; cookiecutter reads `cookiecutter.json`. Keep them in sync; `compare_copier` checks this.
34
-
-**Entry points**: `sp_repo_review` registers `repo-review` checks/families/fixtures via `[project.entry-points]` in `pyproject.toml`.
35
-
-**Generated docs**: The README check list (line ~300+) is a cog block. Do not edit it by hand; run `nox -s readme` or cog will fail in CI.
36
-
-**Cookie template `.pre-commit-config.yaml`** uses `prek` (a Rust-based pre-commit alternative), not `pre-commit`.
37
-
-**Ruff hook ID**: `.pre-commit-config.yaml` uses `ruff-check` as the hook id (not `ruff`), for pre-commit 4.x compatibility.
37
+
-**Template directory**: `{{cookiecutter.project_name}}/` contains the
- Custom plugin: `docs/rr-role.mjs` — provides `{rr}` inline role for
79
+
repo-review badge spans.
59
80
- Custom CSS: `docs/assets/css/site.css` — only `.rr-btn` badge styling remains.
60
-
- Docs pages in `docs/pages/` contain cog blocks that auto-generate config examples from the template.
61
-
- The repo-review interactive page uses an `{iframe}` pointing to the WASM app at `https://scientific-python.github.io/repo-review/`.
62
-
- Tab-sets use `:sync: <tab-name>` for cross-page tab synchronization, where the sync key is the tab label itself (e.g., `sphinx`, `mkdocs`, `trusted-publishing`, `scikit-build-core`).
81
+
- Docs pages in `docs/pages/` contain cog blocks that auto-generate config
82
+
examples from the template.
83
+
- The repo-review interactive page uses an `{iframe}` pointing to the WASM app
84
+
at `https://scientific-python.github.io/repo-review/`.
85
+
- Tab-sets use `:sync: <tab-name>` for cross-page tab synchronization, where the
86
+
sync key is the tab label itself (e.g., `sphinx`, `mkdocs`,
0 commit comments