Commit Graph

306 Commits (2426a0c4b27313e1fa8161c31c7f7dbe1ca17b08)

Author SHA1 Message Date
Oliver Henshaw 15eba7b7e6
[Fix] `nvm_strip_path`: Preserve leading/trailing colons
Path lists in environmental variables often give special meaning to
empty entries (e.g. in PATH or MANPATH). These are represented by
leading or trailing colons, or by doubled colons in the middle of the
list.

Adjust the awk invocation to correctly deal with trailing colons by
printing the separator before every field except the first, and then
printing the final separator that is read from the input - this will
either be a colon or the null string. This preserves leading and
trailing colons in all cases while not adding extra colons in the wrong
place.

Add test to confirm the correct behaviour.

Fixes #3144
2023-06-21 15:47:52 +01:00
Deniz 5410ae57ba
[Fix] fix node download link for armv8l
Fixes #3035
2023-04-29 16:41:31 -07:00
Leo Zlotnikov 0d9b5c2a00
[Fix] fix directory traversal when workdir path is not readable 2023-04-08 17:24:41 +01:00
Jordan Harband b1331c20b0
[Tests] add unit tests for `nvm_download_artifact` 2023-04-06 09:23:33 -07:00
Jordan Harband ce35311657
[Tests] force the NVM_DIR to the expected location, for tests 2022-12-27 21:40:48 -08:00
Jordan Harband 788c0a425e
[meta] use HEAD instead of master where possible 2022-12-23 12:53:40 -08:00
Jordan Harband d0bc227127
[Tests] update test mocks 2022-12-22 16:07:00 -08:00
Jordan Harband 4c4b0d64ed
[Tests] fix nvm_list_aliases test to use mocks for LTS aliases 2022-10-26 10:31:26 -07:00
Jordan Harband df01d81128
[Refactor] add `nvm_wrap_with_color_code`; allow no color code 2022-10-13 20:16:42 -07:00
Jordan Harband 0698ede92d
[Tests] update test mocks 2022-10-13 12:08:31 -07:00
deepakchethan 9e884b8d7b
[Fix] `nvm install`: show proper version in `.nvmrc` install instructions 2022-03-22 18:58:18 +05:30
Bob Bregant II ccd442d833
[Refactor] add `nvm_extract_tarball` to consolidate extraction logic 2021-12-19 02:58:18 +00:00
Jordan Harband 5cc74a6736
[Tests] fix failing test 2021-12-17 13:21:29 -08:00
Jordan Harband c4c7690dec
[Fix] `ls-remote`/`install`: support `lts/-X` patterns in installs
Fixes #2692
2021-12-16 23:01:05 -08:00
Jordan Harband aed1d732d7
[Fix] `ls-remote`/`install`: properly handle `lts/x` patterns 2021-12-16 22:58:06 -08:00
Jordan Harband 0b4cd8df6c
[Refactor] create `nvm_normalize_lts` helper 2021-12-16 22:55:02 -08:00
Jordan Harband 430860a8be
[Fix] `nvm alias`/`nvm_list_aliases`: support `lts/` aliases
See #2692
2021-12-16 15:54:38 -08:00
Jordan Harband 2459d17741
[Tests] update test mocks 2021-12-16 23:13:15 -08:00
Jordan Harband 81fc05684d
[Tests] `nvm_get_download_slug`: add unit tests 2021-12-02 23:33:20 -08:00
Matteo De Wint 93e0070a44
[Fix] `nvm_die_on_prefix`: filter prefixed env vars on name only, ignoring values 2020-11-28 15:16:35 +01:00
Kaito Udagawa 53f9ba8336
[Refactor] Use awk for path stripping
This works with paths which contains regex meta characters.
2016-12-23 01:03:41 +09:00
Jordan Harband c169d622ff
[Tests] update mocks 2021-09-04 08:57:36 -07:00
Jordan Harband 5b77f7d023
[Fix] `nvm ls`/`nvm alias`/`nvm_list_aliases`: zsh: when no LTS aliases, no error
Fixes #2575.
2021-09-01 10:06:32 -07:00
nmarghetti f2582275f6
[New] maybe support Windows with WSL, MSYS, Cygwin 2021-01-02 00:03:24 +01:00
nmarghetti d118be8fd4
[Tests] Add unit tests for `nvm_is_version_installed` 2021-02-21 18:48:43 +01:00
Botspot 779a34e6a9
[Fix] `nvm_get_arch`: Rasbperry Pi: armv7l with arm64 kernel, get correct arch
Co-authored-by: Botspot <54716352+Botspot@users.noreply.github.com>
Co-authored-by: Jordan Harband <ljharb@gmail.com>
Co-authored-by: Sladyn Nunes <sladynnunes98@gmail.com>
2021-03-22 14:56:25 -05:00
Rodrigo Espinosa de los Monteros 4da7f101a2
[Fix] `nvm_alias`: ensure `lts/-1` returns the one before `lts/*`
Fixes #2461
2021-03-11 16:22:31 -05:00
Jordan Harband 641f86879f
[Tests] update mocks
- make call count test depend on mocks
2021-03-11 13:06:41 -08: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
nmarghetti 60e78d3ec1
[Tests] Add unit test for nvm_download 2021-01-13 02:26:38 +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
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 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
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
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
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