python-kanka 2.6.0__tar.gz → 2.6.1__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.
Files changed (85) hide show
  1. {python_kanka-2.6.0 → python_kanka-2.6.1}/.bumpversion.cfg +1 -1
  2. python_kanka-2.6.1/.github/workflows/docs.yml +63 -0
  3. {python_kanka-2.6.0 → python_kanka-2.6.1}/Makefile +22 -1
  4. {python_kanka-2.6.0 → python_kanka-2.6.1}/PKG-INFO +2 -2
  5. python_kanka-2.6.1/docs/CNAME +1 -0
  6. python_kanka-2.6.1/mkdocs.yml +55 -0
  7. {python_kanka-2.6.0 → python_kanka-2.6.1}/pyproject.toml +6 -2
  8. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/_version.py +1 -1
  9. {python_kanka-2.6.0 → python_kanka-2.6.1}/uv.lock +285 -1
  10. {python_kanka-2.6.0 → python_kanka-2.6.1}/.github/renovate.json +0 -0
  11. {python_kanka-2.6.0 → python_kanka-2.6.1}/.github/workflows/ci.yml +0 -0
  12. {python_kanka-2.6.0 → python_kanka-2.6.1}/.github/workflows/publish.yml +0 -0
  13. {python_kanka-2.6.0 → python_kanka-2.6.1}/.gitignore +0 -0
  14. {python_kanka-2.6.0 → python_kanka-2.6.1}/.pre-commit-config.yaml +0 -0
  15. {python_kanka-2.6.0 → python_kanka-2.6.1}/CHANGELOG.md +0 -0
  16. {python_kanka-2.6.0 → python_kanka-2.6.1}/CLAUDE.md +0 -0
  17. {python_kanka-2.6.0 → python_kanka-2.6.1}/LICENSE +0 -0
  18. {python_kanka-2.6.0 → python_kanka-2.6.1}/MANIFEST.in +0 -0
  19. {python_kanka-2.6.0 → python_kanka-2.6.1}/PUBLISHING.md +0 -0
  20. {python_kanka-2.6.0 → python_kanka-2.6.1}/README.md +0 -0
  21. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/README.md +0 -0
  22. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/api-reference.md +0 -0
  23. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/assets-and-images.md +0 -0
  24. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/core-concepts.md +0 -0
  25. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/debug-mode.md +0 -0
  26. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/entities.md +0 -0
  27. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/entity-types-reference.md +0 -0
  28. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/error-handling.md +0 -0
  29. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/gallery.md +0 -0
  30. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/getting-started.md +0 -0
  31. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/known-limitations.md +0 -0
  32. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/last-sync.md +0 -0
  33. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/pagination.md +0 -0
  34. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/posts.md +0 -0
  35. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/rate-limiting.md +0 -0
  36. {python_kanka-2.6.0 → python_kanka-2.6.1}/docs/search-and-filtering.md +0 -0
  37. {python_kanka-2.6.0 → python_kanka-2.6.1}/pytest.ini +0 -0
  38. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/__init__.py +0 -0
  39. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/client.py +0 -0
  40. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/exceptions.py +0 -0
  41. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/managers.py +0 -0
  42. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/models/__init__.py +0 -0
  43. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/models/base.py +0 -0
  44. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/models/common.py +0 -0
  45. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/models/entities.py +0 -0
  46. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/py.typed +0 -0
  47. {python_kanka-2.6.0 → python_kanka-2.6.1}/src/kanka/types.py +0 -0
  48. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/__init__.py +0 -0
  49. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/README.md +0 -0
  50. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/__init__.py +0 -0
  51. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/base.py +0 -0
  52. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/run_integration_tests.py +0 -0
  53. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/setup_test_env.py +0 -0
  54. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_calendars_integration.py +0 -0
  55. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_calendars_simple.py +0 -0
  56. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_characters_integration.py +0 -0
  57. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_creatures_integration.py +0 -0
  58. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_entities_api_integration.py +0 -0
  59. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_entity_assets_integration.py +0 -0
  60. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_entity_images_integration.py +0 -0
  61. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_entity_tags_integration.py +0 -0
  62. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_events_integration.py +0 -0
  63. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_families_integration.py +0 -0
  64. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_gallery_integration.py +0 -0
  65. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_journals_integration.py +0 -0
  66. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_locations_integration.py +0 -0
  67. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_mentions_integration.py +0 -0
  68. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_notes_integration.py +0 -0
  69. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_organisations_integration.py +0 -0
  70. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_posts_integration.py +0 -0
  71. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_quests_integration.py +0 -0
  72. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_races_integration.py +0 -0
  73. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_rate_limiting.py +0 -0
  74. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_search_integration.py +0 -0
  75. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_tag_colour.py +0 -0
  76. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/integration/test_tags_integration.py +0 -0
  77. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/mypy.ini +0 -0
  78. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_client.py +0 -0
  79. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_client_advanced.py +0 -0
  80. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_entity_models.py +0 -0
  81. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_exceptions.py +0 -0
  82. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_managers.py +0 -0
  83. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_models.py +0 -0
  84. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/test_models_advanced.py +0 -0
  85. {python_kanka-2.6.0 → python_kanka-2.6.1}/tests/utils.py +0 -0
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 2.6.0
2
+ current_version = 2.6.1
3
3
  commit = True
4
4
  tag = True
5
5
  tag_name = v{new_version}
@@ -0,0 +1,63 @@
1
+ name: Deploy Documentation
2
+
3
+ on:
4
+ push:
5
+ branches: [main, master]
6
+ workflow_dispatch:
7
+
8
+ permissions:
9
+ contents: read
10
+ pages: write
11
+ id-token: write
12
+
13
+ concurrency:
14
+ group: pages
15
+ cancel-in-progress: false
16
+
17
+ jobs:
18
+ build:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ - uses: actions/checkout@v6
22
+
23
+ - name: Install uv
24
+ uses: astral-sh/setup-uv@v7
25
+
26
+ - name: Set up Python
27
+ run: uv python install 3.14
28
+
29
+ - name: Install docs dependencies
30
+ run: uv sync --group docs
31
+
32
+ - name: Prepare index page
33
+ run: mv docs/README.md docs/index.md
34
+
35
+ - name: Build MkDocs site
36
+ run: uv run mkdocs build --strict
37
+
38
+ - name: Restore README and copy raw markdown to site
39
+ run: |
40
+ mv docs/index.md docs/README.md
41
+ for f in docs/*.md; do
42
+ name="$(basename "$f")"
43
+ if [ "$name" != "README.md" ]; then
44
+ cp "$f" site/
45
+ fi
46
+ done
47
+ cp docs/README.md site/llms.txt
48
+
49
+ - name: Upload Pages artifact
50
+ uses: actions/upload-pages-artifact@v3
51
+ with:
52
+ path: site/
53
+
54
+ deploy:
55
+ needs: build
56
+ runs-on: ubuntu-latest
57
+ environment:
58
+ name: github-pages
59
+ url: ${{ steps.deployment.outputs.page_url }}
60
+ steps:
61
+ - name: Deploy to GitHub Pages
62
+ id: deployment
63
+ uses: actions/deploy-pages@v4
@@ -1,4 +1,4 @@
1
- .PHONY: install test lint format typecheck check clean coverage help sync build
1
+ .PHONY: install test lint format typecheck check clean coverage help sync build docs-serve docs-build
2
2
 
3
3
  # Default target
4
4
  help:
@@ -13,6 +13,8 @@ help:
13
13
  @echo " make clean - Clean up temporary files"
14
14
  @echo " make coverage - Run tests with coverage report"
15
15
  @echo " make build - Build the package"
16
+ @echo " make docs-serve - Serve docs locally for preview"
17
+ @echo " make docs-build - Build docs locally"
16
18
 
17
19
  # Install development dependencies and sync with lock file
18
20
  install:
@@ -71,3 +73,22 @@ coverage:
71
73
  # Build the package
72
74
  build:
73
75
  uv build
76
+
77
+ # Serve docs locally for preview
78
+ docs-serve:
79
+ mv docs/README.md docs/index.md
80
+ uv run mkdocs serve || true
81
+ mv docs/index.md docs/README.md
82
+
83
+ # Build docs locally
84
+ docs-build:
85
+ mv docs/README.md docs/index.md
86
+ uv run mkdocs build --strict
87
+ mv docs/index.md docs/README.md
88
+ @for f in docs/*.md; do \
89
+ name=$$(basename "$$f"); \
90
+ if [ "$$name" != "README.md" ]; then \
91
+ cp "$$f" site/; \
92
+ fi; \
93
+ done
94
+ cp docs/README.md site/llms.txt
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-kanka
3
- Version: 2.6.0
3
+ Version: 2.6.1
4
4
  Summary: Python client for the Kanka API
5
5
  Project-URL: Homepage, https://github.com/ervwalter/python-kanka
6
- Project-URL: Documentation, https://github.com/ervwalter/python-kanka#readme
6
+ Project-URL: Documentation, https://python-kanka.ewal.dev/
7
7
  Project-URL: Repository, https://github.com/ervwalter/python-kanka
8
8
  Project-URL: Issues, https://github.com/ervwalter/python-kanka/issues
9
9
  Author-email: Erv Walter <erv@ewal.net>
@@ -0,0 +1 @@
1
+ python-kanka.ewal.dev
@@ -0,0 +1,55 @@
1
+ site_name: python-kanka
2
+ site_url: https://python-kanka.ewal.dev/
3
+ site_description: A modern Python client for the Kanka API
4
+ repo_url: https://github.com/ervwalter/python-kanka
5
+ repo_name: ervwalter/python-kanka
6
+
7
+ theme:
8
+ name: material
9
+ features:
10
+ - navigation.sections
11
+ - navigation.expand
12
+ - content.code.copy
13
+ - search.suggest
14
+ palette:
15
+ - scheme: default
16
+ primary: indigo
17
+ accent: indigo
18
+ toggle:
19
+ icon: material/brightness-7
20
+ name: Switch to dark mode
21
+ - scheme: slate
22
+ primary: indigo
23
+ accent: indigo
24
+ toggle:
25
+ icon: material/brightness-4
26
+ name: Switch to light mode
27
+
28
+ nav:
29
+ - Home: index.md
30
+ - Guides:
31
+ - Getting Started: getting-started.md
32
+ - Core Concepts: core-concepts.md
33
+ - Entity CRUD Operations: entities.md
34
+ - Entity Types Reference: entity-types-reference.md
35
+ - Posts: posts.md
36
+ - Search and Filtering: search-and-filtering.md
37
+ - Last Sync: last-sync.md
38
+ - Pagination: pagination.md
39
+ - Assets and Images: assets-and-images.md
40
+ - Campaign Gallery: gallery.md
41
+ - Error Handling: error-handling.md
42
+ - Rate Limiting: rate-limiting.md
43
+ - Debug Mode: debug-mode.md
44
+ - Known Limitations: known-limitations.md
45
+ - Reference:
46
+ - API Reference: api-reference.md
47
+
48
+ markdown_extensions:
49
+ - pymdownx.highlight:
50
+ anchor_linenums: true
51
+ - pymdownx.superfences
52
+ - admonition
53
+ - tables
54
+ - toc:
55
+ permalink: true
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "python-kanka"
7
- version = "2.6.0"
7
+ version = "2.6.1"
8
8
  description = "Python client for the Kanka API"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -33,11 +33,15 @@ dependencies = [
33
33
 
34
34
  [project.urls]
35
35
  Homepage = "https://github.com/ervwalter/python-kanka"
36
- Documentation = "https://github.com/ervwalter/python-kanka#readme"
36
+ Documentation = "https://python-kanka.ewal.dev/"
37
37
  Repository = "https://github.com/ervwalter/python-kanka"
38
38
  Issues = "https://github.com/ervwalter/python-kanka/issues"
39
39
 
40
40
  [dependency-groups]
41
+ docs = [
42
+ "mkdocs>=1.6",
43
+ "mkdocs-material>=9.5",
44
+ ]
41
45
  dev = [
42
46
  "pytest==9.0.2",
43
47
  "pytest-asyncio==1.3.0",
@@ -1,3 +1,3 @@
1
1
  """Version information for python-kanka."""
2
2
 
3
- __version__ = "2.6.0"
3
+ __version__ = "2.6.1"
@@ -11,6 +11,29 @@ wheels = [
11
11
  { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" },
12
12
  ]
13
13
 
14
+ [[package]]
15
+ name = "babel"
16
+ version = "2.18.0"
17
+ source = { registry = "https://pypi.org/simple" }
18
+ sdist = { url = "https://files.pythonhosted.org/packages/7d/b2/51899539b6ceeeb420d40ed3cd4b7a40519404f9baf3d4ac99dc413a834b/babel-2.18.0.tar.gz", hash = "sha256:b80b99a14bd085fcacfa15c9165f651fbb3406e66cc603abf11c5750937c992d", size = 9959554, upload-time = "2026-02-01T12:30:56.078Z" }
19
+ wheels = [
20
+ { url = "https://files.pythonhosted.org/packages/77/f5/21d2de20e8b8b0408f0681956ca2c69f1320a3848ac50e6e7f39c6159675/babel-2.18.0-py3-none-any.whl", hash = "sha256:e2b422b277c2b9a9630c1d7903c2a00d0830c409c59ac8cae9081c92f1aeba35", size = 10196845, upload-time = "2026-02-01T12:30:53.445Z" },
21
+ ]
22
+
23
+ [[package]]
24
+ name = "backrefs"
25
+ version = "6.2"
26
+ source = { registry = "https://pypi.org/simple" }
27
+ sdist = { url = "https://files.pythonhosted.org/packages/4e/a6/e325ec73b638d3ede4421b5445d4a0b8b219481826cc079d510100af356c/backrefs-6.2.tar.gz", hash = "sha256:f44ff4d48808b243b6c0cdc6231e22195c32f77046018141556c66f8bab72a49", size = 7012303, upload-time = "2026-02-16T19:10:15.828Z" }
28
+ wheels = [
29
+ { url = "https://files.pythonhosted.org/packages/1b/39/3765df263e08a4df37f4f43cb5aa3c6c17a4bdd42ecfe841e04c26037171/backrefs-6.2-py310-none-any.whl", hash = "sha256:0fdc7b012420b6b144410342caeb8adc54c6866cf12064abc9bb211302e496f8", size = 381075, upload-time = "2026-02-16T19:10:04.322Z" },
30
+ { url = "https://files.pythonhosted.org/packages/0f/f0/35240571e1b67ffb19dafb29ab34150b6f59f93f717b041082cdb1bfceb1/backrefs-6.2-py311-none-any.whl", hash = "sha256:08aa7fae530c6b2361d7bdcbda1a7c454e330cc9dbcd03f5c23205e430e5c3be", size = 392874, upload-time = "2026-02-16T19:10:06.314Z" },
31
+ { url = "https://files.pythonhosted.org/packages/e3/63/77e8c9745b4d227cce9f5e0a6f68041278c5f9b18588b35905f5f19c1beb/backrefs-6.2-py312-none-any.whl", hash = "sha256:c3f4b9cb2af8cda0d87ab4f57800b57b95428488477be164dd2b47be54db0c90", size = 398787, upload-time = "2026-02-16T19:10:08.274Z" },
32
+ { url = "https://files.pythonhosted.org/packages/c5/71/c754b1737ad99102e03fa3235acb6cb6d3ac9d6f596cbc3e5f236705abd8/backrefs-6.2-py313-none-any.whl", hash = "sha256:12df81596ab511f783b7d87c043ce26bc5b0288cf3bb03610fe76b8189282b2b", size = 400747, upload-time = "2026-02-16T19:10:09.791Z" },
33
+ { url = "https://files.pythonhosted.org/packages/af/75/be12ba31a6eb20dccef2320cd8ccb3f7d9013b68ba4c70156259fee9e409/backrefs-6.2-py314-none-any.whl", hash = "sha256:e5f805ae09819caa1aa0623b4a83790e7028604aa2b8c73ba602c4454e665de7", size = 412602, upload-time = "2026-02-16T19:10:12.317Z" },
34
+ { url = "https://files.pythonhosted.org/packages/21/f8/d02f650c47d05034dcd6f9c8cf94f39598b7a89c00ecda0ecb2911bc27e9/backrefs-6.2-py39-none-any.whl", hash = "sha256:664e33cd88c6840b7625b826ecf2555f32d491800900f5a541f772c485f7cda7", size = 381077, upload-time = "2026-02-16T19:10:13.74Z" },
35
+ ]
36
+
14
37
  [[package]]
15
38
  name = "black"
16
39
  version = "26.1.0"
@@ -340,6 +363,18 @@ wheels = [
340
363
  { url = "https://files.pythonhosted.org/packages/9c/0f/5d0c71a1aefeb08efff26272149e07ab922b64f46c63363756224bd6872e/filelock-3.24.3-py3-none-any.whl", hash = "sha256:426e9a4660391f7f8a810d71b0555bce9008b0a1cc342ab1f6947d37639e002d", size = 24331, upload-time = "2026-02-19T00:48:18.465Z" },
341
364
  ]
342
365
 
366
+ [[package]]
367
+ name = "ghp-import"
368
+ version = "2.1.0"
369
+ source = { registry = "https://pypi.org/simple" }
370
+ dependencies = [
371
+ { name = "python-dateutil" },
372
+ ]
373
+ sdist = { url = "https://files.pythonhosted.org/packages/d9/29/d40217cbe2f6b1359e00c6c307bb3fc876ba74068cbab3dde77f03ca0dc4/ghp-import-2.1.0.tar.gz", hash = "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343", size = 10943, upload-time = "2022-05-02T15:47:16.11Z" }
374
+ wheels = [
375
+ { url = "https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl", hash = "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619", size = 11034, upload-time = "2022-05-02T15:47:14.552Z" },
376
+ ]
377
+
343
378
  [[package]]
344
379
  name = "id"
345
380
  version = "1.6.1"
@@ -430,6 +465,18 @@ wheels = [
430
465
  { url = "https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl", hash = "sha256:97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683", size = 49010, upload-time = "2025-02-27T18:51:00.104Z" },
431
466
  ]
432
467
 
468
+ [[package]]
469
+ name = "jinja2"
470
+ version = "3.1.6"
471
+ source = { registry = "https://pypi.org/simple" }
472
+ dependencies = [
473
+ { name = "markupsafe" },
474
+ ]
475
+ sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115, upload-time = "2025-03-05T20:05:02.478Z" }
476
+ wheels = [
477
+ { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" },
478
+ ]
479
+
433
480
  [[package]]
434
481
  name = "keyring"
435
482
  version = "25.7.0"
@@ -507,6 +554,15 @@ wheels = [
507
554
  { url = "https://files.pythonhosted.org/packages/b2/c8/d148e041732d631fc76036f8b30fae4e77b027a1e95b7a84bb522481a940/librt-0.8.1-cp314-cp314t-win_arm64.whl", hash = "sha256:bf512a71a23504ed08103a13c941f763db13fb11177beb3d9244c98c29fb4a61", size = 48755, upload-time = "2026-02-17T16:12:47.943Z" },
508
555
  ]
509
556
 
557
+ [[package]]
558
+ name = "markdown"
559
+ version = "3.10.2"
560
+ source = { registry = "https://pypi.org/simple" }
561
+ sdist = { url = "https://files.pythonhosted.org/packages/2b/f4/69fa6ed85ae003c2378ffa8f6d2e3234662abd02c10d216c0ba96081a238/markdown-3.10.2.tar.gz", hash = "sha256:994d51325d25ad8aa7ce4ebaec003febcce822c3f8c911e3b17c52f7f589f950", size = 368805, upload-time = "2026-02-09T14:57:26.942Z" }
562
+ wheels = [
563
+ { url = "https://files.pythonhosted.org/packages/de/1f/77fa3081e4f66ca3576c896ae5d31c3002ac6607f9747d2e3aa49227e464/markdown-3.10.2-py3-none-any.whl", hash = "sha256:e91464b71ae3ee7afd3017d9f358ef0baf158fd9a298db92f1d4761133824c36", size = 108180, upload-time = "2026-02-09T14:57:25.787Z" },
564
+ ]
565
+
510
566
  [[package]]
511
567
  name = "markdown-it-py"
512
568
  version = "4.0.0"
@@ -519,6 +575,69 @@ wheels = [
519
575
  { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321, upload-time = "2025-08-11T12:57:51.923Z" },
520
576
  ]
521
577
 
578
+ [[package]]
579
+ name = "markupsafe"
580
+ version = "3.0.3"
581
+ source = { registry = "https://pypi.org/simple" }
582
+ sdist = { url = "https://files.pythonhosted.org/packages/7e/99/7690b6d4034fffd95959cbe0c02de8deb3098cc577c67bb6a24fe5d7caa7/markupsafe-3.0.3.tar.gz", hash = "sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698", size = 80313, upload-time = "2025-09-27T18:37:40.426Z" }
583
+ wheels = [
584
+ { url = "https://files.pythonhosted.org/packages/5a/72/147da192e38635ada20e0a2e1a51cf8823d2119ce8883f7053879c2199b5/markupsafe-3.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d53197da72cc091b024dd97249dfc7794d6a56530370992a5e1a08983ad9230e", size = 11615, upload-time = "2025-09-27T18:36:30.854Z" },
585
+ { url = "https://files.pythonhosted.org/packages/9a/81/7e4e08678a1f98521201c3079f77db69fb552acd56067661f8c2f534a718/markupsafe-3.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1872df69a4de6aead3491198eaf13810b565bdbeec3ae2dc8780f14458ec73ce", size = 12020, upload-time = "2025-09-27T18:36:31.971Z" },
586
+ { url = "https://files.pythonhosted.org/packages/1e/2c/799f4742efc39633a1b54a92eec4082e4f815314869865d876824c257c1e/markupsafe-3.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3a7e8ae81ae39e62a41ec302f972ba6ae23a5c5396c8e60113e9066ef893da0d", size = 24332, upload-time = "2025-09-27T18:36:32.813Z" },
587
+ { url = "https://files.pythonhosted.org/packages/3c/2e/8d0c2ab90a8c1d9a24f0399058ab8519a3279d1bd4289511d74e909f060e/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d6dd0be5b5b189d31db7cda48b91d7e0a9795f31430b7f271219ab30f1d3ac9d", size = 22947, upload-time = "2025-09-27T18:36:33.86Z" },
588
+ { url = "https://files.pythonhosted.org/packages/2c/54/887f3092a85238093a0b2154bd629c89444f395618842e8b0c41783898ea/markupsafe-3.0.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:94c6f0bb423f739146aec64595853541634bde58b2135f27f61c1ffd1cd4d16a", size = 21962, upload-time = "2025-09-27T18:36:35.099Z" },
589
+ { url = "https://files.pythonhosted.org/packages/c9/2f/336b8c7b6f4a4d95e91119dc8521402461b74a485558d8f238a68312f11c/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:be8813b57049a7dc738189df53d69395eba14fb99345e0a5994914a3864c8a4b", size = 23760, upload-time = "2025-09-27T18:36:36.001Z" },
590
+ { url = "https://files.pythonhosted.org/packages/32/43/67935f2b7e4982ffb50a4d169b724d74b62a3964bc1a9a527f5ac4f1ee2b/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:83891d0e9fb81a825d9a6d61e3f07550ca70a076484292a70fde82c4b807286f", size = 21529, upload-time = "2025-09-27T18:36:36.906Z" },
591
+ { url = "https://files.pythonhosted.org/packages/89/e0/4486f11e51bbba8b0c041098859e869e304d1c261e59244baa3d295d47b7/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:77f0643abe7495da77fb436f50f8dab76dbc6e5fd25d39589a0f1fe6548bfa2b", size = 23015, upload-time = "2025-09-27T18:36:37.868Z" },
592
+ { url = "https://files.pythonhosted.org/packages/2f/e1/78ee7a023dac597a5825441ebd17170785a9dab23de95d2c7508ade94e0e/markupsafe-3.0.3-cp312-cp312-win32.whl", hash = "sha256:d88b440e37a16e651bda4c7c2b930eb586fd15ca7406cb39e211fcff3bf3017d", size = 14540, upload-time = "2025-09-27T18:36:38.761Z" },
593
+ { url = "https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c", size = 15105, upload-time = "2025-09-27T18:36:39.701Z" },
594
+ { url = "https://files.pythonhosted.org/packages/e5/f1/216fc1bbfd74011693a4fd837e7026152e89c4bcf3e77b6692fba9923123/markupsafe-3.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:35add3b638a5d900e807944a078b51922212fb3dedb01633a8defc4b01a3c85f", size = 13906, upload-time = "2025-09-27T18:36:40.689Z" },
595
+ { url = "https://files.pythonhosted.org/packages/38/2f/907b9c7bbba283e68f20259574b13d005c121a0fa4c175f9bed27c4597ff/markupsafe-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795", size = 11622, upload-time = "2025-09-27T18:36:41.777Z" },
596
+ { url = "https://files.pythonhosted.org/packages/9c/d9/5f7756922cdd676869eca1c4e3c0cd0df60ed30199ffd775e319089cb3ed/markupsafe-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219", size = 12029, upload-time = "2025-09-27T18:36:43.257Z" },
597
+ { url = "https://files.pythonhosted.org/packages/00/07/575a68c754943058c78f30db02ee03a64b3c638586fba6a6dd56830b30a3/markupsafe-3.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6", size = 24374, upload-time = "2025-09-27T18:36:44.508Z" },
598
+ { url = "https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676", size = 22980, upload-time = "2025-09-27T18:36:45.385Z" },
599
+ { url = "https://files.pythonhosted.org/packages/7f/71/544260864f893f18b6827315b988c146b559391e6e7e8f7252839b1b846a/markupsafe-3.0.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9", size = 21990, upload-time = "2025-09-27T18:36:46.916Z" },
600
+ { url = "https://files.pythonhosted.org/packages/c2/28/b50fc2f74d1ad761af2f5dcce7492648b983d00a65b8c0e0cb457c82ebbe/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1", size = 23784, upload-time = "2025-09-27T18:36:47.884Z" },
601
+ { url = "https://files.pythonhosted.org/packages/ed/76/104b2aa106a208da8b17a2fb72e033a5a9d7073c68f7e508b94916ed47a9/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc", size = 21588, upload-time = "2025-09-27T18:36:48.82Z" },
602
+ { url = "https://files.pythonhosted.org/packages/b5/99/16a5eb2d140087ebd97180d95249b00a03aa87e29cc224056274f2e45fd6/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12", size = 23041, upload-time = "2025-09-27T18:36:49.797Z" },
603
+ { url = "https://files.pythonhosted.org/packages/19/bc/e7140ed90c5d61d77cea142eed9f9c303f4c4806f60a1044c13e3f1471d0/markupsafe-3.0.3-cp313-cp313-win32.whl", hash = "sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed", size = 14543, upload-time = "2025-09-27T18:36:51.584Z" },
604
+ { url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5", size = 15113, upload-time = "2025-09-27T18:36:52.537Z" },
605
+ { url = "https://files.pythonhosted.org/packages/f0/3a/fa34a0f7cfef23cf9500d68cb7c32dd64ffd58a12b09225fb03dd37d5b80/markupsafe-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485", size = 13911, upload-time = "2025-09-27T18:36:53.513Z" },
606
+ { url = "https://files.pythonhosted.org/packages/e4/d7/e05cd7efe43a88a17a37b3ae96e79a19e846f3f456fe79c57ca61356ef01/markupsafe-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73", size = 11658, upload-time = "2025-09-27T18:36:54.819Z" },
607
+ { url = "https://files.pythonhosted.org/packages/99/9e/e412117548182ce2148bdeacdda3bb494260c0b0184360fe0d56389b523b/markupsafe-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37", size = 12066, upload-time = "2025-09-27T18:36:55.714Z" },
608
+ { url = "https://files.pythonhosted.org/packages/bc/e6/fa0ffcda717ef64a5108eaa7b4f5ed28d56122c9a6d70ab8b72f9f715c80/markupsafe-3.0.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19", size = 25639, upload-time = "2025-09-27T18:36:56.908Z" },
609
+ { url = "https://files.pythonhosted.org/packages/96/ec/2102e881fe9d25fc16cb4b25d5f5cde50970967ffa5dddafdb771237062d/markupsafe-3.0.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025", size = 23569, upload-time = "2025-09-27T18:36:57.913Z" },
610
+ { url = "https://files.pythonhosted.org/packages/4b/30/6f2fce1f1f205fc9323255b216ca8a235b15860c34b6798f810f05828e32/markupsafe-3.0.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6", size = 23284, upload-time = "2025-09-27T18:36:58.833Z" },
611
+ { url = "https://files.pythonhosted.org/packages/58/47/4a0ccea4ab9f5dcb6f79c0236d954acb382202721e704223a8aafa38b5c8/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f", size = 24801, upload-time = "2025-09-27T18:36:59.739Z" },
612
+ { url = "https://files.pythonhosted.org/packages/6a/70/3780e9b72180b6fecb83a4814d84c3bf4b4ae4bf0b19c27196104149734c/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb", size = 22769, upload-time = "2025-09-27T18:37:00.719Z" },
613
+ { url = "https://files.pythonhosted.org/packages/98/c5/c03c7f4125180fc215220c035beac6b9cb684bc7a067c84fc69414d315f5/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009", size = 23642, upload-time = "2025-09-27T18:37:01.673Z" },
614
+ { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612, upload-time = "2025-09-27T18:37:02.639Z" },
615
+ { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200, upload-time = "2025-09-27T18:37:03.582Z" },
616
+ { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973, upload-time = "2025-09-27T18:37:04.929Z" },
617
+ { url = "https://files.pythonhosted.org/packages/33/8a/8e42d4838cd89b7dde187011e97fe6c3af66d8c044997d2183fbd6d31352/markupsafe-3.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe", size = 11619, upload-time = "2025-09-27T18:37:06.342Z" },
618
+ { url = "https://files.pythonhosted.org/packages/b5/64/7660f8a4a8e53c924d0fa05dc3a55c9cee10bbd82b11c5afb27d44b096ce/markupsafe-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026", size = 12029, upload-time = "2025-09-27T18:37:07.213Z" },
619
+ { url = "https://files.pythonhosted.org/packages/da/ef/e648bfd021127bef5fa12e1720ffed0c6cbb8310c8d9bea7266337ff06de/markupsafe-3.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737", size = 24408, upload-time = "2025-09-27T18:37:09.572Z" },
620
+ { url = "https://files.pythonhosted.org/packages/41/3c/a36c2450754618e62008bf7435ccb0f88053e07592e6028a34776213d877/markupsafe-3.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97", size = 23005, upload-time = "2025-09-27T18:37:10.58Z" },
621
+ { url = "https://files.pythonhosted.org/packages/bc/20/b7fdf89a8456b099837cd1dc21974632a02a999ec9bf7ca3e490aacd98e7/markupsafe-3.0.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d", size = 22048, upload-time = "2025-09-27T18:37:11.547Z" },
622
+ { url = "https://files.pythonhosted.org/packages/9a/a7/591f592afdc734f47db08a75793a55d7fbcc6902a723ae4cfbab61010cc5/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda", size = 23821, upload-time = "2025-09-27T18:37:12.48Z" },
623
+ { url = "https://files.pythonhosted.org/packages/7d/33/45b24e4f44195b26521bc6f1a82197118f74df348556594bd2262bda1038/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf", size = 21606, upload-time = "2025-09-27T18:37:13.485Z" },
624
+ { url = "https://files.pythonhosted.org/packages/ff/0e/53dfaca23a69fbfbbf17a4b64072090e70717344c52eaaaa9c5ddff1e5f0/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe", size = 23043, upload-time = "2025-09-27T18:37:14.408Z" },
625
+ { url = "https://files.pythonhosted.org/packages/46/11/f333a06fc16236d5238bfe74daccbca41459dcd8d1fa952e8fbd5dccfb70/markupsafe-3.0.3-cp314-cp314-win32.whl", hash = "sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9", size = 14747, upload-time = "2025-09-27T18:37:15.36Z" },
626
+ { url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581", size = 15341, upload-time = "2025-09-27T18:37:16.496Z" },
627
+ { url = "https://files.pythonhosted.org/packages/6f/18/acf23e91bd94fd7b3031558b1f013adfa21a8e407a3fdb32745538730382/markupsafe-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4", size = 14073, upload-time = "2025-09-27T18:37:17.476Z" },
628
+ { url = "https://files.pythonhosted.org/packages/3c/f0/57689aa4076e1b43b15fdfa646b04653969d50cf30c32a102762be2485da/markupsafe-3.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab", size = 11661, upload-time = "2025-09-27T18:37:18.453Z" },
629
+ { url = "https://files.pythonhosted.org/packages/89/c3/2e67a7ca217c6912985ec766c6393b636fb0c2344443ff9d91404dc4c79f/markupsafe-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175", size = 12069, upload-time = "2025-09-27T18:37:19.332Z" },
630
+ { url = "https://files.pythonhosted.org/packages/f0/00/be561dce4e6ca66b15276e184ce4b8aec61fe83662cce2f7d72bd3249d28/markupsafe-3.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634", size = 25670, upload-time = "2025-09-27T18:37:20.245Z" },
631
+ { url = "https://files.pythonhosted.org/packages/50/09/c419f6f5a92e5fadde27efd190eca90f05e1261b10dbd8cbcb39cd8ea1dc/markupsafe-3.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50", size = 23598, upload-time = "2025-09-27T18:37:21.177Z" },
632
+ { url = "https://files.pythonhosted.org/packages/22/44/a0681611106e0b2921b3033fc19bc53323e0b50bc70cffdd19f7d679bb66/markupsafe-3.0.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e", size = 23261, upload-time = "2025-09-27T18:37:22.167Z" },
633
+ { url = "https://files.pythonhosted.org/packages/5f/57/1b0b3f100259dc9fffe780cfb60d4be71375510e435efec3d116b6436d43/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5", size = 24835, upload-time = "2025-09-27T18:37:23.296Z" },
634
+ { url = "https://files.pythonhosted.org/packages/26/6a/4bf6d0c97c4920f1597cc14dd720705eca0bf7c787aebc6bb4d1bead5388/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523", size = 22733, upload-time = "2025-09-27T18:37:24.237Z" },
635
+ { url = "https://files.pythonhosted.org/packages/14/c7/ca723101509b518797fedc2fdf79ba57f886b4aca8a7d31857ba3ee8281f/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc", size = 23672, upload-time = "2025-09-27T18:37:25.271Z" },
636
+ { url = "https://files.pythonhosted.org/packages/fb/df/5bd7a48c256faecd1d36edc13133e51397e41b73bb77e1a69deab746ebac/markupsafe-3.0.3-cp314-cp314t-win32.whl", hash = "sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d", size = 14819, upload-time = "2025-09-27T18:37:26.285Z" },
637
+ { url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9", size = 15426, upload-time = "2025-09-27T18:37:27.316Z" },
638
+ { url = "https://files.pythonhosted.org/packages/70/bc/6f1c2f612465f5fa89b95bead1f44dcb607670fd42891d8fdcd5d039f4f4/markupsafe-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa", size = 14146, upload-time = "2025-09-27T18:37:28.327Z" },
639
+ ]
640
+
522
641
  [[package]]
523
642
  name = "mdurl"
524
643
  version = "0.1.2"
@@ -528,6 +647,84 @@ wheels = [
528
647
  { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" },
529
648
  ]
530
649
 
650
+ [[package]]
651
+ name = "mergedeep"
652
+ version = "1.3.4"
653
+ source = { registry = "https://pypi.org/simple" }
654
+ sdist = { url = "https://files.pythonhosted.org/packages/3a/41/580bb4006e3ed0361b8151a01d324fb03f420815446c7def45d02f74c270/mergedeep-1.3.4.tar.gz", hash = "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8", size = 4661, upload-time = "2021-02-05T18:55:30.623Z" }
655
+ wheels = [
656
+ { url = "https://files.pythonhosted.org/packages/2c/19/04f9b178c2d8a15b076c8b5140708fa6ffc5601fb6f1e975537072df5b2a/mergedeep-1.3.4-py3-none-any.whl", hash = "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307", size = 6354, upload-time = "2021-02-05T18:55:29.583Z" },
657
+ ]
658
+
659
+ [[package]]
660
+ name = "mkdocs"
661
+ version = "1.6.1"
662
+ source = { registry = "https://pypi.org/simple" }
663
+ dependencies = [
664
+ { name = "click" },
665
+ { name = "colorama", marker = "sys_platform == 'win32'" },
666
+ { name = "ghp-import" },
667
+ { name = "jinja2" },
668
+ { name = "markdown" },
669
+ { name = "markupsafe" },
670
+ { name = "mergedeep" },
671
+ { name = "mkdocs-get-deps" },
672
+ { name = "packaging" },
673
+ { name = "pathspec" },
674
+ { name = "pyyaml" },
675
+ { name = "pyyaml-env-tag" },
676
+ { name = "watchdog" },
677
+ ]
678
+ sdist = { url = "https://files.pythonhosted.org/packages/bc/c6/bbd4f061bd16b378247f12953ffcb04786a618ce5e904b8c5a01a0309061/mkdocs-1.6.1.tar.gz", hash = "sha256:7b432f01d928c084353ab39c57282f29f92136665bdd6abf7c1ec8d822ef86f2", size = 3889159, upload-time = "2024-08-30T12:24:06.899Z" }
679
+ wheels = [
680
+ { url = "https://files.pythonhosted.org/packages/22/5b/dbc6a8cddc9cfa9c4971d59fb12bb8d42e161b7e7f8cc89e49137c5b279c/mkdocs-1.6.1-py3-none-any.whl", hash = "sha256:db91759624d1647f3f34aa0c3f327dd2601beae39a366d6e064c03468d35c20e", size = 3864451, upload-time = "2024-08-30T12:24:05.054Z" },
681
+ ]
682
+
683
+ [[package]]
684
+ name = "mkdocs-get-deps"
685
+ version = "0.2.0"
686
+ source = { registry = "https://pypi.org/simple" }
687
+ dependencies = [
688
+ { name = "mergedeep" },
689
+ { name = "platformdirs" },
690
+ { name = "pyyaml" },
691
+ ]
692
+ sdist = { url = "https://files.pythonhosted.org/packages/98/f5/ed29cd50067784976f25ed0ed6fcd3c2ce9eb90650aa3b2796ddf7b6870b/mkdocs_get_deps-0.2.0.tar.gz", hash = "sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c", size = 10239, upload-time = "2023-11-20T17:51:09.981Z" }
693
+ wheels = [
694
+ { url = "https://files.pythonhosted.org/packages/9f/d4/029f984e8d3f3b6b726bd33cafc473b75e9e44c0f7e80a5b29abc466bdea/mkdocs_get_deps-0.2.0-py3-none-any.whl", hash = "sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134", size = 9521, upload-time = "2023-11-20T17:51:08.587Z" },
695
+ ]
696
+
697
+ [[package]]
698
+ name = "mkdocs-material"
699
+ version = "9.7.3"
700
+ source = { registry = "https://pypi.org/simple" }
701
+ dependencies = [
702
+ { name = "babel" },
703
+ { name = "backrefs" },
704
+ { name = "colorama" },
705
+ { name = "jinja2" },
706
+ { name = "markdown" },
707
+ { name = "mkdocs" },
708
+ { name = "mkdocs-material-extensions" },
709
+ { name = "paginate" },
710
+ { name = "pygments" },
711
+ { name = "pymdown-extensions" },
712
+ { name = "requests" },
713
+ ]
714
+ sdist = { url = "https://files.pythonhosted.org/packages/8a/b4/f900fcb8e6f510241e334ca401eddcb61ed880fb6572f7f32e4228472ca1/mkdocs_material-9.7.3.tar.gz", hash = "sha256:e5f0a18319699da7e78c35e4a8df7e93537a888660f61a86bd773a7134798f22", size = 4097748, upload-time = "2026-02-24T12:06:22.646Z" }
715
+ wheels = [
716
+ { url = "https://files.pythonhosted.org/packages/b9/1b/16ad0193079bb8a15aa1d2620813a9cd15b18de150a4ea1b2c607fb4c74d/mkdocs_material-9.7.3-py3-none-any.whl", hash = "sha256:37ebf7b4788c992203faf2e71900be3c197c70a4be9b0d72aed537b08a91dd9d", size = 9305078, upload-time = "2026-02-24T12:06:19.155Z" },
717
+ ]
718
+
719
+ [[package]]
720
+ name = "mkdocs-material-extensions"
721
+ version = "1.3.1"
722
+ source = { registry = "https://pypi.org/simple" }
723
+ sdist = { url = "https://files.pythonhosted.org/packages/79/9b/9b4c96d6593b2a541e1cb8b34899a6d021d208bb357042823d4d2cabdbe7/mkdocs_material_extensions-1.3.1.tar.gz", hash = "sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443", size = 11847, upload-time = "2023-11-22T19:09:45.208Z" }
724
+ wheels = [
725
+ { url = "https://files.pythonhosted.org/packages/5b/54/662a4743aa81d9582ee9339d4ffa3c8fd40a4965e033d77b9da9774d3960/mkdocs_material_extensions-1.3.1-py3-none-any.whl", hash = "sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31", size = 8728, upload-time = "2023-11-22T19:09:43.465Z" },
726
+ ]
727
+
531
728
  [[package]]
532
729
  name = "more-itertools"
533
730
  version = "10.8.0"
@@ -631,6 +828,15 @@ wheels = [
631
828
  { url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366, upload-time = "2026-01-21T20:50:37.788Z" },
632
829
  ]
633
830
 
831
+ [[package]]
832
+ name = "paginate"
833
+ version = "0.5.7"
834
+ source = { registry = "https://pypi.org/simple" }
835
+ sdist = { url = "https://files.pythonhosted.org/packages/ec/46/68dde5b6bc00c1296ec6466ab27dddede6aec9af1b99090e1107091b3b84/paginate-0.5.7.tar.gz", hash = "sha256:22bd083ab41e1a8b4f3690544afb2c60c25e5c9a63a30fa2f483f6c60c8e5945", size = 19252, upload-time = "2024-08-25T14:17:24.139Z" }
836
+ wheels = [
837
+ { url = "https://files.pythonhosted.org/packages/90/96/04b8e52da071d28f5e21a805b19cb9390aa17a47462ac87f5e2696b9566d/paginate-0.5.7-py2.py3-none-any.whl", hash = "sha256:b885e2af73abcf01d9559fd5216b57ef722f8c42affbb63942377668e35c7591", size = 13746, upload-time = "2024-08-25T14:17:22.55Z" },
838
+ ]
839
+
634
840
  [[package]]
635
841
  name = "pathspec"
636
842
  version = "1.0.4"
@@ -778,6 +984,19 @@ wheels = [
778
984
  { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" },
779
985
  ]
780
986
 
987
+ [[package]]
988
+ name = "pymdown-extensions"
989
+ version = "10.21"
990
+ source = { registry = "https://pypi.org/simple" }
991
+ dependencies = [
992
+ { name = "markdown" },
993
+ { name = "pyyaml" },
994
+ ]
995
+ sdist = { url = "https://files.pythonhosted.org/packages/ba/63/06673d1eb6d8f83c0ea1f677d770e12565fb516928b4109c9e2055656a9e/pymdown_extensions-10.21.tar.gz", hash = "sha256:39f4a020f40773f6b2ff31d2cd2546c2c04d0a6498c31d9c688d2be07e1767d5", size = 853363, upload-time = "2026-02-15T20:44:06.748Z" }
996
+ wheels = [
997
+ { url = "https://files.pythonhosted.org/packages/6f/2c/5b079febdc65e1c3fb2729bf958d18b45be7113828528e8a0b5850dd819a/pymdown_extensions-10.21-py3-none-any.whl", hash = "sha256:91b879f9f864d49794c2d9534372b10150e6141096c3908a455e45ca72ad9d3f", size = 268877, upload-time = "2026-02-15T20:44:05.464Z" },
998
+ ]
999
+
781
1000
  [[package]]
782
1001
  name = "pyproject-hooks"
783
1002
  version = "1.2.0"
@@ -842,6 +1061,18 @@ wheels = [
842
1061
  { url = "https://files.pythonhosted.org/packages/5a/cc/06253936f4a7fa2e0f48dfe6d851d9c56df896a9ab09ac019d70b760619c/pytest_mock-3.15.1-py3-none-any.whl", hash = "sha256:0a25e2eb88fe5168d535041d09a4529a188176ae608a6d249ee65abc0949630d", size = 10095, upload-time = "2025-09-16T16:37:25.734Z" },
843
1062
  ]
844
1063
 
1064
+ [[package]]
1065
+ name = "python-dateutil"
1066
+ version = "2.9.0.post0"
1067
+ source = { registry = "https://pypi.org/simple" }
1068
+ dependencies = [
1069
+ { name = "six" },
1070
+ ]
1071
+ sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" }
1072
+ wheels = [
1073
+ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" },
1074
+ ]
1075
+
845
1076
  [[package]]
846
1077
  name = "python-dotenv"
847
1078
  version = "1.2.1"
@@ -853,7 +1084,7 @@ wheels = [
853
1084
 
854
1085
  [[package]]
855
1086
  name = "python-kanka"
856
- version = "2.6.0"
1087
+ version = "2.6.1"
857
1088
  source = { editable = "." }
858
1089
  dependencies = [
859
1090
  { name = "pydantic" },
@@ -878,6 +1109,10 @@ dev = [
878
1109
  { name = "twine" },
879
1110
  { name = "types-requests" },
880
1111
  ]
1112
+ docs = [
1113
+ { name = "mkdocs" },
1114
+ { name = "mkdocs-material" },
1115
+ ]
881
1116
 
882
1117
  [package.metadata]
883
1118
  requires-dist = [
@@ -903,6 +1138,10 @@ dev = [
903
1138
  { name = "twine", specifier = "==6.2.0" },
904
1139
  { name = "types-requests" },
905
1140
  ]
1141
+ docs = [
1142
+ { name = "mkdocs", specifier = ">=1.6" },
1143
+ { name = "mkdocs-material", specifier = ">=9.5" },
1144
+ ]
906
1145
 
907
1146
  [[package]]
908
1147
  name = "pytokens"
@@ -988,6 +1227,18 @@ wheels = [
988
1227
  { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" },
989
1228
  ]
990
1229
 
1230
+ [[package]]
1231
+ name = "pyyaml-env-tag"
1232
+ version = "1.1"
1233
+ source = { registry = "https://pypi.org/simple" }
1234
+ dependencies = [
1235
+ { name = "pyyaml" },
1236
+ ]
1237
+ sdist = { url = "https://files.pythonhosted.org/packages/eb/2e/79c822141bfd05a853236b504869ebc6b70159afc570e1d5a20641782eaa/pyyaml_env_tag-1.1.tar.gz", hash = "sha256:2eb38b75a2d21ee0475d6d97ec19c63287a7e140231e4214969d0eac923cd7ff", size = 5737, upload-time = "2025-05-13T15:24:01.64Z" }
1238
+ wheels = [
1239
+ { url = "https://files.pythonhosted.org/packages/04/11/432f32f8097b03e3cd5fe57e88efb685d964e2e5178a48ed61e841f7fdce/pyyaml_env_tag-1.1-py3-none-any.whl", hash = "sha256:17109e1a528561e32f026364712fee1264bc2ea6715120891174ed1b980d2e04", size = 4722, upload-time = "2025-05-13T15:23:59.629Z" },
1240
+ ]
1241
+
991
1242
  [[package]]
992
1243
  name = "readme-renderer"
993
1244
  version = "44.0"
@@ -1089,6 +1340,15 @@ wheels = [
1089
1340
  { url = "https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl", hash = "sha256:0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137", size = 15554, upload-time = "2025-11-23T19:02:51.545Z" },
1090
1341
  ]
1091
1342
 
1343
+ [[package]]
1344
+ name = "six"
1345
+ version = "1.17.0"
1346
+ source = { registry = "https://pypi.org/simple" }
1347
+ sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" }
1348
+ wheels = [
1349
+ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" },
1350
+ ]
1351
+
1092
1352
  [[package]]
1093
1353
  name = "twine"
1094
1354
  version = "6.2.0"
@@ -1164,3 +1424,27 @@ sdist = { url = "https://files.pythonhosted.org/packages/d2/03/a94d404ca09a89a73
1164
1424
  wheels = [
1165
1425
  { url = "https://files.pythonhosted.org/packages/42/d7/394801755d4c8684b655d35c665aea7836ec68320304f62ab3c94395b442/virtualenv-20.38.0-py3-none-any.whl", hash = "sha256:d6e78e5889de3a4742df2d3d44e779366325a90cf356f15621fddace82431794", size = 5837778, upload-time = "2026-02-19T07:47:59.778Z" },
1166
1426
  ]
1427
+
1428
+ [[package]]
1429
+ name = "watchdog"
1430
+ version = "6.0.0"
1431
+ source = { registry = "https://pypi.org/simple" }
1432
+ sdist = { url = "https://files.pythonhosted.org/packages/db/7d/7f3d619e951c88ed75c6037b246ddcf2d322812ee8ea189be89511721d54/watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282", size = 131220, upload-time = "2024-11-01T14:07:13.037Z" }
1433
+ wheels = [
1434
+ { url = "https://files.pythonhosted.org/packages/39/ea/3930d07dafc9e286ed356a679aa02d777c06e9bfd1164fa7c19c288a5483/watchdog-6.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948", size = 96471, upload-time = "2024-11-01T14:06:37.745Z" },
1435
+ { url = "https://files.pythonhosted.org/packages/12/87/48361531f70b1f87928b045df868a9fd4e253d9ae087fa4cf3f7113be363/watchdog-6.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860", size = 88449, upload-time = "2024-11-01T14:06:39.748Z" },
1436
+ { url = "https://files.pythonhosted.org/packages/5b/7e/8f322f5e600812e6f9a31b75d242631068ca8f4ef0582dd3ae6e72daecc8/watchdog-6.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0", size = 89054, upload-time = "2024-11-01T14:06:41.009Z" },
1437
+ { url = "https://files.pythonhosted.org/packages/68/98/b0345cabdce2041a01293ba483333582891a3bd5769b08eceb0d406056ef/watchdog-6.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c", size = 96480, upload-time = "2024-11-01T14:06:42.952Z" },
1438
+ { url = "https://files.pythonhosted.org/packages/85/83/cdf13902c626b28eedef7ec4f10745c52aad8a8fe7eb04ed7b1f111ca20e/watchdog-6.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134", size = 88451, upload-time = "2024-11-01T14:06:45.084Z" },
1439
+ { url = "https://files.pythonhosted.org/packages/fe/c4/225c87bae08c8b9ec99030cd48ae9c4eca050a59bf5c2255853e18c87b50/watchdog-6.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b", size = 89057, upload-time = "2024-11-01T14:06:47.324Z" },
1440
+ { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079, upload-time = "2024-11-01T14:06:59.472Z" },
1441
+ { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078, upload-time = "2024-11-01T14:07:01.431Z" },
1442
+ { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076, upload-time = "2024-11-01T14:07:02.568Z" },
1443
+ { url = "https://files.pythonhosted.org/packages/ab/cc/da8422b300e13cb187d2203f20b9253e91058aaf7db65b74142013478e66/watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f", size = 79077, upload-time = "2024-11-01T14:07:03.893Z" },
1444
+ { url = "https://files.pythonhosted.org/packages/2c/3b/b8964e04ae1a025c44ba8e4291f86e97fac443bca31de8bd98d3263d2fcf/watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26", size = 79078, upload-time = "2024-11-01T14:07:05.189Z" },
1445
+ { url = "https://files.pythonhosted.org/packages/62/ae/a696eb424bedff7407801c257d4b1afda455fe40821a2be430e173660e81/watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c", size = 79077, upload-time = "2024-11-01T14:07:06.376Z" },
1446
+ { url = "https://files.pythonhosted.org/packages/b5/e8/dbf020b4d98251a9860752a094d09a65e1b436ad181faf929983f697048f/watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2", size = 79078, upload-time = "2024-11-01T14:07:07.547Z" },
1447
+ { url = "https://files.pythonhosted.org/packages/07/f6/d0e5b343768e8bcb4cda79f0f2f55051bf26177ecd5651f84c07567461cf/watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a", size = 79065, upload-time = "2024-11-01T14:07:09.525Z" },
1448
+ { url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680", size = 79070, upload-time = "2024-11-01T14:07:10.686Z" },
1449
+ { url = "https://files.pythonhosted.org/packages/33/e8/e40370e6d74ddba47f002a32919d91310d6074130fe4e17dabcafc15cbf1/watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f", size = 79067, upload-time = "2024-11-01T14:07:11.845Z" },
1450
+ ]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes