Commit Graph

920 Commits

Author SHA1 Message Date
Peter Dave Hello
07bb79f405 Use case instead of multiple if/else statement. 2016-07-02 14:01:24 +08:00
Jordan Harband
c4be39b8be
[Fix] remove the need for sed -E
Fixes #1126
2016-06-27 21:50:45 -07:00
Jordan Harband
e1fdd316b7
[Refactor] create nvm_grep and remove standalone GREP_OPTIONS line. 2016-06-25 13:27:56 -07:00
Jordan Harband
9f5322ee84
v0.31.2 2016-06-25 09:42:53 -07:00
Jordan Harband
b0244a133b
[Fix] nvm ls: avoid use of maxdepth which is not on Solaris/SmartOS
Fixes #1121.
2016-06-24 01:38:27 -07:00
Jordan Harband
36b1ea9236
[Fix] do not print help text on sourcing when an empty .nvmrc file is found.
Fixes #1113.
2016-06-14 09:57:37 -07:00
Jordan Harband
45ae48df2d
[Fix] nvm install -s: when “core id” doesn’t appear in /proc/cpuinfo, fall back to counting “processor” lines.
Fixes #1115.
2016-06-13 08:41:17 -07:00
ra100
b6481583af On aarch64 use arm64 packages 2016-06-10 08:00:51 +02:00
Jordan Harband
03cf6950ce
[shellcheck] remove use of expr 2016-06-06 17:55:06 -07:00
Jordan Harband
251a2f3409
[Fix] ensure uname is unaliased.
Closes #1105
2016-05-30 21:50:30 -07:00
Stephan DONIN
f62747c29c [Fix] set -u: is variable set test 2016-05-22 15:59:04 +09:00
Jordan Harband
ccde2898f8
[help] Add nvm ls-remote <version>.
Fixes #1094.
2016-05-13 10:14:12 -05:00
Jordan Harband
6e18d959c7
[shellcheck] clean up unquoted args etc 2016-05-11 15:37:21 -07:00
Jordan Harband
6dd6a0d213
[Fix] dash does not support string substitution :-( 2016-05-10 01:17:31 -07:00
Jordan Harband
36c65d7115
[shellcheck] add spellcheck override comments 2016-05-10 01:11:17 -07:00
Jordan Harband
ec2f450b6e
v0.31.1 2016-05-09 22:06:43 -07:00
Jordan Harband
eeaddf9ab0
Don’t restrict colors to TTYs.
This restriction prevents subcommands from producing colors and passing them up the tree to the actual TTY.
2016-05-08 21:24:24 -07:00
Jordan Harband
0880539972
nvm_strip_path: Error out when $NVM_DIR is not set.
Per https://github.com/creationix/nvm/issues/1083#issuecomment-217752185
2016-05-08 20:06:17 -07:00
Jordan Harband
6311a0e9c4
nvm ls/nvm alias/nvm ls-remote: only colorize when colors are supported. 2016-05-07 18:51:21 -07:00
Jordan Harband
bc3d028152
nvm alias: colorize output when creating aliases. 2016-05-07 18:14:11 -07:00
Jordan Harband
fc82742a8b
[Robustness] add a missing command to a sed call 2016-05-06 12:29:01 -07:00
Jordan Harband
a94ade8ec2
[Fix] don’t use bash == in conditionals 2016-05-06 01:00:56 -07:00
Jordan Harband
eb329ae7a9
[minor] display chmod command as well to fix file permissions. 2016-05-05 23:58:27 -07:00
Jordan Harband
1ca2aa648f
[minor] Echo nonwritable file path to stderr. 2016-05-05 23:53:13 -07:00
Jordan Harband
f49eb61f8e
[Improvement] Use nvm_sanitize_path in nvm_check_file_permissions. 2016-05-05 23:52:51 -07:00
Jordan Harband
d1962c6742
[Refactor] clean up nvm_sanitize_path 2016-05-05 23:52:26 -07:00
Jordan Harband
06c1cfcd85
[Refactor] avoid some pipes to awk 2016-05-05 01:30:38 -07:00
Jordan Harband
8a138d98ed
[Refactor] Use awk to improve version comparison performance 2016-05-05 01:27:17 -07:00
Jordan Harband
4842641e78
[Refactor] create nvm_echo and nvm_err 2016-05-05 00:17:35 -07:00
Jordan Harband
62cca4e6d8
Prefer nvm --help over nvm help 2016-05-05 00:14:12 -07:00
Jordan Harband
ab49a5b0c3
[refactor] nvm run: call through to nvm exec to remove redundant code 2016-05-04 00:58:12 -07:00
Jordan Harband
a69f9a8898
[fix] nvm run: pass through --silent on bare nvm run 2016-05-04 00:58:08 -07:00
Jordan Harband
e8355e3189
[refactor] nvm run: refactor argument parsing. 2016-05-04 00:35:43 -07:00
Jordan Harband
0d62626ac6
[refactor] nvm exec: refactor argument parsing. 2016-05-04 00:34:07 -07:00
Jordan Harband
6fb94e0dab
[fix] nvm exec: show “io.js” for io.js versions. 2016-05-04 00:33:56 -07:00
Jordan Harband
0dd2846215
[fix] set -e: ensure nvm_version returning 3, and nvm_alias returning 2, doesn’t terminate the process. 2016-05-04 01:03:14 -07:00
Jordan Harband
1c3f8da6c3
nvm alias: factor out alias creation to nvm_make_alias 2016-04-27 14:23:34 -07:00
Jordan Harband
d705ec7ebf
[refactor] run through shellcheck 2016-04-30 00:33:28 -07:00
Jordan Harband
09f86b0e6e
[Refactor] Create and use nvm_is_version_installed 2016-04-27 17:11:16 -07:00
Jordan Harband
fc68e615b2
nvm alias: colorize output to match nvm ls 2016-04-27 22:35:14 -07:00
Jordan Harband
677c69dda0
nvm alias: explicitly forbid user aliases in subdirs. 2016-04-26 23:07:10 -07:00
Jordan Harband
1eb4d482e0
nvm alias: If the alias target is empty, call into nvm unalias 2016-04-26 22:58:31 -07:00
Jordan Harband
4df2a7fca9
nvm alias: factor out alias printing logic to functions 2016-04-26 22:29:55 -07:00
Jordan Harband
7b1a4e5126
nvm alias: slightly speed up alias resolution. 2016-04-26 22:21:57 -07:00
Jordan Harband
755c39209e
[Refactor] make check_file_permissions be pure instead of relying on a closure.
Also, make it return early, to be a bit more efficient.

(from #847)
2016-04-18 19:23:51 -07:00
Luke Childs
3a2d35f167 Check permissions in shell rather than using find -exec 2016-04-19 01:40:16 +01:00
Luke Childs
005e29a223 Check dir permissions before attempting to nvm uninstall 2016-04-18 21:16:37 +01:00
Jordan Harband
d3e334d86d [Fix] read exits 1 when .nvmrc lacks a trailing newline - avoid that.
Per https://github.com/creationix/nvm/issues/993#issuecomment-205399603
2016-04-04 22:08:36 -07:00
Jordan Harband
273ebedc55 [Fix] avoid an unbound variable when nounset bash option is set.
Per https://github.com/creationix/nvm/issues/868#issuecomment-198232952
2016-03-18 00:28:30 -07:00
Robson Peixoto
8fb4ee0789 Unset unnecessary environment variables 2016-03-11 14:53:36 -03:00
Jordan Harband
2176894a5b v0.31.0 2016-02-15 09:18:15 -08:00
Jonas Dohse
7135873f80 Do not modify parameters of sourcing script in zsh
When sourcing a script without parameters in zsh the sourced scripts
gets the same parameters as the sourcing file and is able to modify
these parameters. Prevent nvm from removing all parameters of sourcing
script by processing a copy of the parameters in a function.
2016-02-15 17:49:46 +01:00
Jordan Harband
44541b416f [New] After installing, ensure that the default is set. 2016-02-04 00:26:33 -08:00
Jordan Harband
731c2f3f70 Add nvm_get_minor_version 2016-02-04 11:16:09 -08:00
Jordan Harband
de64a2d95f [Fix] nvm_format_version should only return 3 version groups 2016-02-06 22:34:49 -08:00
Brandon Wood
f73bfb6578 Updated warning message when sha256sum utility not found
Relates to @ljharb's comment on the warning message not including all of the
utilties searched for.

https://github.com/creationix/nvm/pull/981#discussion_r50638351
2016-01-24 11:53:19 -06:00
Brandon Wood
f1bca106a8 Added (optional) support for sha256 checksum utils
This commit adds (optional) support for additional sha256 checksum utilities
for newer versions of node.js and io.js that use sha256 checksums rather than
sha1.

If nothing is found to do a sha256 checksum on the client machine, a warning is
printed and things continue on as normal.

Following comments from @ljharb on incorporating some of @DomT4's PR
creationix/nvm#664, and making this checksum optional.  If I could I would
gladly include this as an addon to the now closed PR creationix/nvm#664. I am
choosing not to file it onto that PR because it's closed and (currently)
significantly behind the master branch.

@DomT4 did the hard work of actually finding all the different ways in which
one could verify a sha256 checksum, I've just included those here in an effort
to move forward with sha256 checksum support.
2016-01-24 10:31:26 -06:00
Brandon Wood
560c8c9500 Added support for sha256 checksums 2016-01-23 21:25:03 -06:00
Jordan Harband
21c3727955 v0.30.2 2016-01-21 00:23:01 -08:00
Jordan Harband
4fcf37fa29 [New] support --no-use on sourcing, in supported shells.
Fixes #972.
2016-01-20 12:50:45 -08:00
Nick Hwang
e76fe61d95 Add missing space before closing bracket 2016-01-19 13:03:11 -05:00
Jordan Harband
00a8b36b78 [Fix] handle unbound shell variables.
Fixes #868.
2016-01-17 15:12:02 -08:00
Jordan Harband
6094dac1c1 [Fix] nvm debug was printing a red herring error message in non-zsh. 2015-12-30 09:45:13 -08:00
Jordan Harband
0aa3118de3 v0.30.1 2015-12-28 12:46:41 -08:00
Jordan Harband
2541baaf7d [Refactor] Create nvm_get_make_jobs to abstract out “-j” logic. 2015-12-28 12:20:14 -08:00
Jordan Harband
dc8b63cb25 [Fix] nvm install -s: fix syntax errors. 2015-12-28 12:19:50 -08:00
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
31457fec3f [Refactor] nvm install: make -j and -s order-independent. 2015-12-27 12:52:01 -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
Kilian Ciuffolo
6638ac3318 [refactor] improved bootstrap time
Fixes #860, closes #927.
2015-12-06 23:52:40 -08:00
Jordan Harband
04c5e3540e nvm unalias: Provide a restore command when unaliasing.
Fixes #916.
2015-12-13 21:34:28 -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
c742ab7e66 Fix npm version output for nvm run and nvm exec 2015-11-10 23:31:16 -08: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
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
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
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
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
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
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
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
9e389eb9fe Attempt to fix #829. 2015-09-19 13:37:08 +09: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
Jordan Harband
26ee4aafc0 v0.26.1 2015-08-22 20:54:31 -07:00
Jordan Harband
8746d63041 Ensure after node v4.0 is released, stable will simply refer to the latest node. 2015-08-22 09:45:49 -07:00
Jordan Harband
b7e2d7d24d Oops, the string passed to awk isn't the same as a shell command.
Fixes #808.
2015-08-16 18:08:50 -07:00
Jordan Harband
58ffa407c2 Prefixing more commands with command to bypass aliases.
Related to #805 and #804.
2015-08-15 23:56:32 -07:00
Jordan Harband
49abc9ce02 v0.26.0 2015-08-13 17:10:08 -07:00
Jordan Harband
17c68075e8 Use single quotes instead of double quotes for help output. 2015-08-05 23:53:29 -07:00
Jordan Harband
3fcff872af Add explanatory note for <version>
Per https://github.com/creationix/nvm/pull/797#discussion_r36379740
2015-08-05 23:53:17 -07:00
Sequoia McDowell
fe1ed37520 Add usage string for --reinstall-packages-from 2015-08-05 22:26:17 -04:00
Jordan Harband
071323847c Add nvm version-remote; document nvm version 2015-08-04 14:03:57 -07:00
Jordan Harband
d7035c5e61 Redirect stderr output from npm ls -g to /dev/null.
Fixes #756.
2015-08-03 16:41:47 -07:00
Jordan Harband
759f86f946 Tweaking local variable name to avoid pollution under ksh. 2015-07-18 09:31:07 -07:00
Alan Quach
98e40a8da5 Expanding to full if statements because the shorthand results in non-zero exit codes 2015-07-09 18:40:52 +10:00
Alan Quach
2da44f90d2 Silencing error outputs as well (for consistency and following after things like curl) 2015-07-09 18:00:13 +10:00
Alan Quach
88a50780fc Removing global NVM_SILENT and adding/using '--silent' option to nvm use instead 2015-07-09 17:44:09 +10:00
Alan Quach
9419794b19 Guarding npm version printing with NVM_SILENT flag check; when sourcing nvm.sh, a considerable amount of time is spent running npm --version only for that output to be black-holed to /dev/null 2015-07-09 09:56:26 +10:00
Jordan Harband
f2d31b0458 Some refactoring to clear up the path to io.js release candidate support.
(unblocks #779)
2015-07-04 17:05:24 -07:00
Jordan Harband
0b41352210 Factor out global installs/links into nvm_npm_global_modules function. 2015-07-02 23:47:29 -07:00
Jordan Harband
be5e8de0c8 Fix nvm reinstall-packages for linked packages, broken in 7bce6c6c68 2015-07-02 23:12:06 -07:00
Jordan Harband
3ef937a64e Make nvm_ensure_version_installed slightly more efficient. 2015-06-28 18:15:15 -07:00
Jordan Harband
a21b2e6962 Refactor this nvm use case statement out into an nvm_match_version function. 2015-06-28 18:08:38 -07:00
Jordan Harband
cc090f4476 Speed up nvm_print_npm_version. 2015-06-28 16:23:12 -07:00
Jordan Harband
c31b072145 Fix nvm debug output in zsh. 2015-06-28 17:19:15 -07:00
Jordan Harband
7bce6c6c68 nvm reinstall-packages should install the same version it had before. 2015-06-29 00:04:59 -07:00
William Boman
bc3840b6f3 nvm.sh: s/copying/reinstalling/ 2015-07-02 21:21:51 +02:00
lukechilds
67f2ee82ca POSIX compatibility 2015-06-13 10:18:58 +01:00
lukechilds
1f13f15620 Add --without-snapshot configure flag to ARM devices 2015-06-12 23:36:02 +01:00
Jordan Harband
3cfa1ed4e1 Remove $NVM_IOJS_ORG_VERSION_LISTING env var. 2015-06-06 22:39:03 -07:00
Jordan Harband
d78722b284 v0.25.4 2015-05-29 11:11:40 -07:00
Jordan Harband
a539cba11e v0.25.3 2015-05-22 15:18:46 -07:00
Jordan Harband
472ba5fc46 Make sure sourcing nvm.sh on shells that don't support source options doesn't exit nonzero.
Fixes #721
2015-05-22 00:15:43 -07:00
Jordan Harband
96c96ec714 v0.25.2 2015-05-19 14:05:43 -07:00
Jordan Harband
5e805905ca Add undocumented nvm debug to print out helpful debugging info. 2015-05-14 14:56:26 -07:00
Jordan Harband
2dec01da9c nvm reinstall-packages: On systems where npm ls -g --depth=0 does not include npm for some reason, make sure to filter out (empty). 2015-05-08 14:24:51 -07:00
Jordan Harband
63672641a5 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.
2015-05-11 01:46:18 -07:00
Jordan Harband
94bba31de3 Make sure that nvm reinstall-packages system has the right std output. 2015-05-08 14:15:42 -07:00
Jordan Harband
ec33e8b720 v0.25.1 2015-05-03 15:31:54 -07:00
Jordan Harband
a4f89c6223 Make sure to ignore ~/.curlrc if it exists. 2015-05-01 02:00:49 -07:00
Jordan Harband
517817f1a3 Actually try to install from source when the error message says "binary failed, trying source". 2015-04-27 14:02:45 -07:00
Jordan Harband
a6f5eff0f3 Use uname -m instead of uname -a.
Fixes #744.
2015-04-28 22:56:43 -07:00
Jordan Harband
0aac462b15 Improve the error message when the binary tarball URL 404s.
Fixes #743
2015-04-27 13:48:22 -07:00
Jordan Harband
eb5cecc970 v0.25.0 2015-04-26 12:58:05 -07:00
Scott Jasperse
e1009149c9 adding architecture detection for Raspberry Pi 2 2015-04-25 19:10:02 -04:00
Jordan Harband
cbf0f12aac Create nvm_print_npm_version and use that when printing the npm version. 2015-04-12 10:59:17 -07:00
Andrew Crites
e4149c380b Only print npm version if it exists 2015-04-09 02:31:57 -04:00
Andrew Crites
caa69bc500 npm version: shell compatibility, test update
* Update test string that checks printed node version to pass with additional npm version display
* Remove echo -n for compatibility with shells that do not support it
2015-04-09 02:12:35 -04:00
Andrew Crites
e01bcb740b Include npm version when displaying results of switch.
When running nvm use, successful changing of versions lists the new node version.  The npm version may also be switched, but this is not listed.

This commit updates nvm to display the npm version that was switched to alongside the node version
2015-04-09 01:20:51 -04:00
Jo Liss
0dc177bf9c Consolidate and avoid sed/cut calls, clean up pattern matches
Some patterns contained a no-op `*`; the `*` would match the empty string
because # or % replacement (unlike ## or %%) tries to find the shortest match.
2015-04-06 20:30:38 +00:00
Jordan Harband
c34502ebc2 nvm_num_version_groups should report 0 when given just a v or a . 2015-04-06 11:10:43 -07:00
Jordan Harband
3d764e6833 Add nvm_ensure_default_set 2015-04-05 16:49:29 -07:00
Jordan Harband
a26ef4f1be Consolidate reinstall-packages-from logic to one place nvm install 2015-04-05 16:09:47 -07:00
Jordan Harband
d68f667464 When no arguments are passed to nvm run X, use nvm exec to open a REPL.
Fixes #625. Tests will be in #717.
2015-04-05 15:13:35 -07:00
Jordan Harband
c966204cd6 v0.24.1 2015-04-05 12:55:17 -07:00
Jordan Harband
d72b35b7b8 Remove external calls to sed using parameter filtering.
POSIX-compliant per http://stackoverflow.com/a/25536935/632724

Relates to #709
2015-04-05 02:35:05 -07:00
Jordan Harband
d50a0f46e9 Avoid some external calls by using case statements.
Relates to #709.
2015-04-04 23:59:12 -07:00
Jordan Harband
a1a8e5a51b Clean up logic a bit. 2015-04-04 14:53:38 -07:00
Jordan Harband
108f630732 Cache the nvm_node_prefix call. 2015-04-04 14:31:56 -07:00
Jordan Harband
96e73825bd Consolidate faster default alias lookup, and use that explicit version to avoid a second default alias lookup in nvm use default.
Related to #709.
2015-04-04 15:45:40 -07:00
Jordan Harband
9fc20bb14b Merge pull request #710 from joliss/sed
Combine sed and grep commands
2015-04-02 17:00:20 -07:00
Jo Liss
394e8505d9 Combine sed and grep commands 2015-04-02 16:58:31 +00:00
Jo Liss
fc86834e29 Add comment re nvm_ensure_version_installed performance 2015-04-02 15:30:33 +00:00
Jo Liss
609d9ee4ea Improve startup performance. Closes #703 2015-04-02 15:30:33 +00:00
Jordan Harband
65a986c633 Merge pull request #693 from hax/reinstall-links
support npm link for reinstall-packages
2015-03-18 22:22:23 -07:00
Pedro Costa
999c4111c1 Supresses error message on checking source options 2015-03-18 10:21:11 +00:00
HE Shi-Jun
207521d54b support npm link 2015-03-17 14:19:32 +08:00
HE Shi-Jun
bf7bd3e793 Only filter the package npm, not any package name contains 'npm' 2015-03-15 06:21:35 +08:00
Jordan Harband
2b63f37f8d Make nvm_resolve_local_alias not return N/A - that should be done as shallowly as possible. 2015-03-14 10:55:31 -07:00
Jordan Harband
230b479648 Making help error output actually output to stderr consistently. 2015-03-14 10:34:52 -07:00
Jordan Harband
5802ac3ea7 v0.24.0 2015-03-05 21:35:37 -08:00
Jordan Harband
8ae7a37d43 Fix bare nvm use when nvm_ls_current is "none". 2015-03-03 11:29:15 -08:00
Sayanee
16a730f4cc amend all variables nvm_arch to capitalise 2015-03-02 12:28:21 +08:00
Sayanee
f8064b259d fix: if case and capitalising variable 2015-03-02 12:19:34 +08:00
Sayanee
f8ee25ab5b fix: local declaration of ksh compatibility 2015-03-02 01:04:29 +08:00
Sayanee
fb48129cd4 add support for node builds for armv6l named as arm-pi 2015-02-28 14:48:38 +08:00
Sayanee
9e154b159e fix: download url for iojs armv6l and armv7l. #678 #227 2015-02-27 09:49:45 +08:00
Jordan Harband
fb853614a7 Use nvm_ensure_version_installed to consistently check if a version is installed.
Fixes #675.
2015-02-22 11:10:19 -08:00
Jordan Harband
0d9329435c Create nvm_ensure_version_installed 2015-02-22 02:26:27 -08:00
Jordan Harband
6c1a310846 Fix nvm_resolve_alias default from 7d22e0c458 2015-02-22 00:43:14 -08:00
Jordan Harband
7d22e0c458 Separate nvm_resolve_alias's nvm_version behavior into nvm_resolve_local_alias. 2015-02-21 16:10:42 -08:00
Jordan Harband
cd481ff548 When none of the directories exist, don't find within them. 2015-02-20 23:12:44 -08:00
Jordan Harband
12ca8f2607 Add nvm_is_alias unit tests.
Fixes 670.
2015-02-20 13:59:08 -08:00
Jordan Harband
820074e1d7 Make sure checksum commands are not aliases.
Fixes #659, #420, #640.
2015-02-16 00:16:54 -08:00
Jordan Harband
3190effedd Add support for node and iojs implicit aliases. 2015-02-10 23:43:47 -08:00
Jordan Harband
d0617b5b79 Suppressing extraneous output from #622. 2015-02-10 11:07:13 -08:00
Jordan Harband
286c808739 Cache values in local variables to avoid repeated lookups. 2015-02-10 10:36:12 -08:00
Jordan Harband
be56ff3b2e Make sure multiple nvm run arguments get passed through to node/iojs properly.
Fixes #641.
2015-02-07 10:09:37 -08:00
Jordan Harband
59e27f8108 Prevent VERSION='' output caused by double local declaration.
Fixes #644.
2015-02-03 17:28:40 -08:00
Jordan Harband
0f1f3ed29c v0.23.3 2015-02-02 20:26:00 -08:00
Jordan Harband
2116d2ff91 Filter out the io.js version dir from nvm_ls output.
Fixes #642.
2015-02-02 17:41:04 -08:00
Jordan Harband
0b4c1e14cf Ensure that nvm run 0.12 --version errors out sensibly when 0.12 isn't installed. 2015-02-01 13:02:46 -08:00
Jordan Harband
e1b7496cf0 Add nvm_is_valid_version 2015-02-01 13:01:40 -08:00
Jordan Harband
8a87133f71 When there's no nvm run output, don't echo an empty line. 2015-02-01 12:45:51 -08:00
Jordan Harband
0792945824 Bypass sha1sum/sha1 aliases. Fixes #640. 2015-01-30 23:46:42 -08:00
Jordan Harband
a6819b3018 Fix nvm ls v1.0.3 so that it locates iojs-v1.0.3.
Also fix `nvm uninstall v1.0.3` so it won't uninstall it if it's the current version.

node versions will still take priority if there's ever a version overlap.
2015-01-25 12:31:19 -08:00
Jordan Harband
1eaf6b53e4 v0.23.2 2015-01-23 13:53:03 -08:00
Jordan Harband
24c60e4e51 Fix a bug in nvm_remote_version that was breaking nvm install stable/nvm install unstable.
Fixes #630.
2015-01-23 12:09:13 -08:00
Jordan Harband
8822bd719a v0.23.1 2015-01-23 02:08:36 -08:00
Tobias Witt
b5d9e547f2
Use tee to replace the alias files content instead of >
As mentioned in #615 it is possible to configure `>` to not override
existing files by default. `tee` is a standard tool that can be used
shell independent.
2015-01-23 09:29:12 +01:00
Jordan Harband
dd146519a2 Improve nvm use success output for io.js.
Fixes #623
2015-01-21 22:06:38 -08:00
Jordan Harband
7243bd77d3 Refactor and create nvm_remote_versions and nvm_remote_version.
Fixes #620 - an oh-my-zsh issue where `nvm install v1` didn't work.
2015-01-21 20:48:25 -08:00
Jordan Harband
7d113a2b2f Inline this use of nvm_remote_version 2015-01-21 16:27:20 -08:00
Jordan Harband
17df0b9912 Moving the N/A check earlier in nvm install 2015-01-21 16:19:22 -08:00
Jordan Harband
9ee864b06f Remove unused variables. 2015-01-20 18:33:51 -08:00
Jordan Harband
43a7d78693 v0.23.0 2015-01-19 22:15:06 -08:00
Jordan Harband
ea12784629 Clean up nvm ls-remote behavior when one of node/iojs reports N/A.
This change:
 - removes a superfluous N/A
 - fixes the exit code to return 0 unless no version is found
 - enables `nvm install v1` and similar patterns.
2015-01-19 18:35:05 -08:00
Jordan Harband
f1f11e3b7a Ensure nvm_version node and nvm_version node- report the latest stable node version. 2015-01-19 10:05:36 -08:00
Jordan Harband
247bd310ef Clean up nvm uninstall node and nvm uninstall iojs behavior. 2015-01-19 10:04:12 -08:00
Jordan Harband
dbeeb683da Fix nvm_strip_path for >= v0.12.0 node, and all io.js versions. 2015-01-18 23:55:26 -08:00
Jordan Harband
39a75e616d Add support for nvm use node, nvm use iojs, nvm ls node, and nvm ls iojs
Also add `nvm_version node` and `nvm_version iojs` support.
2015-01-18 20:45:02 -06:00
Jordan Harband
3cf68dc18d Add nvm_has_system_iojs 2015-01-18 20:55:48 -06:00
Jordan Harband
ed22d3de2d Add support for nvm install node and nvm install iojs 2015-01-16 11:10:37 -06:00
Jordan Harband
952096d034 Add iojs support to "install" 2015-01-13 17:52:18 -08:00
Jordan Harband
dd3a3763ce Add io.js support to nvm uninstall 2015-01-16 10:41:40 -06:00
Jordan Harband
41c379839d Make sure nvm run works with iojs prefixes. 2015-01-15 01:38:47 -08:00
Jordan Harband
d9340b6a53 io.js does not have a SunOS binary. 2015-01-13 17:48:15 -08:00
Jordan Harband
b0d6c05d6e Make nvm ls-remote iojs [foo] only show iojs versions, and nvm ls-remote node [foo] only show node versions. 2015-01-13 14:19:58 -08:00
Jordan Harband
58ab2c3128 Add iojs support to nvm_remote_version 2015-01-13 02:22:22 -08:00
Jordan Harband
d70f0357f5 Add nvm_ls_remote_iojs and nvm ls-remote support for iojs. 2015-01-13 02:14:29 -08:00
Jordan Harband
5143de9653 Make nvm_ls_current work with iojs-prefixed versions. 2015-01-13 01:04:45 -08:00
Jordan Harband
5c336a7ccb Make nvm_print_versions support iojs via nvm_version_path. 2015-01-13 00:49:31 -08:00
Jordan Harband
f661617f1c Make nvm_ls foo work with iojs-prefixed version strings. 2015-01-12 18:16:11 -08:00
Jordan Harband
d28703f9e0 Update nvm_ensure_version_prefix to support iojs-prefixed version strings. 2015-01-12 18:15:51 -08:00
Jordan Harband
b7983842aa Add nvm_add_iojs_prefix 2015-01-13 00:57:32 -08:00
Jordan Harband
c12104cecd Add nvm_strip_iojs_prefix 2015-01-12 18:15:25 -08:00
Jordan Harband
98e0655198 Add nvm_is_iojs_version 2015-01-12 18:15:15 -08:00
Jordan Harband
c46748a379 Add nvm_node_prefix 2015-01-13 14:16:35 -08:00
Jordan Harband
8be97c8abb Add nvm_iojs_prefix 2015-01-12 18:15:04 -08:00
Jordan Harband
3fa11c35cb Add io.js support to nvm_version_dir 2015-01-12 00:33:13 -08:00
Jordan Harband
448bd38a55 v0.22.2 2015-01-14 15:44:40 -08:00
Jordan Harband
0ad5a450fe Put node versions >= 0.12 in versions/node instead of just versions 2015-01-14 12:23:06 -08:00
Jordan Harband
797c5ab70b Move "install node from source" logic into nvm_install_node_source function. 2015-01-13 18:15:42 -08:00
Jordan Harband
0e209ce890 Move "install node binary" logic into nvm_install_node_binary function. 2015-01-13 14:08:56 -08:00
Jordan Harband
9a57a891b9 Refactor OS and architecture detection into separate functions. 2015-01-13 02:41:55 -08:00
Jordan Harband
3d5ded1815 Update the way nvm_ls sorts things. 2015-01-13 00:21:33 -08:00
Jordan Harband
7807a9f09e Consolidate "alias" directory to a method. 2015-01-12 01:27:53 -08:00
Jordan Harband
835c006b5e Better way to search multiple directories in nvm_ls 2015-01-12 01:15:48 -08:00
Jordan Harband
34e51f9f02 Proper quoting and $(…) vs . 2015-01-11 12:13:14 -08:00
Jordan Harband
4b5885d69d Store the version path in a local variable for reuse. 2015-01-11 12:04:26 -08:00
Jordan Harband
bf794ff8da Consistently prefix builtins with command 2015-01-11 11:53:24 -08:00
Jordan Harband
0bd7372c64 Rename this local var in nvm_version_dir 2015-01-11 11:38:55 -08:00
Jordan Harband
0a142b7e7a v0.22.1 2015-01-10 19:43:36 -08:00
Jordan Harband
3fc82d6b2f Use command sed for people who alias sed.
Fixes #493.
2015-01-09 01:50:05 -08:00
niris
3f5ce8b93a Fix which command in zsh (#604). 2015-01-02 10:20:57 +08:00
Jordan Harband
c91e8d0ba2 v0.22.0 2014-12-26 16:30:21 -08:00
Jordan Harband
9a4e9060d8 Don't bother testing --install option on source, or supporting it, unless the shell supports passing options upon sourcing. 2014-12-26 13:33:33 -08:00
Jordan Harband
3df0caefa5 Support --install option upon sourcing. 2014-12-26 12:19:35 -08:00
Jordan Harband
bef3a5ce3a v0.21.0 2014-12-22 12:03:33 -08:00
Jordan Harband
0a739e3fa9 Add nvm_get_latest 2014-12-21 16:33:52 -08:00
Jordan Harband
2d78d69d4c Properly outputting the version when nvm_version_path outputs the new "versions" subdirectory. 2014-12-19 17:12:38 -08:00
Jordan Harband
9e17b5059c Return the proper exit code of which directly. 2014-12-19 16:23:27 -08:00
Daniel Bretoi
99ca0de18f revert echoing path. make tests even better 2014-12-19 11:31:46 -08:00
Daniel Bretoi
f196ace5dd style 2014-12-19 11:10:50 -08:00
Daniel Bretoi
d1a90ca15c work like system which. show system node without changing to use it 2014-12-19 11:10:50 -08:00
Jordan Harband
f408d68afc Add nvmrc note to nvm which blurb. 2014-12-17 01:30:23 -08:00
Daniel Bretoi
7805492bda merge with master 2014-12-02 13:01:37 -08:00
Daniel Bretoi
a1c0c34088 fix to proper echo of nvm which. Checkin test which had been left out 2014-12-02 12:58:07 -08:00
Daniel Bretoi
234b925c7a style and remove nvm deactivate in nvm which 2014-12-02 12:40:23 -08:00
Jordan Harband
8964cb46d3 v0.20.0 2014-11-29 11:23:16 -08:00
Jordan Harband
383f39ab61 Global modules should not be requireable, and npm root -g should not be in $NODE_PATH.
Fixes #586.
2014-11-29 11:22:10 -08:00
Jordan Harband
052743816f $NODE_PATH is special, so this function shouldn't risk clobbering it. 2014-11-28 11:59:45 -06:00
Jordan Harband
7bbcd3a977 v0.19.0 2014-11-23 14:49:38 -08:00
Jordan Harband
e728577627 Rename nvm copy-packages to nvm reinstall-packages, and --copy-packages-from install option to --reinstall-packages-from
For #341. `nvm copy-packages` and install option `--copy-packages-from` will continue to be supported for for at least a full minor release version.
2014-11-22 13:22:24 -08:00
Jordan Harband
c33074cb54 Tweaking formatting of help output; adding nvm exec example. 2014-11-22 10:48:12 -08:00
Daniel Bretoi
0c33fd2598 change to use default behavior for which 2014-11-22 08:17:15 -08:00
Daniel Bretoi
b63042bd9f forgot to append bin 2014-11-21 16:59:15 -08:00
Daniel Bretoi
382c3aa85e implements nvm which 2014-11-21 16:54:31 -08:00
Jordan Harband
5f5eb47f14 v0.18.0 2014-11-05 10:59:59 -08:00
Jordan Harband
d09b84de3c Ensure that a system has manpath before invoking it.
Closes #531, fixes #557.
2014-11-02 13:54:54 -08:00
Brock Angelo
1c9a5ba2d8 use slash pwd instead of command 2014-10-25 22:19:27 -05:00
Brock Angelo
fd1f2cdf66 use command -p pwd to use the system default pwd 2014-10-25 13:55:20 -05:00
Jordan Harband
2d529cc8b7 Prevent attempts to nvm use a circular reference. 2014-10-22 18:15:21 -07:00
Jordan Harband
9b91734f0b Show "∞" when there's a circular alias reference. 2014-10-22 18:15:21 -07:00
Jordan Harband
7a339bdd3c Adding nvm_resolve_alias 2014-10-22 01:30:40 -07:00
Jordan Harband
e421a0dc5f Ensure nvm follows redirects to nodejs.org 2014-10-20 16:02:46 -07:00