Releases: nvm-sh/nvm
Releases · nvm-sh/nvm
v0.40.1
Fixes
nvm_download
: ensure all args are quoted--save
: avoid a conflict withset -e
nvm_has_colors
: avoid an aliasedtput
- declare an unbound variable
nvm install -b
: do not attempt to download source on a failed binary download with-b
nvm install -b
: when no binary is available, fail and output a clear message
Refactors
--save
: clean up some usageinstall.sh
: fix node capitalization
Tests
- set proper permissions on test files
- move sourcing suite to GHA
- fix
nvm ls-remote
unit test
v0.40.0
New Stuff
nvm use
/nvm install
: add--save
option (#2869)- Add support for
NVM_AUTH_HEADER
env var (#3380) - allow
.nvmrc
files to support comments
Fixes
nvm_get_default_packages
: useawk
for more reliable file processing- Fix issue where zsh global aliases would break nvm help (#3394)
install-latest-npm
: npm ^8.7 breaksnpm ls
with file: deps
Refactors
nvm_has_colors
: also check the env var
Docs
- [readme] add OpenJS Ecosystem Sustainability Program partner (#2232)
- [readme] update CII badge URLs
- [readme] Fix uninstall instructions (#3286)
- [readme] Fix typo in WSL section of README (#3295)
- [Docs] add
nvm unload
to uninstall nvm instructions (#3267) - [security] fix typo in threat model
Tests
- ignore travis-ci env vars; improve debug output
- [debug] adding logging to makefile
- only install python 2.7 if not already installed
- use a better JSON parsing implementation
- ensure travis can access public repo submodules
- [actions] improve default action permissions
- [actions] update vampire/setup-wsl action
- [actions] finisher tweaks
- [actions] update action versions to use node 20 (#3299)
- [Dev Deps] update
markdown-link-check
,semver
v0.39.7
v0.39.6
New Stuff
nvm_resolve_alias
: only resolve one line of a multiline alias file- aliases: skip leading blank lines in alias file
Fixes
nvm_get_mirror
: ensure only a valid URL is allowed- avoid overridden
hash
install.sh
: whenNVM_INSTALL_GITHUB_REPO
is set, issue a warning (#2868)nvm_get_mirror
: disallow some non-URL charactersnvm_get_arch
: proper value for alpine linux (#3212)nvm_normalize_lts
: switch from expr to case
Robustness
nvm_list_aliases
: avoid overwritten sort
Performance
nvm_check_file_permissions
: do not traverse into symlinks
Dockerfile
Documentation
- [readme] fix level of headings (#3230)
- [readme] add section on bare
nvm install
(#3221) - [readme] missing parenthesis (#3215)
- [readme] update M1 to “Apple Silicon” because of M2 and M3; fix typos (#3242)
- [readme] rearrange install args (#3222)
- [readme] reorganize “deeper shell integration” instructions (#1569)
- [security] add prose explaining OpenSSF CII Best Practices badge results
- [security] add threat model
Tests
- temporarily allow cygwin tests to fail
- temporarily allow WSL tests to fail
- ensure windows tests install a node that actually works
- update test mocks (new LTS, iron)
- switch cygwin mirror
- fix filename typo (#3217)
v0.39.5
Fixes
nvm_strip_path
: Preserve leading/trailing colons (#3145)- allow checksums to pass with a leading backslash
nvm install-latest-npm
: ensure npm 10 does not install on unsupported nodes
Docs
- [readme] add examples of setting specific versions as default (#3151)
Tests
- add some
nvm_do_install
tests - a cleaner name for the windows tests
v0.39.4
Fixes
- fix node download link for armv8l (#3102)
nvm exec
: no longer error with '-q: invalid option' for zsh users (#2800)nvm_print_npm_version
: ifnpm
exists but its node crashes, do not print the npm versionnvm_ls_current
: whennode
is present but crashes immediately, echo "none"- fix directory traversal when workdir path is not readable (#3080)
- recognize 32Bit docker container and use x86 arch (#3051)
- Remove unneeded call to
ls
innvm_arch
(#3012)
Perf
- Improve performance of listing aliases (#3060)
Docker
Docs
- [readme] add
nvshim
tool alongsideavn
(#2193) - [readme] fix typo in resolv.conf filename (#3135)
- [readme] Update logo header (#3123)
- [readme] Add instructions on how to install without editing shell config (#3100)
- [readme]
cdnvm
function: fix shellcheck errors (#3082) - [readme] Update Travis CI badge and link url (#3077)
Miscellaneous
- [meta] Remove unavailable testing script (#3105)
- [Dev Deps] update
markdown-link-check
,semver
- [actions] allow nvm to be installed
Tests
v0.39.3
Fixes
nvm install-latest-npm
: npm v6.14.18 can not be installed from npm < v4.4.4- ensure this variable is bound
debug
: correct mistaken-V
to--version
from #2922debug
:awk
: not an option:--version
(#2922)- grep: warning: stray \ before / (#2919)
- improve backward compatibility for non-gnu awk (#2917)
- fix
nvm install
errorunknown condition: -ne
(#2915)
Tests
- update test mocks (#2933)
- move installation_node tests back to xenial
- move tests that fail on focal to a separate suite that runs on xenial
- update travis to use focal
- [actions] fix
latest-npm
tests so they use this repo’s nvm instead of the last published one - fix nvm_list_aliases test to use mocks for LTS aliases
Docs
- [meta] Improve contributors documentation (#2791)
- [Docs] added WSL troubleshooting with solution to (6) Could not resolve host: raw.githubusercontent.com (#2961)
Refactors
- add
nvm_wrap_with_color_code
; allow no color code
v0.39.2
Fixes
--help
: proper defaultNVM_COLORS
infonvm install-latest-npm
: ensure npm 9 does not install on unsupported nodesinstall.sh
: support~/.zprofile
(#2892, #2868, #2232)- Don't override Mac M1 architecture for node ^14.17 (#2777)
nvm install
: show proper version in.nvmrc
install instructions (#2770)install.sh
: error out if the install instructions are not followed (#2742)install
: better error message when xcode command line tools are needed- avoid OpenBSD
nvm install
error when /sbin/init doesn't exist (#2698) set -E
: Add test fornode install
on Bash with an ERR trap andset -E
- add missing
local
(handle nonexisting /sbin/init a bit more cleanly) (#2678) - Update
nvm_extract_tarball
to support OpenBSD (#2693)
Performance
nvm_print_versions
: re-implement using awk
Robustness
- avoid a clobbered
ls
(#2727)
Refactors
- nvm install/
nvm_install_default_packages
: move "get" logic inside helper - add
nvm_extract_tarball
to consolidate extraction logic
Docs / Read Me
- Update Alpine Linux Section (#2896)
- optimize calling of
nvm version
in zsh (#2874) - Fix Ansible Linting Errors (#2861)
- cdnvm(): handle failed dir change (#2840)
- Fix Git Install instruction list structure (#2823)
- add logo
- minor cleanup
- Add note about creating .bashrc file as well as .bash_profile (#2729)
fish
: send output fromload_nvm
to/dev/stderr
(#2783)- fix fish load_nvm variable interpolations (#2776)
- Correct typos in "Macs with M1 chip" section (#2760)
- HTTP => HTTPS (#2735, #2713)
- clarify instructions for running Node on M1 Mac (#2675)
Dockerfile
Misc
- [meta] Update CODE_OF_CONDUCT to current version (#2790)
Tests
v0.39.1
New Stuff
- Add OpenBSD support (#1062)
Fixes
ls-remote
/install
: supportlts/-X
patterns in installsls-remote
/install
: properly handlelts/x
patternsnvm alias
/nvm_list_aliases
: supportlts/
aliasesnvm_get_download_slug
: better architecture selection for M1 Macsinstall
: fix method=script install condition (#2668)install
: properly check for curl/wget- install script: Add
--no-pager
option to git branch (#2637)
Refactors
- create
nvm_normalize_lts
helper - [shellcheck] apply v0.8.0 updates
Docs
- [readme] Balance the if statement in bash example (#2658)
- [readme] Describe another failure case for installing node versions from source on mac arm64 machines (#2653)
Tests
v0.39.0
New Stuff
- maybe support Windows with WSL, MSYS, Cygwin (#2391)
Fixes
nvm install-latest-npm
: ensure npm 8 does not install on unsupported nodesnvm_die_on_prefix
: filter prefixed env vars on name only, ignoring values (#2368)set -a
: when this option is set, somesh
shells breakbash_completion
: be robust whencd
is overridden (#2585)nvm_die_on_prefix
: avoid grepping env functions in bash (2dad045, #2606)reinstall-packages
: handle global symlink locations properlynvm_ls_remote_index_tab
: handle long version lists (#2581)nvm ls
/nvm alias
/nvm_list_aliases
: zsh: when no LTS aliases, no errorinstall
: Detect correct profile based on $SHELL var (#2556)nvm_get_arch
: suppress error output if/sbin
does not existbash_completion
: check ifcompinit
is called before calling it (#2490)nvm_get_arch
: Rasbperry Pi: armv7l with arm64 kernel, get correct arch (#2469)- install script: check the proper version; fetch tags also (#9)
Robustness
- avoid IFS shenanigans: quote arg count/return codes
Refactors
- Use awk for path stripping (#1360)
- [shellcheck] disable additional
-x
warning from v0.7.2 - [shellcheck] update for new warnings in v0.7.2
Dockerfile
- Update dated base image from Ubuntu 16.04 to 18.04 (#2571)
Docs
- [readme] link "Windows WSL" down to the "important notes" section (#2502)
- [readme] Add bash_completion in "manual install" section (#2620)
- [readme] Use absolute URL for #606 in README.md (#1656)
- [readme] Add quick intro to
nvm
(#1343) - [readme] Add info to restart bash if verification not working in verification section (#1749)
- [readme] Avoid infinite loop in cdnvm() (#2605)
- [readme] remove duplicate word 'run' (#2609)
- [readme] updated automatic call script for bash (#2604)
- [readme] fixed small typo afew to a few (#2517)
- [readme] fix typo regarding docker image base in Dockerfile (#2573)
- [readme] move License and Copyright notice sections to the bottom
- [readme] remove redundant "license" section text in favor of LICENSE.md
- [readme] Improve README about Macs with M1 chips (#2479)
Meta Stuff
- add project charter and governance
- add OpenJS Foundation copyright notices/links
- add
SECURITY.md
Tests
- use a matrix on the
nvm install-latest-npm
tests - blacklist expired LetsEncrypt CA (#2623)
- Add
markdown-link-check
script nvm install-latest-npm
: node < 0.10 breaks with npm with dropped support for TLS < 1.2- Print shell version in Travis CI (#1471)
- [actions] restrict permissions for
GITHUB_TOKEN
(#2584) postcss
v7.0.36 stopped working on node 0.10; downgrade to v4- update mocks
- disable
fail-fast
- [actions] fix typo in dockerfile_lint job
- [actions] use
node/install
instead ofnode/run
- [actions] adjust shellcheck/windows tests to9 have a final "done" job
- Add unit tests for
nvm_is_version_installed
node-gyp
v8 breaks a test
New Contributors
- @Botspot made their first contribution in #2469
- @leafac made their first contribution in #2479
- @akefirad made their first contribution in #2490
- @tg90nor made their first contribution in #2556
- @IYaksha made their first contribution in #2573
- @kstolp made their first contribution in #2581
- @varunsh-coder made their first contribution in #2584
- @giladbarnea made their first contribution in #2585
- @donnikitos made their first contribution in #2604
- @GeorgiChochov made their first contribution in #2609
- @svenssonaxel made their first contribution in #2606
- @tim-connolly made their first contribution in #2605
- @strouja made their first contribution in #2517
- @asab-se made their first contribution in #1749
- @alisternorris made their first contribution in #1343
- @umireon made their first contribution in #1360
- @Igot953 made their first contribution in #2624
- @rickbutton made their first contribution in #2623
- @felipear89 made their first contribution in #2620
- @SimonEast made their first contribution in #2502