Add Homebrew formulas for language runtimes#810
Open
brandonpayton wants to merge 6 commits into
Open
Conversation
Phase B-1 matrix build status —
|
| Package | Arch | Status | Sha |
|---|---|---|---|
| libcurl | wasm32 | built | e555b9aa |
| libcxx | wasm32 | built | e9bb60b4 |
| libcxx | wasm64 | built | dcb175bc |
| libpng | wasm32 | built | d5776b16 |
| libxml2 | wasm32 | built | ecd4f487 |
| libxml2 | wasm64 | built | 6bed3651 |
| openssl | wasm32 | built | 4ea4bf1b |
| openssl | wasm64 | built | 647c885d |
| sqlite | wasm32 | built | 36fe40f3 |
| sqlite | wasm64 | built | 9ee828c2 |
| zlib | wasm32 | built | 107d93dd |
| zlib | wasm64 | built | 099a5ba6 |
| bc | wasm32 | built | e1bccc81 |
| bzip2 | wasm32 | built | 541c679a |
| coreutils | wasm32 | built | 563ff76c |
| curl | wasm32 | built | caee0a68 |
| dash | wasm32 | built | 370c2741 |
| diffutils | wasm32 | built | 1f22e847 |
| dinit | wasm32 | built | 1eb7f738 |
| fbdoom | wasm32 | built | 2e88b44b |
| file | wasm32 | built | 7c68c63e |
| findutils | wasm32 | built | e36ab8d8 |
| gawk | wasm32 | built | d92c583c |
| git | wasm32 | built | 7a98205a |
| grep | wasm32 | built | 09a16928 |
| gzip | wasm32 | built | 87104f6e |
| hello | wasm32 | built | a35f331d |
| kandelo-sdk | wasm32 | built | d8307c1c |
| kernel | wasm32 | built | 99b04996 |
| less | wasm32 | built | a6ce1ee8 |
| lsof | wasm32 | built | f34f5b9a |
| m4 | wasm32 | built | 92378db0 |
| make | wasm32 | built | c14a17c2 |
| mariadb | wasm32 | built | 57603082 |
| mariadb | wasm64 | built | 9fa7cdb5 |
| modeset | wasm32 | built | 6da7586c |
| msmtpd | wasm32 | built | b06d7fa3 |
| nano | wasm32 | failed | — |
| ncurses | wasm32 | failed | — |
| netcat | wasm32 | built | 85271d4b |
| nginx | wasm32 | built | b597e39e |
| php | wasm32 | built | 717d9dc3 |
| posix-utils-lite | wasm32 | built | fce605df |
| sed | wasm32 | built | 91541baf |
| spidermonkey | wasm32 | built | 7ba2a98c |
| tar | wasm32 | built | 0d64a7da |
| tcl | wasm32 | built | 14a8eef0 |
| unzip | wasm32 | built | ac4fe644 |
| userspace | wasm32 | built | 59415379 |
| vim | wasm32 | failed | — |
| wget | wasm32 | built | 1e2b3190 |
| xz | wasm32 | built | ead3a075 |
| zip | wasm32 | built | 2fdf80be |
| zstd | wasm32 | built | 1bf2b9dc |
| bash | wasm32 | failed | — |
| mariadb-test | wasm32 | built | a1ce20b6 |
| mariadb-vfs | wasm32 | built | 616d37e6 |
| mariadb-vfs | wasm64 | built | b965cf4b |
| nethack | wasm32 | failed | — |
| node | wasm32 | built | 0444a979 |
| spidermonkey-node | wasm32 | built | b1de9005 |
| vim-browser-bundle | wasm32 | failed | — |
| nethack-browser-bundle | wasm32 | failed | — |
| rootfs | wasm32 | failed | — |
| shell | wasm32 | failed | — |
| lamp | wasm32 | failed | — |
| node-vfs | wasm32 | failed | — |
| wordpress | wasm32 | failed | — |
Auto-generated; replaced on each push. Raw data in the publish-status workflow artifact.
This branch's first Ruby port removed psych/YAML (dropped the libyaml build block, --with-out-ext=...,psych, psych out of STATIC_EXTINITS/EXTOBJS/EXTLIBS). Runtime verification in kd-egn1 (PR #814) shows psych/YAML actually works on Kandelo (psych=5.3.1, libyaml=0.2.5), so the removal was an unnecessary regression that would strip psych from main once this merges. Reconcile per coordinator decision (kd-egn1 owns Ruby): revert packages/registry/ruby/build-ruby.sh to origin/main (known-good psych) and delete this branch's homebrew/kandelo-homebrew/Formula/ruby.rb so #814's ruby.rb is the sole ruby formula. This branch no longer touches Ruby vs main; its other language runtimes (perl/cpython/php/erlang/texlive) are unchanged. This branch's resolver-contract / sysroot-avoidance edits to build-ruby.sh are preserved for a follow-up (test-runs/kd-egn1/810-reconcile/) rather than lost. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…b-less runtime This branch's cpython build shipped only python.wasm with no stdlib packaged, so the runtime could not import re/json (json imports re). PR #818 (kd-mt3u) fixes this by shipping lib/python3.13 as a package output. Per coordinator decision (kd-mt3u owns cpython): revert packages/registry/cpython/build-cpython.sh to origin/main and delete this branch's homebrew/kandelo-homebrew/Formula/cpython.rb so #818's cpython is the sole owner. This branch no longer touches CPython vs main; its other language runtimes (perl/php/erlang/texlive) are unchanged. This branch's resolver-contract / arch edits to build-cpython.sh are preserved for a follow-up (test-runs/kd-mt3u/810-reconcile/810-cpython-build-arch-edits.patch). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This was referenced Jul 1, 2026
…s bottle This branch's perl.rb staged the runtime by globbing the source tree, which could not include the generated XSLoader.pm (never produced by `make perl`), so File::Spec failed. PR #821 (kd-k7zy) fixes this end to end: it generates the core-module runtime, packages it as perl-runtime.zip, statically links the core XS (Kandelo wasm has no dlopen), and fixes the target -fno-strict-aliasing miscompile -- File::Spec/POSIX/Cwd/XSLoader all load (Node-verified). Per coordinator decision (kd-k7zy owns Perl, same resolution as ruby->#814 / cpython->#818): revert packages/registry/perl/build-perl.sh to origin/main and delete this branch's homebrew/kandelo-homebrew/Formula/perl.rb so #821's perl is the sole owner. This branch no longer touches Perl vs main; php/erlang/texlive are unchanged. #810's build-perl.sh delta was purely the resolver-contract refactor, which #821 already carries, so nothing is preserved separately. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Summary
kandelo_build_packagearch support convention.Verification
Package bottle dry-runs built 8 wasm32 Kandelo bottles; durable SHA/path list:
test-runs/kd-p3hr/outcome-lists/package-bottle-passed.txt.Full gate artifacts are under
test-runs/kd-p3hr/full-gate/and outcome lists are undertest-runs/kd-p3hr/outcome-lists/.git diff --check: passruby -cfor shared Homebrew helper and all new formulae: passbash -nfor changed shell scripts: passbash scripts/dev-shell.sh cargo test -p kandelo --target aarch64-apple-darwin --lib: pass, 963 passed / 0 failed / 0 skippedcd host && npx vitest run: pass after fixture bootstrap, 97 files passed / 26 skipped; 761 tests passed / 2 expected fail / 129 skipped / 0 failedbash scripts/dev-shell.sh bash scripts/run-libc-tests.sh: pass after initializingtests/libc/libc-test, PASS 302 / FAIL 0 / XFAIL 20 / FLAKY 1 / TIMEOUT 1 / TOTAL 324bash scripts/dev-shell.sh bash scripts/run-posix-tests.sh: pass, PASS 174 / FAIL 0 / XFAIL 3 / SKIP 2 / TOTAL 179bash scripts/dev-shell.sh bash scripts/check-abi-version.sh: passSuperseded setup failures are documented in
test-runs/kd-p3hr/outcome-lists/full-gate-failed-superseded.txt:tests/libc/libc-testFollow-ups
json/recoverage)XSLoader.pmNode/browser sidecar smoke status
Formula-level Kandelo runtime checks ran through Homebrew
test doduring local bottle dry-runs where package-specific runtime checks are available. Erlang remains artifact-only and is tracked by kd-fyqz.Sidecar-based Node and browser Homebrew smokes were not run against these local dry-run bottles because those smokes require trusted GHCR bottle URLs, published tap
bottle doblocks, and generatedKandelo/sidecars. The durable skip reason is recorded attest-runs/kd-p3hr/outcome-lists/homebrew-node-browser-smoke-status.txt; kd-yuef is the blocked consumer for trusted sidecar publication/smoke handoff.