implémenter setprelease et setmetadata

This commit is contained in:
Jephte CLAIN 2014-01-18 20:59:52 +04:00
parent e10b3f09f3
commit 287c4a7bac
2 changed files with 17 additions and 10 deletions

View File

@ -112,12 +112,13 @@ function semver_setversion() {
}
function semver_setprelease() {
# XXX analyser $1 et spliter avant de copier dans le tableau $5
if [ "$1" ]; then
set_array "$5" @ "$1"
if [ -n "$1" ]; then
__semver_check_prelease "$1" || return 1
array_split "$5" "$1" .
else
array_new "$5"
fi
return 0
}
function semver_compare_prelease() {
@ -125,12 +126,13 @@ function semver_compare_prelease() {
}
function semver_setmetadata() {
# XXX analyser $1 et spliter avant de copier dans le tableau $6
if [ "$1" ]; then
set_array "$6" @ "$1"
if [ -n "$1" ]; then
__semver_check_metadata "$1" || return 1
array_split "$6" "$1" .
else
array_new "$5"
fi
return 0
}
function semver_compare_metadata() {

View File

@ -56,7 +56,7 @@ OPTIONS
Augmenter le numéro de patch
-l, --prelease ID
Spécifier un identifiant de prérelease, à ajouter au numéro de version.
Spécifier un identifiant de pré-release, à ajouter au numéro de version.
-a, --alpha
-b, --beta
-r, --rc
@ -244,7 +244,9 @@ elif [ "$action" == update ]; then
fi
# forcer le numéro de version
psemver_setversion "$setversion" "" || die "Numéro de version invalide: $setversion"
if [ -n "$setversion" ]; then
psemver_setversion "$setversion" "" || die "Numéro de version invalide: $setversion"
fi
# incrémenter les numéros de version
if [ "$incversion" == auto ]; then
@ -286,7 +288,7 @@ elif [ "$action" == update ]; then
if [ -n "$setrelease" ]; then
psemver_setprelease ""
elif [ -n "$setprelease" ]; then
psemver_setprelease "$setprelease"
psemver_setprelease "$setprelease" || die "Identifiant de pre-release invalide: $setprelease"
fi
if [ -n "$setalpha" ]; then
:
@ -297,8 +299,11 @@ elif [ "$action" == update ]; then
fi
# spécifier metadata
[ -n "$setmetadata" ] && psemver_setmetadata "$setmetadata"
if [ -n "$setmetadata" ]; then
psemver_setmetadata "$setmetadata" || die "Identifiant de build invalide: $setmetadata"
fi
# afficher le résultat final
psemver_setvar version
if [ -n "$file" ]; then
echo "$version" >"$file"