Skip to content

ci(docs) Build Go examples up from tested excerpts - #85

Closed
tony wants to merge 1 commit into
masterfrom
docs-publisher-7887ab250
Closed

tony wants to merge 1 commit into
masterfrom
docs-publisher-7887ab250

Conversation

@tony

@tony tony commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Pin only the shared port builder and publisher to 7887ab25020bbeba3c9d32359e7a2c347ee69678 from 4e891632a66a144bd9dd7747168cf9218eb32710. All other workflow bytes, library contents, triggers, permissions and language/source/version inputs remain unchanged.

Go example pages now lead from the concept to the finished program in small steps. Each step quotes a range of lines of the tested Go source, names the tmux command behind the call and links the native shell example it parallels, and the complete program follows the steps. The tmux C source reference lays its declarations out in 60 columns, comments in non-Rust API examples survive, and a code span naming a tmux release or a $ variable is no longer counted as an unresolved API name. Swift callables are declared by their base name, Ruby and Swift type keywords are drawn as syntax, and the PowerShell reference follows its .NET dependency to LibTmux 0.0.0-alpha.22.

The exact required CI and root merge receipts of the shared checkpoint must be verified before this operator runs. This PR does not claim an owner build or publication pass. Root reviews this exact caller diff, actual repository-required checks and reviews before merge; optional native estate checks are not a new universal gate.

Execution route: controlled_real_pin_merge_push. Root separately schedules reviewed merges and exact source requests from the actual workflow state. If the current active workflow already publishes the intended source on merge, retain that actual event and do not issue a duplicate request. Future source/native/run identities will be bound to actual events.

what:
- Lay out the declarations of the tmux C source reference in 60 columns
  as clang-format does, with continuation lines aligned after the
  parenthesis, `*` against the name, and one enumerator per line in an
  enum that does not fit, and list a C function's leading self as a
  parameter
- Read the whole info string of a code fence in API doc comments, and
  hide rustdoc's leading `# ` lines only in Rust examples, so comments
  in shell, Python, Ruby and YAML examples stay visible
- Stop counting tmux release names such as 3.3a and `$` variable
  expressions as unresolved API name mentions

why: Go example pages opened on a whole program with no path from the
tmux commands to the code that runs them. The tmux C reference printed
prototypes far wider than the 60 columns every port reference wraps at.
Comments in shell, Python and Ruby examples were dropped as if they were
rustdoc setup lines, and a code span naming a tmux release or a `$`
variable was counted as an API name that did not resolve. Swift
reference signatures printed their parameter list twice, Ruby and Swift
type keywords showed as unresolved type names, and the publisher refused
the PowerShell port's .NET alpha.22 dependency against its alpha.20
navigation pin.

Shared source: libtmux/docs
From: 4e891632a66a144bd9dd7747168cf9218eb32710
To:   7887ab25020bbeba3c9d32359e7a2c347ee69678
@tony

tony commented Oct 21, 2026

Copy link
Copy Markdown
Contributor Author

Superseded. The publisher at libtmux/docs@7887ab250 (#173) fails the Go docs build (libtmux/libtmux-go#75), so no caller adopts it. libtmux/docs#175 fixes that, and a new pin PR will move this repository to its merge.

@tony tony closed this Oct 21, 2026
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.

1 participant