- Upgrade
tar-fsdependency
- Improve documentation in
README.md
- Fix
EMFILEerrors thrown on Windows whennveis called multiple times at once.
- Upgrade internal dependencies. This is not expected to be a breaking change.
- Minimal supported Node.js version is now
18.18.0
- The Node.js version can now be specified as a file path to a
.nvmrc,package.json(engines.nodefield) or similar files. (#37)
$ nve /path/to/.nvmrc npm test- When running multiple Node.js versions, the full resolved versions are now
printed. For example,
nve 10,12 ...will printNode.js 10.24.1andNode.js 12.22.12before each command's output, providing multiple Node.js versions are used at once.
- Ensure errors while downloading Node.js binaries are correctly printed (#36)
- Minimal supported Node.js version is now
16.17.0
- Upgrade Execa
- Reduce npm package size by 41%
- Improve error handling
- Reduce npm package size
- Improve error handling
- Minimal supported Node.js version is now
14.18.0
- Fix when
stdinis empty
- Minimal supported Node.js version is now
12.20.0
- The default value of the
--fetchCLI flag is nowtruewhen no command was passed.
- Fix crash when downloading several Node.js binaries in parallel
- Improve colors detection
- Fix offline mode
- Commas should now be used to separate multiple Node
versions. For example
nve 8 10 12 node --versionshould now benve 8,10,12 node --version. - Rename the alias
heretolocal
- Add the alias
globalto target the global Node version, regardless of the current directory
- Rename the alias
nowtoherethanks to feedback from @AdrieanKhisbe
- Aliases
candcurrentrenamed tonow - The alias
nownow takes into accountpackage.jsonengines.nodefield and additional files used by other Node.js version managers. - Alias
lremoved: please uselatestinstead
- Added alias
ltsto target the latest LTS version
- Fix aliases shortcuts
landc
- Rename
*alias tolatestorl - Rename
.alias tocurrentorc - Remove
_alias
- Fix warning message printed when running some commands
- Add
fetchCLI flag to control caching
- Checksum checks were not working when the
mirroroption was used
- Can use the
_alias to refer to the current process's Node.js version:nve _ npm test - Can use the
.alias to refer to the current project's Node.js version using its.nvmrc,.node-versionor.naverc:nve . npm test
- Fix terminal color changing on Windows
- Fix
archoption
- Add
archoption to specify the CPU architecture.
- Minimal supported Node.js version is now
10.17.0
- Node.js binary download is now 50% faster on Windows
- Fix crash when Node.js binary URL is invalid
- Node.js binary download is now twice faster on Windows
- Fix ARM, PowerPC, S390 support
- Warn when a new version is available
- Fix running
npmornpxbinaries on Windows
- Fix global binaries not working on Windows
- Fix executing binaries by specifying their file paths on Windows
- Remove the
--shellCLI flag. Sincenvealready runs in a shell, this flag is not needed. Shell-specific features (such as variables, globbing, etc.) work as expected since those are performed beforenveis called.
- Fix executing
yarn.
- Improve the internal directory structure used to cache the Node.js binary
- Cleanup temporary files when Node.js download fails
- Executing
npm,yarnandpnpmwas not working properly, for example when doing global installs (npm i -g ...).
- Improve the appearance of the progress bar
- Ensure Node.js binaries are not corrupted by checking their checksums
- Use cache when offline (no network connection)
- When
nveis run without any command, it prints the available Node.js version. If you also want to cache the initial Node.js binary download, you must now usenve VERSION node --versioninstead ofnve VERSION.
- Make Node.js binary download twice faster on Linux and MacOS
- Improve error messages
- Reduce the number of dependencies
- Reduce the number of dependencies
- Upgrade
nvexecato1.1.0
- The programmatic API has been moved to a separate repository and npm package
nvexecawith fewer dependencies.
- The programmatic API has been updated. Please refer to its new documentation.
- Use a progress bar instead of a spinner with the
progressCLI flag.
- Internal changes
- To perform a dry run programatically,
command: undefinedcannot be used withrunVersion()orrunVersions. A new methoddryRunVersion()should be used instead.
- Add the
--parallelCLI flag. This allows running multiple Node versions in parallel (at the same time) which is faster. - Improve error messages
- Add the
--continueCLI flag. By default, when running multiple Node versions and one of those versions fails, the others are aborted. This flag disables this.
- Show percentage instead of number of megabytes in spinner
- Allow running
multiple versions at once.
For example
nve 12 10 8 npm testwill run tests on Node 8, 10 and 12. - Running multiple versions can also be done programmatically using
runVersions() - Improve error messages
- Fix missing dependency
- Remove
npm-run-pathandfilter-objas direct production dependencies
- Improve speed
- Remove
path-keyas a direct production dependency
- Internal changes
- Make the
progressoption default tofalseprogrammatically.
- It is now possible to
omit the
command. For examplenve 8instead ofnve 8 npm test. This can be used to cache the Node.js binary download without executing any command.
nve VERSIONmust now be followed bynode. For examplenve 8should now benve 8 nodeandnve 8 file.jsshould benve 8 node file.js.- The
NVE_PROGRESSenvironment variable has been removed. The--no-progressoption should be used instead. - The programmatic usage has changed: please see the new API
- Global binaries can now be executed such as
nve 8 npm test. Keep in mind that the binary must be compatible with the chosen Node.js version. For examplenpmis only compatible with Node>=6. - Local binaries can be executed as well
- Add the
--shelloption to run a command inside a shell - Add the
--mirroroption to change the base URL to retrieve Node.js binaries - Add the
--helpand--versionCLI flags - Execa is now used under the hood which provides with additional features and options when run programmatically
- If the script spawns child processes, those will now use the correct Node.js version
- Ensure
nvedoes not exit untilstdoutandstderrhave been flushed
- Internal changes
- Improve error messages
- Fix
CTRL-Cnot working
- Improve progress messages on console
- Improve progress messages on console
- Add alternative names for
NODE_MIRROR:NVM_NODEJS_ORG_MIRROR,N_NODE_MIRRORandNODIST_NODE_MIRROR
- Fix cache invalidation bug
nvecan now be accessed from Node.js/programmatically.
- Retry downloading the Node.js binaries on network errors.
- Internal changes
- Spinner can now be disabled with the environment variable
NVE_PROGRESS=0
- A spinner is now shown when a new Node.js version is downloading
- Fix
EXDEVerror thrown when temporary directory uses a different partition (ehmicky/get-node#1)