render-engine 2026.6.2a4__tar.gz → 2026.7.1a4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- render_engine-2026.7.1a4/.gitattributes +1 -0
- render_engine-2026.7.1a4/MANIFEST.in +21 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/PKG-INFO +5 -4
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/README.md +4 -3
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/pyproject.toml +11 -7
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/__version__.py +3 -3
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/site.py +38 -3
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/site_map.py +84 -1
- render_engine-2026.7.1a4/src/render_engine.egg-info/SOURCES.txt +41 -0
- render_engine-2026.6.2a4/.all-contributorsrc +0 -207
- render_engine-2026.6.2a4/.devcontainer/Dockerfile +0 -5
- render_engine-2026.6.2a4/.devcontainer/devcontainer.json +0 -39
- render_engine-2026.6.2a4/.devcontainer/setup.sh +0 -6
- render_engine-2026.6.2a4/.github/FUNDING.yml +0 -12
- render_engine-2026.6.2a4/.github/ISSUE_TEMPLATE/config.yaml +0 -1
- render_engine-2026.6.2a4/.github/ISSUE_TEMPLATE/form_issue_template.yml +0 -57
- render_engine-2026.6.2a4/.github/PULL_REQUEST_TEMPLATE.md +0 -32
- render_engine-2026.6.2a4/.github/dependabot-bot.yml +0 -14
- render_engine-2026.6.2a4/.github/dependabot.yml +0 -30
- render_engine-2026.6.2a4/.github/labeler.yml +0 -43
- render_engine-2026.6.2a4/.github/release.yml +0 -4
- render_engine-2026.6.2a4/.github/scripts/publish_prerelease.py +0 -104
- render_engine-2026.6.2a4/.github/workflows/devcontainer-ci.yml +0 -28
- render_engine-2026.6.2a4/.github/workflows/labeler.yml +0 -16
- render_engine-2026.6.2a4/.github/workflows/lint.yml +0 -36
- render_engine-2026.6.2a4/.github/workflows/publish-prerelease.yml +0 -53
- render_engine-2026.6.2a4/.github/workflows/publish.yml +0 -55
- render_engine-2026.6.2a4/.github/workflows/scorecard.yml +0 -73
- render_engine-2026.6.2a4/.github/workflows/test.yml +0 -73
- render_engine-2026.6.2a4/.github/workflows/todos.yml +0 -89
- render_engine-2026.6.2a4/.github/workflows/ty.yml +0 -22
- render_engine-2026.6.2a4/.gitignore +0 -173
- render_engine-2026.6.2a4/.markdownlint.json +0 -13
- render_engine-2026.6.2a4/.pre-commit-config.yaml +0 -41
- render_engine-2026.6.2a4/.readthedocs.yml +0 -24
- render_engine-2026.6.2a4/.vscode/tasks.json +0 -10
- render_engine-2026.6.2a4/SECURITY.md +0 -14
- render_engine-2026.6.2a4/coverage-badge.svg +0 -1
- render_engine-2026.6.2a4/docs/docs/archive.md +0 -81
- render_engine-2026.6.2a4/docs/docs/assets/create environment vs code.gif +0 -0
- render_engine-2026.6.2a4/docs/docs/assets/create-app-help.png +0 -0
- render_engine-2026.6.2a4/docs/docs/assets/create-codespace.gif +0 -0
- render_engine-2026.6.2a4/docs/docs/assets/launching a dev container.gif +0 -0
- render_engine-2026.6.2a4/docs/docs/assets/render-engine-init-help.png +0 -0
- render_engine-2026.6.2a4/docs/docs/assets/render-engine-init.png +0 -0
- render_engine-2026.6.2a4/docs/docs/collection.md +0 -119
- render_engine-2026.6.2a4/docs/docs/content_manager.md +0 -89
- render_engine-2026.6.2a4/docs/docs/contributing/CODE_OF_CONDUCT.md +0 -113
- render_engine-2026.6.2a4/docs/docs/contributing/CONTRIBUTING.md +0 -171
- render_engine-2026.6.2a4/docs/docs/contributing/SECURITY.md +0 -18
- render_engine-2026.6.2a4/docs/docs/contributing/environment_setup.md +0 -93
- render_engine-2026.6.2a4/docs/docs/contributing/gen_badge.md +0 -24
- render_engine-2026.6.2a4/docs/docs/contributing/github-actions-file-patterns.md +0 -252
- render_engine-2026.6.2a4/docs/docs/contributing/style-guide.md +0 -181
- render_engine-2026.6.2a4/docs/docs/contributing/testing.md +0 -80
- render_engine-2026.6.2a4/docs/docs/contributing/typechecking.md +0 -60
- render_engine-2026.6.2a4/docs/docs/custom_collections.md +0 -97
- render_engine-2026.6.2a4/docs/docs/data_object.md +0 -67
- render_engine-2026.6.2a4/docs/docs/feeds.md +0 -42
- render_engine-2026.6.2a4/docs/docs/getting-started/building-your-site.md +0 -42
- render_engine-2026.6.2a4/docs/docs/getting-started/creating-a-collection.md +0 -93
- render_engine-2026.6.2a4/docs/docs/getting-started/creating-a-page.md +0 -105
- render_engine-2026.6.2a4/docs/docs/getting-started/creating-your-app.md +0 -35
- render_engine-2026.6.2a4/docs/docs/getting-started/extending-render-engine.md +0 -46
- render_engine-2026.6.2a4/docs/docs/getting-started/getting-started.md +0 -34
- render_engine-2026.6.2a4/docs/docs/getting-started/installation.md +0 -39
- render_engine-2026.6.2a4/docs/docs/getting-started/layout.md +0 -270
- render_engine-2026.6.2a4/docs/docs/index.md +0 -45
- render_engine-2026.6.2a4/docs/docs/page.md +0 -182
- render_engine-2026.6.2a4/docs/docs/parsers.md +0 -141
- render_engine-2026.6.2a4/docs/docs/plugins.md +0 -156
- render_engine-2026.6.2a4/docs/docs/site.md +0 -149
- render_engine-2026.6.2a4/docs/docs/site_map.md +0 -76
- render_engine-2026.6.2a4/docs/docs/templates.md +0 -124
- render_engine-2026.6.2a4/docs/docs/theme_management.md +0 -85
- render_engine-2026.6.2a4/docs/mkdocs.yml +0 -72
- render_engine-2026.6.2a4/justfile +0 -81
- render_engine-2026.6.2a4/noxfile.py +0 -18
- render_engine-2026.6.2a4/src/render_engine/.gitignore +0 -1
- render_engine-2026.6.2a4/src/render_engine/py.typed +0 -0
- render_engine-2026.6.2a4/src/render_engine/utils/__init__.py +0 -0
- render_engine-2026.6.2a4/src/render_engine.egg-info/PKG-INFO +0 -147
- render_engine-2026.6.2a4/src/render_engine.egg-info/SOURCES.txt +0 -135
- render_engine-2026.6.2a4/src/render_engine.egg-info/dependency_links.txt +0 -1
- render_engine-2026.6.2a4/src/render_engine.egg-info/requires.txt +0 -10
- render_engine-2026.6.2a4/src/render_engine.egg-info/scm_file_list.json +0 -131
- render_engine-2026.6.2a4/src/render_engine.egg-info/scm_version.json +0 -8
- render_engine-2026.6.2a4/src/render_engine.egg-info/top_level.txt +0 -1
- render_engine-2026.6.2a4/tests/conftest.py +0 -42
- render_engine-2026.6.2a4/tests/test_archive.py +0 -73
- render_engine-2026.6.2a4/tests/test_base_object.py +0 -79
- render_engine-2026.6.2a4/tests/test_blog.py +0 -92
- render_engine-2026.6.2a4/tests/test_collections.py +0 -418
- render_engine-2026.6.2a4/tests/test_engine.py +0 -51
- render_engine-2026.6.2a4/tests/test_feeds/conftest_feed.py +0 -42
- render_engine-2026.6.2a4/tests/test_feeds/test_feeds.py +0 -115
- render_engine-2026.6.2a4/tests/test_file_content_manager.py +0 -78
- render_engine-2026.6.2a4/tests/test_page.py +0 -199
- render_engine-2026.6.2a4/tests/test_parsers_remove_2024_3_1.py +0 -8
- render_engine-2026.6.2a4/tests/test_plugins.py +0 -365
- render_engine-2026.6.2a4/tests/test_site.py +0 -468
- render_engine-2026.6.2a4/tests/test_site_map.py +0 -192
- render_engine-2026.6.2a4/tests/test_templates/test_base_html.py +0 -71
- render_engine-2026.6.2a4/tests/test_theme_manager.py +0 -46
- render_engine-2026.6.2a4/uv.lock +0 -1340
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/setup.cfg +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/__init__.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/_base_object.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/archive.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/blog.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/collection.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/content_managers/__init__.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/content_managers/base_content_manager.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/content_managers/file_content_manager.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/data_object.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/engine.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/feeds.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/hookspecs.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/links.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/page.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/parsers/__init__.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/parsers/base_parsers.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/parsers/markdown.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/plugins.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/__init__.py +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/archive.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/base.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/base_collection_path.md +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/base_templates/_archive.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/base_templates/_base.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/base_templates/_page.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/components/footer.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/components/page_title.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/page.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/redirect.html +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/rss2.0.xml +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/rss2.0_items.xml +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/sitemap.xml +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/render_engine_templates/sitemap_item.xml +0 -0
- {render_engine-2026.6.2a4 → render_engine-2026.7.1a4}/src/render_engine/themes.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
**/*.sh text eol=lf
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
exclude README.md
|
|
2
|
+
exclude SECURITY.md
|
|
3
|
+
|
|
4
|
+
prune docs
|
|
5
|
+
prune tests
|
|
6
|
+
prune .github
|
|
7
|
+
prune .devcontainer
|
|
8
|
+
prune .vscode
|
|
9
|
+
prune src/render_engine.egg-info
|
|
10
|
+
|
|
11
|
+
exclude uv.lock
|
|
12
|
+
exclude .gitignore
|
|
13
|
+
exclude .all-contributorsrc
|
|
14
|
+
exclude .markdownlint.json
|
|
15
|
+
exclude .pre-commit-config.yaml
|
|
16
|
+
exclude .readthedocs.yml
|
|
17
|
+
exclude coverage-badge.svg
|
|
18
|
+
exclude justfile
|
|
19
|
+
exclude noxfile.py
|
|
20
|
+
exclude src/render_engine/.gitignore
|
|
21
|
+
exclude src/render_engine/py.typed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: render_engine
|
|
3
|
-
Version: 2026.
|
|
3
|
+
Version: 2026.7.1a4
|
|
4
4
|
Summary: A Flexible Static Site Generator for Python
|
|
5
5
|
Project-URL: homepage, https://github.com/render-engine/render-engine/
|
|
6
6
|
Project-URL: repository, https://github.com/render-engine/render-engine/
|
|
@@ -22,7 +22,7 @@ Provides-Extra: extras
|
|
|
22
22
|
|
|
23
23
|
<!-- markdownlint-disable -->
|
|
24
24
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
25
|
-
[](#contributors-)
|
|
26
26
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
|
27
27
|
<!-- markdownlint-restore -->
|
|
28
28
|
|
|
@@ -93,22 +93,23 @@ Please review the [contributing][contributing] section of our docs for more info
|
|
|
93
93
|
<tr>
|
|
94
94
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Tashuuuu"><img src="https://avatars.githubusercontent.com/u/85075827?v=4?s=57" width="57px;" alt="Akriti Sengar"/><br /><sub><b>Akriti Sengar</b></sub></a><br /><a href="#tool-Tashuuuu" title="Tools">🔧</a></td>
|
|
95
95
|
<td align="center" valign="top" width="14.28%"><a href="https://tonybaloney.github.io/"><img src="https://avatars.githubusercontent.com/u/1532417?v=4?s=57" width="57px;" alt="Anthony Shaw"/><br /><sub><b>Anthony Shaw</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tonybaloney" title="Documentation">📖</a></td>
|
|
96
|
+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/arushiiii18"><img src="https://avatars.githubusercontent.com/u/191345547?v=4?s=57" width="57px;" alt="Arushi Sagar"/><br /><sub><b>Arushi Sagar</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=arushiiii18" title="Code">💻</a></td>
|
|
96
97
|
<td align="center" valign="top" width="14.28%"><a href="https://b.dougie.dev/"><img src="https://avatars.githubusercontent.com/u/5713670?v=4?s=57" width="57px;" alt="Brian Douglas"/><br /><sub><b>Brian Douglas</b></sub></a><br /><a href="#financial-bdougie" title="Financial">💵</a></td>
|
|
97
98
|
<td align="center" valign="top" width="14.28%"><a href="https://brassnet.biz"><img src="https://avatars.githubusercontent.com/u/1806946?v=4?s=57" width="57px;" alt="Dan Shernicoff"/><br /><sub><b>Dan Shernicoff</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=brass75" title="Code">💻</a></td>
|
|
98
99
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/mannyanebi"><img src="https://avatars.githubusercontent.com/u/25439000?v=4?s=57" width="57px;" alt="Emmanuel Anebi"/><br /><sub><b>Emmanuel Anebi</b></sub></a><br /><a href="#plugin-mannyanebi" title="Plugin/utility libraries">🔌</a></td>
|
|
99
100
|
<td align="center" valign="top" width="14.28%"><a href="http://giovannimartins.dev"><img src="https://avatars.githubusercontent.com/u/7796661?v=4?s=57" width="57px;" alt="Giovanni Martins"/><br /><sub><b>Giovanni Martins</b></sub></a><br /><a href="#infra-giovannism20" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
|
100
|
-
<td align="center" valign="top" width="14.28%"><a href="https://github.com/kjaymiller"><img src="https://avatars.githubusercontent.com/u/8632637?v=4?s=57" width="57px;" alt="Jay Miller"/><br /><sub><b>Jay Miller</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Code">💻</a> <a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Documentation">📖</a> <a href="#maintenance-kjaymiller" title="Maintenance">🚧</a></td>
|
|
101
101
|
</tr>
|
|
102
102
|
<tr>
|
|
103
|
+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/kjaymiller"><img src="https://avatars.githubusercontent.com/u/8632637?v=4?s=57" width="57px;" alt="Jay Miller"/><br /><sub><b>Jay Miller</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Code">💻</a> <a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Documentation">📖</a> <a href="#maintenance-kjaymiller" title="Maintenance">🚧</a></td>
|
|
103
104
|
<td align="center" valign="top" width="14.28%"><a href="https://webology.dev"><img src="https://avatars.githubusercontent.com/u/50527?v=4?s=57" width="57px;" alt="Jeff Triplett"/><br /><sub><b>Jeff Triplett</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jefftriplett" title="Documentation">📖</a> <a href="#mentoring-jefftriplett" title="Mentoring">🧑🏫</a></td>
|
|
104
105
|
<td align="center" valign="top" width="14.28%"><a href="https://linktr.ee/john0isaac"><img src="https://avatars.githubusercontent.com/u/64026625?v=4?s=57" width="57px;" alt="John Aziz"/><br /><sub><b>John Aziz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=john0isaac" title="Documentation">📖</a> <a href="#maintenance-john0isaac" title="Maintenance">🚧</a> <a href="#userTesting-john0isaac" title="User Testing">📓</a></td>
|
|
105
106
|
<td align="center" valign="top" width="14.28%"><a href="https://www.jonafato.com"><img src="https://avatars.githubusercontent.com/u/392720?v=4?s=57" width="57px;" alt="Jon Banafato"/><br /><sub><b>Jon Banafato</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jonafato" title="Code">💻</a></td>
|
|
106
107
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/jlgimeno"><img src="https://avatars.githubusercontent.com/u/17421585?v=4?s=57" width="57px;" alt="Jorge L. Gimeno"/><br /><sub><b>Jorge L. Gimeno</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jlgimeno" title="Documentation">📖</a></td>
|
|
107
108
|
<td align="center" valign="top" width="14.28%"><a href="http://lauralangdon.io"><img src="https://avatars.githubusercontent.com/u/48335772?v=4?s=57" width="57px;" alt="Laura Langdon"/><br /><sub><b>Laura Langdon</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=LauraLangdon" title="Documentation">📖</a></td>
|
|
108
109
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Mahhheshh"><img src="https://avatars.githubusercontent.com/u/100200105?v=4?s=57" width="57px;" alt="Mahhheshh"/><br /><sub><b>Mahhheshh</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=Mahhheshh" title="Documentation">📖</a> <a href="https://github.com/render-engine/render-engine/commits?author=Mahhheshh" title="Code">💻</a> <a href="#maintenance-Mahhheshh" title="Maintenance">🚧</a></td>
|
|
109
|
-
<td align="center" valign="top" width="14.28%"><a href="https://www.pythonbynight.com"><img src="https://avatars.githubusercontent.com/u/46942991?v=4?s=57" width="57px;" alt="Mario Munoz"/><br /><sub><b>Mario Munoz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tataraba" title="Code">💻</a></td>
|
|
110
110
|
</tr>
|
|
111
111
|
<tr>
|
|
112
|
+
<td align="center" valign="top" width="14.28%"><a href="https://www.pythonbynight.com"><img src="https://avatars.githubusercontent.com/u/46942991?v=4?s=57" width="57px;" alt="Mario Munoz"/><br /><sub><b>Mario Munoz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tataraba" title="Code">💻</a></td>
|
|
112
113
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/MohitKambli"><img src="https://avatars.githubusercontent.com/u/31406633?v=4?s=57" width="57px;" alt="Mohit Kambli"/><br /><sub><b>Mohit Kambli</b></sub></a><br /><a href="#infra-MohitKambli" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
|
113
114
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/OsamaRab3"><img src="https://avatars.githubusercontent.com/u/159753803?v=4?s=57" width="57px;" alt="Osama Rabea "/><br /><sub><b>Osama Rabea </b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=OsamaRab3" title="Documentation">📖</a> <a href="https://github.com/render-engine/render-engine/commits?author=OsamaRab3" title="Tests">⚠️</a></td>
|
|
114
115
|
<td align="center" valign="top" width="14.28%"><a href="https://www.pamelafox.org"><img src="https://avatars.githubusercontent.com/u/297042?v=4?s=57" width="57px;" alt="Pamela Fox"/><br /><sub><b>Pamela Fox</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=pamelafox" title="Documentation">📖</a></td>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
<!-- markdownlint-disable -->
|
|
5
5
|
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
6
|
-
[](#contributors-)
|
|
7
7
|
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
|
8
8
|
<!-- markdownlint-restore -->
|
|
9
9
|
|
|
@@ -74,22 +74,23 @@ Please review the [contributing][contributing] section of our docs for more info
|
|
|
74
74
|
<tr>
|
|
75
75
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Tashuuuu"><img src="https://avatars.githubusercontent.com/u/85075827?v=4?s=57" width="57px;" alt="Akriti Sengar"/><br /><sub><b>Akriti Sengar</b></sub></a><br /><a href="#tool-Tashuuuu" title="Tools">🔧</a></td>
|
|
76
76
|
<td align="center" valign="top" width="14.28%"><a href="https://tonybaloney.github.io/"><img src="https://avatars.githubusercontent.com/u/1532417?v=4?s=57" width="57px;" alt="Anthony Shaw"/><br /><sub><b>Anthony Shaw</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tonybaloney" title="Documentation">📖</a></td>
|
|
77
|
+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/arushiiii18"><img src="https://avatars.githubusercontent.com/u/191345547?v=4?s=57" width="57px;" alt="Arushi Sagar"/><br /><sub><b>Arushi Sagar</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=arushiiii18" title="Code">💻</a></td>
|
|
77
78
|
<td align="center" valign="top" width="14.28%"><a href="https://b.dougie.dev/"><img src="https://avatars.githubusercontent.com/u/5713670?v=4?s=57" width="57px;" alt="Brian Douglas"/><br /><sub><b>Brian Douglas</b></sub></a><br /><a href="#financial-bdougie" title="Financial">💵</a></td>
|
|
78
79
|
<td align="center" valign="top" width="14.28%"><a href="https://brassnet.biz"><img src="https://avatars.githubusercontent.com/u/1806946?v=4?s=57" width="57px;" alt="Dan Shernicoff"/><br /><sub><b>Dan Shernicoff</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=brass75" title="Code">💻</a></td>
|
|
79
80
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/mannyanebi"><img src="https://avatars.githubusercontent.com/u/25439000?v=4?s=57" width="57px;" alt="Emmanuel Anebi"/><br /><sub><b>Emmanuel Anebi</b></sub></a><br /><a href="#plugin-mannyanebi" title="Plugin/utility libraries">🔌</a></td>
|
|
80
81
|
<td align="center" valign="top" width="14.28%"><a href="http://giovannimartins.dev"><img src="https://avatars.githubusercontent.com/u/7796661?v=4?s=57" width="57px;" alt="Giovanni Martins"/><br /><sub><b>Giovanni Martins</b></sub></a><br /><a href="#infra-giovannism20" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
|
81
|
-
<td align="center" valign="top" width="14.28%"><a href="https://github.com/kjaymiller"><img src="https://avatars.githubusercontent.com/u/8632637?v=4?s=57" width="57px;" alt="Jay Miller"/><br /><sub><b>Jay Miller</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Code">💻</a> <a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Documentation">📖</a> <a href="#maintenance-kjaymiller" title="Maintenance">🚧</a></td>
|
|
82
82
|
</tr>
|
|
83
83
|
<tr>
|
|
84
|
+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/kjaymiller"><img src="https://avatars.githubusercontent.com/u/8632637?v=4?s=57" width="57px;" alt="Jay Miller"/><br /><sub><b>Jay Miller</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Code">💻</a> <a href="https://github.com/render-engine/render-engine/commits?author=kjaymiller" title="Documentation">📖</a> <a href="#maintenance-kjaymiller" title="Maintenance">🚧</a></td>
|
|
84
85
|
<td align="center" valign="top" width="14.28%"><a href="https://webology.dev"><img src="https://avatars.githubusercontent.com/u/50527?v=4?s=57" width="57px;" alt="Jeff Triplett"/><br /><sub><b>Jeff Triplett</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jefftriplett" title="Documentation">📖</a> <a href="#mentoring-jefftriplett" title="Mentoring">🧑🏫</a></td>
|
|
85
86
|
<td align="center" valign="top" width="14.28%"><a href="https://linktr.ee/john0isaac"><img src="https://avatars.githubusercontent.com/u/64026625?v=4?s=57" width="57px;" alt="John Aziz"/><br /><sub><b>John Aziz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=john0isaac" title="Documentation">📖</a> <a href="#maintenance-john0isaac" title="Maintenance">🚧</a> <a href="#userTesting-john0isaac" title="User Testing">📓</a></td>
|
|
86
87
|
<td align="center" valign="top" width="14.28%"><a href="https://www.jonafato.com"><img src="https://avatars.githubusercontent.com/u/392720?v=4?s=57" width="57px;" alt="Jon Banafato"/><br /><sub><b>Jon Banafato</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jonafato" title="Code">💻</a></td>
|
|
87
88
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/jlgimeno"><img src="https://avatars.githubusercontent.com/u/17421585?v=4?s=57" width="57px;" alt="Jorge L. Gimeno"/><br /><sub><b>Jorge L. Gimeno</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=jlgimeno" title="Documentation">📖</a></td>
|
|
88
89
|
<td align="center" valign="top" width="14.28%"><a href="http://lauralangdon.io"><img src="https://avatars.githubusercontent.com/u/48335772?v=4?s=57" width="57px;" alt="Laura Langdon"/><br /><sub><b>Laura Langdon</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=LauraLangdon" title="Documentation">📖</a></td>
|
|
89
90
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Mahhheshh"><img src="https://avatars.githubusercontent.com/u/100200105?v=4?s=57" width="57px;" alt="Mahhheshh"/><br /><sub><b>Mahhheshh</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=Mahhheshh" title="Documentation">📖</a> <a href="https://github.com/render-engine/render-engine/commits?author=Mahhheshh" title="Code">💻</a> <a href="#maintenance-Mahhheshh" title="Maintenance">🚧</a></td>
|
|
90
|
-
<td align="center" valign="top" width="14.28%"><a href="https://www.pythonbynight.com"><img src="https://avatars.githubusercontent.com/u/46942991?v=4?s=57" width="57px;" alt="Mario Munoz"/><br /><sub><b>Mario Munoz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tataraba" title="Code">💻</a></td>
|
|
91
91
|
</tr>
|
|
92
92
|
<tr>
|
|
93
|
+
<td align="center" valign="top" width="14.28%"><a href="https://www.pythonbynight.com"><img src="https://avatars.githubusercontent.com/u/46942991?v=4?s=57" width="57px;" alt="Mario Munoz"/><br /><sub><b>Mario Munoz</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=tataraba" title="Code">💻</a></td>
|
|
93
94
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/MohitKambli"><img src="https://avatars.githubusercontent.com/u/31406633?v=4?s=57" width="57px;" alt="Mohit Kambli"/><br /><sub><b>Mohit Kambli</b></sub></a><br /><a href="#infra-MohitKambli" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
|
|
94
95
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/OsamaRab3"><img src="https://avatars.githubusercontent.com/u/159753803?v=4?s=57" width="57px;" alt="Osama Rabea "/><br /><sub><b>Osama Rabea </b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=OsamaRab3" title="Documentation">📖</a> <a href="https://github.com/render-engine/render-engine/commits?author=OsamaRab3" title="Tests">⚠️</a></td>
|
|
95
96
|
<td align="center" valign="top" width="14.28%"><a href="https://www.pamelafox.org"><img src="https://avatars.githubusercontent.com/u/297042?v=4?s=57" width="57px;" alt="Pamela Fox"/><br /><sub><b>Pamela Fox</b></sub></a><br /><a href="https://github.com/render-engine/render-engine/commits?author=pamelafox" title="Documentation">📖</a></td>
|
|
@@ -25,13 +25,11 @@ extras = []
|
|
|
25
25
|
[dependency-groups]
|
|
26
26
|
dev = [
|
|
27
27
|
"ephemeral-port-reserve==1.1.4",
|
|
28
|
-
"deptry
|
|
28
|
+
"deptry==0.25.1",
|
|
29
29
|
"httpx==0.28.1",
|
|
30
|
-
|
|
31
|
-
# Issue URL: https://github.com/render-engine/render-engine/issues/1142
|
|
32
|
-
"ty==0.0.40",
|
|
30
|
+
"ty==0.0.55",
|
|
33
31
|
"pre-commit==4.6.0",
|
|
34
|
-
"pytest==9.
|
|
32
|
+
"pytest==9.1.1",
|
|
35
33
|
"pytest-cov==7.1.0",
|
|
36
34
|
"pytest-mock==3.15.1",
|
|
37
35
|
"toml==0.10.2",
|
|
@@ -41,7 +39,7 @@ docs = [
|
|
|
41
39
|
"mkdocs-material==9.7.6",
|
|
42
40
|
"mkdocs-multirepo-plugin==0.8.3",
|
|
43
41
|
"mkdocstrings[python]==1.0.4",
|
|
44
|
-
"pymdown-extensions==
|
|
42
|
+
"pymdown-extensions==11.0",
|
|
45
43
|
]
|
|
46
44
|
|
|
47
45
|
[tool.setuptools_scm]
|
|
@@ -69,6 +67,7 @@ branch = "main"
|
|
|
69
67
|
line-length = 120
|
|
70
68
|
indent-width = 4
|
|
71
69
|
target-version = "py310"
|
|
70
|
+
exclude = ["*.md"]
|
|
72
71
|
|
|
73
72
|
[tool.ruff.lint]
|
|
74
73
|
select = ["E", "F", "I", "UP"]
|
|
@@ -77,4 +76,9 @@ select = ["E", "F", "I", "UP"]
|
|
|
77
76
|
unresolved-import = "warn"
|
|
78
77
|
|
|
79
78
|
[tool.deptry]
|
|
80
|
-
|
|
79
|
+
optional_dependencies_dev_groups = ["extras"]
|
|
80
|
+
|
|
81
|
+
[tool.deptry.package_module_name_map]
|
|
82
|
+
python-dateutil = "dateutil"
|
|
83
|
+
python-slugify = "slugify"
|
|
84
|
+
python-frontmatter = "frontmatter"
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '2026.
|
|
22
|
-
__version_tuple__ = version_tuple = (2026,
|
|
21
|
+
__version__ = version = '2026.7.1a4'
|
|
22
|
+
__version_tuple__ = version_tuple = (2026, 7, 1, 'a4')
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'g0a3636986'
|
|
@@ -2,6 +2,7 @@ import copy
|
|
|
2
2
|
import json
|
|
3
3
|
import logging
|
|
4
4
|
from collections import defaultdict
|
|
5
|
+
from collections.abc import Iterable
|
|
5
6
|
from pathlib import Path
|
|
6
7
|
from typing import Any, cast
|
|
7
8
|
|
|
@@ -59,12 +60,17 @@ class Site:
|
|
|
59
60
|
*,
|
|
60
61
|
output_path: str | Path = "output",
|
|
61
62
|
template_path: str | Path = "templates",
|
|
62
|
-
static_paths: set[str | Path] =
|
|
63
|
+
static_paths: set[str | Path] | object = SENTINEL,
|
|
63
64
|
plugin_settings: object | dict = SENTINEL,
|
|
64
65
|
render_html_site_map: bool = False,
|
|
65
66
|
render_xml_site_map: bool = False,
|
|
66
67
|
slug_only_urls: bool = False,
|
|
67
68
|
site_vars: object | dict = SENTINEL,
|
|
69
|
+
static_include_patterns: Iterable[str] | None = None,
|
|
70
|
+
static_exclude_patterns: Iterable[str] | None = None,
|
|
71
|
+
static_exclude_dirs: Iterable[str] | None = None,
|
|
72
|
+
static_include_dirs: Iterable[str] | None = None,
|
|
73
|
+
include_static_in_site_map: bool = False,
|
|
68
74
|
) -> None:
|
|
69
75
|
"""
|
|
70
76
|
Constructor for the Site object.
|
|
@@ -75,18 +81,41 @@ class Site:
|
|
|
75
81
|
:param output_path: Path to write rendered content
|
|
76
82
|
:param template_path: Path to location of template files
|
|
77
83
|
:param static_paths: Paths for static folders copied to output (recursive)
|
|
78
|
-
:param plugin_settings: Dictionary
|
|
84
|
+
:param plugin_settings: Dictionary containing plugin settings
|
|
79
85
|
:param render_html_site_map: When True render the site map as an HTML file. Default: False
|
|
80
86
|
:param render_xml_site_map: When True render the site map as an XMK file. Default: False
|
|
81
87
|
:param slug_only_urls: Default value for Page objects rendering slub only URLS. Default: False
|
|
82
88
|
:param site_vars: The site_vars dictionary containing data to be passed to all templates during rendering
|
|
89
|
+
:param static_include_patterns: Glob patterns a static file must match to be included. Default: None.
|
|
90
|
+
:param static_exclude_patterns: Glob patterns that exclude a static file even if it matched an include pattern.
|
|
91
|
+
:param static_exclude_dirs: Directory names to skip entirely under any static path.
|
|
92
|
+
:param static_include_dirs: Subdirectory paths that override static_exclude_dirs for matching subdirectories.
|
|
93
|
+
:param include_static_in_site_map: When True, static files are added to the site map.
|
|
94
|
+
They are always copied to output regardless of this setting. Default: False.
|
|
83
95
|
"""
|
|
84
96
|
# Use getattr for the attributes moved from class level to constructor arguments
|
|
85
97
|
# to properly handle subclassing. This will prefeer the value from the subclass
|
|
86
98
|
# for these attributes
|
|
87
99
|
template_path = getattr(self, "_template_path", template_path)
|
|
88
100
|
output_path = getattr(self, "_output_path", output_path)
|
|
89
|
-
static_paths =
|
|
101
|
+
static_paths = cast(
|
|
102
|
+
"set[str | Path]",
|
|
103
|
+
getattr(
|
|
104
|
+
self,
|
|
105
|
+
"_static_paths",
|
|
106
|
+
{"static"} if static_paths is SENTINEL else static_paths,
|
|
107
|
+
),
|
|
108
|
+
)
|
|
109
|
+
self.static_include_patterns: Iterable[str] | None = getattr(
|
|
110
|
+
self, "static_include_patterns", static_include_patterns
|
|
111
|
+
)
|
|
112
|
+
self.static_exclude_patterns: Iterable[str] | None = getattr(
|
|
113
|
+
self, "static_exclude_patterns", static_exclude_patterns
|
|
114
|
+
)
|
|
115
|
+
self.static_exclude_dirs: Iterable[str] | None = getattr(self, "static_exclude_dirs", static_exclude_dirs)
|
|
116
|
+
self.static_include_dirs: Iterable[str] | None = getattr(self, "static_include_dirs", static_include_dirs)
|
|
117
|
+
self.include_static_in_site_map: bool = getattr(self, "include_static_in_site_map", include_static_in_site_map)
|
|
118
|
+
|
|
90
119
|
self.plugin_settings: dict = cast(
|
|
91
120
|
dict,
|
|
92
121
|
getattr(
|
|
@@ -390,6 +419,12 @@ class Site:
|
|
|
390
419
|
# to https://localhost:8000/ This task will update to the correct site URL and with the route list
|
|
391
420
|
# as it will be rendered.
|
|
392
421
|
self._site_map.site_url = site_url
|
|
422
|
+
self._site_map.static_paths = self.static_paths
|
|
423
|
+
self._site_map.static_include_patterns = self.static_include_patterns
|
|
424
|
+
self._site_map.static_exclude_patterns = self.static_exclude_patterns
|
|
425
|
+
self._site_map.static_exclude_dirs = self.static_exclude_dirs
|
|
426
|
+
self._site_map.static_include_dirs = self.static_include_dirs
|
|
427
|
+
self._site_map.include_static_in_site_map = self.include_static_in_site_map
|
|
393
428
|
self._site_map.update(self.route_list)
|
|
394
429
|
|
|
395
430
|
if self.render_html_site_map:
|
|
@@ -44,19 +44,51 @@ class SiteMapEntry:
|
|
|
44
44
|
return self.url_for
|
|
45
45
|
|
|
46
46
|
|
|
47
|
+
class StaticSiteMapEntry(SiteMapEntry):
|
|
48
|
+
"""Site map entry for a static file"""
|
|
49
|
+
|
|
50
|
+
def __init__(self, file_path: Path, static_root: Path, url_prefix: str = ""):
|
|
51
|
+
"""
|
|
52
|
+
:param file_path: Absolute path to the static file on disk.
|
|
53
|
+
:param static_root: The static directory this file lives under (e.g. "static").
|
|
54
|
+
:param url_prefix: The folder name this static dir gets copied to in the
|
|
55
|
+
output directory. `ThemeManager._render_static` copies each static_path
|
|
56
|
+
to `output_path / static_path.name`, so this should be `static_root.name`.
|
|
57
|
+
"""
|
|
58
|
+
relative = file_path.relative_to(static_root).as_posix()
|
|
59
|
+
self.slug = slugify.slugify(f"{url_prefix}/{relative}" if url_prefix else relative)
|
|
60
|
+
self.title = file_path.name
|
|
61
|
+
self.path_name = relative
|
|
62
|
+
prefix = url_prefix.strip("/")
|
|
63
|
+
self._route = f"/{prefix}/{relative}" if prefix else f"/{relative}"
|
|
64
|
+
self.entries: list = []
|
|
65
|
+
|
|
66
|
+
|
|
47
67
|
class SiteMap:
|
|
48
68
|
"""Site map"""
|
|
49
69
|
|
|
50
|
-
def __init__(
|
|
70
|
+
def __init__(
|
|
71
|
+
self,
|
|
72
|
+
site_url: str = "",
|
|
73
|
+
route_list: dict | None = None,
|
|
74
|
+
static_paths: Iterable[str | Path] | None = None,
|
|
75
|
+
) -> None:
|
|
51
76
|
"""
|
|
52
77
|
Create the site map based on the route_list
|
|
53
78
|
|
|
54
79
|
:param site_url: Used for rendering the HTML to have absolute URLs.
|
|
55
80
|
:param route_list: The route list to parse
|
|
81
|
+
:param static_paths: Static directories to include in the site map
|
|
56
82
|
"""
|
|
57
83
|
self._route_map = dict()
|
|
58
84
|
self._collections = dict()
|
|
59
85
|
self._site_url = site_url
|
|
86
|
+
self.static_paths = static_paths
|
|
87
|
+
self.static_include_patterns: Iterable[str] | None = None
|
|
88
|
+
self.static_exclude_patterns: Iterable[str] | None = None
|
|
89
|
+
self.static_exclude_dirs: Iterable[str] | None = None
|
|
90
|
+
self.static_include_dirs: Iterable[str] | None = None
|
|
91
|
+
self.include_static_in_site_map: bool = False
|
|
60
92
|
if not route_list:
|
|
61
93
|
return
|
|
62
94
|
self.update(route_list)
|
|
@@ -85,6 +117,57 @@ class SiteMap:
|
|
|
85
117
|
self._route_map[sm_entry.slug] = sm_entry
|
|
86
118
|
if sm_entry.entries:
|
|
87
119
|
self._collections[sm_entry.slug] = sm_entry
|
|
120
|
+
if self.static_paths and self.include_static_in_site_map:
|
|
121
|
+
self.add_static_files(
|
|
122
|
+
self.static_paths,
|
|
123
|
+
include_patterns=self.static_include_patterns,
|
|
124
|
+
exclude_patterns=self.static_exclude_patterns,
|
|
125
|
+
exclude_dirs=self.static_exclude_dirs,
|
|
126
|
+
include_dirs=self.static_include_dirs,
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
def add_static_files(
|
|
130
|
+
self,
|
|
131
|
+
static_paths: Iterable[str | Path],
|
|
132
|
+
include_patterns: Iterable[str] | None = None,
|
|
133
|
+
exclude_patterns: Iterable[str] | None = None,
|
|
134
|
+
exclude_dirs: Iterable[str] | None = None,
|
|
135
|
+
include_dirs: Iterable[str] | None = None,
|
|
136
|
+
) -> None:
|
|
137
|
+
"""
|
|
138
|
+
Add static files to the site map, optionally filtered by pattern or directory.
|
|
139
|
+
|
|
140
|
+
:param static_paths: Static directories to include in the site map
|
|
141
|
+
:param include_patterns: Glob patterns a file must match to be included. Default None: no filtering.
|
|
142
|
+
:param exclude_patterns: Glob patterns that exclude a matching file even if it matched an include pattern.
|
|
143
|
+
:param exclude_dirs: Directory names to skip entirely (matched against any path segment).
|
|
144
|
+
:param include_dirs: Subdirectory paths that override exclude_dirs, forcing inclusion for matching
|
|
145
|
+
subdirectories even if a parent directory was excluded.
|
|
146
|
+
"""
|
|
147
|
+
for static in static_paths:
|
|
148
|
+
static = Path(static)
|
|
149
|
+
if not static.exists():
|
|
150
|
+
continue
|
|
151
|
+
url_prefix = static.name
|
|
152
|
+
for file_path in static.rglob("*"):
|
|
153
|
+
if not file_path.is_file():
|
|
154
|
+
continue
|
|
155
|
+
rel_dir = file_path.relative_to(static).parent
|
|
156
|
+
rel_parts = rel_dir.parts
|
|
157
|
+
rel_dir_str = rel_dir.as_posix()
|
|
158
|
+
|
|
159
|
+
excluded_by_dir = exclude_dirs is not None and any(part in exclude_dirs for part in rel_parts)
|
|
160
|
+
included_override = include_dirs is not None and any(
|
|
161
|
+
rel_dir_str == d or rel_dir_str.startswith(f"{d}/") for d in include_dirs
|
|
162
|
+
)
|
|
163
|
+
if excluded_by_dir and not included_override:
|
|
164
|
+
continue
|
|
165
|
+
if include_patterns and not any(file_path.match(p) for p in include_patterns):
|
|
166
|
+
continue
|
|
167
|
+
if exclude_patterns and any(file_path.match(p) for p in exclude_patterns):
|
|
168
|
+
continue
|
|
169
|
+
entry = StaticSiteMapEntry(file_path, static, url_prefix)
|
|
170
|
+
self._route_map[entry.slug] = entry
|
|
88
171
|
|
|
89
172
|
def __iter__(self) -> Generator[SiteMapEntry]:
|
|
90
173
|
"""Iterator for the site map object"""
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
.gitattributes
|
|
2
|
+
MANIFEST.in
|
|
3
|
+
README.md
|
|
4
|
+
pyproject.toml
|
|
5
|
+
src/render_engine/__init__.py
|
|
6
|
+
src/render_engine/__version__.py
|
|
7
|
+
src/render_engine/_base_object.py
|
|
8
|
+
src/render_engine/archive.py
|
|
9
|
+
src/render_engine/blog.py
|
|
10
|
+
src/render_engine/collection.py
|
|
11
|
+
src/render_engine/data_object.py
|
|
12
|
+
src/render_engine/engine.py
|
|
13
|
+
src/render_engine/feeds.py
|
|
14
|
+
src/render_engine/hookspecs.py
|
|
15
|
+
src/render_engine/links.py
|
|
16
|
+
src/render_engine/page.py
|
|
17
|
+
src/render_engine/plugins.py
|
|
18
|
+
src/render_engine/site.py
|
|
19
|
+
src/render_engine/site_map.py
|
|
20
|
+
src/render_engine/themes.py
|
|
21
|
+
src/render_engine/content_managers/__init__.py
|
|
22
|
+
src/render_engine/content_managers/base_content_manager.py
|
|
23
|
+
src/render_engine/content_managers/file_content_manager.py
|
|
24
|
+
src/render_engine/parsers/__init__.py
|
|
25
|
+
src/render_engine/parsers/base_parsers.py
|
|
26
|
+
src/render_engine/parsers/markdown.py
|
|
27
|
+
src/render_engine/render_engine_templates/__init__.py
|
|
28
|
+
src/render_engine/render_engine_templates/archive.html
|
|
29
|
+
src/render_engine/render_engine_templates/base.html
|
|
30
|
+
src/render_engine/render_engine_templates/base_collection_path.md
|
|
31
|
+
src/render_engine/render_engine_templates/page.html
|
|
32
|
+
src/render_engine/render_engine_templates/redirect.html
|
|
33
|
+
src/render_engine/render_engine_templates/rss2.0.xml
|
|
34
|
+
src/render_engine/render_engine_templates/rss2.0_items.xml
|
|
35
|
+
src/render_engine/render_engine_templates/sitemap.xml
|
|
36
|
+
src/render_engine/render_engine_templates/sitemap_item.xml
|
|
37
|
+
src/render_engine/render_engine_templates/base_templates/_archive.html
|
|
38
|
+
src/render_engine/render_engine_templates/base_templates/_base.html
|
|
39
|
+
src/render_engine/render_engine_templates/base_templates/_page.html
|
|
40
|
+
src/render_engine/render_engine_templates/components/footer.html
|
|
41
|
+
src/render_engine/render_engine_templates/components/page_title.html
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"files": [
|
|
3
|
-
"README.md",
|
|
4
|
-
"CONTRIBUTING.md"
|
|
5
|
-
],
|
|
6
|
-
"imageSize": 57,
|
|
7
|
-
"commit": false,
|
|
8
|
-
"commitType": "docs",
|
|
9
|
-
"commitConvention": "angular",
|
|
10
|
-
"contributors": [
|
|
11
|
-
{
|
|
12
|
-
"login": "LauraLangdon",
|
|
13
|
-
"name": "Laura Langdon",
|
|
14
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/48335772?v=4",
|
|
15
|
-
"profile": "http://lauralangdon.io",
|
|
16
|
-
"contributions": [
|
|
17
|
-
"doc"
|
|
18
|
-
]
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"login": "tataraba",
|
|
22
|
-
"name": "Mario Munoz",
|
|
23
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/46942991?v=4",
|
|
24
|
-
"profile": "https://www.pythonbynight.com",
|
|
25
|
-
"contributions": [
|
|
26
|
-
"code"
|
|
27
|
-
]
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"login": "jlgimeno",
|
|
31
|
-
"name": "Jorge L. Gimeno",
|
|
32
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/17421585?v=4",
|
|
33
|
-
"profile": "https://github.com/jlgimeno",
|
|
34
|
-
"contributions": [
|
|
35
|
-
"doc"
|
|
36
|
-
]
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"login": "jonafato",
|
|
40
|
-
"name": "Jon Banafato",
|
|
41
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/392720?v=4",
|
|
42
|
-
"profile": "https://www.jonafato.com",
|
|
43
|
-
"contributions": [
|
|
44
|
-
"code"
|
|
45
|
-
]
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
"login": "Mahhheshh",
|
|
49
|
-
"name": "Mahhheshh",
|
|
50
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/100200105?v=4",
|
|
51
|
-
"profile": "https://github.com/Mahhheshh",
|
|
52
|
-
"contributions": [
|
|
53
|
-
"doc",
|
|
54
|
-
"code",
|
|
55
|
-
"maintenance"
|
|
56
|
-
]
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"login": "pamelafox",
|
|
60
|
-
"name": "Pamela Fox",
|
|
61
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/297042?v=4",
|
|
62
|
-
"profile": "https://www.pamelafox.org",
|
|
63
|
-
"contributions": [
|
|
64
|
-
"doc"
|
|
65
|
-
]
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
"login": "mannyanebi",
|
|
69
|
-
"name": "Emmanuel Anebi",
|
|
70
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/25439000?v=4",
|
|
71
|
-
"profile": "https://github.com/mannyanebi",
|
|
72
|
-
"contributions": [
|
|
73
|
-
"plugin"
|
|
74
|
-
]
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"login": "tonybaloney",
|
|
78
|
-
"name": "Anthony Shaw",
|
|
79
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/1532417?v=4",
|
|
80
|
-
"profile": "https://tonybaloney.github.io/",
|
|
81
|
-
"contributions": [
|
|
82
|
-
"doc"
|
|
83
|
-
]
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
"login": "jefftriplett",
|
|
87
|
-
"name": "Jeff Triplett",
|
|
88
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/50527?v=4",
|
|
89
|
-
"profile": "https://webology.dev",
|
|
90
|
-
"contributions": [
|
|
91
|
-
"doc",
|
|
92
|
-
"mentoring"
|
|
93
|
-
]
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
"login": "viktoriussuwandi",
|
|
97
|
-
"name": "Viktorius Suwandi",
|
|
98
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/68414300?v=4",
|
|
99
|
-
"profile": "https://github.com/viktoriussuwandi",
|
|
100
|
-
"contributions": [
|
|
101
|
-
"code"
|
|
102
|
-
]
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
"login": "Tashuuuu",
|
|
106
|
-
"name": "Akriti Sengar",
|
|
107
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/85075827?v=4",
|
|
108
|
-
"profile": "https://github.com/Tashuuuu",
|
|
109
|
-
"contributions": [
|
|
110
|
-
"tool"
|
|
111
|
-
]
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
"login": "izaan17",
|
|
115
|
-
"name": "izaan17",
|
|
116
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/93177492?v=4",
|
|
117
|
-
"profile": "https://github.com/Izaan17",
|
|
118
|
-
"contributions": [
|
|
119
|
-
"plugin"
|
|
120
|
-
]
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
"login": "VinayakG311",
|
|
124
|
-
"name": "VinayakG311",
|
|
125
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/96966973?v=4",
|
|
126
|
-
"profile": "https://github.com/VinayakG311",
|
|
127
|
-
"contributions": [
|
|
128
|
-
"plugin"
|
|
129
|
-
]
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
"login": "john0isaac",
|
|
133
|
-
"name": "John Aziz",
|
|
134
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/64026625?v=4",
|
|
135
|
-
"profile": "https://linktr.ee/john0isaac",
|
|
136
|
-
"contributions": [
|
|
137
|
-
"doc",
|
|
138
|
-
"maintenance",
|
|
139
|
-
"userTesting"
|
|
140
|
-
]
|
|
141
|
-
},
|
|
142
|
-
{
|
|
143
|
-
"login": "giovannism20",
|
|
144
|
-
"name": "Giovanni Martins",
|
|
145
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/7796661?v=4",
|
|
146
|
-
"profile": "http://giovannimartins.dev",
|
|
147
|
-
"contributions": [
|
|
148
|
-
"infra"
|
|
149
|
-
]
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
"login": "MohitKambli",
|
|
153
|
-
"name": "Mohit Kambli",
|
|
154
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/31406633?v=4",
|
|
155
|
-
"profile": "https://github.com/MohitKambli",
|
|
156
|
-
"contributions": [
|
|
157
|
-
"infra"
|
|
158
|
-
]
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
"login": "OsamaRab3",
|
|
162
|
-
"name": "Osama Rabea ",
|
|
163
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/159753803?v=4",
|
|
164
|
-
"profile": "https://github.com/OsamaRab3",
|
|
165
|
-
"contributions": [
|
|
166
|
-
"doc",
|
|
167
|
-
"test"
|
|
168
|
-
]
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
"login": "brass75",
|
|
172
|
-
"name": "Dan Shernicoff",
|
|
173
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/1806946?v=4",
|
|
174
|
-
"profile": "https://brassnet.biz",
|
|
175
|
-
"contributions": [
|
|
176
|
-
"code"
|
|
177
|
-
]
|
|
178
|
-
},
|
|
179
|
-
{
|
|
180
|
-
"login": "kjaymiller",
|
|
181
|
-
"name": "Jay Miller",
|
|
182
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/8632637?v=4",
|
|
183
|
-
"profile": "https://github.com/kjaymiller",
|
|
184
|
-
"contributions": [
|
|
185
|
-
"code",
|
|
186
|
-
"doc",
|
|
187
|
-
"maintenance"
|
|
188
|
-
]
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
"login": "bdougie",
|
|
192
|
-
"name": "Brian Douglas",
|
|
193
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/5713670?v=4",
|
|
194
|
-
"profile": "https://b.dougie.dev/",
|
|
195
|
-
"contributions": [
|
|
196
|
-
"financial"
|
|
197
|
-
]
|
|
198
|
-
}
|
|
199
|
-
],
|
|
200
|
-
"contributorsPerLine": 7,
|
|
201
|
-
"contributorsSortAlphabetically": true,
|
|
202
|
-
"skipCi": true,
|
|
203
|
-
"repoType": "github",
|
|
204
|
-
"repoHost": "https://github.com",
|
|
205
|
-
"projectName": "render-engine",
|
|
206
|
-
"projectOwner": "render-engine"
|
|
207
|
-
}
|