Compare commits

..

17 Commits

Author SHA1 Message Date
ryenus
32dc1e4b3f
Merge 3dd8beb6eab40d11c3ce8b13dc89496f9e60aba8 into 06413631029de32cd9af15b6b7f6ed77743cbd79 2024-12-23 02:27:04 +00:00
ryenus
3dd8beb6ea indent awk script properly 2024-12-23 10:07:06 +08:00
ryenus
c6bb417804 display a hint when version filtering is in effect
due the use of --min or NVM_MIN, which would show only the versions
higher than the specified min version, and/or the available minor/patch
updates for the installed versions.
2024-12-23 10:02:56 +08:00
ryenus
ae8b033db9 set NVM_NO_COLORS to --no-colors to disable color 2024-12-13 09:35:37 +08:00
ryenus
dbf7c3ed3c rename min_ver to min for consistency 2024-12-13 09:35:37 +08:00
ryenus
b145f236a8 [test] avoid leaking temp variable 2024-12-13 09:35:37 +08:00
ryenus
794881332d ls-remote: introduce temp var for env inheritance
This is to inherit $NVM_MIN from env when defined, meanwhile avoiding
inline local variable initialization for ksh compatibility.

Co-authored-by: Jordan Harband <ljharb@gmail.com>
2024-12-13 09:35:37 +08:00
ryenus
5cffcaf8f2 avoid inline initialization for ksh compatibility
Co-authored-by: Jordan Harband <ljharb@gmail.com>
2024-12-13 09:35:37 +08:00
ryenus
1f1ea6f88c ls-remote: add CLI option --min=<version>
When omitted, fallback to the environment variable "NVM_MIN" if set.
And the CLI option --min=<version> takes precedence over the environment
variable "NVM_MIN" if both are present.
2024-12-13 09:35:37 +08:00
ryenus
1fbd8ca3dd always show updates for installed versions
even if they're older than $NVM_MIN
2024-12-13 09:35:37 +08:00
ryenus
ea56ffda30 remove function ref duplication 2024-12-13 09:35:23 +08:00
ryenus
c6492fd8ad prefixed versions like v18 also work 2024-12-13 09:35:23 +08:00
ryenus
76c41c68b4 rename NVM_MIN_VER to NVM_MIN
since nvm is all about versions, so no need for the explicit suffix.
2024-12-13 09:35:23 +08:00
ryenus
b3148ae5c0 trim leading space in mock output due to eclint errors 2024-12-13 09:35:23 +08:00
ryenus
cc2222cb1b add test for NVM_MIN_VER support
show only versions newer than NVM_MIN_VER if set
2024-12-13 09:35:23 +08:00
ryenus
646d694379 always list installed versions 2024-12-13 09:35:23 +08:00
ryenus
cedbb16256 show only versions newer than NVM_MIN_VER if set 2024-12-13 09:35:23 +08:00

21
nvm.sh
View File

@ -1862,11 +1862,11 @@ nvm_print_versions() {
-v installed_color="$INSTALLED_COLOR" -v system_color="$SYSTEM_COLOR" \ -v installed_color="$INSTALLED_COLOR" -v system_color="$SYSTEM_COLOR" \
-v current_color="$CURRENT_COLOR" -v default_color="$DEFAULT_COLOR" \ -v current_color="$CURRENT_COLOR" -v default_color="$DEFAULT_COLOR" \
-v old_lts_color="$DEFAULT_COLOR" -v has_colors="$NVM_HAS_COLORS" ' -v old_lts_color="$DEFAULT_COLOR" -v has_colors="$NVM_HAS_COLORS" '
function alen(arr, i, len) { len=0; for(i in arr) len++; return len; } function alen(arr, i, len) { len=0; for(i in arr) len++; return len; }
function v2a(v, a) { sub(/^(iojs-)?v/, "", v); split(v, a, "."); } function v2a(v, a) { sub(/^(iojs-)?v/, "", v); split(v, a, "."); }
function v2m(v, a) { sub(/^(iojs-)?v/, "", v); split(v, a, "."); return a[1]; } function v2m(v, a) { sub(/^(iojs-)?v/, "", v); split(v, a, "."); return a[1]; }
function vcmp(v1,v2,a1,a2,i,d) { v2a(v1,a1); v2a(v2,a2); for(i=1;i<4;i++) { d = a1[i] - a2[i]; if(d!=0) return d; } return 0; } function vcmp(v1,v2,a1,a2,i,d) { v2a(v1,a1); v2a(v2,a2); for(i=1;i<4;i++) { d = a1[i] - a2[i]; if(d!=0) return d; } return 0; }
BEGIN { BEGIN {
fmt_installed = has_colors ? (installed_color ? "\033[" installed_color "%15s\033[0m" : "%15s") : "%15s *"; fmt_installed = has_colors ? (installed_color ? "\033[" installed_color "%15s\033[0m" : "%15s") : "%15s *";
fmt_system = has_colors ? (system_color ? "\033[" system_color "%15s\033[0m" : "%15s") : "%15s *"; fmt_system = has_colors ? (system_color ? "\033[" system_color "%15s\033[0m" : "%15s") : "%15s *";
fmt_current = has_colors ? (current_color ? "\033[" current_color "->%13s\033[0m" : "%15s") : "->%13s *"; fmt_current = has_colors ? (current_color ? "\033[" current_color "->%13s\033[0m" : "%15s") : "->%13s *";
@ -1925,17 +1925,16 @@ BEGIN {
output[m++] = formatted; output[m++] = formatted;
} }
skipped = rows - m + 1
if (skipped > 0) {
printf("[WARN] %d version(s) skipped.\n", skipped) > "/dev/stderr"
}
for (n = 1; n < m; n++) { for (n = 1; n < m; n++) {
print output[n] print output[n]
} }
if (rows > --m) {
printf("[INFO] showing %d (of %d) versions.\n", m, rows) > "/dev/stderr"
}
exit exit
}' }'
} }
nvm_validate_implicit_alias() { nvm_validate_implicit_alias() {