diff --git a/.ci/prepare-version.js b/.ci/prepare-version.js index 5d6ddb2..f63ac36 100755 --- a/.ci/prepare-version.js +++ b/.ci/prepare-version.js @@ -17,7 +17,7 @@ const command = cmd.command({ async handler({}) { updateCargoToml(await getPackageVersion()) exec("cargo build --release") - exec("yarn generate-command-docs --binary-path=./target/release/fnm") + exec("pnpm generate-command-docs --binary-path=./target/release/fnm") exec("./.ci/record_screen.sh") }, }) diff --git a/.ci/print-command-docs.js b/.ci/print-command-docs.js index 7b5996a..df61c6f 100755 --- a/.ci/print-command-docs.js +++ b/.ci/print-command-docs.js @@ -42,7 +42,7 @@ const command = cmd.command({ if (gitStatus.state === "dirty") { process.exitCode = 1 console.error( - "The file has changed. Please re-run `yarn generate-command-docs`." + "The file has changed. Please re-run `pnpm generate-command-docs`." ) console.error(`hint: The following diff was found:`) console.error() @@ -76,7 +76,7 @@ async function main(targetFile, fnmPath) { stream.close() - await execa(`yarn`, ["prettier", "--write", targetFile]) + await execa(`pnpm`, ["prettier", "--write", targetFile]) } /** diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index ea6c600..4527e0a 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -339,7 +339,7 @@ jobs: run: fnm --version - run: fnm install - name: Install Node deps - run: fnm exec -- yarn + run: fnm exec -- pnpm - name: Generate command markdown run: | - fnm exec -- yarn generate-command-docs --check --binary-path=$(which fnm) + fnm exec -- pnpm generate-command-docs --check --binary-path=$(which fnm) diff --git a/docs/commands.md b/docs/commands.md index 06e84e2..4e1644a 100644 --- a/docs/commands.md +++ b/docs/commands.md @@ -1,6 +1,7 @@ # `fnm` + ``` -fnm 1.31.1 +fnm 1.32.0 A fast and simple Node.js manager USAGE: @@ -9,12 +10,12 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -22,14 +23,14 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] @@ -39,12 +40,12 @@ OPTIONS: --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] @@ -77,9 +78,11 @@ SUBCOMMANDS: use Change Node.js version ``` + # `fnm alias` + ``` -fnm-alias +fnm-alias Alias a version to a common name USAGE: @@ -87,20 +90,20 @@ USAGE: ARGS: - + - + OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -108,33 +111,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm completions` + ``` -fnm-completions +fnm-completions Print shell completions to stdout USAGE: @@ -143,12 +148,12 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -156,14 +161,14 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] @@ -173,19 +178,21 @@ OPTIONS: --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm current` + ``` -fnm-current +fnm-current Print the current Node.js version USAGE: @@ -194,12 +201,12 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -207,33 +214,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm default` + ``` -fnm-default +fnm-default Set a version as the default version This is a shorthand for `fnm alias VERSION default` @@ -243,17 +252,17 @@ USAGE: ARGS: - + OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -261,33 +270,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm env` + ``` -fnm-env +fnm-env Print and set up required environment variables for fnm This command generates a series of shell commands that should be evaluated by your shell to create a @@ -303,33 +314,36 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help Print help information + --json + Print JSON instead of shell commands + --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --shell The shell syntax to use. Infers when missing - + [possible values: bash, zsh, fish, powershell] --use-on-cd @@ -338,19 +352,21 @@ OPTIONS: --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm exec` + ``` -fnm-exec +fnm-exec Run a command within fnm context Example: @@ -368,12 +384,12 @@ ARGS: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -381,14 +397,14 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] @@ -398,23 +414,27 @@ OPTIONS: --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm help` + ``` ``` + # `fnm install` + ``` -fnm-install +fnm-install Install a new Node.js version USAGE: @@ -427,12 +447,12 @@ ARGS: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -443,7 +463,7 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] @@ -453,26 +473,28 @@ OPTIONS: --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm list` + ``` -fnm-list +fnm-list List all locally installed Node.js versions USAGE: @@ -481,12 +503,12 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -494,33 +516,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm list-remote` + ``` -fnm-list-remote +fnm-list-remote List all remote Node.js versions USAGE: @@ -529,12 +553,12 @@ USAGE: OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -542,33 +566,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm unalias` + ``` -fnm-unalias +fnm-unalias Remove an alias definition USAGE: @@ -576,17 +602,17 @@ USAGE: ARGS: - + OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -594,33 +620,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm uninstall` + ``` -fnm-uninstall +fnm-uninstall Uninstall a Node.js version > Warning: when providing an alias, it will remove the Node version the alias is pointing to, along @@ -631,17 +659,17 @@ USAGE: ARGS: - + OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -649,33 +677,35 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive] ``` + # `fnm use` + ``` -fnm-use +fnm-use Change Node.js version USAGE: @@ -683,17 +713,17 @@ USAGE: ARGS: - + OPTIONS: --arch Override the architecture of the installed Node binary. Defaults to arch of fnm binary - + [env: FNM_ARCH] --fnm-dir The root directory of fnm installations - + [env: FNM_DIR] -h, --help @@ -704,14 +734,14 @@ OPTIONS: --log-level The log level of fnm commands - + [env: FNM_LOGLEVEL] [default: info] [possible values: quiet, info, all, error] --node-dist-mirror https://nodejs.org/dist/ mirror - + [env: FNM_NODE_DIST_MIRROR] [default: https://nodejs.org/dist] @@ -722,12 +752,12 @@ OPTIONS: --version-file-strategy A strategy for how to resolve the Node version. Used whenever `fnm use` or `fnm install` is called without a version, or when `--use-on-cd` is configured on evaluation. - + * `local`: Use the local version of Node defined within the current directory - + * `recursive`: Use the version of Node defined within the current directory and all parent directories - + [env: FNM_VERSION_FILE_STRATEGY] [default: local] [possible values: local, recursive]