Release Notes
This release primarily upgrades our WASM runtime. For plugin authors, you'll need to update to the latest PDK and publish a new version. Old plugins are incompatible.
💥 Breaking
- WASM API
- Refactored the
HostLogInput
enum into a struct (this should be transparent if using thehost_log!
macro). - Removed support for old and deprecated APIs:
locate_bins
,create_shims
. - Removed
get_proto_user_config
andformat_bin_name
functions. - Updated
get_tool_id
to return aResult<String>
instead ofString
.
- Refactored the
- WASM test utils
- Removed
WasmTestWrapper::set_environment()
method. Usecreate_plugin_with_config
and pass a config object instead.
- Removed
// Before
let mut plugin = create_plugin("test-id", sandbox.path());
plugin.set_environment(HostEnvironment {
arch: HostArch::Arm64,
os: HostOS::Linux,
..Default::default()
});
// After
let plugin = create_plugin_with_config(
"test-id",
sandbox.path(),
HashMap::from_iter([map_config_environment(HostOS::Linux, HostArch::Arm64)]),
);
🚀 Updates
- Will now display an upgrade message when the current proto version is out of date.
- Improved error messages when a system command does not exist.
- Improved error messages to include the plugin identifier when applicable.
- Updated our "last used at" logic to avoid race conditions with the tool manifest.
- WASM API
- Added
from_virtual_path
andto_virtual_path
host functions. - Added
virtual_path!
andreal_path!
macros. - Added
ExecCommandInput.working_dir
field.
- Added
🐞 Fixes
- Fixed an issue where command executions from the context of a plugin weren't taking virtual paths into account.
🧩 Plugins
- Updated
bun_plugin
to v0.8. - Updated
deno_plugin
to v0.8. - Updated
go_plugin
to v0.8. - Updated
node_plugin
andnode_depman_plugin
to v0.8. - Updated
python_plugin
to v0.6. - Updated
rust_plugin
to v0.7. - Updated
schema_plugin
(TOML) to v0.8.
⚙️ Internal
- Updated Extism (plugin runtime) to v1 (from v0.5).
Download proto_cli 0.28.0
File | Platform | Checksum |
---|---|---|
proto_cli-aarch64-apple-darwin.tar.xz | macOS Apple Silicon | checksum |
proto_cli-aarch64-unknown-linux-gnu.tar.xz | Linux arm64 | checksum |
proto_cli-aarch64-unknown-linux-musl.tar.xz | musl Linux arm64 | checksum |
proto_cli-x86_64-apple-darwin.tar.xz | macOS Intel | checksum |
proto_cli-x86_64-pc-windows-msvc.zip | Windows x64 | checksum |
proto_cli-x86_64-unknown-linux-gnu.tar.xz | Linux x64 | checksum |
proto_cli-x86_64-unknown-linux-musl.tar.xz | musl Linux x64 | checksum |