Commit Graph

203 Commits

Author SHA1 Message Date
Jordan Harband
0ce8f5a52f
[Fix] nvm_download: ensure all args are quoted
Fixes #3411.
2024-08-20 22:33:38 -07:00
Jordan Harband
863bd63cfa
[Tests] set proper permissions on test files 2024-08-23 17:23:12 -07:00
Jordan Harband
14acd3dcdd
[Fix] nvm install -b: do not attempt to download source on a failed binary download with -b
Fixes #3399
2024-08-01 10:35:37 -07:00
Jordan Harband
271720ebfc
[Fix] nvm install -b: when no binary is available, fail and output a clear message 2024-08-01 13:57:22 -07:00
Jordan Harband
423ee82b4c
[Tests] fix nvm ls-remote unit test 2024-08-01 10:22:28 -07:00
Jordan Harband
87a709741f
[Fix] nvm_get_default_packages: use awk for more reliable file processing
See db19450caa

Fixes #3382
2024-07-28 10:02:08 -07:00
Martin
f439acda4a
[New] nvm use/nvm install: add --save option
Fixes #2849.

Co-authored-by: Martin <maartin00000@gmail.com>
Co-authored-by: Jordan Harband <ljharb@gmail.com>
2022-08-29 16:01:36 +01:00
David Welch
bd090ef7f8
[New] Add support for NVM_AUTH_HEADER env var
Closes #3366

Co-authored-by: David Welch <david@davidwelch.co>
Co-authored-by: Andre Kradolfer <narfdre@gmail.com>
2024-06-21 08:55:22 -06:00
Jordan Harband
e597bb208e
[Tests] use a better JSON parsing implementation 2024-06-10 11:33:12 -07:00
Jordan Harband
29dce5edfd
[New] allow .nvmrc files to support comments
In theory, `npx nvmrc` can now be used to validate an `.nvmrc` file that `nvm` will support. Allowances have been made for future extensibility, and aliases may no longer contain a `#`.

Fixes #3336. Closes #2288.

Co-authored-by: Jordan Harband <ljharb@gmail.com>
Co-authored-by: Yash Singh <saiansh2525@gmail.com>
2024-06-07 10:13:00 -07:00
Jordan Harband
b1fa143dd8
[Fix] nvm_get_mirror: ensure only a valid URL is allowed 2023-12-02 14:44:46 -08:00
Jordan Harband
d02ddcac2c
[Fix] nvm_get_mirror: disallow some non-URL characters
This should be improved in the future, but is fine for now
2023-11-01 21:01:28 -07:00
Andrius Solopovas
ef7fc2f2c0
[Fix] nvm_get_arch: proper value for alpine linux 2023-09-30 23:54:11 +01:00
Jordan Harband
10cdda081f
[Tests] update test mocks (new LTS, iron) 2023-10-25 15:39:12 -07:00
Jordan Harband
bfce5889f7
[Test] update test mocks 2023-10-23 14:53:39 -07:00
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
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
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
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
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
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