mariadb: add the relational database service#53
Conversation
3354ae9 to
fa6f905
Compare
|
Independent devil review at exact refreshed head The original Formula is patch-identical after restacking on current tap main. The shared validator runs after conditional instrumentation and Fresh dev-shell evidence: Ruby syntax; Homebrew style; shared support 30/221; and exact branch diff check pass. No refreshed source build, runtime test, Chromium run, bottle, or pour is claimed. The old dependency gates #8/#37 are resolved. Remaining source merge gates are main #882 and the real browser fixture defect: |
|
Platform ownership gate opened as Automattic/kandelo#896 at exact head Evidence on that branch:
This validates the Kandelo platform fixture using resolver-managed registry artifacts. It is deliberately not a claim that the MariaDB formula or its dependencies were poured from Homebrew bottles. That exact bottle-backed proof remains gated on the publisher and dependency receipts. |
Restack the formula on tap main, load support through the installed tap, and route final stripped executables through the shared ABI, Asyncify, fork-policy, and path validator while retaining MariaDB-specific import checks.
fa6f905 to
37ae32c
Compare
|
Independent exact-head review completed for
No Formula blocker was found. ABI 18 bytes remain nonpublishable evidence only. |
Purpose
Build MariaDB 10.5.28 from its canonical source archive as a first-class Kandelo Formula, using tap libcxx, ncurses, PCRE2, and zlib directly. Install the server, mysqltest-compatible client, bootstrap SQL, character sets, and generated error catalogs through the normal SDK/runtime path.
Formula contract
mariadbdandmariadb-testfor wasm32.Exact source head
Base:
c5705667a90b05754d2244a362f3f7fc95d2f9c3Head:
37ae32c2245428255071246ec4e8ef96483a990eFormula SHA-256:
cd1c1336abdc7a259fb6ee4c00cfabe9cb0555aa9384f7480f06840b469e9d2cSource SHA-256:
0b5070208da0116640f20bd085f1136527f998cc23268715bcbf352e7b7f3cc1Both commits range-diff identically from the accepted prior series; Formula bytes are unchanged. Exact receipts name
37ae32cand list exactly four direct target dependencies: libcxx 21.1.7, ncurses 6.5, PCRE2 10.44, and zlib 1.3.1_2.Exact-head evidence
Two clean pre-#842 source builds were byte-identical:
de84ae99aceef8a29dad821015761253e799c80a295bd28b20293f9eeb69a917d0b2c2accb8723b9a2c8f17805a33fd2152b140fb8593dd2d7a4375a7433f9b7Those bytes truthfully fail the lifecycle because the validation integration omitted #842:
__stack_pointer == __heap_base == 15782544, only 64 KiB above common BSS end15717008./mysql/db.frmcall_indirect type 3at function 17280 / offset0x76c346Rebuilding the unchanged Formula with exact #842 over #882+#896 gives an 8 MiB reserve:
__stack_pointer == __heap_base == 24105616= BSS end + 8 MiB460df769fc779d254f485ed8ae2f8fba2d66eb50d4b5e065bb157c33f37544a85cbe43e126a7436bc0fdd7df1460cc4a41d72e25cf2db444eec58381c90a05a6mariadb-homebrew-ok, SQL shutdown, and clean server exitThis proves a general SDK stack-input failure, not a Formula, plugin, pthread destructor, dependency, or ABI runtime defect.
All exact artifacts are ABI 18, fork-free, Asyncify-free, and free of user/temp/Nix/Cellar paths; #882 extracts ABI even from the 13.4 MB server. Support passes 37/279; style, strict audit, readall, dependency graph, receipt, diff, ancestry, and worktree checks pass.
Evidence archive:
/private/tmp/mariadb-37ae32c-evidence.tar.gz, SHA-256632e6c53390454448ce29299ee059411e6b66135f5cf61050c7cfccf7e8eece5.Gates
Source/runtime validation requires #842, #882, and #896. #896's registry-image Node/Chromium checks are platform evidence only, not Homebrew bottle proof.
Final rebuild waits for exact merged #907 / ABI 39. #873 is required because the literal test instruments its supervisor. #888 is not a package-byte gate because both installed artifacts are fork-free; it applies only to the ephemeral test supervisor.
#903 is not currently required because #882 repeatedly extracts ABI from exact 13.4 MB artifacts. #905 is not separate because the supervisor uses manual fork and #905 is already included in #907.
Publication
Publication requires #881/#887/#890/#885/#895 plus #900 prior-bottle enforcement. Publish exact ABI 39 libcxx, ncurses, PCRE2, and zlib bottles first; build MariaDB from those poured bottles; record trusted provenance; then run stock Homebrew Node and Chromium lifecycle pours.
All ABI 18 bytes above are validation evidence only and are not publication candidates. No bottle block or binary artifact is committed.