Make sure `nvm run` works without a version argument when .nvmrc specifies a version.
parent
4cf940153c
commit
20953ab04c
37
nvm.sh
37
nvm.sh
|
@ -208,7 +208,7 @@ nvm() {
|
|||
echo " nvm install [-s] <version> Download and install a <version>, [-s] from source. Uses .nvmrc if available"
|
||||
echo " nvm uninstall <version> Uninstall a version"
|
||||
echo " nvm use <version> Modify PATH to use <version>. Uses .nvmrc if available"
|
||||
echo " nvm run <version> [<args>] Run <version> with <args> as arguments"
|
||||
echo " nvm run <version> [<args>] Run <version> with <args> as arguments. Uses .nvmrc if available for <version>"
|
||||
echo " nvm current Display currently activated version"
|
||||
echo " nvm ls List installed versions"
|
||||
echo " nvm ls <version> List versions matching a given description"
|
||||
|
@ -471,20 +471,37 @@ nvm() {
|
|||
echo "Now using node $VERSION"
|
||||
;;
|
||||
"run" )
|
||||
local provided_version
|
||||
local has_checked_nvmrc=0
|
||||
# run given version of node
|
||||
if [ $# -lt 2 ]; then
|
||||
nvm_rc_version
|
||||
if [ -z "$NVM_RC_VERSION" ]; then
|
||||
shift
|
||||
if [ $# -lt 1 ]; then
|
||||
nvm_rc_version && has_checked_nvmrc=1
|
||||
if [ -n "$NVM_RC_VERSION" ]; then
|
||||
VERSION=`nvm_version $NVM_RC_VERSION`
|
||||
else
|
||||
VERSION='N/A'
|
||||
fi
|
||||
if [ $VERSION = "N/A" ]; then
|
||||
nvm help
|
||||
return
|
||||
fi
|
||||
fi
|
||||
NVM_PROVIDED_VERSION=`nvm_version $2`
|
||||
if [ -z "$NVM_PROVIDED_VERSION" ]; then
|
||||
nvm_rc_version
|
||||
NVM_PROVIDED_VERSION="$NVM_RC_VERSION"
|
||||
|
||||
provided_version=$1
|
||||
if [ -n "$provided_version" ]; then
|
||||
VERSION=`nvm_version $provided_version`
|
||||
if [ $VERSION = "N/A" ]; then
|
||||
provided_version=''
|
||||
if [ $has_checked_nvmrc -ne 1 ]; then
|
||||
nvm_rc_version && has_checked_nvmrc=1
|
||||
fi
|
||||
VERSION="$NVM_PROVIDED_VERSION"
|
||||
VERSION=`nvm_version $NVM_RC_VERSION`
|
||||
else
|
||||
shift
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -d "$NVM_DIR/$VERSION" ]; then
|
||||
echo "$VERSION version is not installed yet"
|
||||
return;
|
||||
|
@ -495,7 +512,7 @@ nvm() {
|
|||
RUN_NODE_PATH="$NVM_DIR/$VERSION/lib/node_modules:$NODE_PATH"
|
||||
fi
|
||||
echo "Running node $VERSION"
|
||||
NODE_PATH=$RUN_NODE_PATH $NVM_DIR/$VERSION/bin/node "${@:3}"
|
||||
NODE_PATH=$RUN_NODE_PATH $NVM_DIR/$VERSION/bin/node "$@"
|
||||
;;
|
||||
"ls" | "list" )
|
||||
nvm_print_versions "`nvm_ls $2`"
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
die () { echo $@ ; exit 1; }
|
||||
|
||||
. ../../../nvm.sh
|
||||
|
||||
[ "$(nvm run 0.10.7 --version | tail -1)" = "v0.10.7" ] || die "`nvm run` failed to run with the correct version"
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
die () { echo $@ ; exit 1; }
|
||||
|
||||
. ../../../nvm.sh
|
||||
|
||||
echo "0.10.7" > .nvmrc
|
||||
[ "$(nvm run --version | tail -1)" = "v0.10.7" ] || die "`nvm run` failed to run with the .nvmrc version"
|
||||
|
||||
[ "$(nvm run --version | head -1)" = "Found .nvmrc files with version <0.10.7>" ] || die "`nvm run` failed to print out the \"found in .nvmrc\" message"
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
. ../../../nvm.sh
|
||||
nvm install 0.10.7
|
||||
|
||||
if [ -f ".nvmrc" ]; then
|
||||
mv .nvmrc .nvmrc.bak
|
||||
fi
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
|
||||
. ../../../nvm.sh
|
||||
nvm uninstall v0.10.7
|
||||
|
||||
rm .nvmrc
|
||||
|
||||
if [ -f ".nvmrc.bak" ]; then
|
||||
mv .nvmrc.bak .nvmrc
|
||||
fi
|
||||
|
Loading…
Reference in New Issue