Releases: nvm-sh/nvm
v0.31.1
New Stuff
nvm uninstall
: Check installation dir permissions before uninstalling; display "fix" commands (#847)nvm alias
: colorize output to matchnvm ls
nvm alias
: colorize output when creating aliasesnvm ls
/nvm alias
/nvm ls-remote
: only colorize when colors are supported
Fixes
- don’t use bash
==
in conditionals nvm run
: pass through--silent
on barenvm run
nvm exec
: show “io.js” for io.js versionsset -e
: ensurenvm_version
returning 3, andnvm_alias
returning 2, doesn’t terminate the processnvm alias
: explicitly forbid user aliases in subdirsread
exits 1 when.nvmrc
lacks a trailing newline; avoid thatset -x
: avoid an unbound variabledeactivate
: unset$NVM_BIN
and$NVM_PATH
(#1033)
Performance
nvm alias
: slightly speed up alias resolution- Use
awk
to improve version comparison performance
Robustness
- add a missing
command
to ased
call
Misc
- Various README tweaks
- Various testing improvements
- Prefer
nvm --help
overnvm help
v0.31.0
New Stuff
install
: After installing, ensure that a default is set.install
: added optional sha256 support (#981)
Fixes
nvm-exec
: properly exit when failing; improve error messages, suppressnvm use --help
output (#997)- internal
nvm_format_version
should only return 3 version groups - Use env bash instead of
/bin/bash
in a few places (#1004) - Do not modify args of sourcing script when parsing
--install
/--no-use
arg (#1011, #976)
Docs
- Document how to reload nvm after upgrading (#1007)
v0.30.2
New Stuff
- Support the
--no-use
argument when sourcing, on shells that support that (#972)
Fixes
- handle unbound shell variables (#868)
install.sh
: honor PROFILE var (#957, #888, #830)nvm debug
was printing a red herring error message in non-zsh
Docs
- Add manual upgrade instructions to README.markdown (#968)
v0.30.1
v0.30.0
New Stuff
nvm install -s
now uses more CPUs, and supports a-j
option to override the default (#752)
Fixes
- Check
$#
before trying to check$1
. Avoids failure due tonounset
bash option (#868, #873) - Ensure that
npm
doesn't print out excess data, regardless of the user's log level (#881) - Fix
npm
version output fornvm run
andnvm exec
- Add prompt when there is no binary for node version greater than v1.0.0 (#899)
nvm unalias
: Provide a restore command when unaliasing (#916)nvm install
: incorrect check for"$NVM_DIR/nvm.sh"
(#887)- Fix
nvm-exec
for commands including spaces (#950, #903)
Refactors
- Use
nvm_ls_remote_index_tab
for listing nodejs.org versions (unblocks #870) - Replace backticks with $() command substitution (#875)
- improved bootstrap time (#860, #927)
Tests
- Print out
curl
andwget
versions insidetravis-ci
- temporarily disable WITHOUT_CURL tests. (nodejs/build#233)
- update nodejs.org-dist-index.tab and related test (#945)
- Add workaround for Travis CI environment issue (travis-ci/travis-ci#5363)
Docs
- Note compatibility issue with
set -e
(#865) - README: Add link to a dedicated nvm wrapper for fish shell (#876)
- stable → node (#892)
- update version numbers in the readme; add default alias info
- improve manual install instructions
- Add
nodist
, another Windows alternative (#908) - remove
nvmw
(#938) - remove note about "global install", since
nvm
is not intended for multiuser installs. - talk about FreeBSD support (#901)
- inform OSX users that XCode doesn't need to be installed (#921, #925)
v0.29.0
Fixes
- Protect against
cat
clobbering innvm alias
(#858) - Fix
nvm ls
when$NVM_DIR
has spaces in it (#861) - Make sure
nvm debug
doesn't use an overriddensed
- nvm exec: don't fall back to
.nvmrc
when the provided version is not installed
Enhancements
- Ensure
nvm use
output shows up afterprefix
check passes - [installing] echo the URL that the tarball is being downloaded from
- nvm run: use common code path for "ensure version installed"
- Use
xz
tarballs if available (#823)- This saves ~25% bandwidth while downloading node installers for
io.js
v2.3.2
and later, andnode
v4.0
and later.
- This saves ~25% bandwidth while downloading node installers for
Documentation
- indicate that the install script is also for updating (#859)
v0.28.0
v0.27.1
v0.27.0
Better node 4+ support!
- Separate code paths for "merged" node
- Clearer error messages
- Sort
nvm ls-remote
output so the order is: "pre-merged", "iojs", "post-merged".
Installing from source?
io.js
and node
v4.0
+ still do not yet support installing from source. This isn't because it's hard to implement, it's because the tests for it time out on travis-ci
. I don't want to add critical functionality without tests. I'm still trying to get this implemented and tested.
Release candidates?
io.js
and node
v4.0
+ release candidate support is coming. It will not be enabled by default: you'll have to export an explicit environment variable to turn it on. However, this will allow node
core developers, and module developers, to test upcoming releases easily on travis-ci
and locally. Keep an eye out for it!
Having an npm
prefix now errors out properly!
Essentially, the "prefix" option in npm
breaks nvm
, because global modules won't be stored within $NVM_DIR
. nvm
will now refuse to function if you have this set, eliminating much confusion!
- Ensure that if
npm config get prefix
is set to something outsidenvm
, thatnvm use
refuses to work (#606)
Other Enhancements
- Allow
--silent
option tonvm use
to be in any position - Print the
npm
version when usingnvm exec
ornvm run
. - Add support for
--silent
tonvm run
andnvm exec
(#842)
Fixes
- Use
NVM_VERSION
instead ofVERSION
when sourcing to be a bit less intrusive (#820) - When no
io.js
versions are installed, showN/A
, notio.js-
, as the resolved default alias (#822) - Fix install script to not lie and claim to be auto-sourcing
nvm.sh
(#826, #827) - Use a tighter
grep
to avoiddnvm.sh
conflicts (#838)
Documentation
- Add
nvm help
documentation fornvm exec
v0.26.1
Road to Post-Merger Node Support
- Ensure after node v4.0 is released,
stable
will simply refer to the latest node. - Still TODO: use
io.js
installation code path fornode
versions >v1.0