Commit Graph

2144 Commits (1eaaada4994ab26ce5f0c591996344b330066cce)

Author SHA1 Message Date
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
mattjaf 59f448d595
[Docs] added WSL troubleshooting with solution to (6) Could not resolve host: raw.githubusercontent.com
Fixes #2958.
2022-11-30 19:25:20 -08:00
Jordan Harband d0bc227127
[Tests] update test mocks 2022-12-22 16:07:00 -08:00
Jordan Harband bf438742a7
[Tests] move installation_node tests back to xenial 2022-12-22 16:16:10 -08:00
Jordan Harband 447940acb3
[Tests] move tests that fail on focal to a separate suite that runs on xenial 2022-12-22 11:26:27 -08:00
Jordan Harband 0ec2ca979c
[Tests] update travis to use focal
- xenial can't build node 18
 - bionic can't build node 0.6 or 18
2022-10-26 11:12:19 -07:00
Jordan Harband b86c91efe3
[actions] fix `latest-npm` tests so they use this repo’s nvm instead of the last published one 2022-12-22 15:27:46 -08:00
Jordan Harband ac357c59ef
[Fix] `nvm install-latest-npm`: npm v6.14.18 can not be installed from npm < v4.4.4 2022-12-21 14:28:15 -08:00
Jordan Harband abe5e30a9d
[shellcheck] remove duplicate function 2022-12-22 13:00:12 -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 e6fa80cb61
[Dev Deps] update `doctoc`, `markdown-link-check`, `replace`, `semver` 2022-10-26 10:13:39 -07:00
Jordan Harband 1f4bb91ae6
[Fix] ensure this variable is bound
Fixes #2926
2022-10-26 10:12:06 -07:00
Jordan Harband 924d77cc90
[Fix] `debug`: correct mistaken `-V` to `--version` from #2922 2022-10-24 10:51:20 -07:00