Commit Graph

872 Commits (c465a8351840d62ed61bee3300950226ba9de084)

Author SHA1 Message Date
Xandor Schiefer 44ab611421
[Fix] unset `NVM_RC_VERSION` when unloading 2017-09-07 16:52:05 +02:00
Jordan Harband c0b56d03a1
[Fix] `install-latest-npm`: `io.js` `v1.0.x` has weird behavior with npm v4.6.x.
- comment out node 0.6 test due to travis-ci breakage
2017-09-07 15:57:09 -07:00
Jordan Harband d91b6197f3
v0.33.4 2017-09-04 22:59:50 -07:00
Jordan Harband e3d1519567 [Fix] `install-latest-npm`: `io.js` `v1.0.0` has weird behavior with npm v4.6.x. 2017-09-04 22:01:46 -07:00
Jordan Harband 6f19babbff
v0.33.3 2017-09-03 12:46:59 -07:00
Jordan Harband b3e25b15f9
`nvm_install_latest_npm`: npm v5.4+ breaks on node v4-4.4 and v5-5.9, due to missing `Buffer.alloc`. 2017-09-02 14:04:37 -07:00
Jordan Harband cf5272e1a0 [Fix] `set -u`: `nvm install`: fix unbound vars
Fixes #1587.
2017-08-08 20:53:51 -07:00
Jordan Harband 389a53cca9 [Fix] `set -u`: `nvm use`: ensure these two vars don’t error out.
Fixes #1587.
2017-08-08 00:05:38 -07:00
Peter Dave Hello ab591b07ef [New] Print $TERM_PROGRAM in nvm debug if it exists 2017-07-14 01:48:27 +08:00
Peter Dave Hello 0356839d05 [Fix] Adjust $CURL_COMPRESSED_FLAG usage for curl, fix #1562 2017-06-27 15:04:28 +08:00
Jiri Spac d073bc96c7
[Docs] bump sample version numbers 2017-06-01 16:46:53 +02:00
Peter Dave Hello 11370fe823 [Fix] curl should fail if something wrong, fix #1556 2017-06-14 10:58:38 +08:00
Jordan Harband cbdd41eee2
[New] `nvm install`: add `--latest-npm` option to automatically try to upgrade to the latest working version of `npm`.
- also add `nvm install-latest-npm` top-level command
2017-06-11 14:15:04 -07:00
J Huang 28fe93cd15
[Fix] `nvm install -s`: properly precompute clang version 2017-06-13 13:06:53 +08:00
J Huang 7965796569
[Fix] enable curl compression only on curl >=7.21.0
curl < 7.21.0 will output redirection reponse body to the output when compressed, which will cause tarball is prepended with redirection reponse body and leads to checksum mismatch.

 - add `nvm_curl_use_compression` and `nvm_curl_version`
2017-06-10 15:25:26 +08:00
Nicolás Bevacqua 051ef09daf Fix `--version` help text 2017-06-01 10:06:43 -03:00
Jordan Harband 4f626eac0d [Fix] `set -u`: when `ALIAS` is unset, don’t reference an unbound variable.
Fixes #1526.
2017-05-16 22:58:26 -07:00
Weston Ganger 7f3145bc98
[New] add support for `$NVM_DIR/default-packages` file 2017-03-28 09:37:14 -07:00
Jordan Harband dc5dfe3bc1
[Fix] set IFS to default for all nvm commands.
Fixes #1227. Fixes #1244. Fixes #1514. Fixes #1518.
2017-04-28 00:41:55 -07:00
Jordan Harband accd6ae298
[Fix] ensure if `npm link` fails, that `$IFS` is not improperly set.
https://github.com/creationix/nvm/issues/1519#issuecomment-297850323
2017-04-28 00:39:48 -07:00
Jumpei Ogawa caa7de37af
[Fix] `set -u`: ensure that potentially unbound variables aren’t called unchecked.
This commit is follow up for 853afbf.
Fixes remaining bug in #1363
2017-04-27 20:17:21 +09:00
Jordan Harband 0a95e77000
v0.33.2 2017-04-26 00:50:33 -07:00
Piper Chester 65aedc105a
[Docs] capitalize C++ 2017-04-08 09:16:54 -07:00
Peter Dave Hello 153f8e7b31 [Fix] To confirm curl exists before detecting curl libz feature 2017-04-09 13:44:07 +08:00
Peter Dave Hello e87f395b7a
[Refactor] minor "if" and "return" improvement 2017-04-06 03:55:42 +08:00
Peter Dave Hello daa9c3604d
[Fix] To confirm curl exists before detecting curl libz feature 2017-04-06 05:20:55 +08:00
Jordan Harband 4249b1c2bb
[Fix] `nvm_ensure_version_installed`: add `system` support.
Relates to #1238
2017-03-31 00:52:56 -07:00
Peter Dave Hello 450088e51a
[Refactor] Improve if conditoion logic in "use" 2017-03-30 00:41:31 +08:00
Peter Dave Hello 059ab0e1ac
[Refactor] Make the code a little bit cleaner 2017-03-28 15:27:49 +08:00
Jordan Harband b9f9977cdd
[Fix] `nvm install -s`: npm detection
- add `nvm_use_if_needed`
 - add `nvm_install_npm_if_needed`
2017-03-27 15:00:50 -07:00
Peter Dave Hello 7b253c8c0a
[New] Supercharge `nvm debug` output
Try to get shell version, OS and its version, curl/wget/git version.
2017-03-23 14:48:00 +08:00
Peter Dave Hello 973dfc6d4a [New] Dynamically detect if curl supports `--compressed` 2017-03-23 16:51:20 +08:00
Peter Dave Hello 6a3b1dd2c3 [New] Enable curl auto compression/decompression
Enable `--compressed` parameter on curl to automatically enable
compression on request content by sending coressponding header, if the
server side supports compression format like deflate or gzip, curl will
also decompress the content automatically, so there is no additional
works need to done manually on client side, but just enjoy the benifits
of bandwidth and time saving!

Take https://nodejs.org/dist/index.tab as an example which is last
modified on Tue, 14 Mar 2017 22:41:05 GMT, the compressed transmission
only take 4829 bytes howevet the not compressed on taks 48000 bytes,
which is about 10 times larger!

This feature can be traced back to Sep 3 2002, in curl commit:
 - 64bbe9dfaf

So should be supported on various versions widely.
2017-03-23 16:51:20 +08:00
Peter Dave Hello fa3631fee3
[Refactor] Add `nvm_has_non_aliased` 2017-03-20 16:57:26 +08:00
Peter Dave Hello 316c9f34c6
[Performance] Use awk's comparison to save a pipe to grep 2017-03-20 04:50:32 +08:00
Peter Dave Hello 6cb12b0f99
[Performance] Improve awk usage 2017-03-21 04:23:53 +08:00
Peter Dave Hello 6ed73b0696 [Refactor] Improve sed usage for performance 2017-03-20 17:53:44 -07:00
Shirsh Zibbu dcd008ff61
[Refactor] remove unnecessary quotes 2017-03-07 05:46:45 +05:30
Peter Dave Hello b879628394 [Fix] declare MANPATH if and only if it's not set
By manpath's man page in Ubuntu 16.04:

> If $MANPATH is set, manpath will simply display its contents and issue
> a warning.

By fa22d712ff for #1413, `nvm` now will
declare the "MANPATH" variable, no matter if it's set or not, so in the
situation that $MANPATH is set, you'll get the warning:

> manpath: warning: $MANPATH set, ignoring /etc/manpath.config
2017-03-19 02:19:14 +08:00
Jordan Harband 9b2629384f
[Fix] `nvm install -s`: ensure additional params lack a trailing space.
Note: I believe this does not fix the underlying issue in zsh, which is
that it does not split up `$ADDITIONAL_PARAMETERS` and instead passes
the contents as one single argument.
2017-03-17 23:20:17 -07:00
Peter Dave Hello 50ae1e5199
[Fix] Install failed should return correct exit status, fix #1347 2016-12-10 00:20:04 +08:00
Matthew McEachen 1e6b5ce039
[Fix] stop setting mirror env vars unnecessarily
Fixes #1429
2017-03-16 23:54:55 -07:00
Peter Dave Hello d8538dad84 [Refactor] nvm.sh minor refactor 2017-03-14 17:45:54 +08:00
Peter Dave Hello 182a18d911
[Fix] Github should be GitHub 2017-03-09 23:02:08 +08:00
Dominyk Tiller b676bf7d0e
[Fix] checksums: remove libressl command support
This was an "oops" on my part when I was testing changes for my work
that was later adapted & merged in f1bca106a8.
LibreSSL is never installed as a `libressl` as it is intended to be a
replacement for `openssl` as much as possible, and consequently the
executable is called `openssl`.
2017-03-08 12:54:37 +00:00
Jordan Harband fa22d712ff
[Fix] ensure this variable is not unbound.
Fixes #1413.
2017-03-06 09:35:58 -08:00
Jordan Harband 6669e91bd8
v0.33.1 2017-02-20 17:59:20 -08:00
John-David Dalton 7c271729ef Enable working without tput. 2017-02-19 23:01:47 -08:00
Jordan Harband b54e147442
[Fix] `nvm unload`: run `nvm deactivate` before unsetting everything.
Fixes #1399.
2017-02-18 00:50:33 -08:00
Jordan Harband e7e4a9b3d6
[Fix] unset `NVM_RC_VERSION` env var immediately after it’s no longer needed.
Relates to #1399.
2017-02-18 00:48:41 -08:00
Jordan Harband 49e446dac1
[debug] include mirrors in `nvm debug` output. 2017-02-14 09:06:23 -08:00
Jordan Harband affcc5087c [Fix] `set -e`: `nvm install lts/something`: call `nvm_ensure_default_set` with the proper value.
Fixes #1394.
2017-02-11 23:19:29 -08:00
Jordan Harband 40e40975eb
v0.33.0 2016-12-29 21:22:13 -10:00
Jordan Harband 853afbf595
Revert "Revert "[Fix] `set -u`: ensure that potentially unbound variables aren’t called unchecked.""
This reverts commit a8c465018e.

Fixes #1363.
2016-12-26 21:57:55 -08:00
Jordan Harband a8c465018e
Revert "[Fix] `set -u`: ensure that potentially unbound variables aren’t called unchecked."
This reverts commit 60239e39cd.
2016-12-25 12:18:56 -08:00
Jordan Harband 60239e39cd
[Fix] `set -u`: ensure that potentially unbound variables aren’t called unchecked.
Fixes #1363.
2016-12-25 11:31:37 -08:00
Jordan Harband fcd6331f09 [Fix] remove the unused and broken `$NVM_PATH`.
Added in 359a83e. Fixes #1353.
2016-12-16 10:57:22 -08:00
Peter Dave Hello 45771499ee
[Fix] nvm should respect CC/CXX env var
- Also set CC for Freebsd, not only CXX

 - Also set CC=cc, CXX=c++ on Mac OS by default as upstream

Reference:
1bd871655a/configure (L16-L17)
2016-11-29 15:30:01 +08:00
Peter Dave Hello 84575cf353
[Refactor] Use "case" instead of multi "if" 2016-11-28 03:39:48 +08:00
Jordan Harband 47c60dfc1d
[Tests] add test to ensure that `nvm unload` unloads all functions. 2016-11-28 12:50:35 -08:00
Peter Dave Hello c96c561c88 [Fix] nvm unload missed node_version_has_solaris_binary() 2016-11-28 18:35:32 +08:00
Peter Dave Hello f29cd1a2ab
[Fix] nvm unload missed NVM_CD_FLAGS NVM_BIN NVM_MAKE_JOBS NVM_PATH 2016-11-28 04:14:21 +08:00
Peter Dave Hello 00a1ee6c4d
[Fix] nvm unload missed nvm_cache_dir() nvm_cd() 2016-11-28 04:10:42 +08:00
George Adams a7648ebd9f
[Fix] `nvm install -s`: `aix`: detect number of threads on aix and not just number of processors 2016-11-23 06:36:52 -05:00
Gibson Fahnestock 7f1917d0aa
[Refactor] Rename NVM_CPU_THREADS to NVM_CPU_CORES 2016-11-24 18:04:14 +00:00
Jordan Harband 5b820a453c [Refactor] avoid S2181 spellcheck error. 2016-11-25 00:56:28 -06:00
Peter Dave Hello 4b4e71f05c [shellcheck] disable "Check exit code directly" warning on line 273, 666
We need to use both the exit state and result form the previous commit,
so SC2181 should be disabled here.
2016-11-23 22:04:45 +08:00
Peter Dave Hello 65acb403ce
Add `nvm_clang_version` to ensure clang version > 3.5 2016-11-14 12:28:41 +08:00
Peter Dave Hello 38934bf16c
[New] `nvm install -s`: Use clang as C/C++ compiler if detected.
Fixes #902.
2016-11-14 05:39:34 +08:00
Peter Dave Hello 8c03637023
[Fix] `nvm install`: Handle 'N/A' version instead of asking to install it
Fixes #1304.
2016-11-14 19:31:35 +08:00
Peter Dave Hello 03608291a6
[caching] `nvm install`: Do not remove src dir after compilation succeeds
This will help speed up the installation time for the non-first time
installation, especially can speed up the build time and test time on
Travis-CI as we'll cache .cache dir.
2016-11-14 03:45:52 +08:00
Jordan Harband e5316ddbe3 [Fix] allow uninstalls when files are nonwritable but self-owned.
Fixes #1270.
2016-11-13 00:09:29 -08:00
Peter Dave Hello eab41ed8ef [Fix] add missing "command" prefix call for some commands 2016-11-13 04:53:41 +08:00
Peter Dave Hello c5303a6973 Improve nvm_download_artifact() process, fix #1291
- Delete broken/checksum not matched local cache
 - More output message.
2016-11-13 04:02:06 +08:00
George Adams 8f82eab5db Add AIX support
Currently AIX isn't supported in nvm so I have made a few small changes
to make this work:
change tar to gtar for AIX
change make to gmake for AIX
Set ARCH as ppc64 for AIX
2016-11-10 13:52:00 -05:00
Peter Dave Hello 9c92b5a4ea
[New] `nvm install`: Print the version that is being installed 2016-11-06 20:43:47 +08:00
Jordan Harband 24f8ae5c46
[New] support external install hook “$NVM_INSTALL_THIRD_PARTY_HOOK”.
Fixes #1207.
2016-11-03 23:42:55 -07:00
Jordan Harband 942e9ab1f5
[Fix] bypass aliased `cd` in a few places.
Fixes #1284.
2016-11-03 10:08:24 -07:00
Jordan Harband 589a9112bd
v0.32.1 2016-10-18 13:16:51 -07:00
Jordan Harband 76fe1ab1c6
[Fix] ensure that `lts/*` points to boron/latest, not argon/earliest.
- update test mocks
 - fix tests for Boron release

Fixes #1268.
2016-10-18 11:33:07 -07:00
Atsushi Yamamoto 3342367981 Fix indent at L2672 2016-10-08 18:01:27 -07:00
Jordan Harband f9e14b7d4d
[Fix] `nvm uninstall`: work around `nomatch` `zsh` option.
Fixes #1228.
2016-10-04 01:43:24 -07:00
Jordan Harband 160a39c844 [Refactor] fix copy-paste error from 5c68141ede 2016-09-18 19:06:18 -07:00
Jordan Harband d12ccb130d
[Fix] `zsh`: when `warncreateglobal` is set, this line warns for some reason. Use `env` to suppress it.
Fixes #1236.
2016-09-18 13:39:50 -07:00
Jordan Harband acbdd9a3fa
[Fix] Fix trailing whitespace in `nvm ls-remote` 2016-09-18 12:26:06 -07:00
Jordan Harband 256e75c789 [Fix] Remove un-local var EXIT_CODE.
Might possibly be a fix to part of #1236
2016-09-18 02:00:32 -07:00
Jordan Harband 5c68141ede
[Refactor] `nvm ls-remote`: make the main ls-remote command call into `nvm_remote_versions` directly. 2016-09-15 23:52:01 -07:00
Jordan Harband dc1d3aa943
[Refactor] `nvm_install_source`, `nvm_install_binary`, `nvm_download_artifact`: ensure a version is provided. 2016-09-17 09:24:42 -07:00
Jordan Harband 51b21bcad1
[Refactor] Use `||:` and `&&:` when appropriate 2016-09-16 23:16:58 -07:00
Jordan Harband 3b5f088e01
[Refactor] `nvm_ls_remote_index_tab`: clean up to use `nvm_get_mirror` 2016-09-15 22:45:10 -07:00
Jordan Harband dca0220275
[Refactor] `nvm_install_binary`: remove unused `nvm_get_mirror` call 2016-09-15 21:40:44 -07:00
Jordan Harband 63fe22d635
v0.32.0 2016-09-15 15:02:56 -07:00
Jordan Harband 332f413eb3
[New] expand `xz` support to more versions.
Per https://github.com/nodejs/node/pull/4894#issuecomment-175989848
2016-02-09 11:19:14 -08:00
Jordan Harband 4060de5285
[New] enable io.js and node 4+ source installs.
- consolidate `nvm_install_iojs_source` and `nvm_install_node_source` into `nvm_install_source`
2016-09-02 23:43:46 -07:00
Jordan Harband 715bb59c3b
Adapt `nvm_install_iojs_source` to support specifying `make` jobs. 2016-09-02 23:43:46 -07:00
Jordan Harband 9b8eab3163
[New] Add `nvm install -s iojs` support. 2016-09-02 23:43:46 -07:00
Jordan Harband e546149f7b
[New] add `nvm cache` with “dir” and “clean” commands.
- cache the nvm cache on travis
2016-09-02 23:43:46 -07:00
Jordan Harband 57c2004ab2
[Breaking] adapt `nvm_install_node_binary` to `nvm_install_binary`, eg, io.js too.
- `nvm_get_checksum` now accepts 5 args (from 3): flavor (node/iojs), type (binary/source), version, slug, compression (xz/gz)
 - `nvm_install_binary` accepts 3 args (from 2): flavor (node/iojs), kind (std), version
 - remove `nvm_install_iojs_binary`
2016-09-02 23:43:46 -07:00
Jordan Harband 2214cb7ad7
[Breaking] cache previously downloaded artifacts for source installs
- `nvm uninstall` no longer removes source artifacts
2016-09-02 23:43:46 -07:00
Jordan Harband ba3ad8e460
[Breaking] cache previously downloaded artifacts for binaries
- consolidate `nvm_install_merged_node_binary` with `nvm_install_node_binary`
 - add `nvm_get_download_slug`, `nvm_download_artifact`
 - `nvm uninstall` no longer removes artifacts
2016-09-02 23:43:45 -07:00