Releases: nvm-sh/nvm
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
Fixes
v0.26.0
Breaking Changes
- Remove
$NVM_IOJS_ORG_VERSION_LISTING
env var.- you probably weren't using this for anything anyways. Now the version listing is just
$NVM_IOJS_ORG_MIRROR/index.tab
- you probably weren't using this for anything anyways. Now the version listing is just
nvm reinstall-packages
should install the same version it had before.- Previously,
reinstall-packages
would just reinstall the same packages, but at the latest version. Now, it attempts to preserve the version number you had it at before.
- Previously,
Installation
- Source the nvm.sh file automatically upon install (#775)
- Better profile detection: detect shell type from $SHELL variable instead of .$SHELLrc files (#765)
Fixes
- Fix "reinstall" output wording (#778)
- Fix
nvm debug
output inzsh
- Redirect stderr output from
npm ls -g
to /dev/null (#756)
New things
- Automatically add
--without-snapshot
build parameter when installing from source on ARM (#766) - Add
--silent
option tonvm use
to suppress output (#780) - Add
nvm version-remote
Performance
- Speed up
nvm_print_npm_version
- Refactor a
nvm use
case
statement out into annvm_match_version
function - Make
nvm_ensure_version_installed
slightly more efficient
Refactoring
- Factor out global installs/links into
nvm_npm_global_modules
function - Some refactoring to clear up the path to
io.js
release candidate support (related to #779)
Dev Dependencies
- Update
semver
Documentation
- Updated usage instructions to include --reinstall-packages-from syntax and example (#795)
- document
nvm version
andnvm version-remote
innvm --help
output - Add usage string for --reinstall-packages-from (#797)
- Add explanatory note to
--help
output for<version>
- Clean up grammar in readme (#799)
- Replace links to
nvm-fish
andnvm-fish-wrapper
with a link tobass
(#802)
v0.25.4
v0.25.3
v0.24.2
v0.25.2
Fixes
- Fix
curl
installation instructions - Make sure that
nvm reinstall-packages system
has the right std output. - nvm reinstall-packages: On systems where
npm ls -g --depth=0
does not includenpm
for some reason, make sure to filter out(empty)
.
Enhancements (not worth a minor bump)
- Add wrapping curly braces to ensure that the entire scripts are downloaded. If the closing curly brace isn't present, the script will error out.
- Add undocumented
nvm debug
to print out helpful debugging info.
v0.25.1
Enhancement slash fixes
- Make sure to ignore any
curl
settings in~/.curlrc
, if it exists. - Actually try to install from source when the error message says "binary failed, trying source".
- Use
uname -m
instead ofuname -a
to detect installation architecture (#744) - Improve the error message when the binary tarball URL 404s. (#743)
Testing
- Only test the install script in bash, since it only runs in bash.
v0.25.0
Bugfixes
- install.sh: Ensure that the
--quiet
option is available before trying to use it. (#738, #657) - When no arguments are passed to
nvm run X
, usenvm exec
to open a REPL (#625, #717) - Adding .gitattributes to force unix line endings (#728, #741)
New features
- Include
npm
version when displaying the results ofnvm use
(#722) - adding architecture detection for Raspberry Pi 2/
armv71
(#742)
Performance
- Consolidate and avoid sed/cut calls, clean up pattern matches (#718)
Misc
v0.24.1
- Bugfixes
- Performance
- Improve startup performance. (#703, #705)
- Combine
sed
andgrep
commands innvm ls
code (#710) - Consolidate faster default alias lookup, and use that explicit version to avoid a second default alias lookup in
nvm use default
. - Remove some external calls using parameter filtering and case statements. (relates to #709)
- Cache a few function calls; clean up some logic.
- Testing
- Make sure
npm run test/fast
passes whether there's a system node installed or not. - Use
ksh
/zsh
travis-ci
addons to avoid the need forsudo apt-get install
.
- Make sure