Skip to content

Build Burn written in Burn from source, and use Burn releases in CI - #6

Merged
S42yt merged 1 commit into
masterfrom
feat/burn-toolchain
Oct 9, 2026
Merged

S42yt merged 1 commit into
masterfrom
feat/burn-toolchain

Conversation

@S42yt

@S42yt S42yt commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Updates burnup for Burn's new toolchain. Since 26.1.0-experimental-3 the compiler is written in Burn, and 26.1.0-experimental-4 brings native executables back.

Changes

  • Source builds (burnup install master, branches, commits) need a released Burn to compile the compiler written in Burn once.
    • burnup reads the checkout's compiler/STAGE0, installs that release if needed, and passes it to scripts/package.sh --stage0.
    • install.sh --from-source downloads the same release (BURN_RELEASES, default the GitHub releases of BURN_REPO).
  • CI and release workflows install the v26.1.0-experimental-4 release instead of cargo build-ing the Rust compiler, which no longer exists. burnup is built natively with it.
  • tests/e2e.sh copies the whole toolchain (bin/ and share/), because bin/burn is now bvm running share/burn/burn.bvm.
  • README notes that source builds start from the release named in compiler/STAGE0.

Checked locally

  • Against a toolchain built from burn master, plus burn and bvm replaced by a fresh bvm build that includes Keep the command line's objects out of the programs it runs burn#77:
    • burn fmt --check, burn check and the unit tests pass.
    • burn build produces a native burnup.
    • tests/e2e.sh passes both natively and on the interpreter.
    • shellcheck is clean.
  • burnup install feat/native-backend with a local BURN_REPO:
    • it installed v26.1.0-experimental-2 from the release named in compiler/STAGE0;
    • it then built the branch from source with it.

🤖 Generated with Claude Code

https://claude.ai/code/session_01PCXUjgpGnka9y7AHKfnN3w


Generated by Claude Code

Source builds of Burn need a released Burn to compile the compiler written
in Burn once. burnup install and install.sh --from-source now install the
release named in the checkout's compiler/STAGE0 and pass it to
scripts/package.sh as --stage0.

CI and releases install a Burn release instead of building the Rust
compiler, which is gone, and build burnup natively with it. The end-to-end
test copies the whole toolchain, share/ included.
@S42yt
S42yt merged commit f6a421f into master Oct 9, 2026
2 checks passed
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