Skip to content

fix: constrain documentation dependencies to fix project pipeline - #122

Merged
bardiharborow merged 2 commits into
mainfrom
fix/constrain-documentation-dependencies
Jun 24, 2026
Merged

bardiharborow merged 2 commits into
mainfrom
fix/constrain-documentation-dependencies

Conversation

@bardiharborow

Copy link
Copy Markdown
Contributor

This PR fixes two issues that were preventing the generated project's pipeline from passing:

  • mkdocs-material 9.6.0 deprecated the tags plugin's tags_file option, which the template's mkdocs.yml still sets. Under mkdocs build --strict the resulting configuration warning aborts the docs build, so no release in the previous >=9.7.5,<10 range can build the docs. This PR pins mkdocs-material to >=9.5.50,<9.6, the latest line that still accepts tags_file without warning.
  • mkdocs.yml configures the Python handler with setup_commands, which boots Django so docstrings can be collected from the importable source tree. That option only exists in the legacy, pytkdocs-based handler. The modern griffe handler that mkdocstrings pulls in by default rejects it. The bare mkdocstrings dependency also shipped no handler at all, so the build failed even earlier. This PR depends on mkdocstrings[python-legacy], installing the legacy handler that understands setup_commands.

I chose to pin the dependancies back rather than fix forward because we are considered replacing this system in #104, and because this is a pre-factor for #120.

This PR has been verified locally.

mkdocs-material 9.6.0 deprecated the `tags` plugin's `tags_file` option, which the template's mkdocs.yml still sets. Under `mkdocs build --strict` the resulting configuration warning aborts the docs build, so no release in the previous `>=9.7.5,<10` range can build the docs. This commit pins mkdocs-material to `>=9.5.50,<9.6`, the latest line that still accepts `tags_file` without warning.
`mkdocs.yml` configures the Python handler with `setup_commands`, which boots Django so docstrings can be collected from the importable source tree. That option only exists in the legacy, pytkdocs-based handler. The modern griffe handler that `mkdocstrings` pulls in by default rejects it. The bare `mkdocstrings` dependency also shipped no handler at all, so the build failed even earlier. This commit depends on `mkdocstrings[python-legacy]`, installing the legacy handler that understands `setup_commands`.
@bardiharborow bardiharborow self-assigned this Jun 24, 2026
@bardiharborow bardiharborow added bug Something isn't working documentation Improvements or additions to documentation dependencies Pull requests that update a dependency file labels Jun 24, 2026
@bardiharborow
bardiharborow marked this pull request as ready for review June 24, 2026 12:43

@a-musing-moose a-musing-moose left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Bardi - pinning if the right option here as the intent is to migrate to Zensical in the future.

@bardiharborow
bardiharborow merged commit e9c5feb into main Jun 24, 2026
4 checks passed
@bardiharborow
bardiharborow deleted the fix/constrain-documentation-dependencies branch June 24, 2026 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants