A point release focused on a pytest-plugin cleanup fix, a new Sphinx extension for documenting pytest fixtures, and a docs-stack migration to gp-sphinx.
Highlights
Fix: pytest_plugin leaks tmux socket files on teardown (#661, fixes #660)
The server and TestServer fixtures now unlink(2) the tmux socket from /tmp/tmux-<uid>/ during teardown, in addition to calling server.kill(). tmux does not reliably remove its own socket on non-graceful exit, so /tmp/tmux-<uid>/ would accumulate stale libtmux_test* entries across runs — 10k+ observed on long-lived dev machines.
A new internal _reap_test_server helper centralizes the kill + unlink flow and suppresses cleanup-time errors, so a finalizer failure can no longer mask the real test failure.
If you use libtmux's pytest plugin in CI or locally, upgrade to stop the leak.
New: Sphinx extension for pytest fixture documentation (#656)
A new Sphinx extension (docs/_ext/sphinx_pytest_fixtures.py) renders pytest fixtures as first-class API documentation with scope/kind/factory badges, cross-referenced dependencies, and auto-generated usage snippets.
.. autofixture::— autodoc-style documenter for individual fixtures.. autofixtures::— bulk discovery and rendering from a module.. autofixture-index::— auto-generated index table with linked return types (via intersphinx) and parsed RST descriptions:fixture:cross-reference role with short-name resolution- Scope, kind, and autouse badges with touch-accessible tooltips
- Responsive layout (mobile metadata stacking, badge font scaling, scroll wrappers)
- WCAG AA contrast compliance in both light and dark mode
- 109 tests (unit + integration)
Also fixes an inaccurate session_params fixture docstring surfaced by the new extension.
Documentation
- Docs restructured to the Library Skeleton pattern (#652)
- Self-hosted fonts, eliminated layout shift, added SPA-style navigation (#643)
- Standardized shell code-block formatting across all docs (#644)
- Migrated the docs stack to gp-sphinx workspace packages (#657)
- Visual improvements to API docs via gp-sphinx (#658)
- Bumped gp-sphinx to
v0.0.1a8(#659); subsequent bump tov0.0.1a9on master
Development
- Added
types-docutilsto dev dependencies for mypy type checking (#656)
What's Changed
- docs: self-host fonts, eliminate layout shift, add SPA navigation by @tony in #643
- docs(style[shell]): Standardize shell code blocks by @tony in #644
- docs(redesign): restructure documentation to Library Skeleton pattern by @tony in #652
- feat(_ext[sphinx_pytest_fixtures]): Sphinx extension for pytest fixture documentation by @tony in #656
- docs: Migrate to gp-sphinx workspace packages by @tony in #657
- docs(feat[api-style]): Visual improvements to API docs via gp-sphinx by @tony in #658
- chore(docs): adopt gp-sphinx v0.0.1a8 by @tony in #659
- fix(pytest_plugin): unlink socket file on fixture teardown by @tony in #661
Full Changelog: v0.55.0...v0.55.1