Skip to content

chore(docs): adopt gp-sphinx v0.0.1a8#54

Merged
tony merged 4 commits intomasterfrom
autodoc-improvements
Apr 12, 2026
Merged

chore(docs): adopt gp-sphinx v0.0.1a8#54
tony merged 4 commits intomasterfrom
autodoc-improvements

Conversation

@tony
Copy link
Copy Markdown
Member

@tony tony commented Apr 12, 2026

Summary

  • Bumps gp-sphinx workspace pins from 0.0.1a70.0.1a8
  • Refreshes uv.lock against the published workspace
  • Renames sphinx-argparse-neo==0.0.1a7sphinx-autodoc-argparse==0.0.1a8 and updates the extension path in docs/conf.py
  • Preserves two doc-fix commits (grid-item-card ref-links, manual "Usage" heading rename) carried forward from the previous autodoc-improvements branch
  • Adds a CHANGES bullet noting the bump

What's new in gp-sphinx 0.0.1a8

  • ArgparseDomain (:argparse:* roles, indices, xref resolution)
  • CSS namespace unification under gp-sphinx-* BEM
  • sphinx>=8.1 floor with typed env.domains.* accessors
  • Package renames: sphinx-autodoc-layoutsphinx-ux-autodoc-layout, sphinx-autodoc-badgessphinx-ux-badges
  • py.typed marker added to sphinx-autodoc-typehints-gp
  • # bump-version: skip-file sentinel in the bump script
  • See: https://pypi.org/project/gp-sphinx/0.0.1a8/

Test plan

  • uv sync --all-extras --group dev — clean
  • uv run ruff check . --fix --show-fixes — all passed
  • uv run ruff format . — no changes
  • uv run mypy — no issues
  • uv run pytest -q — 9 passed
  • just build-docs — build succeeded, 6 warnings

tony added 3 commits April 12, 2026 16:14
why: Adopt the v0.0.1a8 release of the shared docs platform —
  argparse domain, CSS namespace unification under gp-sphinx-*,
  sphinx>=8.1 floor, typed env.domains.* accessors, autodoc
  layout and badges package renames, py.typed marker for
  typehints-gp.
what:
- Bump gp-sphinx and sphinx-autodoc-api-style pins from
  0.0.1a7 to 0.0.1a8 across every dependency group
- Replace sphinx-argparse-neo==0.0.1a7 with
  sphinx-autodoc-argparse==0.0.1a8, and update the extension
  name in docs/conf.py from sphinx_argparse_neo.exemplar to
  sphinx_autodoc_argparse.exemplar
- Refresh uv.lock against the published workspace

See also: https://pypi.org/project/gp-sphinx/0.0.1a8/
why: The two grid-item-card blocks in the CLI Reference page used
URL-fragment 🔗 options (`#command`, `#supported-vcs`) with
:link-type: url.  MyST-parser treats `#` inside a directive's
options block as a YAML-style comment, so the fragment was
stripped and 🔗 was left with an empty value.  That produced
five cascading `sphinx-build -W` warnings: two
[myst.directive_comments], two [myst.directive_option] ("Invalid
option value for 'link': None"), and one [design.grid] ("All
children of a 'grid-row' should be 'grid-item'") because the
half-parsed card nodes weren't valid grid-items for sphinx-design
0.7's stricter row-children check.
what:
- Switch both grid-item-cards to :link-type: ref with bare label
  targets (🔗 cli-main, 🔗 cli-supported-vcs).  No `#`
  in the options block -> no MyST comment interpretation -> the
  cards parse cleanly as grid-items and the cascading
  design.grid warning goes away.
- Add a (cli-supported-vcs)= label before the `## Supported VCS`
  heading so the new ref target resolves.  cli-main already
  existed above `## Command`.
- Does not address the remaining "Duplicate ID: usage" critical
  from the manual `## Usage` heading colliding with the
  .. argparse:: directive's built-in Usage section — that lands
  in a separate commit for reviewability.
…llision

why: The CLI Reference page has both a manual `## Usage` MyST
heading (showing `g <cmd>` -> underlying VCS invocation
equivalences) and a `.. argparse::` directive block that emits
its own auto-generated "Usage" section (showing the synopsis
line).  Both produced the docutils anchor id `usage` on the same
page, tripping a `CRITICAL: Duplicate ID: "usage" [docutils]`
warning and failing `sphinx-build -W`.
what:
- Rename the manual section from `## Usage` to
  `## Usage examples`.  The new slug `usage-examples` no longer
  collides with argparse's `usage`, and the heading describes
  the actual content better (it's a collection of equivalence
  examples, not a synopsis).
- No content changes; only the heading text.
- With this + the prior ref-link commit, `uv run sphinx-build -W
  -b dirhtml docs docs/_build/html` now passes cleanly (was: 6
  warnings treated as errors).
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.89%. Comparing base (cb4dee9) to head (eafcc21).

Additional details and impacted files
@@           Coverage Diff           @@
##           master      #54   +/-   ##
=======================================
  Coverage   96.89%   96.89%           
=======================================
  Files           5        5           
  Lines         129      129           
=======================================
  Hits          125      125           
  Misses          4        4           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@tony tony marked this pull request as ready for review April 12, 2026 21:41
@tony tony merged commit 127bae9 into master Apr 12, 2026
7 checks passed
@tony tony deleted the autodoc-improvements branch April 12, 2026 21:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants