Releases: moonrepo/proto
Releases Β· moonrepo/proto
0.30.0
Release Notes
π₯ Breaking
- WASM API
- Updated
VirtualPath::real_path
to return an Option
if conversion fails.
π Updates
- Updated
proto setup
(which is ran during proto installation) to be interactive.
- Will now prompt you to choose which shell profile to modify, or not at all.
- Improved the output messages based on the state of the install.
- Added
--no-profile
and --yes
arguments to control this.
π Fixes
- Attempted fix for PowerShell profile updates when using Windows 11 and OneDrive folders.
𧩠Plugins
- Updated
node_plugin
and node_depman_plugin
to v0.9.1.
- Added version detection support for
volta
in package.json
.
βοΈ Internal
Download proto_cli 0.30.0
Version 0.30.0-rc.0
Release Notes
π₯ Breaking
- WASM API
- Updated
VirtualPath::real_path
to return an Option
if conversion fails.
π Updates
- Updated
proto setup
(which is ran during proto installation) to be interactive.
- Will now prompt you to choose which shell profile to modify, or not at all.
- Improved the output messages based on the state of the install.
- Added
--no-profile
and --yes
arguments to control this.
π Fixes
- Attempted fix for PowerShell profile updates when using Windows 11 and OneDrive folders.
𧩠Plugins
- Updated
node_plugin
and node_depman_plugin
to v0.9.1.
- Added version detection support for
volta
in package.json
.
βοΈ Internal
Download proto_cli 0.30.0-rc.0
0.29.1
Release Notes
π Fixes
- Fixed virtual path conversion issues on Windows (mostly affected
rust-plugin
).
Download proto_cli 0.29.1
0.29.0
Release Notes
π₯ Breaking
- WASM API
- Renamed
err!
macro to plugin_err!
.
- Renamed
get_tool_id
to get_plugin_id
.
- Renamed
get_proto_environment
to get_host_environment
.
- Renamed
/workspace
virtual path to /cwd
.
- Renamed
ExecCommandInput.env_vars
to env
.
- Removed
HostEnvironment.proto_dir
field.
- Updated
plugin_err!
result to not be wrapped in Err
.
- Updated
VirtualPath::join
to return VirtualPath
instead of PathBuf
.
π Updates
- Added
env
and tools.*.env
settings to .prototools
to support environment variables.
- Will automatically set variables when a tool is executed.
- Allows for directory-level and tool-specific variables.
- Added support for environment based config files, like
.prototools.production
.
- Takes higher precedence than
.prototools
.
- Can be enabled with the
PROTO_ENV
environment variable.
- Updated
proto tool info
to display aliases and environment variables.
- Updated WASM logs to be shown alongside proto's
--log
output (under the extism::pdk
namespace).
- WASM API
- Added color support to error and host log messages through an HTML-like tag syntax.
- Added
real_path!(buf, ..)
and virtual_path!(buf, ..)
macro variants for working with Path
and PathBuf
.
- Added a
fetch_url_bytes
function.
- Improved the implementation of many PDK macros.
𧩠Plugins
- Updated
bun_plugin
to v0.9.
- Updated
deno_plugin
to v0.9.
- Updated
go_plugin
to v0.9.
- Updated
node_plugin
and node_depman_plugin
to v0.9.
- Changed the
bundled-npm
and intercept-globals
settings to be false
by default (instead of true
).
- Updated
python_plugin
to v0.7.
- Updated
rust_plugin
to v0.8.
- Updated
schema_plugin
(TOML) to v0.9.
- Added
globals.bin
setting, for customizing the bin used for installs/uninstalls.
Download proto_cli 0.29.0
0.28.2
Release Notes
βοΈ Internal
- Updates in preparation for the v0.29 release.
Download proto_cli 0.28.2
0.28.1
Release Notes
π Updates
- WASM API
- Updated the
set_env_var
host function (and host_env!
macro) to append PATH
instead of overwriting it, and to also support virtual paths.
π Fixes
- Fixed
proto upgrade
moving the old binary to the wrong location.
𧩠Plugins
- Updated
rust_plugin
to v0.7.1.
Download proto_cli 0.28.1
0.28.0
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 the host_log!
macro).
- Removed support for old and deprecated APIs:
locate_bins
, create_shims
.
- Removed
get_proto_user_config
and format_bin_name
functions.
- Updated
get_tool_id
to return a Result<String>
instead of String
.
- WASM test utils
- Removed
WasmTestWrapper::set_environment()
method. Use create_plugin_with_config
and pass a config object instead.
// 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
and to_virtual_path
host functions.
- Added
virtual_path!
and real_path!
macros.
- Added
ExecCommandInput.working_dir
field.
π 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
and node_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
Version 0.28.0-rc.1
Release Notes
π₯ Breaking
- WASM API
- Refactored the
HostLogInput
enum into a struct (this should be transparent if using the host_log!
macro).
- Removed support for old and deprecated APIs:
locate_bins
, create_shims
.
- Removed
get_proto_user_config
and format_bin_name
functions.
- Updated
get_tool_id
to return a Result<String>
instead of String
.
- WASM test utils
- Removed
WasmTestWrapper::set_environment()
method. Use create_plugin_with_config
and pass a config object instead.
// 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
- WASM API
- Added
from_virtual_path
and to_virtual_path
host functions.
- Added
virtual_path!
and real_path!
macros.
- Added
ExecCommandInput.working_dir
field.
βοΈ Internal
- Updated extism (plugin runtime) to v1 (from v0.5).
Download proto_cli 0.28.0-rc.1
Version 0.28.0-rc.0
THIS DOES NOT WORK YET, DO NOT USE!
Release Notes
π₯ Breaking
- WASM API
- Removed support for old and deprecated APIs:
locate_bins
, create_shims
.
- Removed
get_proto_user_config
and format_bin_name
functions.
- Updated
get_tool_id
to return a Result<String>
instead of String
.
- WASM test utils
- Removed
WasmTestWrapper::set_environment()
method. Use create_plugin_with_config
and pass a config object instead.
// 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
- WASM API
- Added
from_virtual_path
and to_virtual_path
host functions.
- Added
virtual_path!
and real_path!
macros.
βοΈ Internal
- Updated extism (plugin runtime) to v1 (from v0.5).
Download proto_cli 0.28.0-rc.0
0.27.1
Release Notes
π Fixes
- Fixed broken
proto regen
output.
Download proto_cli 0.27.1