Commit Graph

467 Commits (d86f2704380fbb0b835dae07ebbb2b2f82e074fd)

Author SHA1 Message Date
Vesa Vilhonen 52f67b3677
[Fix] `exec`: `--` should stop argument parsing
Co-authored-by: Vesa Vilhonen <vesa@vilhonen.com>
Co-authored-by: Sladyn Nunes <sladynnunes98@gmail.com>
2020-11-20 13:06:28 +02:00
Sladyn Nunes 4fdef427e4
[New] `install`: add `-b` flag to skip building from source
Fixes #2114.
2021-02-16 19:34:23 +05:30
nmarghetti 7f6c0c053a
[Refactor] add `nvm_install_binary_extract` 2021-01-02 00:03:24 +01:00
nmarghetti d396181ffb
[Refactor] add `nvm_get_artifact_compression` 2021-01-02 00:03:24 +01:00
Dena Burd 2fea55fdb5
[Tests] add test that fails without fix for #2362 2021-01-15 14:07:47 -08:00
nmarghetti 502089ae30 [New] install script: Allow installation from other repository also for git method 2021-01-14 00:10:19 +01:00
nmarghetti 60e78d3ec1
[Tests] Add unit test for nvm_download 2021-01-13 02:26:38 +01:00
nmarghetti 9f3397afa4
[Tests] add `nvm_grep` to install script, fix tests 2021-01-08 18:54:40 +01:00
Jordan Harband 436cda247e
[Fix] remove `nvm_supports_source_options`
Fixes #2387
2021-01-07 13:00:26 -08:00
nmarghetti 9849bf494d
[meta] Rename some files to be more cross platform 2021-01-04 00:49:05 +01:00
nmarghetti 4e9df33cb7
[New] install script: Allow installation from other repository 2020-12-27 10:09:29 +01:00
David Moles d4eba354b5 [Fix] `install`: Ignore npm command under $NVM_DIR when checking for global modules 2020-11-30 15:22:24 -08:00
Jordan Harband 3b57dfec8d
Revert "[Fix] `nvm_die_on_prefix`: only grep lines starting with env var name" (#2347)
This reverts commit 21c0c05130.

Fixes #2360. Fixes #2364. Fixes #2366.
2020-11-27 21:28:12 -08:00
Dena Burd 6848c16d53
[New] Added `set-colors` command. See details below:
This command allows users to replace default colors with their own custom colors.

 - top-level commands modified: alias, ls, ls-remote
 - helper functions added: nvm_echo_with_colors, nvm_err_with_colors,
nvm_set_colors, nvm_get_colors, nvm_print_color_code
 - functions modified: nvm_print_formatted_alias, nvm_print_versions, nvm_print_alias_path (implicitly), nvm_print_default_alias (implicitly), nvm_list_aliases (implicitly)

We added tests and info on using this command to the README!

Co-authored-by: Dena Burd <29719099+gitburd@users.noreply.github.com>
Co-authored-by: Naomi Quinones <52065567+naomiquinones@users.noreply.github.com>
2020-08-17 14:56:13 -07:00
Matteo De Wint 21c0c05130 [Fix] `nvm_die_on_prefix`: only grep lines starting with env var name 2020-11-16 11:35:26 +01:00
Alex Aubuchon 00af6341f7
[Tests] Run fast test suite in clean environment 2020-11-03 19:05:34 -05:00
Jordan Harband 499d303746
[Perf] `use`/`nvm_die_on_prefix`: replicate npm config algorithm and remove `npm config` call 2020-08-24 22:44:25 -07:00
Dena Burd c72f2c6f21
[Fix] `nvm ls-remote`: accept versions that end with a dot
Fixes #983.
2020-09-24 13:46:29 -07:00
Alex Aubuchon f2c5ce459a
[Tests] Fix nvm unload fast test cleanup 2020-10-22 20:43:36 -07:00
Alex Aubuchon e77ed07ccc
[Tests] Fix `nvm_ls_current` fast test 2020-10-13 12:32:41 -04:00
Dylan Armstrong e01060fa2c
[Fix] `nvm_die_on_prefix`: use directory comparison rather than string 2020-10-09 09:43:21 -05:00
Dylan Armstrong 96069da0d5
[Fix] `nvm_ls`: zsh: unset `markdirs` and `local_options`
Fixes #2315.
2020-10-09 09:43:21 -05:00
Jordan Harband 6e0562ac6d
[Tests] pin postcss to v7 2020-09-21 15:40:41 -07:00
Jordan Harband cf92956e5d
[New] add `nvm_find_project_dir` helper 2020-08-23 14:40:42 -07:00
Jordan Harband 1d88ecfce5
[Fix] `nvm_die_on_prefix`: check that the prefix is inside the version dir, not just the nvm dir
- also pass the version dir as the third argument
2020-08-23 22:50:41 -07:00
Yash-Singh1 b1200c659b
[Fix] `nvm use`: fix `--silent` when version is omitted
Fixed a bug where --silent mode was failing for nvm use I ran a test
 that just ran ```nvm use node --silent``` that I wrote by myself.
 Unfortunately I noticed a bug where it still prints out some messages in
 different cases. This pull request is to fix that bug. * Added in an argument
 called ***quiet***  to the nvm_rc_version() function at *line 339* * Printed
 anything inside the nvm_rc_version() only in the scenario where quiet mode is
 off * Ran the nvm_rc_version() function in quiet mode only if silent mode is
 on in the "use" command of nvm at *line 2990* * Ran *nvm_echo* and *nvm_err*
 inside the "use" command of nvm only in the scenario where silent mode is off
 (There were 4 scenarios where this was forgotten) * Edited the ```nvm
 deactivate``` command to include a silent mode * Changed the help page to
 include the --silent option for ```nvm deactivate``` * Added in aliases for
 the --silent flag in ```nvm deactivate``` and ```nvm use``` * Used silent
 mode inside the ```nvm use``` when running ```nvm deactivate``` inside it and
 silent mode is on A test was attached in the 'test/slow/nvm use' directory.
 It is named *Running "nvm use node --silent" doesn't print anything*. It runs
 ```nvm use node --silent and checks``` and succeeds if the OUTPUT matches the
 EXPECTED_OUTPUT which is *null*  or *''*. When the test was run locally, it
 still ouputed results if someone deleted some contents of the *.nvm/* folder.
 This output was given from the ```nvm deactivate command```. This was the
 reason that the ```nvm deactivate``` was edited to include silent mode.
2020-08-08 17:27:46 -07:00
Naomi Quinones 1bf567bd0b
[Fix] ensure `--help` is intercepted on any command
Co-authored-by: Naomi Quinones <52065567+naomiquinones@users.noreply.github.com>
Co-authored-by: Dena Burd <me@Denas-MacBook-Air.local>
2020-08-04 16:32:19 -07:00
Kayla Altepeter a5aec107df
[New] adding default and alias option to `nvm install`
For: `nvm install 8.12.0` after install:

--alias=8 is equivalent to `nvm alias 8 8.12.0`
--default is equivalent to `nvm alias default 8.12.0`

Co-authored-by: Kayla Altepeter <kayla@kaylaaltepeter.com>
Co-authored-by: Dena Burd <me@Denas-MacBook-Air.local>
Co-authored-by: Jordan Harband <ljharb@gmail.com>
2018-10-22 08:32:29 -05:00
Jordan Harband 424aeb38b4
[Refactor] add `nvm_get_checksum_binary`; use it in `nvm debug` 2020-07-31 22:13:21 -07:00
Jordan Harband abfe0a5891
[Refactor] remove unused `nvm_checksum` function 2020-07-31 22:10:28 -07:00
Jordan Harband 6575b6b052
[Fix] `install`: improved arg parsing around `--reinstall-packages-from`
Fixes #1762
2020-06-04 16:15:39 -07:00
Sehrope Sarkuni 91a55dd91a
[Refactor] Rename solaris and iojs helper functions to be nvm_ prefixed
Renames node_version_has_solaris_binary and nvm_iojs_version_has_solaris_binary
to be prefixed with nvm_ so they do not show up in tab completion following the
word "node".
2020-05-08 16:08:27 -04:00
Magnus Markling b02617028f
[Tests] Source nvm.sh before defining FILE 2020-03-19 12:13:29 +01:00
Jordan Harband 4626d1aae6
[New] add `lts/-1` etc, to point to an LTS line relative to "latest" 2020-03-04 01:03:36 -08:00
Jordan Harband c372ff03e0
[Tests] update mocks 2020-03-04 00:44:35 -08:00
Jordan Harband b9536327ae
[Fix] `nvm ls-remote`: properly label latest LTS versions instead of just the latest one in the filter
Fixes #2166
2020-02-21 21:27:13 -08:00
Jordan Harband e609091a55
[Tests] update test mocks 2020-02-22 09:06:59 -08:00
Jordan Harband 4cd6b4822c
[Tests] try to make `nvm unload` test more robust 2020-02-09 06:41:52 -10:00
Jordan Harband f4eddb2c9c
[Tests] ensure `nvm unload` unsets env vars too 2020-02-07 09:16:55 -10:00
Jordan Harband 0899839b95
[Tests] pin `david` to v11
v11.1.0 and v12 no longer work on node 0.10; v11.1.1 should.

See https://github.com/alanshaw/david/issues/159
2019-12-09 08:51:46 -08:00
Jordan Harband 73a513c389
[Fix] allow `nvm unalias x` when `x` is a default alias, but shadowed
Fixes #2122.
2019-11-12 11:16:08 -08:00
Sehrope Sarkuni 0b5bb5ccd8
[Fix] `set -u`: Add default empty value for `$NVM_NO_ALIAS`
Adds a default value for NVM_NO_ALIAS so that nvm ls does not error out when run
in a bash nounset/-u (no unset vars) environment.
2019-05-14 08:31:24 -04:00
Jordan Harband ee9e56582e
[Tests] `jspm` v2 beta started breaking tests; pin to < v2 2019-05-04 13:34:16 -07:00
Jordan Harband e7a5b7992b
[meta] update repo links to point to org 2019-04-24 16:08:34 -07:00
Christopher Sahnwaldt 2410215b6a
[Refactor] add `nvm_stdout_is_terminal` helper 2019-02-24 00:03:19 +01:00
Christopher Sahnwaldt a1abfd1fe4
[Tests] use rimraf over `rmdir` in teardowns
- fix test 'Running "nvm ls" should display all installed versions.': only expect versions created by this test, but no versions created by other tests
2019-02-27 10:50:59 +01:00
Jordan Harband 43402df896
[Fix] `nvm_supports_source_options`: work around a bug in bash 3.2
See https://github.com/creationix/nvm/issues/1978#issuecomment-453480231

Fixes #1978.
2019-02-26 16:53:36 -08:00
Jordan Harband 9daf26f0a0
[Tests] `nvm_command_info`: make error output more helpful 2019-02-25 13:17:10 -08:00
Jordan Harband c6740f5a6e
[New] `nvm ls`: add `--no-alias` to suppress alias output
Per https://github.com/creationix/nvm/issues/1792#issuecomment-466696504
2019-02-23 22:41:46 -08:00
Jordan Harband 04fdb2331b
[Tests] `nvm ls`: ensure `nvm alias` is called 2019-02-23 22:22:18 -08:00
Jordan Harband 2a5d2c06ff
[Tests] add more checks to make_fake_* helpers 2019-02-23 15:24:02 -08:00
Jordan Harband 2a513a1bc0
[Fix] `nvm_ls`: Reverts #1462 to fix io.js sorting.
<details>
<summary>Before this revert:</summary>

```sh
iojs-v3.3.1
iojs-v2.5.0
v0.6.21
v0.7.12
iojs-v1.8.4
v0.8.28
v0.9.12
v0.10.48
v0.11.16
v0.12.9
v0.12.18
v0.12.87
v4.9.1
v5.11.1
v5.12.0
v6.14.4
v6.16.0
v7.10.1
v8.6.0
v8.9.1
v8.10.0
v8.11.3
v8.11.4
v8.12.0
v8.13.0
v8.14.1
v8.15.0
v9.11.2
v10.0.0
v10.1.0
v10.2.1
v10.3.0
v10.4.1
v10.5.0
v10.6.0
v10.7.0
v10.8.0
v10.9.0
v10.10.0
v10.11.0
v10.12.0
v10.13.0
v10.14.2
v10.15.1
v11.0.0
v11.1.0
v11.2.0
v11.3.0
v11.4.0
v11.5.0
v11.6.0
v11.7.0
v11.8.0
v11.9.0
v11.10.0
```
</details>

<details>
<summary>After this revert:</summary>

```sh
v0.6.21
v0.7.12
v0.8.28
v0.9.12
v0.10.48
v0.11.16
v0.12.9
v0.12.18
v0.12.87
iojs-v1.8.4
iojs-v2.5.0
iojs-v3.3.1
v4.9.1
v5.11.1
v5.12.0
v6.14.4
v6.16.0
v7.10.1
v8.6.0
v8.9.1
v8.10.0
v8.11.3
v8.11.4
v8.12.0
v8.13.0
v8.14.1
v8.15.0
v9.11.2
v10.0.0
v10.1.0
v10.2.1
v10.3.0
v10.4.1
v10.5.0
v10.6.0
v10.7.0
v10.8.0
v10.9.0
v10.10.0
v10.11.0
v10.12.0
v10.13.0
v10.14.2
v10.15.1
v11.0.0
v11.1.0
v11.2.0
v11.3.0
v11.4.0
v11.5.0
v11.6.0
v11.7.0
v11.8.0
v11.9.0
v11.10.0
```
</details>

In other words, the sorting needs to happen *before* the `NVM_NODE_PREFIX` is removed.
2019-02-23 15:02:31 -08:00
Jordan Harband 48196d2436
[Tests] fix fake node versions 2019-02-23 14:47:49 -08:00
Jordan Harband db19450caa
[Fix] `default_packages`: work when the file lacks a trailing newline
Fixes #1995.
2019-02-02 13:45:11 -08:00
Jordan Harband 5c117e6ab3
[Refactor] extract “get default packages” logic to `nvm_get_default_packages` 2019-02-01 13:27:18 -08:00
Lucas Kellner 02997b0753
[Docs] `unalias`: add more specific error message for builtin aliases 2019-01-23 16:39:57 -08:00
Peter Dave Hello cc0750eb5d
[Fix] `install`: Add missing io.js installation message
Fixes #1988
2019-01-22 15:46:29 +08:00
Peter Dave Hello 7e715d5c73
[Tests] Improve syntax in "test/installation_iojs/nvm install v1 works" 2019-01-23 03:10:03 +08:00
Jordan Harband c1150c41ab
[Tests] avoid using shopt in zsh 2018-11-26 11:18:11 -08:00
Erik Lilja 8542df4ac5
[New] add support for `$XDG_CONFIG_HOME` 2018-08-14 21:45:40 +02:00
Jordan Harband f218a85454
[Tests] eslint 5.5+ seems to not install on node 0.10 2018-09-09 14:56:17 -07:00
Jordan Harband e7a37f336d
[Tests] fix failing tests on master due to npm registry SSL changes 2018-08-15 15:01:47 -07:00
Xandor Schiefer 90cfb5d771
[Fix] `use`: Prepend instead of changing if shadowed by system dirs (fixes #1652) 2018-06-08 15:23:02 +02:00
Joshua Li 0cdc184168
[Fix] Improve `nvm_is_version_installed` to check for a node executable instead of root dir 2018-05-31 15:26:30 -07:00
Joshua Li a5f42d9cea
[Tests] update most mkdirs to use make_fake_{node,iojs} 2018-06-13 10:38:19 -07:00
Xandor Schiefer eabd7ab13d
Respect previously nvm-loaded node version when sourcing 2016-11-14 19:18:24 +02:00
Spike Grobstein 9854928ba9
[New] `install.sh`: allow user to explicitly opt out of nvm adding the source string
this is done by checking if the user supplies `PROFILE=/dev/null` when running `install.sh`, the `nvm_detect_profile` function will not output any strings, causing `nvm_do_install` to skip adding `SOURCE_STR`.
2018-05-03 08:22:07 -07:00
Jordan Harband c465a83518
[Tests] `nvm ls-remote`: add test for overly-large tab file 2018-05-23 23:48:04 -04:00
Jordan Harband 38b32c27f3
[Tests] update mock data 2018-05-23 23:48:50 -04:00
Peter Dave Hello 113d807e5a
[New] Support `--no-progress` for `nvm install`
Closes #1079.
2017-03-10 01:07:16 +08:00
Peter Dave Hello 685312d600
[Fix] Remove $NVM_DIR trailing slash automatically, fix #1708 2018-04-12 14:14:58 +08:00
Peter Dave Hello d5dacdf80f
[Fix] `nvm debug`: Fix sed syntax error in nvm_command_info() 2018-04-17 18:09:47 +08:00
Peter Dave Hello e7b42198b4
[Fix] Improve .nvmrc reading process
Fixes #1015. Fixes #1712.
2018-02-20 03:34:43 +08:00
Peter Dave Hello b15709e637 Turn off wget's output in nvm_get_latest()
curl output is turned off by `-s` in the same place, we should unify the
behavior on wget, also, this help removes those wget outputs that can't
fit our coding style tests. cc #1739
2018-04-12 23:44:27 +08:00
Brian M. Jemilo II 68fe26a5e4
[Fix] Add autocompletion support to zsh
Fixes #1707.
2018-04-09 14:54:28 -05:00
Jordan Harband 918a39a0d0
[Tests] update mocks 2018-04-09 23:29:37 -07:00
Jordan Harband 0e3bb2cc47
[Fix] ensure --reinstall-packages-from has a version number.
Fixes #1760.
2018-03-14 00:13:07 -07:00
Josh Soref 2859a19bbd
[Docs] fix spelling 2018-03-06 04:38:01 +00:00
Peter Dave Hello d6fa67166c
[Fix] `reinstall-packages`: Prevent install/link when no packages found
Fixes #1744.
2018-02-27 14:05:33 +08:00
Peter Dave Hello 750571056c
[Fix] Correct most of the wrong indentation 2018-02-26 02:20:21 +08:00
Peter Dave Hello 9f34b3e95c Remove trailing space 2018-02-26 01:03:01 +08:00
Peter Dave Hello 41ec44f6b5 Add missing final newline in test script 2018-02-26 01:02:41 +08:00
Peter Dave Hello 2cd2c0f72e Remove useless trailing newlines 2018-02-26 01:01:30 +08:00
Jordan Harband 71032cfaa1
[Tests] update to latest npm in this test 2018-02-08 22:53:41 -08:00
Yannick Ihmels 7ca8acc98d
[Docs] [Tests] Add escape sequences; add test for aliased `.` 2018-01-13 21:25:30 +01:00
Jordan Harband 4846d57c69
`nvm use`: perfect pre-npm-config env var checking 2017-12-05 00:00:18 -08:00
Ahmad Magdy bacdd95591 Update test/install_script/nvm_install_with_node_version to use nvm ls 8 instead of grep! 2017-11-30 15:33:01 +01:00
Ahmad Magdy 4b0563093c Add test nvm_install_with_node_version under test/install_script 2017-11-30 15:23:37 +01:00
Jordan Harband a57fe846e8
[Fix] `set -u`: ensure `NVM_USE_OUTPUT` is always set.
Fixes #1671.
2017-11-23 10:02:37 -06:00
mail6543210 9352f6913a Add symbolic link for printf in case of command-not-found 2017-11-22 02:01:38 +08:00
Phileas Lebada be171bba33 Add unset-variable as exit error 2017-11-15 17:19:05 +01:00
Xandor Schiefer 334897ae39
Preserve PATH locations order when changing versions 2016-11-14 19:19:39 +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 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 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
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
Peter Dave Hello a66a9caa1c
[Tests] Use node v0.10.7 for thread para test as other install from src tests 2017-04-09 13:08:04 +08:00
Peter Dave Hello c6866eeb37
[Test] "nvm alias" lts test bug fix 2017-04-02 14:34:04 +08:00
Jordan Harband 4249b1c2bb
[Fix] `nvm_ensure_version_installed`: add `system` support.
Relates to #1238
2017-03-31 00:52:56 -07:00