Commit Graph

305 Commits

Author SHA1 Message Date
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
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
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
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
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
Jordan Harband
c1150c41ab
[Tests] avoid using shopt in zsh 2018-11-26 11:18:11 -08: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
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
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
2cd2c0f72e Remove useless trailing newlines 2018-02-26 01:01:30 +08:00
Jordan Harband
4846d57c69
nvm use: perfect pre-npm-config env var checking 2017-12-05 00:00:18 -08: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
Xandor Schiefer
334897ae39
Preserve PATH locations order when changing versions 2016-11-14 19:19:39 +02: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
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
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
fa3631fee3
[Refactor] Add nvm_has_non_aliased 2017-03-20 16:57:26 +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
8e6201b5b1
[Tests] Update test mocks 2017-03-10 18:02:47 +08:00
Jordan Harband
0f6997d90a [Tests] remove the unused and broken $NVM_PATH. 2016-12-16 11:23:23 -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
65acb403ce
Add nvm_clang_version to ensure clang version > 3.5 2016-11-14 12:28:41 +08:00
Peter Dave Hello
f7763c8ba9
[Tests] die() in tests should quote "$@" for echo 2016-11-07 03:34:36 +08:00
Qiangjun Ran
cadbbced20
[Tests] Replace all dots with backslash dots 2016-11-03 23:44:59 -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
Jordan Harband
a29d0e49dc
[Tests] improve + update test mocks 2016-09-28 22:42:48 -07:00
Peter Dave Hello
702d52f23b update test mocks 2016-09-29 10:27:24 +08: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
f60edbb6b4
[Tests] update test mocks 2016-09-18 11:58:18 -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
eba50de75e
Add nvm_compare_checksum, nvm_compute_checksum, and nvm_get_checksum 2016-09-02 23:43:45 -07:00
Jordan Harband
1ac7e236b1 [New] Add lts/foo support to remote commands.
- `nvm ls-remote`
 - `nvm version-remote`
 - `nvm install`
 - `nvm uninstall`

Document existing support:
 - `nvm use`
 - `nvm exec`
 - `nvm run`

Fixes #1208.
2016-08-23 10:58:00 -07:00
Jordan Harband
d3d768adcd
Add nvm_get_mirror 2016-08-10 23:09:54 -07:00
Jordan Harband
9c65197b22
Add nvm_get_checksum_alg 2016-08-09 22:24:09 -07:00
Julien Gilli
a32b914bab Fix nvm on SmartOS setups using 64 bits pkgsrc repository
On SmartOS setups using 64 bits pkgsrc repositories, `nvm_get_arch`
would not handle pkg_info's output properly.

This would result in nvm not being to install any node binary when
running on SmartOS setups using a 64 bits pkgsrc repository.

This change fixes this problem, and fixes the tests suite on similar
setups.
2016-07-29 14:08:31 -07:00
Jordan Harband
4c010f442e
[Tests] add tests for auto-creation of LTS aliases on nvm_ls_remote 2016-07-02 21:21:16 -07:00
Jordan Harband
f0668fd577
[Tests] nvm alias --lts: add tests 2016-06-26 15:11:37 -07:00
Jordan Harband
e6606458f7
[Tests] add nvm version-remote unit tests. 2016-06-26 13:01:12 -07:00
Jordan Harband
d2744014df
[Tests] add some basic nvm ls-remote unit tests. 2016-06-25 17:00:19 -07:00
Jordan Harband
4699657e98
Add --lts=argon etc, so the LTS line can be targeted. 2016-04-25 00:55:35 -07:00
Jordan Harband
1d908d8256
Add --lts support to nvm version-remote 2016-04-24 16:26:32 -07:00
Jordan Harband
ae07c3c345
Add support for nvm ls-remote --lts 2016-04-23 23:47:25 -07:00
Jordan Harband
865d2fe3d6
Include LTS version in nvm_ls_remote output. 2016-04-17 23:39:27 -07:00
Jordan Harband
ecbd7d4572 [Tests] use -ex option during tests when possible
Relates to #1130
2016-07-10 19:58:32 -07:00
Jordan Harband
186eb8838d
[Tests] make “nvm use iojs” test actually test that thing. 2016-07-07 15:38:34 -07:00
Jordan Harband
940f850f8d
[Tests] clean up some tests 2016-07-07 01:14:37 -07:00
Jordan Harband
78a008c3c7
[Fix] use Solaris-compatible tail options.
Fixes #1148.
2016-07-06 15:31:25 -07:00
Quildreen Motta
730b253174 Updates tests for the new output messages 2016-07-05 21:40:45 -03:00
Peter Dave Hello
9e09c30621 update nodejs version list 2016-07-01 23:39:54 +08:00
Jordan Harband
73aa35f508
[Tests] use $NVM_DIR instead of relative paths 2016-06-26 15:52:26 -07:00
Jordan Harband
ce60b6c44a
[Tests] update test mocks 2016-06-25 17:03:46 -07:00
Jordan Harband
eeaddf9ab0
Don’t restrict colors to TTYs.
This restriction prevents subcommands from producing colors and passing them up the tree to the actual TTY.
2016-05-08 21:24:24 -07:00
Jordan Harband
8a138d98ed
[Refactor] Use awk to improve version comparison performance 2016-05-05 01:27:17 -07:00
Jordan Harband
1c3f8da6c3
nvm alias: factor out alias creation to nvm_make_alias 2016-04-27 14:23:34 -07:00
Jordan Harband
2d50606a78
[Tests] flesh out nvm_print_default_alias tests 2016-04-30 00:38:49 -07:00
Jordan Harband
379d079c30
[Tests] Ensure color codes are stripped in alias tests. 2016-04-27 17:05:33 -07:00
Jordan Harband
91c77c6ba8
[Tests] fix shebangs 2016-04-27 17:34:53 -07:00
Jordan Harband
ec54c925c1
[Tests] use mocks for nvm_ls_remote/nvm_ls_remote_iojs tests. 2016-04-27 01:25:56 -07:00
Jordan Harband
677c69dda0
nvm alias: explicitly forbid user aliases in subdirs. 2016-04-26 23:07:10 -07:00
Jordan Harband
4df2a7fca9
nvm alias: factor out alias printing logic to functions 2016-04-26 22:29:55 -07:00
Jordan Harband
96afff7af2
[Tests] Set up “mocks” directory, and updater script. 2016-04-19 22:49:49 -07:00
Jordan Harband
ac18d01854
[Tests] update index.tab data mocks. 2016-04-18 20:43:08 -07:00
Luke Childs
dff4f80f32 Add fast test to check nvm uninstall with file permission error 2016-04-18 21:17:44 +01:00
Robson Peixoto
8fb4ee0789 Unset unnecessary environment variables 2016-03-11 14:53:36 -03: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
Thomas Levine
06b81f0f36 use env bash rather than /bin/bash
My bash is not installed in /bin/bash.
2016-02-14 19:34:19 +00: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