From 287c4a7bac7344672d631a8efd00690236365fc1 Mon Sep 17 00:00:00 2001 From: Jephte CLAIN Date: Sat, 18 Jan 2014 20:59:52 +0400 Subject: [PATCH] =?UTF-8?q?impl=C3=A9menter=20setprelease=20et=20setmetada?= =?UTF-8?q?ta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ulib/semver | 14 ++++++++------ uversion | 13 +++++++++---- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/ulib/semver b/ulib/semver index dc3412e..da21919 100644 --- a/ulib/semver +++ b/ulib/semver @@ -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() { diff --git a/uversion b/uversion index 5f5afbb..67806f0 100755 --- a/uversion +++ b/uversion @@ -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"