Commit Graph

376 Commits (cec1c38a8407f0d254f91d1c214dc67a005a4e1a)

Author SHA1 Message Date
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
Fraser Tweedale a3331ffdb0 fix errors due to use of unportable == operator
The `==` operator is not defined by POSIX and many test(1) (also
spelled `[`) implementations do not support it.  Replace uses of
`==` with the POSIX-conformant `=` equality operator.
2014-02-21 21:05:40 +10:00
Fraser Tweedale 4a5f5203d0 fix errors and portability issues in expr commands
Add double-quotes around all expr(1) left-hand-sides where the
argument is just a variable, to prevent syntax errors when the
variable is empty.

Also avoid the `expr match ...` variant as this is not defined in
POSIX and causes errors in some implementations, including
FreeBSD's.
2014-02-21 20:52:50 +10:00
Fraser Tweedale ee6d4ab074 fix ls command in dash
The `colorize_version` command fails in dash (default /bin/sh on
Ubuntu) with an error like:

  local: v0.2.3: bad variable name

Instead of using a local variable, interpolate the function argument
directly to avoid the error.
2014-02-21 20:24:27 +10:00
Dr. Kibitz a9be598241 Remove some new bashisms 2014-02-18 21:57:59 -08:00
Dr. Kibitz 9a0c269713 Redo https://github.com/creationix/nvm/pull/345 2014-02-18 21:51:39 -08:00
Fraser Tweedale 0c8410fcc3 support FreeBSD's sha1(1) for integrity checks
In the absense of shasum(1) (which on FreeBSD is provided by Perl,
from ports) nvm falls back to sha1sum(1) which does not exist on
FreeBSD.  But FreeBSD does have sha1(1) so look for sha1(1) and use
it if present.

As part of this change, refactor the execution of the checksum
program down into nvm_checksum and also clean up some special-casing
of empty dist checksums, which is already handled by nvm_checksum.
2014-02-18 22:22:46 +10:00
Jordan Harband 12d7b6fa0c Merge pull request #361 from drkibitz/local-vars
Declare more variables as local
2014-02-16 11:20:21 -08:00
Jordan Harband 274652e10e Fix nvm ls-remote and display uninstalled versions again. Fixes #359, closes #360 2014-02-16 09:35:05 -08:00
Dr. Kibitz 2e9558cbf9 Declare more variables as local 2014-02-16 01:05:24 -08:00
Jordan Harband 13781f242b Create a `colorize_version` function that doesn't include the padding, for `nvm version` 2014-02-15 18:12:24 -08:00
Jordan Harband b6469ee186 Preventing an extra leading newline. 2014-02-15 18:12:24 -08:00
Jordan Harband 304cc29cf0 Fixing indentation and adding a trailing newline. 2014-02-15 16:02:27 -08:00
Nicholas Hwang 9a88e3656c Change variable name to fix zsh parse issue 2014-02-11 22:55:02 -05:00
Simon Tabor 9af7409e4a don't curl if version is specified + installed
Removes CURL to match the version pattern if an explicit version (e.g. `v0.10.25`) is specified and already installed.
2014-02-06 13:02:57 +00:00
Jordan Harband ecb7a15baa Using our conventional NVM_ prefix for env vars.
Per https://github.com/creationix/nvm/pull/245#issuecomment-33821443
2014-01-31 10:01:37 -08:00
Kyle Kelley 8599ea29f9 Add dist to path, add docs 2014-01-30 19:22:44 -08:00
Kyle Kelley b1d0cfa77b Added mirror option for node binaries 2014-01-30 19:16:36 -08:00
Jordan Harband 45eff43cd0 Merge pull request #342 from txgruppi/master
export NODE_PATH on nvm use
2014-01-13 21:08:17 -08:00
Tarcisio Gruppi eb588566f2
Removed PREVIOUS_NODE_PATH 2014-01-13 09:15:45 -02:00
Dennis Hoppe 47c87b8478 Update nvm.sh
Examples should point to latest stable release. ;)
2014-01-03 14:45:46 +01:00
Tarcisio Gruppi 58dafdaedd
Update NODE_PATH on use, run and deactivate 2014-01-01 02:04:37 -02:00
Tarcisio Gruppi 4d2faba9af
export NODE_PATH on nvm use 2013-12-31 22:35:19 -02:00
Marcin Jekot 950da2b836 Merge branch 'master' into #299 2013-12-25 18:14:24 +02:00
Fraser Tweedale 591a3bb19d fix MANPATH generation on FreeBSD
On FreeBSD, if MANPATH is set it is used verbatim; configuration
files are completely ignored.  Therefore, setting MANPATH to (only)
the nvm man dir makes system man pages unreachable.

To get around this, before doing anything else to MANPATH, if it is
empty set it to the output of manpath(1).

One further complication: FreeBSD automatically adds a path to the
man pages path for each path in PATH that ends in "/bin", which
causes "~/.nvm/$VERSION/man" to be added.  This interferes with the
subsequent substitution so strip this from MANPATH before the
substitution.
2013-12-23 21:31:18 +10:00
Marcin Jekot 679c71650f fix copy-packages in zsh
fixes #299, finally, using the local var syntax
2013-12-18 17:21:00 +02:00
Jordan Harband 3eb09ab984 Merge pull request #330 from mibamur/patch-1
Update nvm.sh
2013-12-17 10:25:24 -08:00
Michael 670870e211 Update nvm.sh
fix#https://github.com/creationix/nvm/pull/330
2013-12-18 02:07:02 +09:00
Michael 74ca011704 Update nvm.sh
fix https://github.com/creationix/nvm/pull/330
2013-12-18 02:06:23 +09:00
Jordan Harband 83c5b6286d Add `nvm current` to `nvm help`. Relates to #205. 2013-12-16 23:40:47 -08:00
Timo Sand f9d5a85f05 Merge branch 'master' into add-current-command 2013-12-17 08:06:16 +02:00
Michael b2ef0cb14c Update nvm.sh
Fix - this line should be nvm use 0.10 - no 'v', and no incremental version number.
2013-12-16 23:25:50 +09:00
Michael 59c4dc735a Update nvm.sh
small fix fo nvm help info
2013-12-16 05:04:14 +09:00
Marcin Jekot 4df45ac51a merge in changes from creationix/nvm 2013-12-15 11:27:15 +02:00
Marcin Jekot 94fff5c923 fix copy-packages in zsh (without breaking sh and bash) 2013-12-14 01:14:34 +02:00
D. Stuart Freeman 56e32888ea fix copy-packages 2013-12-12 10:52:43 -05:00
Koen Punt e99fc43ab2 helper method for testing existence of commands 2013-12-12 10:46:40 +01:00
Adam Hull 037f52a55b Slurp test unsetopt stderr 2013-12-11 15:23:19 -08:00
Koen Punt aba4346a86 Universal test of unsetopt command
According to http://stackoverflow.com/a/7522866/189431 it should work in "bash, zsh, ksh and sh (as provided by dash)".
2013-12-11 13:49:58 +01:00
Jordan Harband 5686d9a3bb Addressing comments raised in #171 2013-11-29 14:26:12 -06:00
Jordan Harband 788d87774f Merge pull request #312 from quiqueg/master
Fixed bash error caused by lack of double quotes
2013-10-25 09:32:59 -07:00
Logan Smyth 7862182d6f Add -f 2013-10-24 20:09:33 -07:00
Matthew Alexander b4a9c14d4e Fixed bash error caused by lack of double quotes 2013-10-24 18:59:37 -07:00
Logan Smyth 473dd86f48 Properly remove the tar file. 2013-10-23 22:14:02 -07:00
Timo Sand dd157129a6 Added command to get current nvm environment. 2013-10-10 07:56:57 +03:00
00Davo a2a8ddb779 Use only shell builtins to avoid triggering autojump, instead of needing GNU readlink
Under Zsh, the `-q` flag to `cd` makes it not run `chpwd` hooks and hence makes it not add `~/.nvm` to `autojump`.
2013-09-19 02:50:20 +10:00
00Davo 1ad9d18257 Finds NVM_DIR without using cd
Using `cd` makes the nvm directory the number-one directory in `autojump`'s database---which is somewhat confusing since the user basically never `cd`s to it directly!---so here's an alternative method that doesn't use the `cd` command. I've checked it works in both Bash and Zsh.
2013-09-18 17:10:24 +10:00
Martin Iwanowski 41352e866d Fix for issue #196, deconfusified the scenario 2013-09-10 12:34:32 +02:00
Max Zhao 62dec72394 Fixed curl silently ignoring 302 redirections
Under certain network environments, due to poor implementation of file
download caches (immoral Chinese ISP), the direct download of Node.js
packages (http://nodejs.org/dist/node-$VERSION.tar.gz) will be
redirected to alternative urls using 302 redirections, which are not
handled by `curl --process-bar` by default. Instead, curl will "fail"
silently without creating any output file or error exitcode.
(Tested under Ubuntu 12.04 Desktop)

Fixed by adding "-L" switches to the curl commands responsible for
downloading the binary and source node.js packages.
2013-08-21 00:27:10 +08:00
Daniel Stockman e5d7d493b9 Avoid error from aliased `which` during install
The same fix as #207, just for fools like me who have `which` aliased to `type` in OS X. Without this escape, a very cryptic error message is emitted (though the install ultimately succeeds, as long as one actually has `curl` installed).
2013-07-31 12:42:19 -07:00
Jeremy Satterfield 6690aecc6c fix handle cases of grep aliases as described in to resolve #207 2013-06-26 15:55:39 -05:00