Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.8.1] - 2026-07-15

Patch release: fixes a regression that made the `barbacane-standalone` image unable to serve specs under 0.8's capability enforcement.

### Fixed

- **plugins**: WASM plugins are now **self-describing**. The SDK macros (`#[barbacane_middleware]` / `#[barbacane_dispatcher]`) embed each plugin's `plugin.toml` into a custom wasm section (`barbacane_manifest`), and the compiler reads declared capabilities directly from the binary (falling back to a sibling/downloaded `plugin.toml` for plugins built before 0.8.1). The standalone image shipped plugins as bare `.wasm` files with no sidecar `plugin.toml`, so every bundled plugin was compiled with empty capabilities and the data plane rejected the first one to import a host function under `capabilities_enforced` (`plugin '<name>' violates its declared capabilities: plugin imports undeclared host function: ...`). As a result the standalone image could compile a spec but not serve it. Capability contracts now travel inside the `.wasm`, so no sidecar file has to accompany a plugin. A compile-time warning is emitted when a plugin resolves with no manifest from either source.

## [0.8.0] - 2026-07-10

Headline: a comprehensive security-hardening pass (adversarial review + full remediation) landed on top of the earlier sweep, plus pre-release housekeeping — plugin SDK consolidation, an MSRV/toolchain floor, supply-chain CI gates, and an OpenTelemetry stack upgrade.
Expand Down
18 changes: 9 additions & 9 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 10 additions & 10 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ exclude = [
resolver = "2"

[workspace.package]
version = "0.8.0"
version = "0.8.1"
edition = "2021"
# Minimum supported Rust version, set by the dependency floor: wasmtime 43 and
# cranelift 0.130 require rustc 1.91. Enforced by the `msrv` CI job.
Expand Down Expand Up @@ -155,15 +155,15 @@ assert_cmd = "2"
predicates = "3"

# Workspace crates (version required for crates.io publishing)
barbacane-sigv4 = { path = "crates/barbacane-sigv4", version = "0.8.0" }
barbacane-compiler = { path = "crates/barbacane-compiler", version = "0.8.0" }
barbacane-plugin-sdk = { path = "crates/barbacane-plugin-sdk", version = "0.8.0" }
barbacane-plugin-macros = { path = "crates/barbacane-plugin-macros", version = "0.8.0" }
barbacane-wasm = { path = "crates/barbacane-wasm", version = "0.8.0" }
barbacane-telemetry = { path = "crates/barbacane-telemetry", version = "0.8.0" }
barbacane-test = { path = "crates/barbacane-test", version = "0.8.0" }
barbacane = { path = "crates/barbacane", version = "0.8.0" }
barbacane-control = { path = "crates/barbacane-control", version = "0.8.0" }
barbacane-sigv4 = { path = "crates/barbacane-sigv4", version = "0.8.1" }
barbacane-compiler = { path = "crates/barbacane-compiler", version = "0.8.1" }
barbacane-plugin-sdk = { path = "crates/barbacane-plugin-sdk", version = "0.8.1" }
barbacane-plugin-macros = { path = "crates/barbacane-plugin-macros", version = "0.8.1" }
barbacane-wasm = { path = "crates/barbacane-wasm", version = "0.8.1" }
barbacane-telemetry = { path = "crates/barbacane-telemetry", version = "0.8.1" }
barbacane-test = { path = "crates/barbacane-test", version = "0.8.1" }
barbacane = { path = "crates/barbacane", version = "0.8.1" }
barbacane-control = { path = "crates/barbacane-control", version = "0.8.1" }

[profile.dev]
opt-level = 0
Expand Down