Commit Graph

2257 Commits

Author SHA1 Message Date
tim-mit
f8617341f5
Merge 5f7d419458 into 99352a64d2 2025-04-15 23:02:28 -07:00
Toni Viemerö
99352a64d2
[Fix] nvm_install_latest_npm: fix node version detection 2025-04-09 08:16:05 +03:00
Jordan Harband
ffec9fec72
v0.40.2
New Stuff
 - `install.sh`: add `$ZDOTDIR` to zsh search (#3458)

Fixes
 - `reinstall-packages`: do not reinstall corepack (#3544)
 - avoid bash-specific syntax (#3499)
 - `install-latest-npm`: npm v11 is out
 - `nvm_install_latest_npm`: avoid unbound variable (#3447)
 - give a more helpful message when `lts` alias is mistakenly used (#3441)
 - `nvm ls`, `nvm alias`, `nvm install`: error when an LTS name is invalid
 - `nvm_normalize_lts`: error when an LTS name is not lowercase (#3417)

Documentation
 - [readme] update link
 - [readme] fix `--no-use` example (#3479)
 - [readme] update copyright notice (#3507)
 - [readme] note zsh-nvm's AUTO_USE option (#2670)
 - [readme] add note about reloading zshrc after editing (#3052)
 - [readme] Update shell profile file install notes (#2241)
 - [readme] add docker tips (#2318)
 - [readme] remove `avn` from readme (#3469)
 - [readme] fnm -> nvm.fish (#2541)

Refactors
 - prefer `case` over if/else chains
 - combine `sed -e` invocations/arguments

Tests
 - `nvm exec`/`nvm run`: add `--silent` tests (#1259)
 - [actions] release test needs git tags
 - migrate `installation_iojs` test suite to GitHub Actions (#3476)
 - Migrate slow test suite from Travis CI (#3470)
 - temporarily skip this failing travis test to unblock progress
 - [actions] TOC: use latest LTS node
 - `install.sh`: clean up `nvm_detect_profile` tests
 - `nvm_detect_profile`: refactor (#3467)
 - run urchin tests on pull requests (#3466)
 - update mocks
 - ensure that unit tests use only mocked LTS names
 - [actions] use `node/install` instead of `node/run`

Meta
 - disable blank issues
 - update issue template
 - add DCO (#3456)
 - Rename .github/ISSUE_TEMPLATE.md to .github/ISSUE_TEMPLATE/ISSUE_TEMPLATE.md (#3454)
2025-03-11 13:39:40 -07:00
Jordan Harband
df9ac58f8b
[Fix] reinstall-packages: do not reinstall corepack
Fixes #3544
2025-03-11 13:16:58 -07:00
Jordan Harband
8dbc22f0e9
[readme] update link 2025-03-11 12:46:19 -07:00
Jordan Harband
5c12680a62
[Dev Deps] update markdown-link-check 2025-03-11 12:43:42 -07:00
Jordan Harband
f0f8ed12f8
[Dev Deps] update semver 2025-02-25 18:39:49 -08:00
Jordan Harband
759f70f196
[Refactor] prefer case over if/else chains 2025-02-04 22:45:35 -08:00
Jordan Harband
06a9179309
[Refactor] combine sed -e invocations/arguments 2025-02-04 15:55:10 -08:00
Jordan Harband
74eb396099
[Dev Deps] update markdown-link-check 2025-02-04 12:37:59 -08:00
tim-mit
5f7d419458
Merge branch 'master' into issue3034 2023-08-27 19:10:32 +12:00
Tim Toomey
b42c165667 [Fix] gracefully handle GNU tar on MacOS during nvm install
GNU tar doesn't support using the -J flag required to unpack
xz-compressed tarballs when xv isn't installed. Check for this
scenario and fallback to using gzip-compressed tarballs.

Fixes #3034
2023-08-27 18:49:27 +12:00
Jordan Harband
1eaaada499
[Perf] nvm_check_file_permissions: do not traverse into symlinks 2023-08-25 22:49:41 -07:00
Jordan Harband
c92adb3c47
v0.39.5 2023-08-21 21:10:10 -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
heungjun.park
a1601eddb8
[readme] add examples of setting specific versions as default
Co-authored-by: heungjun.park <rockheung@gmail.com>
Co-authored-by: Jordan Harband <ljharb@gmail.com>
2023-07-20 17:39:37 +09:00
Jordan Harband
324b81a722
[Fix] allow checksums to pass with a leading backslash
See https://unix.stackexchange.com/a/555061/137489
2023-08-06 14:51:48 +12:00
Jordan Harband
55075db96d
[Tests] add some nvm_do_install tests 2022-12-27 22:57:07 -08:00
Jordan Harband
4618ce0aa1
[Tests] a cleaner name for the windows tests 2022-12-27 22:32:09 -08:00
Jordan Harband
3afdce0a2c
[Fix] nvm install-latest-npm: ensure npm 10 does not install on unsupported nodes
See https://github.com/npm/cli/pull/6674
2023-07-26 13:21:03 -07:00
Jordan Harband
8fbf8ab694
v0.39.4 2023-07-24 18:29:54 -07:00
Jordan Harband
4fc91d408c
[Dev Deps] update markdown-link-check, semver 2023-07-24 18:24:39 -07:00
Emmanuel Ogbizi
f86847fdd2
[readme] add nvshim tool alongside avn 2020-04-15 19:27:44 -04:00
emmanuel-ferdman
9a769630d7
[readme] fix typo in resolv.conf filename
Signed-off-by: emmanuel-ferdman <35470921+emmanuel-ferdman@users.noreply.github.com>
2023-06-18 15:41:40 +03:00
Augustin Mauroy
c26422a03e
[readme] Update logo header 2023-06-05 10:34:20 +02:00
milesfrain
7c3cd81ad9
[readme] Add instructions on how to install without editing shell config
I had to dig into #2410 to learn about the `PROFILE=/dev/null` technique to install without appending to my shell config. Figured this note would be good to add in the main installation docs.
Also added a note on how to do this as a one-liner which was not obvious for me.
2023-04-25 13:49:16 -07:00
Deniz Eren Evrendilek
0ebda7eea3
[meta] Remove unavailable testing script
Fixes #3104
2023-05-01 11:23:38 -07:00
Deniz
5410ae57ba
[Fix] fix node download link for armv8l
Fixes #3035
2023-04-29 16:41:31 -07:00
Spike Grobstein
70aa611abc
[Fix] nvm exec: no longer error with '-q: invalid option' for zsh users
the `nvm.sh` file assigns and exports an `NVM_CD_FLAGS` variable if it
was sourced from a zsh shell. the fact that it's exported means that
it'll be assigned in all child processes, including the `nvm-exec`
script, which uses bash as the interpreter.

Bash's `cd` command doesn't have a `-q` flag, so if the `NVM_CD_FLAGS`
is assigned `-q`, the script will error out and incorrectly claim that
the node version isn't installed.

this also manifests itself in the `nvm exec` command.

Example:

```console
$ nvm exec 16.14.0 npm --version
Running node v16.14.0 (npm v8.3.1)
/Users/<ME>/.nvm/nvm.sh: line 28: cd: -q: invalid option
cd: usage: cd [-L|[-P [-e]] [-@]] [dir]
both the tree and the node path are required
N/A: version "v16.14.0 -> N/A" is not yet installed.

You need to run "nvm install v16.14.0" to install it before using it.
```

To address this, we unset the `NVM_CD_FLAGS` at the start of the
`nvm-exec` script, before loading `nvm.sh`.
2023-04-21 20:40:01 -07:00
Jordan Harband
c08b38a2a4
[Fix] nvm_print_npm_version: if npm exists but its node crashes, do not print the npm version 2023-04-28 10:57:57 -07:00
Jordan Harband
a07cd41af1
[Fix] nvm_ls_current: when node is present but crashes immediately, echo "none" 2023-04-28 10:55:03 -07:00
JC (Jonathan Chen)
d1a22a63bd
[readme] cdnvm function: fix shellcheck errors
Resolves #3081
2023-04-09 09:21:56 -04:00
Leo Zlotnikov
0d9b5c2a00
[Fix] fix directory traversal when workdir path is not readable 2023-04-08 17:24:41 +01:00
Peter Dave Hello
44e1d9c911
[Dockerfile] Update base image from Ubuntu 20.04 to 22.04, cc #2877 2023-04-06 01:22:10 +08:00
Jordan Harband
b1331c20b0
[Tests] add unit tests for nvm_download_artifact 2023-04-06 09:23:33 -07:00
Peter Dave Hello
766341fca1
[readme] Update Travis CI badge and link url
travis-ci.org is deprecated and replaced by app.travis-ci.com for a while
2023-04-03 22:50:48 +08:00
Jordan Harband
946da2e743
[Dev Deps] update markdown-link-check 2023-03-22 16:20:48 -07:00
Dennis
dde04f9392
[Fix] recognize 32Bit docker container and use x86 arch 2023-03-22 14:52:40 -07:00
William Baker
ffcb5213e2
[Perf] Improve performance of listing aliases
Fixes #3054
2023-03-10 00:53:29 -05:00
Jordan Harband
ea3b65f02e
[Tests] npm bin has been removed 2023-03-21 13:31:52 -07:00
Qasim Abdullah
ee6f766712
[Tests] downgrade python to v2 on travis
- TCI Support
 - python 2.7
 - skip build-essential
2023-03-21 22:45:38 +05:00
Nicolas signed-log FORMICHELLA
edacf8275e
[Fix] Remove unneeded call to ls in nvm_arch
Remove the call to `ls` that was used to determine the symlink
destination

Reasoning :

* `od` resolves symlink itself due to the use of `fopen`
* Prevent the behaviour of `od` which will hang if the filename is
  empty (i.e. `/sbin/init` missing) as it will be waiting for `stdin`
  compared to quitting with error if the file just doesn't exist

Fixes #3006
2023-01-22 11:48:59 +01:00
Jordan Harband
f36516b472
[Tests] move install script tests to github actions 2022-10-26 14:47:18 -07:00
Jordan Harband
dc691121b8
[Tests] improve debug output on failure 2022-12-27 21:41:39 -08:00
Jordan Harband
ce35311657
[Tests] force the NVM_DIR to the expected location, for tests 2022-12-27 21:40:48 -08:00
Thomas Levine
fe06825a96
[tests] Update urchin repository link 2022-12-25 10:38:26 +00:00
Jordan Harband
a60ac08a80
[actions] allow nvm to be installed 2022-12-26 13:22:07 -08:00
Jordan Harband
552db40622
v0.39.3 2022-12-23 12:57:56 -08:00
Jordan Harband
788c0a425e
[meta] use HEAD instead of master where possible 2022-12-23 12:53:40 -08:00
Dani Schuhman
333c52ec04
[meta] Improve contributors documentation
Incorporates old Contributing.md with more thorough details on how to contribute, create bug reports, set up the dev environment, and creating PR's itself.
2022-04-15 11:59:16 -04:00