Skip to main content
warning

Documentation is currently for moon v2 and latest proto. Documentation for moon v1 has been frozen and can be found here.

pin

v0.19.0

The proto pin <tool> <version> command will pin a version (or alias) of a tool. This version will be used when attempting to detect a version.

$ proto pin go 1.20
$ proto pin python 3.14 --to=global
$ proto pin node lts --resolve
$ proto pin npm latest --resolve --tool-native

By default this will update the local ./.prototools file. Pass --to to customize the location, or use the --tool-native option to use a location unique to the tool.

Arguments

  • <tool> - Type of tool.
  • <version> - Version of tool.

Options

  • --resolve - Resolve the version to a fully-qualified semantic version before pinning.
  • --to - Location of .prototools to update. Supports global, local, and user. v0.41.0
  • --tool-native - Pins the version in a tool specific location. Examples:
    • JavaScript tooling (Node, Bun, Deno, npm, pnpm, Yarn, etc)
      • Pins version in the devEngines field in the package.json file.
    • v0.55.0