vim: add the ncurses-backed editor leaf formula#36
Conversation
a6e58d2 to
23f0533
Compare
3abbe48 to
7712f7e
Compare
23f0533 to
93567f2
Compare
b3d49f4 to
9c06150
Compare
9cc9749 to
1552539
Compare
|
Independent devil review at exact head The correction loads shared support from the installed tap and replaces the pre-#70 hand-written shell guard with Fresh evidence through No exact-head source build, runtime suite, bottle, or pour is claimed. #882 and the documented platform/publication gates remain binding. |
Load Kandelo support from the installed tap and validate the exact final instrumented Vim bytes with the merged fail-closed ABI, Asyncify, fork-continuation, and staging-path checks.
|
Independent corrected-head review: ACCEPT for The review verified current tap-main ancestry, generic-before-exact prefix-map ordering, separate fail-closed validation of |
1cb47a8 to
76b8c49
Compare
|
Exact-head devil's-advocate review: ACCEPT
The audit found and corrected two fail-open paths in the prior ABI 18 source Focused evidence run for this head:
The dedicated timer fixture in Automattic/kandelo#907 is present at ABI 39 This is not a merge or bottle approval. No current-head ABI 39 source build, |
Purpose
Add Vim as a first-class Kandelo Homebrew leaf formula. It builds and installs
the real editor, its complete runtime tree, canonical
vientry point,manpages, and the separately linked
xxdexecutable.Formula contract
terminal, terminfo, POSIX search timeouts, and functional
+libcallautomattic/kandelo-homebrew/ncursesdependency throughits exact installed keg while compiling stable guest
optidentities-ldlglue instead of musl's weak dlfcnstubs; a real Wasm side module is loaded and called by the Formula test
HAVE_TIMER_CREATE,HAVE_DLOPEN, andHAVE_DLSYM; the test executes Vim's SIGEV_THREAD timer creation pathxxd/bin/shfor shell escapesfork: :requiredxxdwithfork: :forbiddenand guest Cellar identities
Exact-head audit
Exact tap head:
cc7a063420cb3101b12ed6aced7533546f945f29Exact tree:
88b2cd938afee927a02da0791256a6706c35c635Tap base:
c5705667a90b05754d2244a362f3f7fc95d2f9c3Formula SHA-256:
d804c229ed725225172e7d2870f88d2598d7743212ee28d4feff07bba2d95aa8v9.2.0750archive re-fetched at the declared7d460830e12082b541c34b0b96942ebface1ad9fa0b77245930717c0ccf8b664SHA-256; the archive contains Vim's declared license
byte reproducibility, but its ABI 18 Vim linked weak
stub_dlopenandstub_dlsym; it is retained only as diagnostic/source evidence, not as avalid current artifact or bottle
scripts/dev-shell.sh; itsdylink.0metadata, bounded imports, and intended export were inspectedgit diff --checkpassedNo current-head source build, Node run, Chromium run, bottle build, or stock
Homebrew pour is claimed. Those gates intentionally wait for the ABI 39
platform and exact ncurses bottle below.
Gates
Do not merge or publish a bottle yet.
Source/platform gates:
0f464442d, including ABI 39 timer commitbcb02e938and the dedicated Vim SIGEV_THREAD regression fixturefork-instrumented bytes
Publication gates:
After those gates land, rebuild from source at ABI 39, run the exact Formula
test under Node, build and publish the bottle from the dependency bottle, then
pour it through stock Homebrew and validate the real Vim workflow in both Node
and Chromium. This tap PR makes no ABI or platform behavior change itself.