ajout de --add-metadata
support de --allow-empty pour --update
This commit is contained in:
parent
8d3ab79b39
commit
259e1be6dc
|
@ -145,7 +145,7 @@ function pver() {
|
||||||
local setbeta=
|
local setbeta=
|
||||||
local setrc=
|
local setrc=
|
||||||
local setrelease=
|
local setrelease=
|
||||||
local setmetadata=
|
local setmetadata= addmetadata=
|
||||||
local vcsmetadata=
|
local vcsmetadata=
|
||||||
parse_opts "${PRETTYOPTS[@]}" \
|
parse_opts "${PRETTYOPTS[@]}" \
|
||||||
--help '$exit_with pver_display_help' \
|
--help '$exit_with pver_display_help' \
|
||||||
|
@ -177,7 +177,8 @@ function pver() {
|
||||||
-b,--beta '$action=update; setalpha=; setbeta=1; setrc=; setrelease=' \
|
-b,--beta '$action=update; setalpha=; setbeta=1; setrc=; setrelease=' \
|
||||||
-r,--rc '$action=update; setalpha=; setbeta=; setrc=1; setrelease=' \
|
-r,--rc '$action=update; setalpha=; setbeta=; setrc=1; setrelease=' \
|
||||||
-R,--release,--final '$action=update; setalpha=; setbeta=; setrc=; setrelease=1' \
|
-R,--release,--final '$action=update; setalpha=; setbeta=; setrc=; setrelease=1' \
|
||||||
-m:,--metadata: '$action=update; set@ setmetadata' \
|
-m:,--metadata:,--set-metadata: '$action=update; set@ setmetadata' \
|
||||||
|
--add-metadata: '$action=update; set@ addmetadata' \
|
||||||
-M,--vcs-metadata '$action=update; vcsmetadata=1' \
|
-M,--vcs-metadata '$action=update; vcsmetadata=1' \
|
||||||
@ args -- "$@" && set -- "${args[@]}" || { eerror "$args"; return 1; }
|
@ args -- "$@" && set -- "${args[@]}" || { eerror "$args"; return 1; }
|
||||||
|
|
||||||
|
@ -232,7 +233,6 @@ function pver() {
|
||||||
version="$(git cat-file blob "$branch:$name" 2>/dev/null)"
|
version="$(git cat-file blob "$branch:$name" 2>/dev/null)"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
[ "$action" == show ] || allow_empty=
|
|
||||||
[ -n "$version" -o -n "$allow_empty" ] || version=0.0.0
|
[ -n "$version" -o -n "$allow_empty" ] || version=0.0.0
|
||||||
|
|
||||||
# Conversion éventuelle du numéro de version
|
# Conversion éventuelle du numéro de version
|
||||||
|
@ -241,7 +241,7 @@ function pver() {
|
||||||
if [ "$convert" == auto ]; then
|
if [ "$convert" == auto ]; then
|
||||||
[ -z "$valid" ] && convert=1
|
[ -z "$valid" ] && convert=1
|
||||||
fi
|
fi
|
||||||
if [ -n "$convert" ]; then
|
if [ -n "$convert" -a -n "$version" ]; then
|
||||||
mversion="$(awkrun version="$version" '
|
mversion="$(awkrun version="$version" '
|
||||||
function nbdot(s) {
|
function nbdot(s) {
|
||||||
gsub(/[^.]/, "", s)
|
gsub(/[^.]/, "", s)
|
||||||
|
@ -408,6 +408,7 @@ BEGIN {
|
||||||
esac
|
esac
|
||||||
|
|
||||||
elif [ "$action" == update ]; then
|
elif [ "$action" == update ]; then
|
||||||
|
[ -z "$version" -a -n "$allow_empty" ] && return 1
|
||||||
[ -n "$valid" ] || { eerror "Numéro de version invalide: $version"; return 1; }
|
[ -n "$valid" ] || { eerror "Numéro de version invalide: $version"; return 1; }
|
||||||
|
|
||||||
if [ -n "$file" ]; then
|
if [ -n "$file" ]; then
|
||||||
|
@ -446,17 +447,56 @@ BEGIN {
|
||||||
|
|
||||||
# incrémenter les numéros de version
|
# incrémenter les numéros de version
|
||||||
if [ "$incversion" == auto ]; then
|
if [ "$incversion" == auto ]; then
|
||||||
if [ -n "$setrelease" -o -n "$setprelease" -o -n "$setmetadata" ]; then
|
if [ -n "$setrelease" -o -n "$setprelease" -o -n "$setmetadata" -o -n "$addmetadata" ]; then
|
||||||
incversion=
|
incversion=
|
||||||
else
|
else
|
||||||
incversion=menu
|
incversion=menu
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$incversion" == menu ]; then
|
if [ "$incversion" == menu ]; then
|
||||||
psemver_copy x; psemver_incmajor x; psemver_setprelease "$setprelease" x; psemver_setmetadata "$setmetadata" x; psemver_setvar versionx x
|
psemver_copy x; {
|
||||||
psemver_copy z; psemver_incminor z; psemver_setprelease "$setprelease" z; psemver_setmetadata "$setmetadata" z; psemver_setvar versionz z
|
psemver_incmajor x
|
||||||
psemver_copy p; psemver_incpatchlevel p; psemver_setprelease "$setprelease" p; psemver_setmetadata "$setmetadata" p; psemver_setvar versionp p
|
psemver_setprelease "$setprelease" x
|
||||||
psemver_copy k; psemver_setprelease "$setprelease" k; psemver_setmetadata "$setmetadata" k; psemver_setvar versionk k
|
if [ -n "$addmetadata" ]; then
|
||||||
|
[ -n "$setmetadata" ] && psemver_setmetadata "$setmetadata" x
|
||||||
|
psemver_addmetadata "$addmetadata" x
|
||||||
|
else
|
||||||
|
psemver_setmetadata "$setmetadata" x
|
||||||
|
fi
|
||||||
|
psemver_setvar versionx x
|
||||||
|
}
|
||||||
|
psemver_copy z; {
|
||||||
|
psemver_incminor z
|
||||||
|
psemver_setprelease "$setprelease" z
|
||||||
|
if [ -n "$addmetadata" ]; then
|
||||||
|
[ -n "$setmetadata" ] && psemver_setmetadata "$setmetadata" z
|
||||||
|
psemver_addmetadata "$addmetadata" z
|
||||||
|
else
|
||||||
|
psemver_setmetadata "$setmetadata" z
|
||||||
|
fi
|
||||||
|
psemver_setvar versionz z
|
||||||
|
}
|
||||||
|
psemver_copy p; {
|
||||||
|
psemver_incpatchlevel p
|
||||||
|
psemver_setprelease "$setprelease" p
|
||||||
|
if [ -n "$addmetadata" ]; then
|
||||||
|
[ -n "$setmetadata" ] && psemver_setmetadata "$setmetadata" p
|
||||||
|
psemver_addmetadata "$addmetadata" p
|
||||||
|
else
|
||||||
|
psemver_setmetadata "$setmetadata" p
|
||||||
|
fi
|
||||||
|
psemver_setvar versionp p
|
||||||
|
}
|
||||||
|
psemver_copy k; {
|
||||||
|
psemver_setprelease "$setprelease" k
|
||||||
|
if [ -n "$addmetadata" ]; then
|
||||||
|
[ -n "$setmetadata" ] && psemver_setmetadata "$setmetadata" k
|
||||||
|
psemver_addmetadata "$addmetadata" k
|
||||||
|
else
|
||||||
|
psemver_setmetadata "$setmetadata" k
|
||||||
|
fi
|
||||||
|
psemver_setvar versionk k
|
||||||
|
}
|
||||||
nextvs=(
|
nextvs=(
|
||||||
"$versionx : maj incompatibles de l'API (-x)"
|
"$versionx : maj incompatibles de l'API (-x)"
|
||||||
"$versionz : maj compatibles de l'API (-z)"
|
"$versionz : maj compatibles de l'API (-z)"
|
||||||
|
@ -482,7 +522,7 @@ BEGIN {
|
||||||
esac
|
esac
|
||||||
# Quand on incrémente, réinitialiser la valeur de prérelease et metadata
|
# Quand on incrémente, réinitialiser la valeur de prérelease et metadata
|
||||||
psemver_setprelease
|
psemver_setprelease
|
||||||
psemver_setmetadata
|
[ -z "$addmetadata" ] && psemver_setmetadata
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# spécifier prerelease
|
# spécifier prerelease
|
||||||
|
@ -503,6 +543,9 @@ BEGIN {
|
||||||
if [ -n "$setmetadata" ]; then
|
if [ -n "$setmetadata" ]; then
|
||||||
psemver_setmetadata "$setmetadata" || { eerror "Identifiant de build invalide: $setmetadata"; return 1; }
|
psemver_setmetadata "$setmetadata" || { eerror "Identifiant de build invalide: $setmetadata"; return 1; }
|
||||||
fi
|
fi
|
||||||
|
if [ -n "$addmetadata" ]; then
|
||||||
|
psemver_addmetadata "$addmetadata" || { eerror "Identifiant de build invalide: $addmetadata"; return 1; }
|
||||||
|
fi
|
||||||
|
|
||||||
# afficher le résultat final
|
# afficher le résultat final
|
||||||
psemver_setvar version
|
psemver_setvar version
|
||||||
|
|
9
pver
9
pver
|
@ -30,6 +30,10 @@ OPTIONS
|
||||||
|
|
||||||
--show
|
--show
|
||||||
Afficher le numéro de version. C'est l'action par défaut
|
Afficher le numéro de version. C'est l'action par défaut
|
||||||
|
--allow-empty
|
||||||
|
Supporter que la version puisse ne pas être spécifiée ni trouvée. Dans
|
||||||
|
ce cas, ne pas assumer que la version effective est 0.0.0
|
||||||
|
Avec --show et --update, ne rien afficher si la version est vide.
|
||||||
--check
|
--check
|
||||||
Vérifier que le numéro de version est conforme aux règles du versionage
|
Vérifier que le numéro de version est conforme aux règles du versionage
|
||||||
sémantique
|
sémantique
|
||||||
|
@ -88,7 +92,10 @@ OPTIONS
|
||||||
Spécifier un identifiant de build, à ajouter au numéro de version.
|
Spécifier un identifiant de build, à ajouter au numéro de version.
|
||||||
-M, --vcs-metadata
|
-M, --vcs-metadata
|
||||||
Spécifier l'identifiant à partir de la révision actuelle dans le
|
Spécifier l'identifiant à partir de la révision actuelle dans le
|
||||||
gestionnaire de version. Note: pour le moment, seul git est supporté."
|
gestionnaire de version. Note: pour le moment, seul git est supporté.
|
||||||
|
--add-metadata ID
|
||||||
|
Ajouter l'identifiant spécifié à la valeur actuelle, au lieu de la
|
||||||
|
remplacer. Séparer l'identifiant de la valeur précédente avec un '.'"
|
||||||
}
|
}
|
||||||
|
|
||||||
pver "$@"
|
pver "$@"
|
||||||
|
|
Loading…
Reference in New Issue