mirror of
https://github.com/nvm-sh/nvm.git
synced 2025-05-17 09:31:51 +00:00
Compare commits
5 Commits
8591aab755
...
40052b2247
Author | SHA1 | Date | |
---|---|---|---|
![]() |
40052b2247 | ||
![]() |
759f70f196 | ||
![]() |
06a9179309 | ||
![]() |
27dea683a5 | ||
![]() |
c0e6d8f332 |
52
nvm.sh
52
nvm.sh
@ -136,15 +136,17 @@ nvm_download() {
|
||||
eval "curl -q --fail ${CURL_COMPRESSED_FLAG:-} ${CURL_HEADER_FLAG:-} ${NVM_DOWNLOAD_ARGS}"
|
||||
elif nvm_has "wget"; then
|
||||
# Emulate curl with wget
|
||||
ARGS=$(nvm_echo "$@" | command sed -e 's/--progress-bar /--progress=bar /' \
|
||||
-e 's/--compressed //' \
|
||||
-e 's/--fail //' \
|
||||
-e 's/-L //' \
|
||||
-e 's/-I /--server-response /' \
|
||||
-e 's/-s /-q /' \
|
||||
-e 's/-sS /-nv /' \
|
||||
-e 's/-o /-O /' \
|
||||
-e 's/-C - /-c /')
|
||||
ARGS=$(nvm_echo "$@" | command sed "
|
||||
s/--progress-bar /--progress=bar /
|
||||
s/--compressed //
|
||||
s/--fail //
|
||||
s/-L //
|
||||
s/-I /--server-response /
|
||||
s/-s /-q /
|
||||
s/-sS /-nv /
|
||||
s/-o /-O /
|
||||
s/-C - /-c /
|
||||
")
|
||||
|
||||
if [ -n "${NVM_AUTH_HEADER:-}" ]; then
|
||||
ARGS="${ARGS} --header \"${NVM_AUTH_HEADER}\""
|
||||
@ -713,6 +715,11 @@ nvm_ensure_version_installed() {
|
||||
LOCAL_VERSION="$(nvm_version "${PROVIDED_VERSION}")"
|
||||
EXIT_CODE="$?"
|
||||
local NVM_VERSION_DIR
|
||||
|
||||
if [ "_$PROVIDED_VERSION" = "_N/A" ] && [ ! -d "$NVM_RC_VERSION" ] ; then
|
||||
PROVIDED_VERSION="$(nvm_ensure_version_prefix "$NVM_RC_VERSION")"
|
||||
fi
|
||||
|
||||
if [ "${EXIT_CODE}" != "0" ] || ! nvm_is_version_installed "${LOCAL_VERSION}"; then
|
||||
if VERSION="$(nvm_resolve_alias "${PROVIDED_VERSION}")"; then
|
||||
nvm_err "N/A: version \"${PROVIDED_VERSION} -> ${VERSION}\" is not yet installed."
|
||||
@ -1413,11 +1420,11 @@ nvm_add_iojs_prefix() {
|
||||
nvm_strip_iojs_prefix() {
|
||||
local NVM_IOJS_PREFIX
|
||||
NVM_IOJS_PREFIX="$(nvm_iojs_prefix)"
|
||||
if [ "${1-}" = "${NVM_IOJS_PREFIX}" ]; then
|
||||
nvm_echo
|
||||
else
|
||||
nvm_echo "${1#"${NVM_IOJS_PREFIX}"-}"
|
||||
fi
|
||||
|
||||
case "${1-}" in
|
||||
"${NVM_IOJS_PREFIX}") nvm_echo ;;
|
||||
*) nvm_echo "${1#"${NVM_IOJS_PREFIX}"-}" ;;
|
||||
esac
|
||||
}
|
||||
|
||||
nvm_ls() {
|
||||
@ -1549,12 +1556,15 @@ nvm_ls() {
|
||||
fi
|
||||
|
||||
if [ "${NVM_ADD_SYSTEM-}" = true ]; then
|
||||
if [ -z "${PATTERN}" ] || [ "${PATTERN}" = 'v' ]; then
|
||||
VERSIONS="${VERSIONS}
|
||||
case "${PATTERN}" in
|
||||
'' | v)
|
||||
VERSIONS="${VERSIONS}
|
||||
system"
|
||||
elif [ "${PATTERN}" = 'system' ]; then
|
||||
VERSIONS="system"
|
||||
fi
|
||||
;;
|
||||
system)
|
||||
VERSIONS="system"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ -z "${VERSIONS}" ]; then
|
||||
@ -1688,7 +1698,7 @@ EOF
|
||||
LTS="${LTS#lts/}"
|
||||
fi
|
||||
|
||||
VERSIONS="$({ command awk -v lts="${LTS-}" '{
|
||||
VERSIONS="$( { command awk -v lts="${LTS-}" '{
|
||||
if (!$1) { next }
|
||||
if (lts && $10 ~ /^\-?$/) { next }
|
||||
if (lts && lts != "*" && tolower($10) !~ tolower(lts)) { next }
|
||||
@ -2732,7 +2742,7 @@ nvm_npm_global_modules() {
|
||||
local NPMLIST
|
||||
local VERSION
|
||||
VERSION="$1"
|
||||
NPMLIST=$(nvm use "${VERSION}" >/dev/null && npm list -g --depth=0 2>/dev/null | command sed 1,1d | nvm_grep -v 'UNMET PEER DEPENDENCY')
|
||||
NPMLIST=$(nvm use "${VERSION}" >/dev/null && npm list -g --depth=0 2>/dev/null | command sed -e '1d' -e '/UNMET PEER DEPENDENCY/d')
|
||||
|
||||
local INSTALLS
|
||||
INSTALLS=$(nvm_echo "${NPMLIST}" | command sed -e '/ -> / d' -e '/\(empty\)/ d' -e 's/^.* \(.*@[^ ]*\).*/\1/' -e '/^npm@[^ ]*.*$/ d' | command xargs)
|
||||
|
@ -0,0 +1,23 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
die () { echo $@ ; exit 1; }
|
||||
|
||||
. ../../../nvm.sh
|
||||
|
||||
echo "v0.10.28" > .nvmrc
|
||||
OUTPUT="$(nvm use 2>&1 >/dev/null | awk 'NR==1')"
|
||||
EXPECTED_OUTPUT='N/A: version "v0.10.28" is not yet installed.'
|
||||
TESTTT="$(nvm use 2>&1 >/dev/null)"
|
||||
TESTT="$(nvm use 2>&1)"
|
||||
TEST="$(nvm use)"
|
||||
|
||||
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] \
|
||||
|| die "'nvm use' did not output: '$EXPECTED_OUTPUT'; got: '$OUTPUT'; Normal: $TEST; with 2>&1: $TESTT; with /null: $TESTTT"
|
||||
|
||||
OUTPUT="$(nvm use 2>&1 >/dev/null | awk 'NR==3')"
|
||||
EXPECTED_OUTPUT='You need to run "nvm install v0.10.28" to install it before using it.'
|
||||
|
||||
[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] \
|
||||
|| die "'nvm use' did not output: '$EXPECTED_OUTPUT'; got: '$OUTPUT'"
|
@ -19,5 +19,9 @@ for VERSION in "1.0.0" "1.0.1"; do
|
||||
nvm install "iojs-v$VERSION"
|
||||
done
|
||||
|
||||
if [ -f ".nvmrc" ]; then
|
||||
mv .nvmrc .nvmrc.bak
|
||||
fi
|
||||
|
||||
nvm_make_alias lts/testing 0.10.1
|
||||
nvm_make_alias 'lts/*' lts/testing
|
||||
|
@ -20,3 +20,9 @@ if [ -d "${NVM_DIR}/.nvm_use_lts_alias_bak" ]; then
|
||||
mv "${NVM_DIR}/.nvm_use_lts_alias_bak/*" "${NVM_DIR}/alias/lts/"
|
||||
rmdir "${NVM_DIR}/.nvm_use_lts_alias_bak"
|
||||
fi
|
||||
|
||||
rm .nvmrc
|
||||
|
||||
if [ -f ".nvmrc.bak" ]; then
|
||||
mv .nvmrc.bak .nvmrc
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user