less: use the real terminal capability stack#24
Conversation
|
Independent devil's-advocate review completed at I found one release-blocking tap defect: the original Wasm embedded the source-build Post-fix evidence:
Formula completeness and dependency review found no remaining tap-owned defect: the direct dependency is ncurses, configure selects real Residual gates are unchanged: #8, main #842/#867/#873/#874, then the trusted ABI 18 bottle/sidecar/stock-pour path and interactive PTY validation from the poured bottle. Firefox/WebKit remain unrun. Do not merge before those gates. |
a6e58d2 to
23f0533
Compare
7b2fca8 to
2d5a0ac
Compare
23f0533 to
93567f2
Compare
53556fe to
15d5f6e
Compare
b7396cb to
c4ea26f
Compare
c4ea26f to
9e96741
Compare
|
Independent devil's-advocate source-only review at The review verified the official Less 668 source and licensing, sole direct ncurses dependency, upstream After libmagic advanced tap main, a final clean merge-tree check against |
Purpose
Build Less 668 as a normal ncurses consumer instead of linking the registry recipe's fake termcap archive. The formula installs the complete upstream command surface, uses the tap ncurses keg, and fork-instruments
lesssoLESSOPENand shell commands exercise Kandelo process semantics.Dependency topology
The ncurses dependency-root PR #8 is merged into
main. This PR targetsmainand keepsautomattic/kandelo-homebrew/ncursesas Less's explicit direct dependency.Formula contract
less,lesskey,lessecho, and their manpages.lessafter the final link.LESSOPENfork/exec filter, and absence of Cellar paths in installed Wasm.Source acceptance
The source formula may merge independently after a fresh source-only devil review. This PR contains no bottle block or Less sidecar, and merging it does not claim that a bottle is published or installable.
Existing runtime evidence
Pre-final ABI 18 source builds passed literal
brew test, a Node PTY paging probe, and Chromium version, paging,LESSOPEN, and helper probes. The testedlessexecutable exported all fivewpk_fork_*hooks, had no Asyncify marker, and used stableopt/lessandopt/ncursespaths.Those runs are historical functional evidence only. Any earlier local bottle is rejected for publication; final bottle bytes and sidecars must be rebuilt from the merged platform and final source head, then proved in a stock guest.
Current restack validation
The three Less semantic commits and installed-tap loader commit were replayed unchanged onto tap
mainataa99c67c632c4f5f0f6ac56850c2b325151e0b78. Before merge, the same exact head merged cleanly against current tapmainatc1d51833ab33537b9a14d4d12705e44e5464d0d1; the formula blob was unchanged and the README merge added only the Less catalog line.git range-diffreports all four commits unchanged from the already validatedc4ea26frestack.15d5f6e; the formula-tail SHA-256 isb311d728a3e06a98b81a166c749f4ade0c717d1c75bcbdf8606c23019c31c39c.brew styleinspected Less with no offenses.Tap.fetchreturnedLess; the installed and branch support files both had SHA-256f5f13ecbee24d8d87e50a6f457c5acd23c3fdee7af1cca1fb9f428bf9d021766.git diff --checkpassed and the worktree is clean.No source build or runtime suite was rerun for this history/import-only restack. Current head is
9e96741c4378a2e91f11dd9f208651c3d3ff4a89.Bottle gates
Bottle construction, publication, and installability claims remain gated on:
The pthread fork-continuation fix and ABI 18 transition from Automattic/kandelo#867 are merged baseline, not pending gates. No platform ABI changes are made here. Firefox, WebKit, and a final poured-bottle PTY run are not claimed.