Skip to content

Releases: moonrepo/proto

0.44.0

25 Dec 22:13
Compare
Choose a tag to compare

Release Notes

This is a unique release that focused primarily on cleaning up our current commands, either by removing arguments, or merging functionality. On top of that, we've refactored all the terminal output using a new UI library powered by iocraft. Read the blog post for more information!

💥 Breaking

  • Removed the proto list and proto list-remote commands, use proto versions instead.
  • Removed the --global option from proto alias, unalias, pin, and unpin, use --to or --from instead.
  • Removed the --purge option from proto clean, use proto uninstall instead.
  • Removed the --purge-plugins option from proto clean, use proto clean plugins instead.

🚀 Updates

  • Implemented a new terminal user interface (TUI) and output style for all commands.
  • Added a --yes option to proto outdated, that skips confirmation prompts.
  • Added a --json option to proto clean, to capture the cleaned result as JSON.
  • Added a new command, proto versions <tool>, that lists all available remote and installed versions/aliases.
  • Updated proto clean to accept a target in which to clean as the 1st argument. For example, proto clean cache.
  • Moved the --json and --yes options into global options.

🧩 Plugins

  • Updated python_tool to v0.12.2.
    • Switched to astral-sh/python-build-standalone from indygreg/python-build-standalone for pre-built images.

Download proto_cli 0.44.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

0.43.3

19 Dec 18:16
Compare
Choose a tag to compare

Release Notes

🐞 Fixes

  • Fixed an issue where an empty globals directory was being skipped instead of being used as a fallback.

Download proto_cli 0.43.3

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

0.43.2

13 Dec 07:00
Compare
Choose a tag to compare

Release Notes

🐞 Fixes

  • Fixed an issue where the globals directory may not exist for the pre_run hook.
  • Fixed invalid Nushell syntax generated from proto activate.

Download proto_cli 0.43.2

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

0.43.1

06 Dec 03:15
Compare
Choose a tag to compare

Release Notes

🐞 Fixes

  • Fixed invalid PowerShell syntax generated from proto activate.

Download proto_cli 0.43.1

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

0.43.0

02 Dec 21:21
Compare
Choose a tag to compare

Release Notes

🚀 Updates

  • Added a system that allows plugins to require other plugins to be installed, before they will install.
  • Added an --on-init option to proto activate, which will trigger the activation hook immediately in the shell, instead of waiting for a directory/prompt change to occur.
    • If you were manually executing _proto_hook before, this will now fail. Please remove!
  • Added support for loading .env files through the special env.file and tools.*.env.file settings.
    [env]
    file = ".env"
  • Added support for ~/.netrc configuration to all HTTP requests.
  • Improved implementation of HTTP request/response caching. Now takes into account HTTP cache semantics.
  • Updated proto install to multi-install tools in topological order.
  • Updated proto upgrade to error if there's another process of proto currently running.
  • Updated proto setup to default to a fallback shell if none could be detected, instead of erroring.
  • WASM API
    • Added ToolMetadataOutput.requires, allowing the plugin to require other plugins. For example, npm requires node.

🐞 Fixes

  • Fixed the order of shell profiles/configs when applicable.
  • Updated proto setup to inherit PROTO_HOME if already set, instead of defaulting to $HOME/.proto.

🧩 Plugins

  • Updated node_depman_tool to v0.14.1.
    • Added node as a required plugin.
  • Updated python_tool to v0.12.1.
    • Fixed an issue where our bin linking would point to an invalid executable path.
  • Updated schema_tool to v0.16.2.
    • Added metadata.requires, for defining plugin requirements.

⚙️ Internal

  • Updated identifiers, versions, and locators to use compact strings.
  • Updated wasmtime to v26 (from v23).
  • Updated Rust to v1.83.

Download proto_cli 0.43.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

0.42.2

19 Nov 21:57
Compare
Choose a tag to compare

Release Notes

🚀 Updates

  • When adding or viewing a plugin, we now display any deprecation messages from the plugin to the user.
  • WASM API
    • Added ToolMetadataOutput.deprecations.

🧩 Plugins

  • Updated schema_tool to v0.16.1.
    • Brought back platform.*.bin-path to support legacy plugin configs.

Download proto_cli 0.42.2

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

0.42.1

12 Nov 01:43
Compare
Choose a tag to compare

Release Notes

🚀 Updates

  • When installing many tools with proto install|use, a failed install for a single tool will no longer abort the install of the other tools.
  • Added more logging to debug the "File exists (os error 17)" issue.

🐞 Fixes

  • Fixed the wrong proto_version being passed to WASM function calls.
  • When usign the Bash shell, will avoid using .bash_profile unless it explicitly exists. This is to support Ubuntu .profile setups.

Download proto_cli 0.42.1

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

0.42.0

01 Nov 02:40
Compare
Choose a tag to compare

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 install node, 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 and LocateExecutablesOutput.secondary (use exes instead).
    • Updated ToolMetadataOutput.plugin_version to a Version type instead of String.

🚀 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.

🐞 Fixes

  • Fixed an issue where proto upgrade would pin proto 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.
  • Updated python_tool to v0.12.
    • Removed python<major> and pip<major> executables. Use the new bins feature instead.
    • Added ~/.local/bin as a globals lookup directory.
  • Updated rust_tool to v0.12.
  • Updated schema_tool to v0.16.
    • Removed platform.*.bin-path support (use exe-path instead).
    • Deprecated install.primary and install.secondary.
    • Added install.exes for defining primary and secondary executables.

⚙️ 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

0.41.7

22 Oct 19:27
Compare
Choose a tag to compare

Release Notes

🐞 Fixes

  • Fixed an issue where command lookup within PATH may return an invalid result.

Download proto_cli 0.41.7

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

0.41.6

21 Oct 22:01
Compare
Choose a tag to compare

Release Notes

🚀 Updates

  • Added more internal logging when executing commands or making requests.
  • Updated PROTO_DEBUG_COMMAND environment variable to support streaming the output of a running command to the terminal if set to "stream".

Download proto_cli 0.41.6

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