Repository navigation
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## docs-site #756 +/- ##
==========================================
Coverage 52.37% 52.37%
==========================================
Files 26 26
Lines 3729 3729
Branches 747 747
==========================================
Hits 1953 1953
Misses 1472 1472
Partials 304 304 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
tony
marked this pull request as ready for review
September 6, 2026 11:36
tony
force-pushed
the
docs-site-deploy
branch
from
September 6, 2026 14:50
74c2be2 to
16ec75d
Compare
tony
force-pushed
the
docs-site-deploy
branch
from
September 8, 2026 23:07
16ec75d to
b911e66
Compare
tony
force-pushed
the
docs-site-deploy
branch
from
September 8, 2026 23:21
b911e66 to
18600e0
Compare
tony
force-pushed
the
docs-site-deploy
branch
from
September 8, 2026 23:30
18600e0 to
21d7a71
Compare
why: 0.12.10 repairs `exclude-newer-package`, which this repository leans on: its pyproject.toml exempts 17 first-party git-pull packages from the 3-day cooldown so a sibling release does not block every contributor's `uv sync` while it ages in. Before 0.12.10, `--locked` failed when those per-package cutoffs differed only for packages outside the resolution, and uv wrote them to uv.lock in non-deterministic order, so a re-resolve could churn the lockfile header by itself. 0.12.10 fixes both, and lets `uv lock --check` reuse a lockfile when a package-specific cutoff is disabled -- which is the exact shape of every `= false` entry in this repository. 0.12.11 is a supply-chain fix on the same path: source archives are verified against the hashes recorded in uv.lock before their metadata is read or their build backend runs, so a tampered sdist is rejected before any of its code executes. It also trims surrounding whitespace from `.python-version` entries and speeds up wheel installs by dropping per-file temporary directories. No lockfile revision or resolver-algorithm change lands in the span, so this moves the pinned binary only and leaves uv.lock alone. uv 0.12.12 and 0.12.13 exist but stay excluded by the 3-day supply-chain cooldown this estate resolves under (exclude-newer = "3 days"): published 2026-09-09 16:45Z and 2026-09-10 19:27Z, they lapse 2026-09-12 16:45Z and 2026-09-13 19:27Z. what: - .tool-versions: uv 0.12.9 -> 0.12.11 See also: - https://github.com/astral-sh/uv/releases/tag/0.12.10 - https://github.com/astral-sh/uv/releases/tag/0.12.11
why: unchanged from the last bump -- libtmux still has no `package.json` and no CI workflow invokes Node, so `.nvmrc` only pins the version a contributor's `nvm use` picks up to run prettier through `just format-markdown`. 24.21.0 is a routine 24.x LTS minor rather than a security release: refreshed root certificates (NSS 3.126), OpenSSL 3.5.8, undici 7.29.1 and corepack 0.36.0, plus semver-minor additions (non-throwing `MIMEType.parse`, faster `net.BlockList`, reworked histograms). None of that reaches a prettier run over markdown, so this is contributor-toolchain hygiene. Taking it now rather than the newest release: Node 26.8.2 exists but is 26.x, and this pin deliberately tracks the 24 LTS line; 24.21.0 published 2026-09-08 21:51Z, ahead of this sweep's 2026-09-09 09:57Z cooldown cutoff. what: bump only `.nvmrc`. No package.json or workflow references Node, so nothing else changes. See also: https://nodejs.org/en/blog/release/v24.21.0
why: this repo leaves `[tool.ruff.lint] select` unset, so ruff's default rule set applies underneath `extend-select`; `ruff check --show-settings` confirms ASYNC230, B031, DTZ901, PTH208, RUF102 enabled here. None of 0.16.6's stable changes are exercised by this tree: ASYNC230 (no async functions in this tree), B031's `match`-subject panic fix (no `match` statements here), PTH208's `os.listdir` fix (unused here), DTZ901 rejecting `tzinfo=None` for `datetime` bounds, RUF102 dropping its `lint.external` hint. The remainder of the release -- the PT020 autofix, the TID254/TID255 fix loop, I001 pragma-comment handling and the pytest-fixture-autouse recategorisation -- is preview-gated, and `linter.preview` is disabled here. Verified rather than assumed: `ruff check` and `ruff format --check` produce byte-identical output under 0.16.5 and 0.16.6 across this tree, so the bump lands no new diagnostics and no reformatting. ruff 0.16.7 released 2026-09-10 18:03Z, after this sweep's 2026-09-09 10:20Z cooldown cutoff, so it is excluded from resolution; 0.16.6 is the newest visible release. what: bump only the ruff lock entry. The ruff floor in pyproject.toml is untouched; raising it is /ruff:bump's job. See also: https://github.com/astral-sh/ruff/releases/tag/0.16.6
why: Include the native font preload correction and current publication checks in the shared-header rollout. what: - Keep construction and publication on the same final producer
what: - Pin documentation builds and publication to the checked shared-header release from libtmux/docs. why: - Keep this port’s public documentation navigation consistent with the shared site and the other supported languages.
what: - Pin the documentation builder and publisher to the reviewed compatibility fix for older native reference assets. why: - Publish stable documentation from its tagged source without retaining a reference to the tabs script that its theme deliberately removes.
what: Pin the libtmux.org documentation builder and publisher to the reviewed native shell compatibility fix. why: The stable v0.62.0 reference needs its absent optional tabs script reference normalized before publication can pass asset validation.
why: Port-owned pages need the same navigation and layout fixes as the root site, including working terminal artwork credits. what: - Pin documentation building and publishing to one reviewed revision
what: Pin documentation building and publication to the same reviewed libtmux/docs revision for this port. why: Deliver the shared navigation, anchor, scrollbar and terminal-credit fixes consistently across the port-owned documentation.
why: Python reference drawers need readable, consistent text and spacing below the viewport edge. what: - Pin the docs build and publisher to the reviewed Contents fix
what: - Use the reviewed native Contents drawer layout in Python docs why: - The mobile overlay kept a desktop header gap and tiny code labels - Consistent spacing and text make long Contents lists readable
why: Publish the reviewed Rust guides and correct the shared transport explanation in the affected port-owned trees. what: - Pin documentation building and publishing to one reviewed revision
what: Pin documentation building and publication to the same reviewed libtmux/docs revision for this port. why: Deliver the complete Rust query and transport workflows and the shared transport explanation repair to affected port-owned documentation.
why: Publish the reviewed Ruby MCP guides and preserve copied console commands throughout the port-owned documentation. what: - Pin documentation building and publishing to one reviewed revision
what: - Pin documentation building and publishing to the reviewed shared producer. why: - Publish the Ruby MCP client guides and preserve copied multiline console commands across the port-owned documentation.
why: Publish the reviewed Copy loading fix and port-specific prose throughout the documentation owned by this repository. what: - Pin documentation building and publishing to one reviewed revision
what: Pin the Python documentation build and publisher to the reviewed shared documentation revision. why: Publish port-specific prose and enable code Copy controls only after their handlers are ready in Python documentation.
why: Keep breadcrumb labels intact and publish the reviewed prefetch and Japanese fallback-link corrections. what: - Pin documentation building and publishing to one reviewed revision
what: Pin the Python documentation build and publisher to the reviewed shared documentation revision. why: Keep breadcrumb labels intact and publish the shared prefetch and fallback-link corrections in Python documentation.
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #755. Keep this PR open while its reviewed branch revision is used to refresh libtmux.org.
Python's unified docs now build through the shared source-revision workflow, including the native Sphinx reference under
api/. Pull requests build without publishing. A maintainer can dispatch an exact source ref, version and publication policy;publishdefaults to false. Workflow changes are included in the documentation path filter.libtmux.git-pull.com retains its standalone Sphinx build and publishes on default-branch pushes. Its sync follows symlinks directly from the build job. Each destination keeps its existing secrets and its own publication queue.
Both shared workflow references use the same reviewed docs commit. Python dependencies are installed from the selected source lock; the separate tmuxp and MCP source checkouts use the revisions recorded in the shared API model. Grouped weekly GitHub Actions updates are configured; a bot-generated docs-pin update has not been demonstrated.
Validation
Six documentation-configuration tests pass, covering standalone and nested Sphinx behavior.
The selected Python revision has been built locally with the shared shell and native Sphinx reference; the inventory, API index and current native branding were checked.
The caller passes actionlint with its unsupported
queue: maxdiagnostic suppressed. The shared publishers already use that GitHub concurrency setting.Successful build-only dispatch from the unmerged branch. Live publication remains a separate explicit dispatch.
Explicit publication succeeded for reviewed source
f70faacd0bdc0a00211232e52ab768a98f7e6dd1; this PR remains unmerged.Live permission probe confirms that the Python role rejects a direct job outside the approved reusable workflow and denies writes to another language prefix. The negative verdict passed, the deliberate denial job is red, and the target prefix remains empty.
The live library, MCP, workspace, example, Sphinx API pages and inventory match the selected-source artifact. The example source links name the reviewed commit. All 39 linked branding assets match their source bytes and expected content types.
Removed the extra blank line rejected by Ruff in
src/libtmux/constants.py. Ruff 0.16.8 now formats all 135 files cleanly, and the targeted lint check passes. The published source revision remains the explicitly selectedf70faacd0bdc0a00211232e52ab768a98f7e6dd1.Publication provenance
Hosted publication proof passes at
843278f595d8a4495c18c9d9dbe8ab0b2bd50289: a clean Python build publishes, three controlled artifact violations fail before AWS, and an identical immutable rerun skips sync while retaining its original receipt. Ordinary hosted GETs return HTTP 200 and all 7,699 S3 objects match their recorded bytes. Dispatch to first receipt takes 434 seconds. The run is deliberately red because its three negative jobs fail. Durable evidence and completed cleanup preserve the checks after temporary artifacts expire. These measurements cover dispatch latency; release-event latency remains open.