Compare commits

...

103 Commits

Author SHA1 Message Date
Jordan Harband
8ec056f768 v0.30.0 2015-12-27 23:19:14 -08:00
Jordan Harband
f279837d5c [Refactor] fix some bugs in nvm_is_natural_num, add unit tests. 2015-12-27 13:15:53 -08:00
Jordan Harband
32d184099c [Tests] fix cleanup in nvm_supports_xz unit test 2015-12-27 13:18:28 -08:00
Jordan Harband
31457fec3f [Refactor] nvm install: make -j and -s order-independent. 2015-12-27 12:52:01 -08:00
thelostspore
1a6f85da46 README: troubleshooting scenario and homebrew unsupported note 2015-12-27 12:55:35 -08:00
Jordan Harband
d40eca8126 Merge pull request #752 from PeterDaveHelloKitchen/parallel_build
[New] `nvm install`: Enable multiple jobs for make when build from source via `-j`
2015-12-27 12:37:48 -08:00
Peter Dave Hello
cfccf03b3d add test for install from source 2015-12-28 01:37:57 +08:00
Peter Dave Hello
e78dc5110e fix CPU_THREADS/CPU_THREAD_VALID/MAKE_JOBS prefix 2015-12-28 01:37:57 +08:00
Peter Dave Hello
6320719dd8 Support parameter -j to set jobs for make 2015-12-28 01:37:57 +08:00
Peter Dave Hello
a8e6fee001 Enable multiple jobs for when build from source 2015-12-28 01:37:57 +08:00
Mathias Meyer
f851716601 Add workaround for Travis CI environment issue.
Per https://github.com/travis-ci/travis-ci/issues/5363
2015-12-22 11:28:25 +01:00
Jordan Harband
9787c438bb Merge pull request #950 from kui/commands-includes-spaces
[Fix] fix `nvm-exec` for commands including spaces.

Relates to #903.
2015-12-24 08:42:01 -08:00
Keiichiro Ui
b76d43e9f8 Fix nvm-exec for the commands includes white-spaces 2015-12-24 19:48:35 +09:00
emparq
91ce41b702 [Fix: Install] incorrect check for "$NVM_DIR/nvm.sh"
Should be using `-f` if checking for a file.

Closes #887.
2015-10-30 18:48:08 -07:00
Kilian Ciuffolo
6638ac3318 [refactor] improved bootstrap time
Fixes #860, closes #927.
2015-12-06 23:52:40 -08:00
Peter Dave Hello
605a305300 add iojs as one of the keywords in package.json 2015-12-21 23:07:52 -08:00
Jordan Harband
4976788d1b Merge pull request #945 from PeterDaveHello/update_nodejs_index.tab
[tests] update nodejs.org-dist-index.tab
2015-12-21 23:06:40 -08:00
Peter Dave Hello
ec9232bb06 update nodejs.org-dist-index.tab and related test
Src: https://iojs.org/dist/index.tab
2015-12-21 20:50:54 +08:00
Jordan Harband
c56c26badd Merge pull request #938 from tomByrer/patch-1
[Docs] del `nvmw` link
2015-12-13 22:55:03 -08:00
Jordan Harband
04c5e3540e nvm unalias: Provide a restore command when unaliasing.
Fixes #916.
2015-12-13 21:34:28 -08:00
Tom Byrer
2a8caf48e8 del nvmw link
Seems to be abandoned:
- https://github.com/hakobera/nvmw/issues/67
- https://github.com/hakobera/nvmw/issues/66
- https://github.com/hakobera/nvmw/issues/69
2015-12-13 18:16:14 -07:00
Daniel Kmak
896199facc Update README.markdown and LICENSE.md 2015-12-12 20:00:49 +01:00
Jordan Harband
8746344e02 Merge pull request #925 from riyadhalnur/patch-1
[Docs] add note about Xcode Command Line Tools on OS X
2015-12-04 23:57:57 -08:00
Riyadh Al Nur
dbe2a1b2b4 Updated README
Updated README to inform OSX users that XCode doesn't need to be installed in order to get stsrted using `nvm`.

Fixes #921
2015-12-05 13:52:30 +06:00
Jordan Harband
317f8f9e68 Merge pull request #901 from PeterDaveHello/patch-4
[Docs] add FreeBSD info to README
2015-12-04 23:42:51 -08:00
Peter Dave Hello
4ef9e1583c Update README.markdown
Talk about FreeBSD support.
Hope user can easily know that earlier, and also hope we can get much more help about this topic.
2015-12-05 15:41:04 +08:00
Jordan Harband
09bf45ce6c Merge pull request #908 from nullivex/master
[Docs] Add another Windows alternative.
2015-12-04 23:35:30 -08:00
Jordan Harband
641abc8407 Merge pull request #899 from PeterDaveHello/patch-2
[install] on install, indicate that there's no binary for FreeBSD
2015-12-04 23:31:49 -08:00
Peter Dave Hello
2a174d03d8 Update nvm.sh
Add prompt when there is no binary for node version greater than v1.0.0

Currently, on FreeBSD, if we try `nvm install 4.2`, we will only get:
> Installing node v1.0 and greater from source is not currently supported

In fact I had no idea what's wrong because I didn't use `-s` parameter for it,
and then I found that there are two reasons:
1. There was no pre-built nodejs binary from official for FreeBSD, which means we need to build from source.
2. nvm doesn't support build for v1.0 and greater version from source yet.

So I think there should be a prompt message to tell the user about the reason why nvm will go to build from source,
no matter it will succeed or fail.
2015-12-05 15:00:00 +08:00
Jordan Harband
803be3a4eb [Tests] temporarily disable WITHOUT_CURL tests.
Blocked by https://github.com/nodejs/build/issues/233
2015-12-02 22:49:38 -08:00
Jordan Harband
6d2c9a95b0 [Docs] remove note about "global install", since nvm is not intended for multiuser installs.
Per https://github.com/creationix/nvm/issues/918#issuecomment-161527422
2015-12-02 22:14:08 -08:00
Bryan Tong
720087b009 Add another Windows alternative.
Nodist is a similar CLI interface providing similar functionality. Nodist also recently added a Windows install wizard.
2015-11-18 20:18:55 -07:00
Jordan Harband
c742ab7e66 Fix npm version output for nvm run and nvm exec 2015-11-10 23:31:16 -08:00
Jordan Harband
e10705b896 [Docs] improve manual install instructions 2015-11-09 11:36:30 -08:00
Jordan Harband
9972de6dec [Docs] update version numbers in the readme; add default alias info 2015-11-04 21:19:32 -08:00
Jordan Harband
45e4387ce3 [Tests] Print out curl and wget versions inside travis-ci 2015-11-02 00:50:40 -08:00
Jordan Harband
cb03acf458 Merge pull request #892 from wbyoung/stable-node
[Docs] use "node", not "stable", since everything is stable now
2015-11-03 10:46:14 -08:00
Whitney Young
9cceded178 Updated docs for alias default. 2015-11-03 10:44:07 -08:00
Jordan Harband
772d3223e9 Merge pull request #875 from mrueg/remove-backticks
[shellcheck] Replace backticks with $() command substitution
2015-10-29 01:15:02 -07:00
Manuel Rüger
1adcabf5e8 Replace backticks with $() command substitution 2015-10-28 20:53:15 +01:00
Jordan Harband
a43ff7c9d9 Ensure that npm doesn't print out excess data, regardless of the user's log level.
Fixes #881.
2015-10-23 00:12:14 -07:00
Jordan Harband
149e5d483d Use real snapshot of iojs.org data for nvm_ls_remote_iojs tests. 2015-10-17 12:05:44 -07:00
Jordan Harband
114f27a075 Use nvm_ls_remote_index_tab for listing nodejs.org versions.
Enabled by https://github.com/nodejs/build/issues/218, unblocks #870.
2015-10-17 10:34:42 -07:00
Jordan Harband
690543d6ad Rename nvm_ls_remote_iojs_org → nvm_ls_remote_index_tab and make it generic. 2015-10-17 10:19:39 -07:00
Jordan Harband
b5e0603e64 Merge pull request #876 from derekstavis/patch-1
README: Add link to a dedicated nvm wrapper for fish shell
2015-10-15 17:17:13 -07:00
Derek Willian Stavis
84c2d6a91f README: Add link to a dedicated nvm wrapper for fish shell
Includes references to `nvm` plugin for Oh My Fish framework,
which implements not only a fish wrapper to official `nvm` script,
but also provides completions.
2015-10-15 21:00:23 -03:00
Jordan Harband
0b9526e3b4 Don't check $1 unless $# is >= 1.
Fixes #873. Partially fixes #868.
2015-10-14 23:02:00 -07:00
Jordan Harband
016e7dfdab [nvm run / nvm exec]: Silence "find nvmrc" output when --silent is provided.
Per https://github.com/creationix/nvm/issues/846#issuecomment-147588453
2015-10-13 21:58:35 -07:00
Jordan Harband
2a0316f80d [shellcheck] Remove useless echo 2015-10-13 01:26:43 -07:00
Jordan Harband
e7e28f436e [shellcheck] double-quote vars in more places 2015-10-12 16:07:29 -07:00
Jordan Harband
84aad508f7 Check $# before trying to check $1. Avoids failure due to nounset bash option.
Partially fixes #868.
2015-10-12 16:57:45 -07:00
Jordan Harband
8f3ee23390 [shellcheck] Correct redirection order: we want both stdout and stderr sent to /dev/null here. 2015-10-12 16:48:12 -07:00
Jordan Harband
032fab7172 locals need to be declared and assigned separately, for ksh. 2015-10-12 16:30:59 -07:00
Jordan Harband
46833efd79 [shellcheck] Remove useless echo 2015-10-12 16:10:43 -07:00
Jordan Harband
9407f850f1 [shellcheck] read without -r will mangle backslashes.
http://pubs.opengroup.org/onlinepubs/009695399/utilities/read.html / https://github.com/koalaman/shellcheck/wiki/SC2162
2015-10-12 16:05:55 -07:00
Jordan Harband
bf284203cb [shellcheck] Declare and assign separately to avoid masking return values
https://github.com/koalaman/shellcheck/wiki/SC2155
2015-10-12 16:02:35 -07:00
Jordan Harband
c957989fa9 Add nvm --version and $HOME to nvm debug 2015-10-10 14:27:00 -07:00
Jordan Harband
bc4d14bea6 Merge pull request #866 from jfirebaugh/patch-1
[Docs] Note compatibility issue with `set -e` (#866, #865, #721)
2015-10-09 11:32:52 -07:00
John Firebaugh
affe0baa95 Note compatibility issue with set -e
See discussion in #865.
2015-10-09 11:01:07 -07:00
Jordan Harband
e1c84bae37 v0.29.0 2015-10-09 01:52:19 -07:00
Jordan Harband
a928a8f181 nvm exec: don't fall back to .nvmrc when the provided version is not installed. 2015-10-08 17:37:53 -07:00
Jordan Harband
937c29c95a nvm run: use common code path for "ensure version installed"
Better than cb033adc6f
2015-10-08 16:48:17 -07:00
Jordan Harband
a0e94e16de Make sure nvm debug doesn't use an overridden sed 2015-10-08 00:19:53 -07:00
Jordan Harband
7028e5df19 Merge pull request #823 from jbergstroem/feature/prefer-xz
Support `xz` tarballs if available (on io.js >= 2.3.2 and node >= 4)
2015-10-08 00:19:35 -07:00
Johan Bergström
b8e4917646 Use xz tarballs if available
Saves us ~25% bandwidth while downloading the payload. This only applies
to hosts that has the `xz` binary and attempts to use iojs 2.3.2 or newer
(this includes nodejs 4.0+ as well). Older targets are unaffected.
2015-10-08 16:45:26 +11:00
Jordan Harband
cb033adc6f nvm run: use common code path for "ensure version installed" 2015-10-07 18:08:48 -07:00
Jordan Harband
20f4acdd25 [installing] echo the URL that the tarball is being downloaded from. 2015-10-07 20:28:18 -07:00
Jordan Harband
41153e207d Ensure nvm use output shows up *after* prefix check passes. 2015-10-07 14:40:31 -07:00
Jordan Harband
6b3c34313c Fix nvm_ls when $NVM_DIR has spaces in it.
Mostly fixes #861.
2015-10-07 13:57:29 -07:00
Jordan Harband
8541e2e1ee Properly quote some possible variables with spaces. 2015-10-07 13:57:13 -07:00
Jordan Harband
1efc8b4dbe Merge pull request #859 from fresheneesz/patch-1
[docs] Make sure to note "Install OR update"
2015-10-05 16:01:58 -07:00
fresheneesz
49f2c95013 Install OR update 2015-10-05 15:56:41 -07:00
Jordan Harband
06a21284ed Protect against cat clobbering. Fixes #858. 2015-10-04 14:28:38 -07:00
Jordan Harband
ebdcdc4363 v0.28.0 2015-10-02 01:50:44 -07:00
Jordan Harband
b805de80cb Add PREFIX and NPM_CONFIG_PREFIX env vars to nvm debug 2015-10-01 10:05:13 -07:00
Jordan Harband
44f416d58f Create and use nvm_sanitize_path for nvm debug 2015-10-01 09:41:34 -07:00
Jordan Harband
3d1ccfec70 Sort nvm ls results by semver version, so the order goes: "unmerged node", "iojs", "merged node". 2015-09-30 22:05:18 -07:00
Jordan Harband
f73ee40dfe Merge pull request #854 from misterdjules/fix-node-smartos-support
Fix support for installing node on SmartOS
2015-10-01 00:04:13 -07:00
Julien Gilli
2d692d9d78 Fix support for installing node on SmartOS
uname on SmartOS cannot be used to guess if 32 and/or 64 bits binaries
are supported, and its output is different than other uname commands on
other operating systems.

This change uses pkg_info to determine what types of binaries pkgsrc
would install. If pkg_info fails to run or is not present, this change
falls back to using isainfo -n, which determines what the kernel
supports.

It allows users to install node binaries on Solaris derivatives. io.js
can also be installed on Solaris derivatives starting with version
v3.3.1.
2015-09-30 22:10:29 -07:00
Jordan Harband
8aebf86329 v0.27.1 2015-09-27 06:40:29 -07:00
Jordan Harband
39dad845cf Do not exit install.sh on errors (revert part of 0787a559). Fixes #853. 2015-09-27 06:32:00 -07:00
Jordan Harband
838d72688f v0.27.0 2015-09-26 10:13:10 -07:00
Jordan Harband
8ee6f30352 Add support for $NPM_CONFIG_PREFIX to nvm_die_on_prefix.
Fixes #606.
2015-09-23 06:25:55 -07:00
Jordan Harband
1458de7293 Ensure that if npm config get prefix is set to something outside nvm, that nvm use refuses to work.
Fixes #606.
2015-09-21 04:47:37 -07:00
Jordan Harband
a1def71062 Add nvm_die_on_prefix 2015-09-21 04:47:30 -07:00
Jordan Harband
eb81fba8f7 Add support for --silent to nvm run and nvm exec.
Fixes #842.
2015-09-23 05:16:45 -07:00
Jordan Harband
7496a24bd6 Print the npm version when using nvm exec or nvm run. 2015-09-23 05:02:41 -07:00
Jordan Harband
c64a0343af [Docs] Add nvm help documentation for nvm exec 2015-09-23 04:51:55 -07:00
Jordan Harband
643365a948 Allow --silent option to nvm use to be in any position. 2015-09-23 04:51:55 -07:00
Jordan Harband
6e894520ec Use a tighter grep to avoid dnvm.sh conflicts.
Fixes #838.
2015-09-19 22:55:19 +09:00
Jordan Harband
9e389eb9fe Attempt to fix #829. 2015-09-19 13:37:08 +09:00
Jordan Harband
151efc32f5 Merge pull request #827 from lukechilds/master
Revert "Source the nvm.sh file"
2015-09-13 23:57:45 +09:00
Luke Childs
bda1d2ec29 Revert "Source the nvm.sh file"
Fixes #826
This reverts commit b4151e1446.
2015-09-12 23:05:56 +01:00
Jordan Harband
e3528b0d9e Fix nvm_ensure_version_installed iojs to not print an empty string for the version. 2015-09-11 10:42:47 +09:00
Jordan Harband
014a44e154 Minor refactoring to "install from source" logic tree. 2015-09-10 22:37:50 +09:00
Jordan Harband
c9215a127f When no io.js versions are installed, show N/A, not io.js-, as the resolved default alias.
Fixes #822.
2015-09-09 22:37:32 +09:00
Jordan Harband
c92effc6da Don't double-print *default* alias resolutions either. 2015-09-09 22:38:54 +09:00
Jordan Harband
1e2a7a8de4 Sort nvm ls-remote output so the order is: "pre-merged", "iojs", "post-merged". 2015-09-09 22:23:22 +09:00
Jordan Harband
d4caf9fb67 Fix some logic errors in the new "merged node" code path. 2015-09-09 09:46:39 +09:00
Jordan Harband
0ef20199dc Use NVM_VERSION instead of VERSION to be a bit less intrusive.
Fixes #820.
2015-09-07 21:43:21 +09:00
Jordan Harband
0d898b0aa4 When node version is not io.js and is v1.0 or later, on nvm install, run nvm_install_merged_node_binary 2015-08-28 00:51:19 -07:00
Jordan Harband
0181821b51 Add nvm_install_merged_node_binary 2015-08-28 00:51:19 -07:00
Jordan Harband
f34fef96d8 Add nvm_is_merged_node_version 2015-08-28 00:51:18 -07:00
36 changed files with 1359 additions and 658 deletions

View File

@@ -3,11 +3,15 @@ addons:
apt_packages:
- zsh
- ksh
before_install:
- curl --version
- wget --version
install:
- (mkdir /tmp/urchin && cd /tmp/urchin && curl -s "$(curl -s https://registry.npmjs.com/urchin | grep -Eo '"tarball":\s*"[^"]+"' | tail -n 1 | awk -F\" '{ print $4 }')" -O && tar -x -f urchin*)
- chmod +x /tmp/urchin/package/urchin
- '[ -z "$WITHOUT_CURL" ] || sudo apt-get remove curl -y'
script:
- export PATH=$(echo $PATH | sed 's/::/:/')
- NVM_DIR=$TRAVIS_BUILD_DIR make TEST_SUITE=$TEST_SUITE URCHIN=/tmp/urchin/package/urchin test-$SHELL
env:
- SHELL=bash TEST_SUITE=install_script
@@ -27,12 +31,12 @@ env:
- SHELL=zsh TEST_SUITE=sourcing
# - SHELL=ksh TEST_SUITE=sourcing
- SHELL=sh TEST_SUITE=installation
- SHELL=sh TEST_SUITE=installation WITHOUT_CURL=1
# - SHELL=sh TEST_SUITE=installation WITHOUT_CURL=1
- SHELL=dash TEST_SUITE=installation
- SHELL=dash TEST_SUITE=installation WITHOUT_CURL=1
# - SHELL=dash TEST_SUITE=installation WITHOUT_CURL=1
- SHELL=bash TEST_SUITE=installation
- SHELL=bash TEST_SUITE=installation WITHOUT_CURL=1
# - SHELL=bash TEST_SUITE=installation WITHOUT_CURL=1
- SHELL=zsh TEST_SUITE=installation
- SHELL=zsh TEST_SUITE=installation WITHOUT_CURL=1
# - SHELL=zsh TEST_SUITE=installation WITHOUT_CURL=1
# - SHELL=ksh TEST_SUITE=installation
# - SHELL=ksh TEST_SUITE=installation WITHOUT_CURL=1

View File

@@ -1,6 +1,6 @@
The MIT License (MIT)
Copyright (c) 2010-2014 Tim Caswell
Copyright (c) 2010-2016 Tim Caswell
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in

View File

@@ -4,33 +4,43 @@
First you'll need to make sure your system has a c++ compiler. For OSX, XCode will work, for Ubuntu, the build-essential and libssl-dev packages work.
Note: `nvm` does not support Windows (see [#284](https://github.com/creationix/nvm/issues/284)). Two alternatives exist, which are neither supported nor developed by us:
- [nvmw](https://github.com/hakobera/nvmw)
Note: `nvm` does not support Windows (see [#284](https://github.com/creationix/nvm/issues/284)). Three alternatives exist, which are neither supported nor developed by us:
- [nvm-windows](https://github.com/coreybutler/nvm-windows)
- [nodist](https://github.com/marcelklehr/nodist)
Note: `nvm` does not support [Fish] either (see [#303](https://github.com/creationix/nvm/issues/303)). An alternative exists, which is neither supported nor developed by us:
Note: `nvm` does not support [Fish] either (see [#303](https://github.com/creationix/nvm/issues/303)). Alternatives exist, which are neither supported nor developed by us:
- [nvm](https://github.com/derekstavis/plugin-nvm) plugin for [Oh My Fish](https://github.com/oh-my-fish/oh-my-fish), which makes nvm and its completions available in fish shell
- [bass](https://github.com/edc/bass) allows to use utilities written for Bash in fish shell
Note: We still have some problems with FreeBSD, because there is no pre-built binary from official for FreeBSD, and building from source may need [patches](https://www.freshports.org/www/node/files/patch-deps_v8_src_base_platform_platform-posix.cc), see the issue ticket:
- [[#900] [Bug] nodejs on FreeBSD need to be patched ](https://github.com/creationix/nvm/issues/900)
- [nodejs/node#3716](https://github.com/nodejs/node/issues/3716)
Note: On OSX, if you do not have XCode installed and you do not wish to download the ~4.3GB file, you can install the `Command Line Tools`. You can check out this blog post on how to just that:
- [How to Install Command Line Tools in OS X Mavericks & Yosemite (Without Xcode)](http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/)
Homebrew installation is not supported.
### Install script
To install you could use the [install script][2] using cURL:
To install or update nvm, you can use the [install script][2] using cURL:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.26.1/install.sh | bash
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.0/install.sh | bash
or Wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.26.1/install.sh | bash
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.30.0/install.sh | bash
<sub>The script clones the nvm repository to `~/.nvm` and adds the source line to your profile (`~/.bash_profile`, `~/.zshrc` or `~/.profile`).</sub>
You can customize the install source, directory and profile using the `NVM_SOURCE`, `NVM_DIR`, and `PROFILE` variables.
Eg: `curl ... | NVM_DIR=/usr/local/nvm bash` for a global install.
Eg: `curl ... | NVM_DIR="path/to/nvm" bash`
<sub>*NB. The installer can use `git`, `curl`, or `wget` to download `nvm`, whatever is available.*</sub>
### Manual install
For manual install create a folder somewhere in your filesystem with the `nvm.sh` file inside it. I put mine in a folder called `nvm`.
For manual install create a folder somewhere in your filesystem with the `nvm.sh` file inside it. I put mine in `~/.nvm`.
Or if you have `git` installed, then just clone it, and check out the latest version:
@@ -40,40 +50,42 @@ To activate nvm, you need to source it from your shell:
. ~/.nvm/nvm.sh
I always add this line to my `~/.bashrc`, `~/.profile`, or `~/.zshrc` file to have it automatically sourced upon login.
Often I also put in a line to use a specific version of node.
Add these lines to your `~/.bashrc`, `~/.profile`, or `~/.zshrc` file to have it automatically sourced upon login:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
## Usage
You can create an `.nvmrc` file containing version number in the project root directory (or any parent directory).
`nvm use`, `nvm install`, `nvm exec`, `nvm run`, and `nvm which` will all respect an `.nvmrc` file when a version is not supplied.
To download, compile, and install the latest v0.10.x release of node, do this:
To download, compile, and install the latest v5.0.x release of node, do this:
nvm install 0.10
nvm install 5.0
And then in any new shell just use the installed version:
nvm use 0.10
nvm use 5.0
Or you can just run it:
nvm run 0.10 --version
nvm run 5.0 --version
Or, you can run any arbitrary command in a subshell with the desired version of node:
nvm exec 0.10 node --version
nvm exec 4.2 node --version
You can also get the path to the executable to where it was installed:
nvm which 0.10
nvm which 5.0
In place of a version pointer like "0.10", you can use the special default aliases "stable" and "unstable":
In place of a version pointer like "0.10" or "5.0" or "4.2.1", you can use the following special default aliases with `nvm install`, `nvm use`, `nvm run`, `nvm exec`, `nvm which`, etc:
nvm install stable
nvm install unstable
nvm use stable
nvm run unstable --version
- `node`: this installs the latest version of [`node`](https://nodejs.org/en/)
- `iojs`: this installs the latest version of [`io.js`](https://iojs.org/en/)
- `stable`: this alias is deprecated, and only truly applies to `node` `v0.12` and earlier. Currently, this is an alias for `node`.
- `unstable`: this alias points to `node` `v0.11` - the last "unstable" node release, since post-1.0, all node versions are stable. (in semver, versions communicate breakage, not stability).
If you want to install a new version of Node.js and migrate npm packages from a previous version:
@@ -83,8 +95,8 @@ This will first use "nvm version node" to identify the current version you're mi
You can also install and migrate npm packages from specific versions of Node like this:
nvm install v0.10.40 --reinstall-packages-from=0.10.39
nvm install v0.12.7 --reinstall-packages-from=0.12.6
nvm install v5.0 --reinstall-packages-from=4.2
nvm install v4.2 --reinstall-packages-from=iojs
If you want to install [io.js](https://github.com/iojs/io.js/):
@@ -115,14 +127,14 @@ To restore your PATH, you can deactivate it.
To set a default Node version to be used in any new shell, use the alias 'default':
nvm alias default stable
nvm alias default node
To use a mirror of the node binaries, set `$NVM_NODEJS_ORG_MIRROR`:
export NVM_NODEJS_ORG_MIRROR=https://nodejs.org/dist
nvm install 0.10
nvm install node
NVM_NODEJS_ORG_MIRROR=https://nodejs.org/dist nvm install 0.10
NVM_NODEJS_ORG_MIRROR=https://nodejs.org/dist nvm install 4.2
To use a mirror of the iojs binaries, set `$NVM_IOJS_ORG_MIRROR`:
@@ -138,7 +150,7 @@ To use a mirror of the iojs binaries, set `$NVM_IOJS_ORG_MIRROR`:
nvm is released under the MIT license.
Copyright (C) 2010-2014 Tim Caswell
Copyright (C) 2010-2016 Tim Caswell
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
@@ -216,6 +228,10 @@ Environment Variables:
$NPM_CONFIG_PREFIX
$PREFIX
```
Shell settings:
```
set -e
```
## Problems
@@ -235,8 +251,10 @@ After the v0.8.6 release of node, nvm tries to install from binary packages. But
nvm install -s 0.8.6
If setting the `default` alias does not establish the node version in new shells (i.e. `nvm current` yields `system`), ensure that the system's node PATH is set before the `nvm.sh` source line in your shell profile (see [#658](https://github.com/creationix/nvm/issues/658))
[1]: https://github.com/creationix/nvm.git
[2]: https://github.com/creationix/nvm/blob/v0.26.1/install.sh
[2]: https://github.com/creationix/nvm/blob/v0.30.0/install.sh
[3]: https://travis-ci.org/creationix/nvm
[Urchin]: https://github.com/scraperwiki/urchin
[Fish]: http://fishshell.com

View File

@@ -1,7 +1,5 @@
#!/bin/bash
set -e
{ # this ensures the entire script is downloaded #
nvm_has() {
@@ -13,7 +11,7 @@ if [ -z "$NVM_DIR" ]; then
fi
nvm_latest_version() {
echo "v0.26.1"
echo "v0.30.0"
}
#
@@ -91,7 +89,7 @@ install_nvm_as_script() {
# Downloading to $NVM_DIR
mkdir -p "$NVM_DIR"
if [ -d "$NVM_DIR/nvm.sh" ]; then
if [ -f "$NVM_DIR/nvm.sh" ]; then
echo "=> nvm is already installed in $NVM_DIR, trying to update the script"
else
echo "=> Downloading nvm as script to '$NVM_DIR'"
@@ -240,7 +238,7 @@ nvm_do_install() {
printf "$SOURCE_STR"
echo
else
if ! grep -qc 'nvm.sh' "$NVM_PROFILE"; then
if ! command grep -qc '/nvm.sh' "$NVM_PROFILE"; then
echo "=> Appending source string to $NVM_PROFILE"
printf "$SOURCE_STR\n" >> "$NVM_PROFILE"
else
@@ -250,8 +248,7 @@ nvm_do_install() {
nvm_check_global_modules
. $NVM_DIR/nvm.sh
echo "=> You can now start using nvm"
echo "=> Close and reopen your terminal to start using nvm"
nvm_reset
}

View File

@@ -10,4 +10,4 @@ else
nvm use > /dev/null || (echo "No .nvmrc file found" >&2 && exit 127)
fi
exec $@
exec "$@"

758
nvm.sh

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "nvm",
"version": "0.26.1",
"version": "0.30.0",
"description": "Node Version Manager - Simple bash script to manage multiple active node.js versions",
"directories": {
"test": "test"
@@ -20,6 +20,7 @@
"keywords": [
"nvm",
"node",
"iojs",
"version",
"manager"
],

13
test/common.sh Normal file
View File

@@ -0,0 +1,13 @@
assert_ok() {
local FUNCTION=$1
shift
$($FUNCTION $@) || die '"'"$FUNCTION $@"'" should have succeeded, but failed'
}
assert_not_ok() {
local FUNCTION=$1
shift
! $($FUNCTION $@) || die '"'"$FUNCTION $@"'" should have failed, but succeeded'
}

View File

@@ -7,7 +7,7 @@ die () { echo $@ ; exit 1; }
[ `expr $PATH : ".*v0.2.3/.*/bin"` = 0 ] || echo "WARNING: Unexpectedly found v0.2.3 already active" >&2
. ../../nvm.sh
nvm use v0.2.3 || die "Failed to activate v0.2.3"
nvm use --delete-prefix v0.2.3 || die "Failed to activate v0.2.3"
[ `expr "$PATH" : ".*v0.2.3/.*/bin"` != 0 ] || die "PATH not set up properly"
[ `expr "$NODE_PATH" : ".*v0.2.3/.*/lib/node_modules"` = 0 ] || die "NODE_PATH should not contain (npm root -g)"
# ^ note: NODE_PATH should not contain `npm root -g` since globals should not be requireable

View File

@@ -23,8 +23,16 @@ EXPECTED_OUTPUT=''
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] \
|| die "'nvm use --silent foo' did not output '$EXPECTED_OUTPUT'; got '$OUTPUT'"
OUTPUT="$(nvm use foo --silent 2>&1)"
EXPECTED_OUTPUT=''
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] \
|| die "'nvm use foo --silent' did not output '$EXPECTED_OUTPUT'; got '$OUTPUT'"
EXIT_CODE="$(nvm use --silent foo 2>/dev/null ; echo $?)"
[ "_$EXIT_CODE" = "_8" ] || die "Expected exit code 8 from 'nvm use --silent foo'; got $EXIT_CODE"
EXIT_CODE="$(nvm use foo --silent 2>/dev/null ; echo $?)"
[ "_$EXIT_CODE" = "_8" ] || die "Expected exit code 8 from 'nvm use foo --silent'; got $EXIT_CODE"
cleanup;

View File

@@ -0,0 +1,42 @@
version date files npm v8 uv zlib openssl modules
v3.3.1 2015-09-15 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.14.3 4.4.63.30 1.7.4 1.2.8 1.0.2d 45
v3.3.0 2015-09-02 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.3 4.4.63.30 1.7.3 1.2.8 1.0.2d 45
v3.2.0 2015-08-25 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.3 4.4.63.26 1.6.1 1.2.8 1.0.2d 45
v3.1.0 2015-08-19 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.3 4.4.63.26 1.6.1 1.2.8 1.0.2d 45
v3.0.0 2015-08-04 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.3 4.4.63.26 1.6.1 1.2.8 1.0.2d 45
v2.5.0 2015-07-28 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.2 4.2.77.21 1.6.1 1.2.8 1.0.2d 44
v2.4.0 2015-07-17 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.13.0 4.2.77.20 1.6.1 1.2.8 1.0.2d 44
v2.3.4 2015-07-12 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.12.1 4.2.77.20 1.6.1 1.2.8 1.0.2d 44
v2.3.3 2015-07-04 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.3 4.2.77.20 1.6.1 1.2.8 1.0.2c 44
v2.3.2 2015-07-02 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.3 4.2.77.20 1.6.1 1.2.8 1.0.2c 44
v2.3.1 2015-06-23 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.3 4.2.77.20 1.6.1 1.2.8 1.0.2c 44
v2.3.0 2015-06-13 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.1 4.2.77.20 1.6.1 1.2.8 1.0.2c 44
v2.2.1 2015-06-01 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.0 4.2.77.20 1.5.0 1.2.8 1.0.2a 44
v2.2.0 2015-06-01 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.11.0 4.2.77.20 1.5.0 1.2.8 1.0.2a 44
v2.1.0 2015-05-24 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.10.1 4.2.77.20 1.5.0 1.2.8 1.0.2a 44
v2.0.2 2015-05-15 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.2.77.20 1.5.0 1.2.8 1.0.2a 44
v2.0.1 2015-05-08 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.2.77.20 1.5.0 1.2.8 1.0.2a 44
v2.0.0 2015-05-04 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.2.77.18 1.4.2 1.2.8 1.0.2a 44
v1.8.4 2015-07-12 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.1.0.27 1.4.2 1.2.8 1.0.2d 43
v1.8.3 2015-07-04 headers,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.1.0.27 1.4.2 1.2.8 1.0.2c 43
v1.8.2 2015-05-18 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.9.0 4.1.0.27 1.4.2 1.2.8 1.0.2a 43
v1.8.1 2015-04-21 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.8.3 4.1.0.27 1.4.2 1.2.8 1.0.2a 43
v1.7.1 2015-04-17 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.6 4.1.0.27 1.4.2 1.2.8 1.0.1m 43
v1.6.4 2015-04-06 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.5 4.1.0.27 1.4.2 1.2.8 1.0.1m 43
v1.6.3 2015-03-31 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.4 4.1.0.27 1.4.2 1.2.8 1.0.1m 43
v1.6.2 2015-03-23 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.1 4.1.0.25 1.4.2 1.2.8 1.0.1m 43
v1.6.1 2015-03-20 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.1 4.1.0.21 1.4.2 1.2.8 1.0.1m 43
v1.6.0 2015-03-20 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.1 4.1.0.21 1.4.2 1.2.8 1.0.1m 43
v1.5.1 2015-03-09 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.0 4.1.0.21 1.4.2 1.2.8 1.0.1k 43
v1.5.0 2015-03-06 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.7.0 4.1.0.21 1.4.2 1.2.8 1.0.1k 43
v1.4.3 2015-03-03 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.6.1 4.1.0.21 1.4.2 1.2.8 1.0.1k 43
v1.4.2 2015-02-28 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.6.1 4.1.0.21 1.4.2 1.2.8 1.0.1k 43
v1.4.1 2015-02-27 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.6.0 4.1.0.21 1.4.2 1.2.8 1.0.1k 43
v1.3.0 2015-02-20 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.5.1 4.1.0.14 1.4.0 1.2.8 1.0.1k 43
v1.2.0 2015-02-11 linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.5.1 4.1.0.14 1.4.0 1.2.8 1.0.1k 43
v1.1.0 2015-02-03 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.4.1 4.1.0.14 1.3.0 1.2.8 1.0.1k 43
v1.0.4 2015-01-24 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.3.0 4.1.0.12 1.2.1 1.2.8 1.0.1k 42
v1.0.3 2015-01-20 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.2.0 4.1.0.7 1.2.1 1.2.8 1.0.1k 42
v1.0.2 2015-01-16 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.1.18 3.31.74.1 1.2.1 1.2.8 1.0.1k 42
v1.0.1 2015-01-14 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.1.18 3.31.74.1 1.2.0 1.2.8 1.0.1k 42
v1.0.0 2015-01-14 linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 2.1.18 3.31.74.1 1.2.0 1.2.8 1.0.1k 42

View File

@@ -0,0 +1,17 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
. ../../common.sh
assert_not_ok iojs_version_has_solaris_binary ""
assert_not_ok iojs_version_has_solaris_binary "foo"
assert_not_ok iojs_version_has_solaris_binary "v1.1.0"
assert_ok iojs_version_has_solaris_binary "v3.3.1"
assert_ok iojs_version_has_solaris_binary "iojs-v3.3.1"
assert_ok iojs_version_has_solaris_binary "v3.3.2"
assert_ok iojs_version_has_solaris_binary "iojs-v3.3.2"
assert_ok iojs_version_has_solaris_binary "v3.4.1"
assert_ok iojs_version_has_solaris_binary "iojs-v3.4.1"

View File

@@ -0,0 +1,33 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
. ../../common.sh
# Invalid version numbers fail
assert_not_ok node_version_has_solaris_binary ""
assert_not_ok node_version_has_solaris_binary "foo"
# "Invalid" node version numbers fail
assert_not_ok node_version_has_solaris_binary "v1.0.0"
assert_not_ok node_version_has_solaris_binary "v3.3.1"
# Valid io.js version numbers that have a Solaris binary fail
assert_not_ok node_version_has_solaris_binary "iojs-v3.3.1"
# Invvalid io.js version numbers fail
assert_not_ok node_version_has_solaris_binary "iojs-v0.12.7"
# Valid node version numbers that don't have a Solaris binary fail
assert_not_ok node_version_has_solaris_binary "v0.8.5"
# Valid node version numbers that have a Solaris binary succeed
assert_ok node_version_has_solaris_binary "v0.8.6"
assert_ok node_version_has_solaris_binary "v0.10.0"
assert_ok node_version_has_solaris_binary "v0.12.7"
# Valid "merged" version numbers fail, because they're not
# considered node version numbers
assert_not_ok node_version_has_solaris_binary "v4.0.0"
assert_not_ok node_version_has_solaris_binary "v4.1.1"

View File

@@ -0,0 +1,235 @@
version date files npm v8 uv zlib openssl modules lts
v5.3.0 2015-12-15 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 3.3.12 4.6.85.31 1.8.0 1.2.8 1.0.2e 47 -
v5.2.0 2015-12-09 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 3.3.12 4.6.85.31 1.7.5 1.2.8 1.0.2e 47 -
v5.1.1 2015-12-03 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 3.3.12 4.6.85.31 1.7.5 1.2.8 1.0.2e 47 -
v5.1.0 2015-11-17 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 3.3.12 4.6.85.31 1.7.5 1.2.8 1.0.2d 47 -
v5.0.0 2015-10-29 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 3.3.6 4.6.85.28 1.7.5 1.2.8 1.0.2d 47 -
v4.2.3 2015-12-03 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.7 4.5.103.35 1.7.5 1.2.8 1.0.2e 46 Argon
v4.2.2 2015-11-03 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.7 4.5.103.35 1.7.5 1.2.8 1.0.2d 46 Argon
v4.2.1 2015-10-13 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.7 4.5.103.35 1.7.5 1.2.8 1.0.2d 46 Argon
v4.2.0 2015-10-12 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.7 4.5.103.35 1.7.5 1.2.8 1.0.2d 46 Argon
v4.1.2 2015-10-05 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.4 4.5.103.35 1.7.5 1.2.8 1.0.2d 46 -
v4.1.1 2015-09-23 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.4 4.5.103.33 1.7.4 1.2.8 1.0.2d 46 -
v4.1.0 2015-09-18 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.3 4.5.103.33 1.7.4 1.2.8 1.0.2d 46 -
v4.0.0 2015-09-08 headers,linux-arm64,linux-armv6l,linux-armv7l,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,src,sunos-x64,sunos-x86,win-x64-msi,win-x86-msi 2.14.2 4.5.103.30 1.7.3 1.2.8 1.0.2d 46 -
v0.12.9 2015-12-03 headers,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.14.9 3.28.71.19 1.6.1 1.2.8 1.0.1p 14 -
v0.12.8 2015-11-24 headers,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.14.9 3.28.71.19 1.6.1 1.2.8 1.0.1p 14 -
v0.12.7 2015-07-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.11.3 3.28.71.19 1.6.1 1.2.8 1.0.1p 14 -
v0.12.6 2015-07-04 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.11.2 3.28.71.19 1.6.1 1.2.8 1.0.1o 14 -
v0.12.5 2015-06-22 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.11.2 3.28.71.19 1.6.1 1.2.8 1.0.1o 14 -
v0.12.4 2015-05-23 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.10.1 3.28.71.19 1.5.0 1.2.8 1.0.1m 14 -
v0.12.3 2015-05-14 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.9.1 3.28.71.19 1.5.0 1.2.8 1.0.1m 14 -
v0.12.2 2015-03-31 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.7.4 3.28.73.0 1.4.2 1.2.8 1.0.1m 14 -
v0.12.1 2015-03-24 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.5.1 3.28.73.0 1.0.2 1.2.8 1.0.1m 14 -
v0.12.0 2015-02-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.5.1 3.28.73.0 1.0.2 1.2.8 1.0.1l 14 -
v0.11.16 2015-01-30 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.3.0 3.28.73.0 1.0.2 1.2.8 1.0.1l 14 -
v0.11.15 2015-01-20 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.1.6 3.28.73.0 1.0.2 1.2.8 1.0.1j 14 -
v0.11.14 2015-01-16 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 2.0.0 3.26.33.0 1.0.0 1.2.3 1.0.1i 14 -
v0.11.13 2014-05-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.9 3.25.30.0 0.11.25 1.2.3 1.0.1g 14 -
v0.11.12 2014-04-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.3 3.22.24.19 0.11.22 1.2.3 1.0.1f 14 -
v0.11.11 2014-04-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.25 3.22.24.19 0.11.18 1.2.3 1.0.1f 14 -
v0.11.10 2014-04-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.22 3.22.24.10 0.11.17 1.2.3 1.0.1e 13 -
v0.11.9 2013-12-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.15 3.22.24.5 0.11.15 1.2.3 1.0.1e 13 -
v0.11.8 2013-12-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.13 3.21.18.3 0.11.14 1.2.3 1.0.1e 13 -
v0.11.7 2013-10-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.8 3.20.17.0 0.11.13 1.2.3 1.0.1e 0x000C -
v0.11.6 2013-08-22 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x86-msi 1.3.8 3.20.14.1 0.11.8 1.2.3 1.0.1e 0x000C -
v0.11.5 2013-08-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.6 3.20.11.0 0.11.7 1.2.3 1.0.1e 0x000C -
v0.11.4 2013-07-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x86-msi 1.3.4 3.20.2.0 0.11.5 1.2.3 1.0.1e 0x000C -
v0.11.3 2013-06-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.25 3.19.13.0 0.11.5 1.2.3 1.0.1e 0x000C -
v0.11.2 2013-05-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.21 3.19.0.0 0.11.2 1.2.3 1.0.1e 0x000C -
v0.11.1 2013-04-19 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.18 3.18.0.0 0.11.1 1.2.3 1.0.1e 0x000C -
v0.11.0 2013-04-01 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.15 3.17.13.0 0.10.3 1.2.3 1.0.1e 0x000C -
v0.10.41 2015-12-03 headers,linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.29 3.14.5.9 0.10.36 1.2.8 1.0.1p 11 -
v0.10.40 2015-07-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.36 1.2.8 1.0.1p 11 -
v0.10.39 2015-06-19 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.36 1.2.8 1.0.1o 11 -
v0.10.38 2015-03-23 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.36 1.2.8 1.0.1m 11 -
v0.10.37 2015-03-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.36 1.2.8 1.0.1l 11 -
v0.10.36 2015-01-30 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.30 1.2.8 1.0.1l 11 -
v0.10.35 2014-12-22 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.30 1.2.8 1.0.1j 11 -
v0.10.34 2014-12-17 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.30 1.2.8 1.0.1j 11 -
v0.10.33 2014-10-21 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.29 1.2.3 1.0.1j 11 -
v0.10.32 2014-09-16 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.28 3.14.5.9 0.10.28 1.2.3 1.0.1i 11 -
v0.10.31 2014-08-19 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.23 3.14.5.9 0.10.28 1.2.3 1.0.1i 11 -
v0.10.30 2014-07-31 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.21 3.14.5.9 0.10.28 1.2.3 1.0.1h 11 -
v0.10.29 2014-06-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.14 3.14.5.9 0.10.27 1.2.3 1.0.1h 11 -
v0.10.28 2014-06-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.9 3.14.5.9 0.10.27 1.2.3 1.0.1g 11 -
v0.10.27 2014-08-07 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.8 3.14.5.9 0.10.27 1.2.3 1.0.1g 11 -
v0.10.26 2014-04-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.4.3 3.14.5.9 0.10.25 1.2.3 1.0.1e 11 -
v0.10.25 2014-04-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.24 3.14.5.9 0.10.23 1.2.3 1.0.1e 11 -
v0.10.24 2013-12-19 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.21 3.14.5.9 0.10.21 1.2.3 1.0.1e 11 -
v0.10.23 2013-12-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.17 3.14.5.9 0.10.20 1.2.3 1.0.1e 11 -
v0.10.22 2013-12-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.14 3.14.5.9 0.10.19 1.2.3 1.0.1e 11 -
v0.10.21 2013-10-18 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.11 3.14.5.9 0.10.18 1.2.3 1.0.1e 11 -
v0.10.20 2013-09-30 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.11 3.14.5.9 0.10.17 1.2.3 1.0.1e 11 -
v0.10.19 2013-09-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.11 3.14.5.9 0.10.17 1.2.3 1.0.1e 11 -
v0.10.18 2013-10-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.8 3.14.5.9 0.10.15 1.2.3 1.0.1e 11 -
v0.10.17 2013-08-25 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.8 3.14.5.9 0.10.14 1.2.3 1.0.1e 11 -
v0.10.16 2013-08-16 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.8 3.14.5.9 0.10.13 1.2.3 1.0.1e 11 -
v0.10.15 2013-08-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.5 3.14.5.9 0.10.13 1.2.3 1.0.1e 11 -
v0.10.14 2013-08-12 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.5 3.14.5.9 0.10.13 1.2.3 1.0.1e 11 -
v0.10.13 2013-07-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.3.2 3.14.5.9 0.10.12 1.2.3 1.0.1e 11 -
v0.10.12 2013-06-18 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.32 3.14.5.9 0.10.11 1.2.3 1.0.1e 11 -
v0.10.11 2013-06-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.30 3.14.5.9 0.10.11 1.2.3 1.0.1e 11 -
v0.10.10 2013-06-04 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.25 3.14.5.9 0.10.10 1.2.3 1.0.1e 11 -
v0.10.9 2013-06-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.24 3.14.5.9 0.10.9 1.2.3 1.0.1e 11 -
v0.10.8 2013-05-24 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.23 3.14.5.9 0.10.8 1.2.3 1.0.1e 11 -
v0.10.7 2013-05-17 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.21 3.14.5.8 0.10.7 1.2.3 1.0.1e 11 -
v0.10.6 2013-05-14 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.18 3.14.5.8 0.10.5 1.2.3 1.0.1e 11 -
v0.10.5 2013-04-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.18 3.14.5.8 0.10.5 1.2.3 1.0.1e 11 -
v0.10.4 2013-04-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.18 3.14.5.8 0.10.4 1.2.3 1.0.1e 11 -
v0.10.3 2013-04-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.17 3.14.5.8 0.10.3 1.2.3 1.0.1e 0x000B -
v0.10.2 2013-03-28 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.15 3.14.5.8 0.10.3 1.2.3 1.0.1e 0x000B -
v0.10.1 2013-03-21 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.15 3.14.5.8 0.10 1.2.3 1.0.1e 0x000B -
v0.10.0 2013-03-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.14 3.14.5.8 0.9 1.2.3 1.0.1e 0x000B -
v0.9.12 2013-03-07 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.12 3.14.5.8 0.9 1.2.3 1.0.1e 0x000B -
v0.9.11 2013-03-01 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.12 3.14.5.0 0.9 1.2.3 1.0.1e 0x000B -
v0.9.10 2013-02-25 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.12 3.15.11.15 0.9 1.2.3 1.0.1c 0x000B -
v0.9.9 2013-02-07 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.10 3.15.11.10 0.9 1.2.3 1.0.1c 0x000B -
v0.9.8 2013-02-02 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.3 3.15.11.10 0.9 1.2.3 1.0.1c 0x000A -
v0.9.7 2013-01-18 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.2 3.15.11.7 0.9 1.2.3 1.0.1c 0x000A -
v0.9.6 2013-01-11 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.0 3.15.11.5 0.9 1.2.3 1.0.1c 0x000A -
v0.9.5 2012-12-30 linux-x64,linux-x86,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.70 3.13.7.4 0.9 1.2.3 1.0.1c 0x000A -
v0.9.4 2012-12-21 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.70 3.13.7.4 0.9 1.2.3 1.0.1c 0x000A -
v0.9.3 2015-10-14 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.64 3.13.7.4 0.9 1.2.3 1.0.1c 0x000A -
v0.9.2 2012-09-17 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.61 3.11.10.22 0.9 1.2.3 1.0.1c 0x000A -
v0.9.1 2012-09-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.59 3.11.10.19 0.9 1.2.3 1.0.0f 0x000A -
v0.9.0 2012-07-20 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.44 3.11.10.15 0.9 1.2.3 1.0.0f 1 -
v0.8.28 2014-07-31 linux-x64,linux-x86,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.30 3.11.10.26 0.8 1.2.3 1.0.0f 1 -
v0.8.27 2014-06-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x86-msi 1.2.30 3.11.10.26 0.8 1.2.3 1.0.0f 1 -
v0.8.26 2013-10-18 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.30 3.11.10.26 0.8 1.2.3 1.0.0f 1 -
v0.8.25 2013-06-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.30 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.24 2013-06-03 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.24 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.23 2013-04-09 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.18 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.22 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.14 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.21 2013-02-25 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.11 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.20 2013-02-15 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.11 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.19 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.10 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.18 2013-01-18 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.2 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.17 2013-01-13 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.2.0 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.16 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.69 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.15 2012-11-26 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.66 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.14 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.65 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.13 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.65 3.11.10.25 0.8 1.2.3 1.0.0f 1 -
v0.8.12 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.63 3.11.10.22 0.8 1.2.3 1.0.0f 1 -
v0.8.11 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.62 3.11.10.22 0.8 1.2.3 1.0.0f 1 -
v0.8.10 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.62 3.11.10.22 0.8 1.2.3 1.0.0f 1 -
v0.8.9 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.61 3.11.10.22 0.8 1.2.3 1.0.0f 1 -
v0.8.8 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 1.1.59 3.11.10.19 0.8 1.2.3 1.0.0f 1 -
v0.8.7 2015-09-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.49 3.11.10.17 0.8 1.2.3 1.0.0f 1 -
v0.8.6 2012-08-06 linux-x64,linux-x86,osx-x64-pkg,osx-x64-tar,osx-x86-tar,src,sunos-x64,sunos-x86,win-x64-exe,win-x86-exe,win-x86-msi 1.1.48 3.11.10.17 0.8 1.2.3 1.0.0f 1 -
v0.8.5 2015-09-06 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.46 3.11.10.17 0.8 1.2.3 1.0.0f 1 -
v0.8.4 2015-09-06 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.45 3.11.10.17 0.8 1.2.3 1.0.0f 1 -
v0.8.3 2015-09-06 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.43 3.11.10.15 0.8 1.2.3 1.0.0f 1 -
v0.8.2 2012-07-09 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.36 3.11.10.14 0.8 1.2.3 1.0.0f 1 -
v0.8.1 2012-06-29 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.33 3.11.10.12 0.8 1.2.3 1.0.0f 1 -
v0.8.0 2012-06-22 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.32 3.11.10.10 0.8 1.2.3 1.0.0f 1 -
v0.7.12 2012-06-19 osx-x64-pkg,src,win-x64-exe,win-x86-exe,win-x86-msi 1.1.30 3.11.10.0 0.6 1.2.3 1.0.0f 1 -
v0.7.11 2012-06-15 osx-x64-pkg,src,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi 1.1.26 3.11.10.0 0.6 1.2.3 1.0.0f 1 -
v0.7.10 2012-06-11 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.25 3.9.24.31 0.6 1.2.3 1.0.0f 1 -
v0.7.9 2012-05-29 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.23 3.11.1.0 0.6 1.2.3 1.0.0f 1 -
v0.7.8 2012-04-18 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.18 3.9.24.9 0.6 1.2.3 1.0.0f 1 -
v0.7.7 2012-03-30 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.15 3.9.24.7 0.6 1.2.3 0.9.8r 1 -
v0.7.6 2012-03-31 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.8 3.9.17.0 0.6 1.2.3 0.9.8r 1 -
v0.7.5 2012-03-31 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.1 3.9.5.0 0.6 1.2.3 0.9.8r 1 -
v0.7.4 2012-03-31 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.1 3.9.5.0 0.6 1.2.3 0.9.8r 1 -
v0.7.3 2012-03-31 osx-x64-pkg,src,win-x86-exe 1.1.0-3 3.9.2.0 0.6 1.2.3 0.9.8r 1 -
v0.7.2 2012-03-31 osx-x64-pkg,src,win-x86-exe 1.1.0-3 3.8.9.0 0.6 1.2.3 0.9.8r 1 -
v0.7.1 2012-01-23 osx-x64-pkg,src,win-x86-exe 1.1.0-2 3.8.8.0 0.6 1.2.3 0.9.8r 1 -
v0.7.0 2012-01-17 osx-x64-pkg,src,win-x86-exe 1.1.0-2 3.8.6.0 0.6 1.2.3 0.9.8r 1 -
v0.6.21 2012-08-03 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.37 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.20 2012-07-10 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.37 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.19 2012-06-08 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.24 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.18 2012-05-14 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.21 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.17 2012-05-04 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.21 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.16 2012-04-27 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.19 3.6.6.25 0.6 1.2.3 0.9.8r 1 -
v0.6.15 2012-04-09 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.16 3.6.6.24 0.6 1.2.3 0.9.8r 1 -
v0.6.14 2012-03-23 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.12 3.6.6.24 0.6 1.2.3 0.9.8r 1 -
v0.6.13 2012-03-31 osx-x64-pkg,src,win-x64-exe,win-x86-exe 1.1.9 3.6.6.24 0.6 1.2.3 0.9.8r 1 -
v0.6.12 2012-03-02 osx-x64-pkg,src,win-x86-exe 1.1.4 3.6.6.24 0.6 1.2.3 0.9.8r 1 -
v0.6.11 2012-02-17 osx-x64-pkg,src,win-x86-exe 1.1.1 3.6.6.20 0.6 1.2.3 0.9.8r 1 -
v0.6.10 2012-02-04 osx-x64-pkg,src,win-x86-exe 1.1.0-3 3.6.6.20 0.6 1.2.3 0.9.8r 1 -
v0.6.9 2012-01-27 osx-x64-pkg,src,win-x86-exe 1.1.0-3 3.6.6.19 0.6 1.2.3 0.9.8r 1 -
v0.6.8 2012-01-23 osx-x64-pkg,src,win-x86-exe 1.1.0-2 3.6.6.19 0.6 1.2.3 0.9.8r 1 -
v0.6.7 2012-01-07 osx-x64-pkg,src,win-x86-exe 1.1.0-beta-10 3.6.6.15 0.6 1.2.3 0.9.8r 1 -
v0.6.6 2012-03-31 osx-x64-pkg,src,win-x86-exe 1.1.0-beta-4 3.6.6.14 0.6 1.2.3 0.9.8r 1 -
v0.6.5 2012-03-31 osx-x64-pkg,src,win-x86-exe 1.1.0-alpha-6 3.6.6.11 0.6 1.2.3 0.9.8r 1 -
v0.6.4 2011-12-03 osx-x64-pkg,src,win-x86-exe 1.1.0-alpha-6 3.6.6.8 0.6 1.2.3 0.9.8r 1 -
v0.6.3 2011-11-25 osx-x64-pkg,src,win-x86-exe 1.1.0-alpha-2 3.6.6.8 0.6 1.2.3 0.9.8r 1 -
v0.6.2 2011-11-18 osx-x64-pkg,src,win-x86-exe - 3.6.6.8 0.6 1.2.3 0.9.8r 1 -
v0.6.1 2011-11-11 osx-x64-pkg,src,win-x86-exe - 3.6.6.7 0.1 1.2.3 0.9.8r 1 -
v0.6.0 2011-11-04 src,win-x86-exe - 3.6.6.6 0.1 1.2.3 0.9.8r 1 -
v0.5.10 2011-10-22 src,win-x86-exe - 3.7.0.0 0.1 1.2.3 0.9.8r 1 -
v0.5.9 2011-10-11 src,win-x86-exe - 3.6.4.0 0.1 1.2.3 0.9.8r 1 -
v0.5.8 2011-09-30 src,win-x86-exe - 3.6.4.0 0.1 1.2.3 0.9.8r 1 -
v0.5.7 2011-09-16 src,win-x86-exe - 3.6.4.0 0.1 - 0.9.8r 1 -
v0.5.6 2011-08-26 src,win-x86-exe - 3.6.2.0 0.1 - 0.9.8r 1 -
v0.5.5 2011-08-26 src,win-x86-exe - 3.5.8.0 0.1 - 0.9.8r 1 -
v0.5.4 2011-08-26 src,win-x86-exe - 3.5.4.3 0.1 - - 1 -
v0.5.3 2011-08-26 src,win-x86-exe - 3.4.14.0 0.1 - - 1 -
v0.5.2 2011-08-26 src,win-x86-exe - 3.4.14.0 0.1 - - 1 -
v0.5.1 2011-08-26 src,win-x86-exe - 3.4.10.0 0.1 - - 1 -
v0.5.0 2011-08-26 src - 3.1.8.25 - - - 1 -
v0.4.12 2015-10-17 src - 3.1.8.26 - - - 1 -
v0.4.11 2011-08-26 src - 3.1.8.26 - - - 1 -
v0.4.10 2011-08-26 src - 3.1.8.26 - - - 1 -
v0.4.9 2011-08-26 src - 3.1.8.25 - - - 1 -
v0.4.8 2011-08-26 src - 3.1.8.16 - - - 1 -
v0.4.7 2011-08-26 src - 3.1.8.10 - - - 1 -
v0.4.6 2011-08-26 src - 3.1.8.10 - - - 1 -
v0.4.5 2011-08-26 src - 3.1.8.8 - - - 1 -
v0.4.4 2011-08-26 src - 3.1.8.5 - - - 1 -
v0.4.3 2011-08-26 src - 3.1.8.3 - - - 1 -
v0.4.2 2011-08-26 src - 3.1.8.0 - - - 1 -
v0.4.1 2011-08-26 src - 3.1.5.0 - - - 1 -
v0.4.0 2011-08-26 src - 3.1.2.0 - - - 1 -
v0.3.8 2011-08-26 src - 3.1.1.0 - - - 1 -
v0.3.7 2011-08-26 src - 3.0.10.0 - - - 1 -
v0.3.6 2011-08-26 src - 3.0.9.0 - - - 1 -
v0.3.5 2011-08-26 src - 3.0.4.1 - - - 1 -
v0.3.4 2011-08-26 src - 3.0.4.1 - - - 1 -
v0.3.3 2011-08-26 src - 3.0.4.1 - - - 1 -
v0.3.2 2011-08-26 src - 3.0.3.0 - - - 1 -
v0.3.1 2011-08-26 src - 2.5.3.0 - - - 1 -
v0.3.0 2011-08-26 src - 2.5.1.0 - - - 1 -
v0.2.6 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.5 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.4 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.3 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.2 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.1 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.2.0 2011-08-26 src - 2.3.8.0 - - - 1 -
v0.1.104 2011-08-26 src - 2.3.6.1 - - - 1 -
v0.1.103 2011-08-26 src - 2.3.5.0 - - - 1 -
v0.1.102 2011-08-26 src - 2.3.2.0 - - - 1 -
v0.1.101 2011-08-26 src - 2.3.0.0 - - - 1 -
v0.1.100 2011-08-26 src - 2.2.21.0 - - - - -
v0.1.99 2011-08-26 src - 2.2.18.0 - - - - -
v0.1.98 2011-08-26 src - 2.2.16.0 - - - - -
v0.1.97 2011-08-26 src - 2.2.12.0 - - - - -
v0.1.96 2011-08-26 src - 2.2.0 - - - - -
v0.1.95 2011-08-26 src - 2.2.0 - - - - -
v0.1.94 2011-08-26 src - 2.2.8.0 - - - - -
v0.1.93 2011-08-26 src - 2.2.6.0 - - - - -
v0.1.92 2011-08-26 src - 2.2.4.2 - - - - -
v0.1.91 2011-08-26 src - 2.2.3.1 - - - - -
v0.1.90 2011-08-26 src - 2.2.0.3 - - - - -
v0.1.33 2011-08-26 src - 2.1.6.0 - - - - -
v0.1.32 2011-08-26 src - 2.1.3.0 - - - - -
v0.1.31 2011-08-26 src - 2.1.2.0 - - - - -
v0.1.30 2011-08-26 src - 2.1.1.1 - - - - -
v0.1.29 2011-08-26 src - 2.1.0.0 - - - - -
v0.1.28 2011-08-26 src - 2.1.0.0 - - - - -
v0.1.27 2011-08-26 src - 2.1.0.0 - - - - -
v0.1.26 2011-08-26 src - 2.0.6.1 - - - - -
v0.1.25 2011-08-26 src - 2.0.5.4 - - - - -
v0.1.24 2011-08-26 src - 2.0.5.4 - - - - -
v0.1.23 2011-08-26 src - 2.0.0 - - - - -
v0.1.22 2011-08-26 src - 2.0.0 - - - - -
v0.1.21 2011-08-26 src - 2.0.0 - - - - -
v0.1.20 2011-08-26 src - 2.0.2.0 - - - - -
v0.1.19 2011-08-26 src - 2.0.2.0 - - - - -
v0.1.18 2011-08-26 src - 1.3.18.0 - - - - -
v0.1.17 2011-08-26 src - 1.3.18.0 - - - - -
v0.1.16 2011-08-26 src - 1.3.18.0 - - - - -
v0.1.15 2011-08-26 src - 1.3.16.0 - - - - -
v0.1.14 2011-08-26 src - 1.3.15.0 - - - - -

View File

@@ -0,0 +1,74 @@
#!/bin/sh
cleanup () {
alias nvm_has='\nvm_has'
alias npm='\npm'
unset -f nvm_has npm
}
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
OUTPUT="$(nvm_die_on_prefix 2>&1)"
EXPECTED_OUTPUT="First argument \"delete the prefix\" must be zero or one"
EXIT_CODE="$(nvm_die_on_prefix >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'nvm_die_on_prefix' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_1" ] || die "'nvm_die_on_prefix' did not exit with 1; got "$EXIT_CODE""
OUTPUT="$(nvm_die_on_prefix 2 2>&1)"
EXPECTED_OUTPUT="First argument \"delete the prefix\" must be zero or one"
EXIT_CODE="$(nvm_die_on_prefix 2 >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'nvm_die_on_prefix 2' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_1" ] || die "'nvm_die_on_prefix' did not exit with 1; got "$EXIT_CODE""
OUTPUT="$(nvm_die_on_prefix 0 2>&1)"
EXPECTED_OUTPUT="Second argument \"nvm command\" must be nonempty"
EXIT_CODE="$(nvm_die_on_prefix 0 >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'nvm_die_on_prefix 0' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_2" ] || die "'nvm_die_on_prefix 0' did not exit with 2; got '$EXIT_CODE'"
nvm_has() { return 1; } # ie, npm is not installed
OUTPUT="$(nvm_die_on_prefix 0 foo 2>&1)"
[ -z "$OUTPUT" ] || die "nvm_die_on_prefix was not a noop when nvm_has returns 1, got '$OUTPUT'"
nvm_has() { return 0; }
npm() {
local args
args="$@"
if [ "_$args" = "_config get prefix" ]; then
echo "$(nvm_version_dir new)/good prefix"
fi
}
OUTPUT="$(nvm_die_on_prefix 0 foo 2>&1)"
[ -z "$OUTPUT" ] || die "'nvm_die_on_prefix' was not a noop when prefix is good; got '$OUTPUT'"
OUTPUT="$(PREFIX=bar nvm_die_on_prefix 0 foo 2>&1)"
EXPECTED_OUTPUT='nvm is not compatible with the "PREFIX" environment variable: currently set to "bar"
Run `unset PREFIX` to unset it.'
EXIT_CODE="$(PREFIX=bar nvm_die_on_prefix 0 foo >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'PREFIX=bar nvm_die_on_prefix 0 foo' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_3" ] || die "'PREFIX=bar nvm_die_on_prefix 0 foo' did not exit with 3; got '$EXIT_CODE'"
OUTPUT="$(NPM_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo 2>&1)"
EXPECTED_OUTPUT='nvm is not compatible with the "NPM_CONFIG_PREFIX" environment variable: currently set to "bar"
Run `unset NPM_CONFIG_PREFIX` to unset it.'
EXIT_CODE="$(NPM_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'NPM_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo' did not error with '$EXPECTED_OUTPUT'; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_4" ] || die "'NPM_CONFIG_PREFIX=bar nvm_die_on_prefix 0 foo' did not exit with 4; got '$EXIT_CODE'"
npm() {
local args
args="$@"
if [ "_$args" = "_config get prefix" ]; then
echo "./bad prefix"
fi
}
OUTPUT="$(nvm_die_on_prefix 0 foo 2>&1)"
EXPECTED_OUTPUT="nvm is not compatible with the npm config \"prefix\" option: currently set to \"./bad prefix\"
Run \`npm config delete prefix\` or \`foo\` to unset it."
EXIT_CODE="$(nvm_die_on_prefix 0 foo >/dev/null 2>&1; echo $?)"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "'nvm_die_on_prefix 0 foo' did not error with '$EXPECTED_OUTPUT' with bad prefix set; got '$OUTPUT'"
[ "_$EXIT_CODE" = "_10" ] || die "'nvm_die_on_prefix 0 foo' did not exit with 10 with bad prefix set; got '$EXIT_CODE'"
cleanup

View File

@@ -20,4 +20,11 @@ EXIT_CODE=$?
[ "_$OUTPUT" = "_" ] || die "expected 'nvm_ensure_version_installed 0.1' to have no output, got $OUTPUT"
[ "_$EXIT_CODE" = "_0" ] || die "expected 'nvm_ensure_version_installed 0.1' to exit with 0, got $EXIT_CODE"
# Special case for "iojs"
OUTPUT="$(nvm_ensure_version_installed iojs 2>&1)"
EXIT_CODE=$?
EXPECTED_OUTPUT='N/A: version "iojs" is not yet installed'
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "expected 'nvm_ensure_version_installed iojs' to give $EXPECTED_OUTPUT, got $OUTPUT"
[ "_$EXIT_CODE" = "_1" ] || die "expected 'nvm_ensure_version_installed iojs' to exit with 1, got $EXIT_CODE"
cleanup

View File

@@ -0,0 +1,80 @@
#!/bin/sh
# Save the PATH as it was when the test started to restore it when it
# finishes
ORIG_PATH=$PATH
cleanup() {
# Restore the PATH as it was when the test started
export PATH=ORIG_PATH
}
die () { cleanup; echo $@ ; exit 1; }
. ../../../nvm.sh
# Directory where mocked binaries used by nvm_get_arch for each OS/arch are
# located
MOCKS_DIR=`pwd`/../../mocks
# Sets the PATH for these tests to include the symlinks to the mocked
# binaries
export PATH=.:${PATH}
# Setups mock binaries for a given OS and arch that mimic
# the output of the real binaries used by nvm_get_arch to guess
# the architecture of a given system.
setup_mock_arch() {
local OS=$1
local ARCH=$2
local OPT=$3
if [ "_$OS" = "_solaris" ] || [ "_$OS" = "_smartos" ]; then
ln -sf "${MOCKS_DIR}/isainfo_${ARCH}" ./isainfo
if [ "_$OPT" != "_no_pkg_info" ]; then
ln -sf "${MOCKS_DIR}/pkg_info_${ARCH}" ./pkg_info
fi
fi
ln -sf "${MOCKS_DIR}/uname_${OS}_${ARCH}" ./uname
}
# Cleans up the setup done by setup_mock_arch.
cleanup_mock_arch() {
local OS=$1
local ARCH=$2
if [ "_$OS" = "_solaris" ] || [ "_$OS" = "_smartos" ]; then
rm -f ./isainfo
rm -f ./pkg_info
fi
rm -f ./uname
}
# Runs nvm_get_arch for architecture $ARCH and OS $OS, and compares the
# expected output $EXPECTED_OUTPUT with the actual output. Does nothing
# and exits cleanly if they match, dies otherwise.
run_test() {
local ARCH=$1
local OS=$2
local EXPECTED_OUTPUT=$3
local OPT=$4
setup_mock_arch $OS $ARCH $OPT
local OUTPUT="$(nvm_get_arch)"
cleanup_mock_arch $OS $ARCH
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] ||
die "nvm_get_arch for OS \"$OS\" and arch \"$ARCH\" with OPT \"$OPT\" did
not return \"$EXPECTED_OUTPUT\"; got \"$OUTPUT\""
}
run_test x86 smartos x86
run_test x86 smartos x86 no_pkg_info
run_test amd64 smartos x64
run_test amd64 smartos x64 no_pkg_info
run_test x86 osx x86
run_test amd64 osx x64
cleanup

View File

@@ -0,0 +1,32 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
. ../../common.sh
# Invalid version numbers fail
assert_not_ok nvm_has_solaris_binary ""
assert_not_ok nvm_has_solaris_binary "foo"
# "Invalid" node version numbers fail
assert_not_ok nvm_has_solaris_binary "v1.0.0"
assert_not_ok nvm_has_solaris_binary "v3.3.1"
# Valid io.js version numbers that have a Solaris binary succeed
assert_ok nvm_has_solaris_binary "iojs-v3.3.1"
# Invvalid io.js version numbers fail
assert_not_ok nvm_has_solaris_binary "iojs-v0.12.7"
# Valid node version numbers that don't have a Solaris binary fail
assert_not_ok nvm_has_solaris_binary "v0.8.5"
# Valid node version numbers that have a Solaris binary succeed
assert_ok nvm_has_solaris_binary "v0.8.6"
assert_ok nvm_has_solaris_binary "v0.10.0"
assert_ok nvm_has_solaris_binary "v0.12.7"
# Valid "merged" version numbers succeed
assert_ok nvm_has_solaris_binary "v4.0.0"
assert_ok nvm_has_solaris_binary "v4.1.1"

View File

@@ -0,0 +1,10 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
nvm_is_merged_node_version '4.0' || die '"nvm_is_merged_node_version 4.0 was not true'
nvm_is_merged_node_version '5.1' || die '"nvm_is_merged_node_version 5.1 was not true'
! nvm_is_merged_node_version '3.99' || die '"nvm_is_merged_node_version 3.99 was not false'
! nvm_is_merged_node_version 'v1.0.0' || die '"nvm_is_merged_node_version v1.0.0" was not false'

View File

@@ -0,0 +1,17 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
! nvm_is_natural_num || die 'no args is not false'
! nvm_is_natural_num '' || die 'empty string is not false'
! nvm_is_natural_num a || die 'a is not false'
! nvm_is_natural_num -1 || 'negative number is not false'
! nvm_is_natural_num --1 || 'double negative number is not false'
! nvm_is_natural_num 1.2 || 'decimal number is not false'
! nvm_is_natural_num 0 || die 'zero is not false'
nvm_is_natural_num 1 || die '1 is not true'
nvm_is_natural_num 2 || die '2 is not true'
nvm_is_natural_num 1234 || die '1234 is not true'

View File

@@ -9,437 +9,9 @@ cleanup() {
. ../../../nvm.sh
# sample output at the time the test was written
TAB_PATH="$PWD/nodejs.org-dist-index.tab"
nvm_download() {
echo 'foo "v0.10.0'
echo 'foo "v0.10.0'
echo 'foo "v0.10.1'
echo 'foo "v0.10.1'
echo 'foo "v0.10.10'
echo 'foo "v0.10.10'
echo 'foo "v0.10.11'
echo 'foo "v0.10.11'
echo 'foo "v0.10.12'
echo 'foo "v0.10.12'
echo 'foo "v0.10.13'
echo 'foo "v0.10.13'
echo 'foo "v0.10.14'
echo 'foo "v0.10.14'
echo 'foo "v0.10.15'
echo 'foo "v0.10.15'
echo 'foo "v0.10.16'
echo 'foo "v0.10.16'
echo 'foo "v0.10.16'
echo 'foo "v0.10.16'
echo 'foo "v0.10.17'
echo 'foo "v0.10.17'
echo 'foo "v0.10.18'
echo 'foo "v0.10.18'
echo 'foo "v0.10.19'
echo 'foo "v0.10.19'
echo 'foo "v0.10.2'
echo 'foo "v0.10.2'
echo 'foo "v0.10.20'
echo 'foo "v0.10.20'
echo 'foo "v0.10.21'
echo 'foo "v0.10.21'
echo 'foo "v0.10.22'
echo 'foo "v0.10.22'
echo 'foo "v0.10.23'
echo 'foo "v0.10.23'
echo 'foo "v0.10.24'
echo 'foo "v0.10.24'
echo 'foo "v0.10.25'
echo 'foo "v0.10.25'
echo 'foo "v0.10.26'
echo 'foo "v0.10.26'
echo 'foo "v0.10.27'
echo 'foo "v0.10.27'
echo 'foo "v0.10.28'
echo 'foo "v0.10.28'
echo 'foo "v0.10.29'
echo 'foo "v0.10.29'
echo 'foo "v0.10.3'
echo 'foo "v0.10.3'
echo 'foo "v0.10.30'
echo 'foo "v0.10.30'
echo 'foo "v0.10.31'
echo 'foo "v0.10.31'
echo 'foo "v0.10.32'
echo 'foo "v0.10.32'
echo 'foo "v0.10.4'
echo 'foo "v0.10.4'
echo 'foo "v0.10.5'
echo 'foo "v0.10.5'
echo 'foo "v0.10.6'
echo 'foo "v0.10.6'
echo 'foo "v0.10.7'
echo 'foo "v0.10.7'
echo 'foo "v0.10.8'
echo 'foo "v0.10.8'
echo 'foo "v0.10.9'
echo 'foo "v0.10.9'
echo 'foo "v0.11.0'
echo 'foo "v0.11.0'
echo 'foo "v0.11.1'
echo 'foo "v0.11.1'
echo 'foo "v0.11.10'
echo 'foo "v0.11.10'
echo 'foo "v0.11.11'
echo 'foo "v0.11.11'
echo 'foo "v0.11.12'
echo 'foo "v0.11.12'
echo 'foo "v0.11.13'
echo 'foo "v0.11.13'
echo 'foo "v0.11.14'
echo 'foo "v0.11.14'
echo 'foo "v0.11.2'
echo 'foo "v0.11.2'
echo 'foo "v0.11.3'
echo 'foo "v0.11.3'
echo 'foo "v0.11.4'
echo 'foo "v0.11.4'
echo 'foo "v0.11.5'
echo 'foo "v0.11.5'
echo 'foo "v0.11.6'
echo 'foo "v0.11.6'
echo 'foo "v0.11.7'
echo 'foo "v0.11.7'
echo 'foo "v0.11.8'
echo 'foo "v0.11.8'
echo 'foo "v0.11.9'
echo 'foo "v0.11.9'
echo 'foo "v0.5.1'
echo 'foo "v0.5.1'
echo 'foo "v0.5.10'
echo 'foo "v0.5.10'
echo 'foo "v0.5.2'
echo 'foo "v0.5.2'
echo 'foo "v0.5.3'
echo 'foo "v0.5.3'
echo 'foo "v0.5.4'
echo 'foo "v0.5.4'
echo 'foo "v0.5.5'
echo 'foo "v0.5.5'
echo 'foo "v0.5.6'
echo 'foo "v0.5.6'
echo 'foo "v0.5.7'
echo 'foo "v0.5.7'
echo 'foo "v0.5.8'
echo 'foo "v0.5.8'
echo 'foo "v0.5.9'
echo 'foo "v0.5.9'
echo 'foo "v0.6.0'
echo 'foo "v0.6.0'
echo 'foo "v0.6.1'
echo 'foo "v0.6.1'
echo 'foo "v0.6.10'
echo 'foo "v0.6.10'
echo 'foo "v0.6.11'
echo 'foo "v0.6.11'
echo 'foo "v0.6.12'
echo 'foo "v0.6.12'
echo 'foo "v0.6.13'
echo 'foo "v0.6.13'
echo 'foo "v0.6.14'
echo 'foo "v0.6.14'
echo 'foo "v0.6.15'
echo 'foo "v0.6.15'
echo 'foo "v0.6.16'
echo 'foo "v0.6.16'
echo 'foo "v0.6.17'
echo 'foo "v0.6.17'
echo 'foo "v0.6.18'
echo 'foo "v0.6.18'
echo 'foo "v0.6.19'
echo 'foo "v0.6.19'
echo 'foo "v0.6.2'
echo 'foo "v0.6.2'
echo 'foo "v0.6.20'
echo 'foo "v0.6.20'
echo 'foo "v0.6.21'
echo 'foo "v0.6.21'
echo 'foo "v0.6.3'
echo 'foo "v0.6.3'
echo 'foo "v0.6.4'
echo 'foo "v0.6.4'
echo 'foo "v0.6.5'
echo 'foo "v0.6.5'
echo 'foo "v0.6.6'
echo 'foo "v0.6.6'
echo 'foo "v0.6.7'
echo 'foo "v0.6.7'
echo 'foo "v0.6.8'
echo 'foo "v0.6.8'
echo 'foo "v0.6.9'
echo 'foo "v0.6.9'
echo 'foo "v0.7.0'
echo 'foo "v0.7.0'
echo 'foo "v0.7.1'
echo 'foo "v0.7.1'
echo 'foo "v0.7.10'
echo 'foo "v0.7.10'
echo 'foo "v0.7.11'
echo 'foo "v0.7.11'
echo 'foo "v0.7.12'
echo 'foo "v0.7.12'
echo 'foo "v0.7.2'
echo 'foo "v0.7.2'
echo 'foo "v0.7.3'
echo 'foo "v0.7.3'
echo 'foo "v0.7.4'
echo 'foo "v0.7.4'
echo 'foo "v0.7.5'
echo 'foo "v0.7.5'
echo 'foo "v0.7.6'
echo 'foo "v0.7.6'
echo 'foo "v0.7.7'
echo 'foo "v0.7.7'
echo 'foo "v0.7.8'
echo 'foo "v0.7.8'
echo 'foo "v0.7.9'
echo 'foo "v0.7.9'
echo 'foo "v0.8.0'
echo 'foo "v0.8.0'
echo 'foo "v0.8.1'
echo 'foo "v0.8.1'
echo 'foo "v0.8.10'
echo 'foo "v0.8.10'
echo 'foo "v0.8.11'
echo 'foo "v0.8.11'
echo 'foo "v0.8.12'
echo 'foo "v0.8.12'
echo 'foo "v0.8.13'
echo 'foo "v0.8.13'
echo 'foo "v0.8.14'
echo 'foo "v0.8.14'
echo 'foo "v0.8.15'
echo 'foo "v0.8.15'
echo 'foo "v0.8.16'
echo 'foo "v0.8.16'
echo 'foo "v0.8.17'
echo 'foo "v0.8.17'
echo 'foo "v0.8.18'
echo 'foo "v0.8.18'
echo 'foo "v0.8.19'
echo 'foo "v0.8.19'
echo 'foo "v0.8.2'
echo 'foo "v0.8.2'
echo 'foo "v0.8.20'
echo 'foo "v0.8.20'
echo 'foo "v0.8.21'
echo 'foo "v0.8.21'
echo 'foo "v0.8.22'
echo 'foo "v0.8.22'
echo 'foo "v0.8.23'
echo 'foo "v0.8.23'
echo 'foo "v0.8.24'
echo 'foo "v0.8.24'
echo 'foo "v0.8.25'
echo 'foo "v0.8.25'
echo 'foo "v0.8.26'
echo 'foo "v0.8.26'
echo 'foo "v0.8.27'
echo 'foo "v0.8.27'
echo 'foo "v0.8.28'
echo 'foo "v0.8.28'
echo 'foo "v0.8.3'
echo 'foo "v0.8.3'
echo 'foo "v0.8.4'
echo 'foo "v0.8.4'
echo 'foo "v0.8.5'
echo 'foo "v0.8.5'
echo 'foo "v0.8.6'
echo 'foo "v0.8.6'
echo 'foo "v0.8.7'
echo 'foo "v0.8.7'
echo 'foo "v0.8.8'
echo 'foo "v0.8.8'
echo 'foo "v0.8.9'
echo 'foo "v0.8.9'
echo 'foo "v0.9.0'
echo 'foo "v0.9.0'
echo 'foo "v0.9.1'
echo 'foo "v0.9.1'
echo 'foo "v0.9.10'
echo 'foo "v0.9.10'
echo 'foo "v0.9.11'
echo 'foo "v0.9.11'
echo 'foo "v0.9.12'
echo 'foo "v0.9.12'
echo 'foo "v0.9.2'
echo 'foo "v0.9.2'
echo 'foo "v0.9.3'
echo 'foo "v0.9.3'
echo 'foo "v0.9.4'
echo 'foo "v0.9.4'
echo 'foo "v0.9.5'
echo 'foo "v0.9.5'
echo 'foo "v0.9.6'
echo 'foo "v0.9.6'
echo 'foo "v0.9.7'
echo 'foo "v0.9.7'
echo 'foo "v0.9.8'
echo 'foo "v0.9.8'
echo 'foo "v0.9.9'
echo 'foo "v0.9.9'
echo 'foo "v0.1.100'
echo 'foo "v0.1.100'
echo 'foo "v0.1.101'
echo 'foo "v0.1.101'
echo 'foo "v0.1.102'
echo 'foo "v0.1.102'
echo 'foo "v0.1.103'
echo 'foo "v0.1.103'
echo 'foo "v0.1.104'
echo 'foo "v0.1.104'
echo 'foo "v0.1.14'
echo 'foo "v0.1.14'
echo 'foo "v0.1.15'
echo 'foo "v0.1.15'
echo 'foo "v0.1.16'
echo 'foo "v0.1.16'
echo 'foo "v0.1.17'
echo 'foo "v0.1.17'
echo 'foo "v0.1.18'
echo 'foo "v0.1.18'
echo 'foo "v0.1.19'
echo 'foo "v0.1.19'
echo 'foo "v0.1.20'
echo 'foo "v0.1.20'
echo 'foo "v0.1.21'
echo 'foo "v0.1.21'
echo 'foo "v0.1.22'
echo 'foo "v0.1.22'
echo 'foo "v0.1.23'
echo 'foo "v0.1.23'
echo 'foo "v0.1.24'
echo 'foo "v0.1.24'
echo 'foo "v0.1.25'
echo 'foo "v0.1.25'
echo 'foo "v0.1.26'
echo 'foo "v0.1.26'
echo 'foo "v0.1.27'
echo 'foo "v0.1.27'
echo 'foo "v0.1.28'
echo 'foo "v0.1.28'
echo 'foo "v0.1.29'
echo 'foo "v0.1.29'
echo 'foo "v0.1.30'
echo 'foo "v0.1.30'
echo 'foo "v0.1.31'
echo 'foo "v0.1.31'
echo 'foo "v0.1.32'
echo 'foo "v0.1.32'
echo 'foo "v0.1.33'
echo 'foo "v0.1.33'
echo 'foo "v0.1.90'
echo 'foo "v0.1.90'
echo 'foo "v0.1.91'
echo 'foo "v0.1.91'
echo 'foo "v0.1.92'
echo 'foo "v0.1.92'
echo 'foo "v0.1.93'
echo 'foo "v0.1.93'
echo 'foo "v0.1.94'
echo 'foo "v0.1.94'
echo 'foo "v0.1.95'
echo 'foo "v0.1.95'
echo 'foo "v0.1.96'
echo 'foo "v0.1.96'
echo 'foo "v0.1.97'
echo 'foo "v0.1.97'
echo 'foo "v0.1.98'
echo 'foo "v0.1.98'
echo 'foo "v0.1.99'
echo 'foo "v0.1.99'
echo 'foo "v0.10.14'
echo 'foo "v0.10.14'
echo 'foo "v0.2.0'
echo 'foo "v0.2.0'
echo 'foo "v0.2.1'
echo 'foo "v0.2.1'
echo 'foo "v0.2.2'
echo 'foo "v0.2.2'
echo 'foo "v0.2.3'
echo 'foo "v0.2.3'
echo 'foo "v0.2.4'
echo 'foo "v0.2.4'
echo 'foo "v0.2.5'
echo 'foo "v0.2.5'
echo 'foo "v0.2.6'
echo 'foo "v0.2.6'
echo 'foo "v0.3.0'
echo 'foo "v0.3.0'
echo 'foo "v0.3.1'
echo 'foo "v0.3.1'
echo 'foo "v0.3.2'
echo 'foo "v0.3.2'
echo 'foo "v0.3.3'
echo 'foo "v0.3.3'
echo 'foo "v0.3.4'
echo 'foo "v0.3.4'
echo 'foo "v0.3.5'
echo 'foo "v0.3.5'
echo 'foo "v0.3.6'
echo 'foo "v0.3.6'
echo 'foo "v0.3.7'
echo 'foo "v0.3.7'
echo 'foo "v0.3.8'
echo 'foo "v0.3.8'
echo 'foo "v0.4.0'
echo 'foo "v0.4.0'
echo 'foo "v0.4.1'
echo 'foo "v0.4.1'
echo 'foo "v0.4.10'
echo 'foo "v0.4.10'
echo 'foo "v0.4.11'
echo 'foo "v0.4.11'
echo 'foo "v0.4.12'
echo 'foo "v0.4.12'
echo 'foo "v0.4.2'
echo 'foo "v0.4.2'
echo 'foo "v0.4.3'
echo 'foo "v0.4.3'
echo 'foo "v0.4.4'
echo 'foo "v0.4.4'
echo 'foo "v0.4.5'
echo 'foo "v0.4.5'
echo 'foo "v0.4.6'
echo 'foo "v0.4.6'
echo 'foo "v0.4.7'
echo 'foo "v0.4.7'
echo 'foo "v0.4.8'
echo 'foo "v0.4.8'
echo 'foo "v0.4.9'
echo 'foo "v0.4.9'
echo 'foo "v0.5.0'
echo 'foo "v0.5.0'
echo 'foo "v0.6.1'
echo 'foo "v0.6.1'
echo 'foo "v0.6.10'
echo 'foo "v0.6.10'
echo 'foo "v0.6.11'
echo 'foo "v0.6.11'
echo 'foo "v0.6.12'
echo 'foo "v0.6.12'
echo 'foo "v0.6.13'
echo 'foo "v0.6.13'
echo 'foo "v0.6.2'
echo 'foo "v0.6.2'
echo 'foo "v0.6.3'
echo 'foo "v0.6.3'
echo 'foo "v0.6.4'
echo 'foo "v0.6.4'
echo 'foo "v0.6.5'
echo 'foo "v0.6.5'
echo 'foo "v0.6.6'
echo 'foo "v0.6.6'
echo 'foo "v0.6.7'
echo 'foo "v0.6.7'
echo 'foo "v0.6.8'
echo 'foo "v0.6.8'
echo 'foo "v0.6.9'
echo 'foo "v0.6.9'
cat "$TAB_PATH"
}
OUTPUT="$(nvm_ls_remote foo)"
@@ -466,7 +38,7 @@ v0.3.8"
# Sanity checks
OUTPUT="$(nvm_print_implicit_alias remote stable)"
EXPECTED_OUTPUT="0.10"
EXPECTED_OUTPUT="5.3"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm_print_implicit_alias remote stable did not output $EXPECTED_OUTPUT; got $OUTPUT"
OUTPUT="$(nvm_print_implicit_alias remote unstable)"
@@ -474,11 +46,11 @@ EXPECTED_OUTPUT="0.11"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm_print_implicit_alias remote unstable did not output $EXPECTED_OUTPUT; got $OUTPUT"
OUTPUT="$(nvm_ls_remote stable)"
EXPECTED_OUTPUT="v0.10.32"
EXPECTED_OUTPUT="v5.3.0"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm_ls_remote stable did not output $EXPECTED_OUTPUT; got $OUTPUT"
OUTPUT="$(nvm_ls_remote unstable)"
EXPECTED_OUTPUT="v0.11.14"
EXPECTED_OUTPUT="v0.11.16"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm_ls_remote unstable did not output $EXPECTED_OUTPUT; got $OUTPUT"
cleanup

View File

@@ -9,10 +9,9 @@ cleanup() {
. ../../../nvm.sh
# sample output at the time the test was written
TAB_PATH="$PWD/iojs.org-dist-index.tab"
nvm_download() {
echo 'version date files npm v8 uv zlib openssl modules'
echo 'v1.0.1 2015-01-14 linux-armv7l,linux-x64,linux-x86,osx-x64-tar,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi'
echo 'v1.0.0 2015-01-14 linux-armv7l,linux-x64,linux-x86,osx-x64-tar,win-x64-exe,win-x64-msi,win-x86-exe,win-x86-msi'
cat "$TAB_PATH"
}
OUTPUT="$(nvm_ls_remote_iojs foo)"
@@ -26,7 +25,10 @@ EXPECTED_OUTPUT="$(nvm_download | \egrep -o 'v[0-9]+\.[0-9]+\.[0-9]+' | sort -t.
OUTPUT="$(nvm_ls_remote_iojs 1.0)"
EXPECTED_OUTPUT="iojs-v1.0.0
iojs-v1.0.1"
iojs-v1.0.1
iojs-v1.0.2
iojs-v1.0.3
iojs-v1.0.4"
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm_ls_remote_iojs 1.0 did not output 1.0.x versions; got $OUTPUT"

View File

@@ -0,0 +1,42 @@
#!/bin/sh
OLDPATH=$PATH
TEST_PATH=../../xz-test
cleanup() {
rm -rf $TEST_PATH/{xz,which,awk,rm,command}
export PATH=$OLDPATH
}
die () { echo $@ ; cleanup ; exit 1; }
. ../../../nvm.sh
OLDPATH=$PATH
mkdir -p $TEST_PATH
touch ../../xz-test/xz
chmod +x ../../xz-test/xz
export PATH=$TEST_PATH:$PATH
$(nvm_supports_xz "v2.3.2") || \
die "expected 'nvm_supports_xz v2.3.2' to exit with 0"
$(nvm_supports_xz "v0.12.7") && \
die "expected 'nvm_supports_xz v0.12.7' to exit with 1"
# set up for a failure by having a minimal toolset available
# but remove xz
ln -s /usr/bin/which $TEST_PATH/which
ln -s /usr/bin/command $TEST_PATH/command
ln -s /usr/bin/awk $TEST_PATH/awk
ln -s $(which rm) $TEST_PATH/rm
export PATH=$TEST_PATH
rm $TEST_PATH/xz
$(nvm_supports_xz "v2.3.2") && \
die "expected 'nvm_supports_xz v2.3.2' with a missing xz binary to exit with 1"
cleanup

View File

@@ -6,5 +6,5 @@
type setopt >/dev/null 2>&1 && setopt NULL_GLOB
type shopt >/dev/null 2>&1 && shopt -s nullglob
rm -fR v* src alias
rm -fR v* src alias test/test-xz
)

View File

@@ -0,0 +1,33 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
NVM_TEST_VERSION=v0.10.41
# STAGE 1 #
# Remove the stuff we're clobbering.
[ -e ../../../$NVM_TEST_VERSION ] && rm -R ../../../$NVM_TEST_VERSION
# Install from source with 1 make job
nvm install -s -j 1 $NVM_TEST_VERSION || die "'nvm install -s $NVM_TEST_VERSION' failed"
# Check
[ -d ../../../$NVM_TEST_VERSION ]
nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION || "'nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION' failed"
# STAGE 2 #
# Remove the stuff we're clobbering.
[ -e ../../../$NVM_TEST_VERSION ] && rm -R ../../../$NVM_TEST_VERSION
# Install from source with 2 make jobs (and swapped arg order)
nvm install -j 2 -s $NVM_TEST_VERSION || die "'nvm install -s $NVM_TEST_VERSION' failed"
# Check
[ -d ../../../$NVM_TEST_VERSION ]
nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION || "'nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION' failed"

5
test/mocks/isainfo_amd64 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-n" ]; then
echo "amd64"
else
echo "amd64 i386"
fi

5
test/mocks/isainfo_x86 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-n" ]; then
echo "i386"
else
echo "i386"
fi

1
test/mocks/pkg_info_amd64 Executable file
View File

@@ -0,0 +1 @@
echo "x86_64"

1
test/mocks/pkg_info_x86 Executable file
View File

@@ -0,0 +1 @@
echo "i386"

5
test/mocks/uname_osx_amd64 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-m" ]; then
echo "x86_64"
else
echo "Darwin foo.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64"
fi

5
test/mocks/uname_osx_x86 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-m" ]; then
echo "i386"
else
echo "Darwin foo.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_I386 i386"
fi

5
test/mocks/uname_smartos_amd64 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-m" ]; then
echo "i86pc"
else
echo "SunOS dev 5.11 joyent_20150219T102159Z i86pc i386 i86pc Solaris"
fi

5
test/mocks/uname_smartos_x86 Executable file
View File

@@ -0,0 +1,5 @@
if [ "_$1" = "_-m" ]; then
echo "i86pc"
else
echo "SunOS dev 5.11 joyent_20150219T102159Z i86pc i386 i86pc Solaris"
fi

View File

@@ -6,8 +6,10 @@ die () { echo $@ ; exit 1; }
nvm use 0.10
NPM_VERSION_TEN="$(npm --version)"
TEST_STRING="foo bar"
nvm use 0.11.7 && [ "$(node --version)" = "v0.11.7" ] || die "\`nvm use\` failed!"
[ "$(nvm exec 0.10 npm --version | tail -1)" = "$NPM_VERSION_TEN" ] || die "`nvm exec` failed to run with the correct version"
[ "$(nvm exec 0.10 bash -c "printf '$TEST_STRING'" | tail -1)" = "$TEST_STRING" ] || die "`nvm exec` failed to run with the command include white-spaces"

View File

@@ -5,5 +5,5 @@ die () { echo $@ ; exit 1; }
. ../../../nvm.sh
[ "$(nvm run 0.2 --version 2>&1)" = "v0.2 is not installed yet" ] || die "\`nvm run\` with an uninstalled node version failed to error out correctly"
[ "$(nvm run iojs-0.2 --version 2>&1)" = "iojs-v0.2 is not installed yet" ] || die "\`nvm run\` with an uninstalled iojs version failed to error out correctly"
[ "$(nvm run 0.2 --version 2>&1)" = 'N/A: version "v0.2" is not yet installed' ] || die "\`nvm run\` with an uninstalled node version failed to error out correctly"
[ "$(nvm run iojs-0.2 --version 2>&1)" = 'N/A: version "iojs-v0.2" is not yet installed' ] || die "\`nvm run\` with an uninstalled iojs version failed to error out correctly"

View File

@@ -0,0 +1,22 @@
#!/bin/sh
die () { echo $@ ; exit 1; }
. ../../../nvm.sh
nvm deactivate >/dev/null 2>&1 || die 'deactivate failed'
nvm_die_on_prefix() {
echo >&2 "| $1 | $2 |"
return 3
}
OUTPUT="$(nvm use --silent node)"
EXPECTED_OUTPUT=""
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] \
|| die "'nvm use --silent node' did not call through to 'nvm_die_on_prefix' and give output '$EXPECTED_OUTPUT'; got '$OUTPUT'"
EXIT_CODE="$(nvm use --silent node >/dev/null 2>&1; echo $?)"
EXPECTED_CODE="11"
[ "_$EXIT_CODE" = "_$EXPECTED_CODE" ] \
|| die "'nvm use --silent node' when 'nvm_die_on_prefix' fails did not return '$EXPECTED_CODE'; got '$EXIT_CODE'"