Skip to content

Afterburner

v0.2.2 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

afterburner burn deterministic go javascript polyglot
+8 more
python ruby runtime rust sandbox typescript wasm webassembly

Summary

AI summary

Updates 🏗️ Scaffolding and tooling, 🌐 Languages, and 🔗 Dependencies across a mixed release.

Full changelog

Burn v0.2.2: Codename BLAZE

BURN: Polyglot, deterministic, sandboxed WebAssembly runtime.

🚀 The polyglot release. afterburner goes from a JavaScript/TypeScript sandbox to a SINGLE RUNTIME that runs, compiles, and packages eight languages, each into a self-contained WASM artifact, with zero configuration. 🎉

🌐 Languages

  • 8️⃣ Eight languages, one runtime: JavaScript, TypeScript, Python, Ruby, Rust, Go, C, and C++. Every language gets burn run, burn repl --lang, burn compile, burn package, and a burn new --lang scaffold.
  • 🐍 Python, zero-config: burn run script.py works out of the box and imports the scientific stack (numpy, pandas, polars). Network sockets and a durable filesystem are available to Python programs.
  • 💎 Ruby, zero-config: burn run script.rb and burn repl --lang ruby run a self-contained Ruby with no setup; gem dependencies are resolved and vendored.

⚙️ Compile to WebAssembly

  • 📦 Every language compiles to a self-contained .afb blob: Python and Ruby pack their interpreter, your source, the standard library, and dependencies into one content-addressed WebAssembly artifact; Rust, Go, C, and C++ compile natively to wasm32-wasip1; JavaScript and TypeScript run on the JS engine. The artifact runs anywhere afterburner runs, with no recompile. 🔁
  • 🧩 Multi-module projects: C/C++/Rust/Go multi-file programs compile as one WASI command; Python and Ruby packages resolve sibling imports.

🔗 Dependencies

  • 📥 burn install for pip, gem, and npm: one command resolves and vendors dependencies across all three ecosystems.
  • 🔒 One lockfile: burn.lock v2 records pip, gem, and npm dependencies and interoperates with requirements.txt, Gemfile, and package.json. It is loud 📣 when a manifest and the lock disagree.
  • ✈️ Offline: vendored wheels and gems mount at run time; no network is needed after the first resolve.

🛡️ Runtime and sandbox

  • Zero configuration: no environment variables to run a program. Language runtimes are embedded in the binary or fetched once into ~/.burn, and everything works offline thereafter.
  • 🔐 Sealed by default: a program gets no filesystem, network, or environment access unless granted. --allow-fs-read, --allow-fs-write, --allow-net, and --allow-env grant narrowly; -A allows all.
  • 🧠 Size-agnostic memory: the runtime sizes memory to the workload (a 4 GiB growable default), configurable per run.

🏗️ Scaffolding and tooling

  • 🆕 burn new / burn init --lang: per-language project templates, with the language recorded in the package manifest.
  • 🚦 Toolchain preflight: burn compile checks for the required toolchain up front and fails with a clear message instead of a cryptic exit.

⬇️ Install

The one-liner installer auto-detects your OS + architecture, fetches + verifies the right binary, and updates your $PATH:

# Linux + macOS
curl -fsSL https://afterburner.sh | sh
# Windows (PowerShell)
iwr -useb https://afterburner.sh | iex

Manual install

Or grab a tarball directly. Linux + macOS:

# Linux x86_64
curl -L https://github.com/afterburner-sh/afterburner/releases/download/v0.2.2/burn-0.2.2-x86_64-unknown-linux-gnu.tar.gz | tar xz
sudo mv burn-0.2.2-x86_64-unknown-linux-gnu/burn /usr/local/bin/

# Linux aarch64
curl -L https://github.com/afterburner-sh/afterburner/releases/download/v0.2.2/burn-0.2.2-aarch64-unknown-linux-gnu.tar.gz | tar xz
sudo mv burn-0.2.2-aarch64-unknown-linux-gnu/burn /usr/local/bin/

# macOS arm64 (Apple Silicon)
curl -L https://github.com/afterburner-sh/afterburner/releases/download/v0.2.2/burn-0.2.2-aarch64-apple-darwin.tar.gz | tar xz
sudo mv burn-0.2.2-aarch64-apple-darwin/burn /usr/local/bin/

Windows x86_64 (PowerShell):

# Download + extract + install to %USERPROFILE%\.local\bin
$ver = "0.2.2"
$url = "https://github.com/afterburner-sh/afterburner/releases/download/v0.2.2/burn-$ver-x86_64-pc-windows-msvc.zip"
$dst = Join-Path $env:USERPROFILE ".local\bin"
New-Item -ItemType Directory -Force -Path $dst | Out-Null
Invoke-WebRequest -UseBasicParsing -Uri $url -OutFile burn.zip
Expand-Archive -Path burn.zip -DestinationPath . -Force
Move-Item -Force "burn-$ver-x86_64-pc-windows-msvc\burn.exe" "$dst\burn.exe"
Remove-Item -Recurse -Force burn.zip,"burn-$ver-x86_64-pc-windows-msvc"
# Add $dst to PATH for the current session (persistent: System Properties > Environment Variables)
$env:Path = "$dst;$env:Path"

Windows ARM64: install the x86_64 build above. Windows 11 ARM64 ships with transparent x64 emulation, so the x86_64 binary runs unmodified.

Intel macOS: not in the release matrix (GitHub's macos-13 runner is end-of-life). Build from source, see the repo README.

✅ Verify

Each archive ships with an accompanying .sha256 file.

🎁 Bundled features

Built with --features release-cli: bin + wasm + native + adaptive + thrust + flow + host-http + ts + all-shadows.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Afterburner

Get notified when new releases ship.

Sign up free

About Afterburner

All releases →

Beta — feedback welcome: [email protected]