Make 'ghcup set' tag-aware
This commit is contained in:
parent
d1cb7127af
commit
717a8256a6
26
ghcup
26
ghcup
@ -239,13 +239,15 @@ set_usage() {
|
|||||||
Set the currently active GHC to the specified version
|
Set the currently active GHC to the specified version
|
||||||
|
|
||||||
USAGE:
|
USAGE:
|
||||||
${SCRIPT} set [FLAGS] <VERSION>
|
${SCRIPT} set [FLAGS] [VERSION|TAG]
|
||||||
|
|
||||||
FLAGS:
|
FLAGS:
|
||||||
-h, --help Prints help information
|
-h, --help Prints help information
|
||||||
|
|
||||||
ARGS:
|
ARGS:
|
||||||
<VERSION> E.g. \"8.4.3\" or \"8.6.1\"
|
[VERSION|TAG] E.g. \"8.4.3\" or \"8.6.1\" or
|
||||||
|
a tag like \"recommended\" or \"latest\"
|
||||||
|
(default: discovers recommended version)
|
||||||
|
|
||||||
DISCUSSION:
|
DISCUSSION:
|
||||||
Sets the the current GHC version by creating non-versioned
|
Sets the the current GHC version by creating non-versioned
|
||||||
@ -1777,8 +1779,24 @@ if ! is_sourced ; then
|
|||||||
break;;
|
break;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
[ -n "${GHC_VER}" ] || set_usage
|
|
||||||
set_ghc "${GHC_VER}"
|
if [ -z "${GHC_VER}" ] ; then
|
||||||
|
_tool_ver="$(get_tool_ver_from_tag "ghc" "recommended")"
|
||||||
|
if [ -z "${_tool_ver}" ] ; then
|
||||||
|
die "Could not find a recommended GHC version, please report a bug at ${BUG_URL}!"
|
||||||
|
fi
|
||||||
|
set_ghc "${_tool_ver}"
|
||||||
|
else
|
||||||
|
# could be a version or a tag, let's check
|
||||||
|
if array_contains "${GHC_VER}" "$(known_tool_versions "ghc")" ; then
|
||||||
|
set_ghc "${GHC_VER}"
|
||||||
|
elif array_contains "${GHC_VER}" "$(known_tool_tags "ghc")" ; then
|
||||||
|
set_ghc "$(get_tool_ver_from_tag "ghc" "${GHC_VER}")"
|
||||||
|
else
|
||||||
|
die "\"${GHC_VER}\" is not a known version or tag!"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
break;;
|
break;;
|
||||||
upgrade)
|
upgrade)
|
||||||
shift 1
|
shift 1
|
||||||
|
Loading…
Reference in New Issue
Block a user