Release Notes
💥 Breaking
- Each tool's primary executable file name is no longer based on the plugin's identifier, and is now based on what's configured in the new
LocateExecutablesOutput.exes
setting. - We've reworked how the
~/.proto/bin
directory works. Instead of only symlinking globally pinned versions (from~/.proto/.prototools
), we now create a symlink for every tool executable, and every major + minor version installed within that tool. For example, when we installnode
, we may have the following:~/.proto/bin/node
- Points to the highest installed version.~/.proto/bin/node-<major>
- Points to the highest version within that major range (~major
). Is created for each separate major version, for example:node-20
,node-22
.~/.proto/bin/node-<major>.<minor>
- Points to the highest version within that major + minor range (~major.minor
). Is created for each separate major + minor version, for example:node-20.1
,node-22.4
.~/.proto/bin/node-canary
- Points to a canary install, if it exists.- This change is not retroactive. Run
proto regen
after upgrading.
- WASM API
- Deprecated
LocateExecutablesOutput.primary
andLocateExecutablesOutput.secondary
(useexes
instead). - Updated
ToolMetadataOutput.plugin_version
to aVersion
type instead ofString
.
- Deprecated
🚀 Updates
- Added support for JSON and YAML based configurations for non-WASM schema based plugins. This is an alternative to TOML, but supports all the same settings.
- We now cache all text-based HTTP requests made from WASM plugins for 12 hours. This should greatly reduce the overhead cost of making requests, and will help for situations where an internet connection is lost.
- WASM API
- Added
ExecutableConfig.primary
. - Added
LocateExecutablesOutput.exes
. - Added
ToolMetadataOutput.minimum_proto_version
. - Added
ParseVersionFileInput.path
.
- Added
🐞 Fixes
- Fixed an issue where
proto upgrade
would pinproto
to~/.proto/.prototools
.
🧩 Plugins
- Updated
bun_tool
to v0.14. - Updated
deno_tool
to v0.13. - Updated
go_tool
to v0.14. - Updated
node_tool
to v0.13. - Updated
node_depman_tool
to v0.14.- Added support for
volta.extends
: https://docs.volta.sh/advanced/workspaces - Updated
volta
to take precedence overengines
inpackage.json
.
- Added support for
- Updated
python_tool
to v0.12.- Removed
python<major>
andpip<major>
executables. Use the new bins feature instead. - Added
~/.local/bin
as a globals lookup directory.
- Removed
- Updated
rust_tool
to v0.12. - Updated
schema_tool
to v0.16.- Removed
platform.*.bin-path
support (useexe-path
instead). - Deprecated
install.primary
andinstall.secondary
. - Added
install.exes
for defining primary and secondary executables.
- Removed
⚙️ Internal
- Updated Rust to v1.82.
Download proto_cli 0.42.0
File | Platform | Checksum |
---|---|---|
proto_cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
proto_cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
proto_cli-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
proto_cli-aarch64-unknown-linux-gnu.tar.xz | ARM64 Linux | checksum |
proto_cli-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |
proto_cli-aarch64-unknown-linux-musl.tar.xz | ARM64 MUSL Linux | checksum |
proto_cli-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |