Commit Graph

1026 Commits (6aeab3349c834f7c11524d04287933397a9d56e0)

Author SHA1 Message Date
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 `local`s 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
Jordan Harband 601490ac1d Merge tag 'v0.17.3' 2014-10-20 15:50:47 -07:00
Jordan Harband 4748b3a236 v0.17.3 2014-10-20 15:48:49 -07:00
Jordan Harband 2a61569881 http://nodejs.org/dist now redirects to https://nodejs.org/dist 2014-10-20 15:48:35 -07:00
Jordan Harband ca89cceb99 Default $NVM_SYMLINK_CURRENT to off (create a "current" symlink on `use`).
Fixes #499.
2014-10-14 18:14:12 -07:00
Hiro Asari 44d5776110 Fix npm update code
https://npmjs.org/install.sh redirects to https://www.npmjs.org/install.sh
so this code would fail if it ever npm was absent when we get here.
2014-10-12 12:28:38 -04:00
Jordan Harband d49443e1fb Properly handle nvm_print_implicit_alias splitting in zsh.
Hopefully fixes #546.
2014-10-11 00:41:16 -04:00
Jordan Harband e99645f402 Don't list uninstalled implicit aliases 2014-10-10 23:46:25 -04:00
Jordan Harband a2633e5980 Fixing "nvm alias" output redirection. 2014-10-09 00:19:14 -07:00
Jordan Harband 1ee708b79b Fix an output redirection error. 2014-10-06 16:18:21 -07:00
Jordan Harband 2f2c6f0727 Use nvm_alias in nvm_ls. 2014-10-02 17:19:21 -07:00
Jordan Harband 0eef553a88 Use `-f` instead of `-e` in nvm_alias. 2014-10-02 16:06:09 -07:00
Jordan Harband 5135577a3c Ensure `nvm run` has the same semantics as `nvm use` 2014-10-01 01:46:46 -07:00
Jordan Harband 5bc6e289ce Silencing nvm_version_path error output in nvm_print_versions 2014-10-01 01:46:35 -07:00
Jordan Harband d0c6b87b2e Use `nvm_alias` in `nvm alias` 2014-09-30 00:24:37 -07:00
Jordan Harband 66b214651f Add `nvm_alias` and unit tests. 2014-09-30 00:23:37 -07:00
Jordan Harband f0471acbf5 v0.17.2 2014-09-29 14:32:44 -07:00
Jordan Harband 2737a95645 Create nvm_ensure_version_prefix, and make nvm_format_version actually format the version. 2014-09-29 01:36:02 -07:00
Jordan Harband 4cdf356cdc Support `nvm ls-remote stable` and `nvm ls-remote unstable` 2014-09-29 00:10:06 -07:00
Jordan Harband c918e570b6 Add support for `nvm ls stable` and `nvm ls unstable` 2014-09-29 00:09:48 -07:00
Jordan Harband 5dc7af6285 Make `nvm alias` list implicit "stable" and "unstable" aliases when they're not already aliases. 2014-09-29 00:09:17 -07:00
Jordan Harband 5aad535d53 Adding nvm_print_implicit_alias 2014-09-28 22:40:17 -07:00
Jordan Harband fcdd1ef431 Add nvm_validate_implicit_alias 2014-09-28 22:36:02 -07:00
Jordan Harband ff92ba7f43 Silence more secondary "deactivate" output. 2014-09-28 16:50:50 -07:00
Jordan Harband 804f2759f8 Ensure that `nvm use` works when .nvmrc contains "system" 2014-09-28 16:50:50 -07:00
Jordan Harband d5fe657382 Ensure `nvm_rc_version` always modifies $NVM_RC_VERSION, rather than retaining its value from previous runs. 2014-09-28 16:50:50 -07:00
Jordan Harband 3e4613fd66 Don't output `nvm deactivate` output when running `nvm use system` 2014-09-28 16:50:50 -07:00
Jordan Harband b707d8b072 nvm_ls: format the version immediately, so that `nvm ls 0.0.1` doesn't return `nvm ls 0.0.10` 2014-09-28 10:14:27 -07:00
Jordan Harband 25bd2bb018 Make `nvm ls-remote` return nvm_ls_remote's exit code. 2014-09-28 09:41:02 -07:00
Jordan Harband 4a8a5a1180 Shell-quoting some more things. 2014-09-27 17:30:09 -07:00
Jordan Harband 145da7eef8 v0.17.1 2014-09-26 23:22:56 -07:00
Jordan Harband 4cf56ae186 Remove unnecessary local var declaration. Fixes #535 2014-09-26 23:22:38 -07:00
Jordan Harband 53f9841c6c v0.17.0 2014-09-24 14:58:07 -07:00
Jordan Harband 444efdb08b Adding some more quotes and $() 2014-09-23 23:51:02 -07:00
Jordan Harband 6fde379707 Use _ instead of ~ as a sentinel 2014-09-23 23:50:12 -07:00
Jordan Harband ce69c8413e More shellcheck recommendations 2014-09-23 23:49:51 -07:00
Jordan Harband 51f6109f8d Use $() instead of backticks; add quotes 2014-09-23 23:49:10 -07:00
Jordan Harband 34b97bf76d Adding shell var quotes in `nvm alias` 2014-09-23 17:23:37 -07:00
Jordan Harband b962a590a2 Removing an extra mkdir -p 2014-09-23 17:23:09 -07:00
Jordan Harband 486d14f5f8 Copy packages when applicable, whenever `nvm install` would normally `nvm use` and exit. 2014-09-21 18:25:15 -07:00
Jordan Harband 622fdd2cd0 Error out early if the --copy-packages-from version is invalid. 2014-09-21 18:03:11 -07:00
Jordan Harband eddbe15ee8 Extract --copy-packages-from argument. 2014-09-21 18:03:11 -07:00
Jordan Harband 2e161fe414 nvm install: Remove this redundant "already installed" check. 2014-09-21 11:22:05 -07:00
Jordan Harband a42b90d215 Adding some helpful output to `nvm copy-packages` 2014-09-21 11:02:03 -07:00
Jordan Harband 7fd6d05426 Instead of using expr to check if paths need cleaning, compare cleaned paths to original paths and export appropriately. 2014-09-19 10:10:53 -07:00
Jordan Harband 5ef092b2c8 Using `nvm_version_greater` and `nvm_version_greater_than_or_equal_to` instead of `expr` in `nvm install`. 2014-09-19 10:10:37 -07:00
Jordan Harband cb6456fd85 Using `nvm_version_greater_than_or_equal_to` instead of `nvm_version_greater` where it increases readability. 2014-09-19 10:10:01 -07:00
Jordan Harband 991fb85047 Adding `nvm_version_greater_than_or_equal_to` 2014-09-19 10:09:45 -07:00
Jordan Harband c992b1766c Use `nvm_num_version_groups` in `nvm_ls` 2014-09-16 09:03:47 -07:00
Jordan Harband 4b2bc0be08 Adding `nvm_num_version_groups` 2014-09-16 09:03:47 -07:00
Jordan Harband e186fa27a7 Use `nvm_version_greater` in `nvm_binary_available` 2014-09-15 09:20:47 -07:00
Jordan Harband f6e0104685 Use `nvm_normalize_version` in `nvm_version_greater` 2014-09-15 09:17:41 -07:00
Jordan Harband d5d66c34d9 If there's no "default" specified, fall back to an .nvmrc file. 2014-09-15 07:54:30 -07:00
Jordan Harband 152904e3fb Return a nonzero exit code from nvm_rc_version when no .nvmrc found 2014-09-15 07:51:00 -07:00
Jordan Harband 64de890d07 v0.16.1 2014-09-14 22:24:18 -07:00
Jordan Harband 3d3145f2e0 install: don't output "additional options" when there are none. 2014-09-14 16:04:51 -07:00
Jordan Harband 4c948cf422 install: Ensure that if a version is not provided, we don't try to shift a nonexistent argument. 2014-09-14 16:04:37 -07:00
Jordan Harband f8054d5cae copy-packages: ensure that `nvm_version` is also applied to compare the provided version to the current one. 2014-09-14 16:04:25 -07:00
Jordan Harband d1b6332bbe v0.16.0 2014-09-11 00:58:09 -07:00
Jordan Harband 687df82107 Make `nvm copy-packages system` work. 2014-09-05 00:43:12 -07:00
Jordan Harband ff1781b95d Make `nvm copy-packages` refuse to copy packages from the currently activated version. 2014-09-05 00:42:59 -07:00
Jordan Harband 110e571c34 Make `nvm ls system` work. 2014-09-05 00:29:20 -07:00
Jordan Harband 9d96e4a6bf v0.15.0 2014-09-03 00:08:53 -07:00
Jordan Harband 214ce8853b `npm ls` has a bug in some versions when "--parseable --depth=0" is used together. 2014-09-02 15:47:45 -07:00
Jordan Harband 603253b0cb Quote the version. 2014-08-29 00:12:16 -07:00
Jordan Harband 5ee955bb62 Remove unused $ROOT variable. 2014-08-29 00:12:02 -07:00
Jordan Harband 4b3d6f1760 Properly pass a space-separated list of packages to `npm install`
Fixes #490.
2014-08-22 02:44:04 -07:00
Jordan Harband 56c40cfa3c Don't try to copy `npm` itself with `nvm copy-packages`.
Fixes #504.
2014-08-22 02:19:56 -07:00
Jordan Harband d24dc662dc Merge pull request #512 from kevinwang/shasum-lowest-priority
Make shasum the lowest priority checksum command.
2014-09-02 00:36:17 -07:00
stelcheck 59939d09e8 * Make the creation of a symlink an overridable default behaviour 2014-08-28 22:45:07 +09:00
Jordan Harband f9769e40dd v0.14.0 2014-08-27 00:49:30 -07:00
Jordan Harband 5048a78376 Add special handling for node v0.6.21-pre 2014-08-26 23:53:17 -07:00
Kevin Wang 814319d7c0 Make shasum the lowest priority checksum command.
This fixes false "Checksums do not match" errors on systems where shasum
is a symlink to sha256sum or otherwise.
2014-08-27 00:06:41 -05:00
Jordan Harband 150aea21ec Fixes #487. 2014-08-21 16:51:24 -07:00
Jordan Harband 5c7f08843d Add error checking to nvm_tree_contains_path 2014-08-21 17:15:53 -07:00
Jordan Harband b59ecb9e11 Make sure the new `versions` directory is filtered out of nvm_ls output (in zsh). 2014-08-21 23:39:40 -07:00
Hiroshi IKEGAMI f130d02efc Fixed `nvm_version_greater` has syntax error in zsh-buildin-command `[` 2014-08-22 10:59:11 +09:00
Jordan Harband 3747735980 Make sure `nvm clear-cache` clears the versions directory as well. 2014-08-20 00:50:15 -07:00
Jordan Harband 5dd2d7e5d4 Make `nvm ls` support listing the "versions" directory when it's present. 2014-08-20 00:42:50 -07:00
Jordan Harband 0a695c5d2a Modify nvm_version_path to use nvm_version_greater. 2014-08-20 00:18:29 -07:00
Jordan Harband 8fe677a644 Add `nvm_version_greater` 2014-08-20 00:01:06 -07:00
Jordan Harband a2da9abd6d Use nvm_version_dir in nvm_version_path 2014-08-19 01:56:34 -07:00
Jordan Harband 9068dda110 Adding `nvm_version_dir` 2014-08-19 01:53:39 -07:00
egilkh 938feca6a9 Should escape grep in copy-packages. 2014-08-20 15:09:40 +02:00
Jordan Harband 213ff003d0 Use nvm_version_path everywhere possible. 2014-08-19 16:17:18 -07:00
Jordan Harband 986abbf5db Create nvm_version_path 2014-08-19 16:17:00 -07:00
Jordan Harband 78a5e3fadf Attempt to improve `nvm copy-packages` 2014-08-16 00:14:29 -07:00
Jordan Harband d7849054f8 Apparently wget outputs to stderr, so let's make sure we're checking both stderr and stdout. 2014-08-15 20:47:55 -07:00
Jordan Harband 708ac80a55 Properly replace the -I curl option for the --server-response wget option. 2014-08-15 20:47:55 -07:00
Jordan Harband eef12cc2b3 v0.13.1 2014-08-08 11:48:54 -07:00
Jordan Harband 99c8b59a14 Make sure that $ARGS is evaluated natively rather than as a single string argument.
Fixes #494.
2014-08-08 11:48:38 -07:00
Jordan Harband 61709c1f97 v0.13.0 2014-08-02 19:24:39 -07:00
Jordan Harband d5c0e94166 Adding `nvm exec` command. 2014-08-01 01:26:33 -07:00
Jordan Harband 6dc602b521 Ensure that `nvm ls node` doesn't return "node_modules", for example. 2014-08-01 01:24:28 -07:00
Jordan Harband 1d37af162a v0.12.2 2014-07-29 00:35:27 -07:00
Jordan Harband 781373f7ce Make sure awk is referenced unaliased, per https://github.com/creationix/nvm/issues/162#issuecomment-50284503 2014-07-27 23:02:22 -07:00
Jordan Harband 68574cc7e8 v0.12.1 2014-07-24 14:07:26 -07:00
John Loy d181abb628 Changes $path var to $node_path
Avoids obliteration of $path set earlier by Prezto/zsh. Stomping on $path causes dirname to not be in the PATH resulting in an error.
2014-07-24 15:28:33 -04:00
Jordan Harband f5643dc7ea v0.12.0 2014-07-23 01:15:14 -07:00
Jordan Harband e7ada80d08 `nvm use system` should work as expected. 2014-07-21 02:03:18 -07:00
Jordan Harband 9912f7cc46 If nvm is deactivated, display "none" or "system" instead of the system node version 2014-07-21 02:03:18 -07:00
Jordan Harband 6e02e5a54c If `nvm_ls` is called without a pattern, and node exists, tack on "system". 2014-07-21 02:03:18 -07:00
Jordan Harband 42b010775b Add `system` support to `nvm_print_versions` 2014-07-21 02:03:18 -07:00
Jordan Harband 1c50c5c7aa Add nvm_tree_contains_path function 2014-07-21 02:03:04 -07:00
Jordan Harband 200a9aa97e v0.11.2 2014-07-20 23:58:19 -07:00
Jordan Harband 55677dba4a Avoid calling "nvm_ls current" and call "nvm_ls_current" directly 2014-07-20 23:40:20 -07:00
Jordan Harband ca43ca21f5 Fix curl/wget detection. Fixes #478 2014-07-18 13:18:09 -07:00
Koen Punt 9c2127ce33 string replacement turns out not POSIX compliant 2014-07-18 16:21:20 +02:00
Jordan Harband 7a423b7bb4 v0.11.1 2014-07-18 01:48:46 -07:00
Michał Gołębiowski 21fa84225c Hotfix: correctly map curl's `-C -` to wget
wget doesn't need or accept the `-` parameter to `-c`. This incorrect
mapping causes `nvm install` to fail on a curlless OS.
2014-07-16 11:00:56 +02:00
Jordan Harband 4895aebf0a v0.11.0 2014-07-15 10:52:30 -07:00
Jordan Harband 26ed7a003a Making sure to quote this output, so that paths with spaces don't break the method.
Although tests were passing in Travis for #470, they were failing locally - now they pass in both.
2014-07-15 02:00:48 -07:00
Jordan Harband 6d2912a2ab Adding nvm_has_system_node 2014-07-14 21:41:26 -07:00
Jordan Harband 7171cbed6f Add an `nvm_ls_current` function. 2014-07-14 11:29:24 -07:00
Jordan Harband 8f66273922 Merge pull request #467 from jsdevel/adding-current-symlink
Adding a symlink in .nvm to the current version.

Fixes #430. Closes #447. Relates to #358. Fixes #355. Closes #313. Fixes #381.
2014-07-13 11:23:27 -07:00
jsdevel 3fa004293c Adding a symlink in .nvm to the current version. 2014-07-12 12:01:35 -07:00
Jordan Harband 83efa2288d Use [0-9] instead of [[:digit:]] per https://github.com/creationix/nvm/pull/466#discussion_r14853668 - it's simpler (and probably more portable). 2014-07-12 11:02:42 -07:00
Jordan Harband 4cfe62d3d1 Fixing `nvm ls 0.x` to only include `0.x.*` instead of `0.x*.*` 2014-07-12 11:02:42 -07:00
egilkh 0534872e0f Should escape grep in nvm_ls 2014-07-12 19:33:28 +02:00
Olivier Mengué f1b8cf8fd6 Use 'read' built-in instead of $(cat ... | head -n1) 2014-07-10 12:15:27 -07:00
Jordan Harband a7b6495172 Removing unnecessary line, per #461 2014-07-10 01:24:12 -07:00
Jordan Harband 2ee4b6f414 Correcting nvm.sh comment wrt bash 2014-07-09 18:30:52 -07:00
Jordan Harband 63f72b37df Followup per https://github.com/creationix/nvm/pull/452#issuecomment-48151847 2014-07-07 15:40:59 -07:00
Koen Punt a0de15d0f7 fix nvm_curl arguments for stdout 2014-07-07 23:16:20 +02:00
Jordan Harband df4689fbd2 Removing an extra "echo" 2014-07-07 13:59:58 -07:00
Jordan Harband 018e47bec0 Make sure both wget and curl work. 2014-07-07 13:32:10 -07:00
Jordan Harband 74cc1eb022 Make `nvm_curl` do a runtime check if `curl` is available. 2014-07-07 13:32:10 -07:00
Jordan Harband eda8ffbcc4 Add some more curl → wget argument munging 2014-07-07 13:32:10 -07:00
Jordan Harband b9383c9016 Use `nvm_curl` instead of `curl` directly, which has a `wget` fallback. 2014-07-07 13:32:10 -07:00
Jordan Harband f214ffaf1f Oxford comma 2014-07-05 11:07:14 -07:00
Jordan Harband 3e5037a1be v0.10.0 2014-06-26 17:06:45 -07:00
Jordan Harband fb215546ee Don't bother trying to return the exit code of `nvm alias` or `nvm_print_versions` 2014-06-26 16:52:48 -07:00
Jordan Harband 4b593bcda2 Make sure these vars are local, where supported 2014-06-26 16:52:34 -07:00
Jordan Harband 8349f0ff48 Make sure `nvm ls foo` returns a nonzero exit code when a version is not found.
Fixes #440.
2014-06-26 10:28:35 -07:00
Jordan Harband bb250b5730 v0.9.0 2014-06-26 10:28:14 -07:00
Jordan Harband 4c9a36e9ad Separating variable declaration from first assignment, which should fix some ksh problems. 2014-06-22 15:44:22 -07:00
Jordan Harband ba7f27dead Silently support `nvm i x.x.x`. Fixes #443. 2014-06-22 09:16:30 -07:00
Jordan Harband d8b55652a5 Return the exit code of `nvm use` when `nvm install`-ing. 2014-06-20 11:49:06 -07:00
Jordan Harband 4c38f507f5 Consistently returning exit code 1 when version is not installed yet. 2014-06-20 11:45:25 -07:00
Jordan Harband f213167ef0 Returning exit code 3 when no version is found. 2014-06-20 11:45:14 -07:00
Jordan Harband 1da31aa425 v0.8.0 2014-06-20 11:35:18 -07:00
Koen Punt 8dbbc32905 redirect errors to stderr 2014-06-17 01:22:12 +02:00
Andrew Crites 0e1f2408c9 Only list extant explicit version 2014-06-12 10:56:20 -04:00
Jordan Harband 6aa45732d8 Merge pull request #376 from koenpunt/nvm-unload
Feature: nvm unload
2014-05-28 20:53:50 -07:00
Jordan Harband 578a601b27 Filter out of `nvm ls` things that start with a dot. Fixes #421, closes #422. 2014-05-20 10:36:12 -07:00
Jordan Harband db8acf11fd v0.7.0 2014-05-08 10:30:52 -07:00
Jordan Harband a6be718387 Fixing --version output format. 2014-05-08 10:30:34 -07:00
Koen Punt f6ba08253b utility method for append path, fixes #414 2014-05-08 10:20:11 +02:00
Koen Punt e3b84499c2 use regex triplet, add unit test 2014-05-07 10:58:21 +02:00
Koen Punt b313f62749 Use sed -e instead of -E 2014-05-07 10:58:18 +02:00
Jordan Harband 7f3a794d89 Merge pull request #409 from koenpunt/sed-path-replacement
Use sed for *PATH stripping
2014-05-06 01:37:49 -07:00
Jordan Harband ba1be9b4ea Making `nvm install` use the version, even if it's already installed. Fixes #410 2014-05-05 23:32:39 -07:00
Koen Punt 652a9ef9b5 always apply path stripping 2014-05-06 00:00:25 +02:00
Koen Punt 0d81a219ae add quotes 2014-05-05 22:05:02 +02:00
Koen Punt d6e457354f use nvm_strip_path utility method for path stripping 2014-05-05 22:03:11 +02:00
Koen Punt 6668dc5c47 remove parentheses 2014-05-05 21:50:59 +02:00
Koen Punt 3d9c1d7852 use sed for *PATH stripping 2014-05-05 21:43:22 +02:00
Jordan Harband 29f582611b v0.6.1 2014-05-04 12:40:02 -07:00
Jordan Harband 673cda56c4 Adding a test for `nvm install invalid` behavior, and correcting the message.
From f00d688c87 (commitcomment-6205164)
2014-05-04 12:03:26 -07:00
Jordan Harband e562a5645b v0.6.0 2014-05-04 02:20:31 -07:00
Jordan Harband f00d688c87 Nicer failure message when trying to install an invalid version. Fixes #285. 2014-05-04 00:59:08 -07:00
Jordan Harband 4a7275a0c6 Ensuring paths are in quotes, to preserve spaces. 2014-05-04 00:39:46 -07:00
Jordan Harband 87516039a8 Using portable conditional syntax. 2014-05-02 23:28:42 -07:00
Koen Punt 80e349edb1 locate .nvmrc without `find`
instead of using find and actually cd'ing into directories
we're now using simple string replacement on the `pwd`
2014-05-02 23:02:34 -07:00
Jordan Harband 038c1f3d0f Find `.nvmrc` files upwards. 2014-05-02 23:02:34 -07:00
Jordan Harband 66455f7c77 Refactor so "finding .nvmrc" can be done in a bash function. 2014-05-02 23:02:34 -07:00
Jordan Harband 222250f2d1 v0.5.1 2014-04-25 10:47:59 -07:00
Jordan Harband e6bd207624 When auto-printing "help" on a command other than "help", return a nonzero exit code. 2014-04-25 10:35:52 -07:00
Jordan Harband bad79e6d77 v0.5.0 2014-04-20 00:36:12 -07:00
Jordan Harband 20953ab04c Make sure `nvm run` works without a version argument when .nvmrc specifies a version. 2014-04-20 00:28:07 -07:00
Jordan Harband bf8abf1052 Make sure `nvm install` works without a version argument when .nvmrc specifies a version. 2014-04-19 17:07:00 -07:00
Jordan Harband c188c1b11a Correcting help text for `nvm use` 2014-04-19 16:46:22 -07:00
Jordan Harband 752c0e4ef1 Removing trailing whitespace. 2014-04-19 14:34:47 -07:00
Jordan Harband 6dde4aac38 v0.4.0 2014-03-26 21:31:48 -07:00
Koen Punt 744507b83e added nvm unload method to remove nvm from shell 2014-03-23 16:44:37 +01:00
Koen Punt ec7909dcd3 Use NVM_ prefix for variables 2014-03-23 16:42:38 +01:00
Jordan Harband ba1e2f1cdf Merge pull request #382 from koenpunt/version-normalizing
Fix nvm ls for v* numbers
2014-03-21 09:30:19 -07:00
Jordan Harband 625e54880f Merge pull request #374 from koenpunt/fix-tests
Fix NVM_DIR discovery
2014-03-21 09:27:13 -07:00
Jordan Harband cebda7d35a When curl is not present, immediately bail out of `nvm install` with a nonzero exit code. Fixes #385. 2014-03-21 09:23:30 -07:00
Koen Punt 4a9a15c404 Fix NVM_DIR discovery 2014-03-21 10:03:16 +01:00
Jordan Harband 31c5406780 Adding an `nvm --version` command 2014-03-20 23:21:01 -07:00
Koen Punt a34c080d77 Fix nvm ls for v* numbers
Previously calling nvm ls with v* number (nvm ls v0.2)
would not return any results.

So now the v is prepended if its not already there
2014-03-18 10:53:57 +01:00
Koen Punt e30424d22f define all functions with nvm_ prefix 2014-03-18 01:41:02 +01:00
Koen Punt 1d40a5bc8b Replaced echo for printf when using formatted strings
Updated version list, now also compatible with zsh
2014-03-17 13:19:39 +01:00
messju mohr f82f38be90 fixed nvm_version result when multiple versions match the given pattern 2014-03-15 20:42:38 +01:00
Koen Punt 1a19de9d20 Use has util method and use comparison opts 2014-03-15 15:59:46 +01:00
Jordan Harband 618a372f38 Unset the executable bit on nvm.sh, since it's meant to be sourced 2014-03-14 22:10:52 -07:00
Daniel Teixeira 8cceae3cc1 Overwritting GREP_OPTIONS on local script
(recommiting to automerge into current master)
2014-03-14 14:58:51 -03:00
Jordan Harband 0d44ed1126 Merge pull request #364 from frasertweedale/fix/portability
Fix/portability
2014-03-04 17:31:17 -08:00
Fraser Tweedale 3b21b76106 fix install from source on FreeBSD 10
Compile with CXX=c++ on FreeBSD, as FreeBSD >= 10.0 no longer has
GCC in the base system (c++ is hardlinked to clang++ on FreeBSD 10.0
and g++ on FreeBSD < 10).
2014-02-22 11:58:39 +10:00
Fraser Tweedale dcba513108 address remaining comments from #363 2014-02-22 11:25:45 +10:00
Fraser Tweedale e6a5374bfb colorize output only if echo supports it 2014-02-22 00:06:53 +10:00
Fraser Tweedale 8cba9c5781 avoid nullglob in alias command 2014-02-22 00:00:10 +10:00
Fraser Tweedale 1d6145de5a fix explicit version matching on FreeBSD
FreeBSD's regular expression library does not like the pattern used
for matching explicit version strings in `nvm_ls`.  Change the
pattern to something more specific that works on FreeBSD.
2014-02-21 23:25:45 +10:00
Fraser Tweedale ca0c8a7f1d handle echo implementations that do not support `-e` 2014-02-21 22:10:17 +10:00