version

Versioning specification based on semver 2.0
git clone https://noulin.net/git/version.git
Log | Files | Refs | README | LICENSE

commit 241bbc220995f05c115aaf640e0756dd8ed38e2b
parent 1625b14775819dd235f50c5c77d92569ee1e5240
Author: Remy Noulin <loader2x@gmail.com>
Date:   Mon, 23 Dec 2019 16:14:26 +0100

fix compilation error with latest libsheepy

memcheckVersion.c | 24 ++++++++++++------------
package.yml       |  2 +-
testVersion.c     | 24 ++++++++++++------------
version.c         |  7 ++++---
version.h         |  8 ++++----
5 files changed, 33 insertions(+), 32 deletions(-)

Diffstat:
MmemcheckVersion.c | 24++++++++++++------------
Mpackage.yml | 2+-
MtestVersion.c | 24++++++++++++------------
Mversion.c | 7++++---
Mversion.h | 8++++----
5 files changed, 33 insertions(+), 32 deletions(-)

diff --git a/memcheckVersion.c b/memcheckVersion.c @@ -258,7 +258,7 @@ void equalT(void) { parseO(&ver2,"1.0.0"); ck_assert(eqO(&ver, &ver2)); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert(!eqO(&ver, &ver2)); freeO(&ver2); @@ -273,7 +273,7 @@ void equalST(void) { parseO(&ver, "v1"); ck_assert(eqSO(&ver, "1.0")); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert(!eqSO(&ver, "1.0")); freeO(&ver); @@ -301,11 +301,11 @@ void cmpT(void) { parseO(&ver2,"1.0.0"); ck_assert_int_eq(cmpO(&ver, &ver2), 0); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(cmpO(&ver, &ver2), 1); - incO(&ver2, releaseVer); - incO(&ver2, releaseVer); + incrO(&ver2, releaseVer); + incrO(&ver2, releaseVer); ck_assert_int_eq(cmpO(&ver, &ver2), -1); freeO(&ver2); @@ -320,7 +320,7 @@ void cmpST(void) { parseO(&ver, "v1"); ck_assert_int_eq(cmpSO(&ver, "1.0"), 0); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(cmpSO(&ver, "1.0"), 1); ck_assert_int_eq(cmpSO(&ver, "3.1"), -1); @@ -343,31 +343,31 @@ void cmpSST(void) { } -void incT(void) { +void incrT(void) { createVersion(ver); parseO(&ver, "0.0.0"); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 0); ck_assert_int_eq(ver.minor, 0); ck_assert_int_eq(ver.patch, 0); - incO(&ver, majorVer); + incrO(&ver, majorVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 0); ck_assert_int_eq(ver.patch, 0); - incO(&ver, minorVer); + incrO(&ver, minorVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 1); ck_assert_int_eq(ver.patch, 0); - incO(&ver, patchVer); + incrO(&ver, patchVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 1); @@ -782,7 +782,7 @@ equalSST(); cmpT(); cmpST(); cmpSST(); -incT(); +incrT(); sortT(); satisfiesT(); toJsonT(); diff --git a/package.yml b/package.yml @@ -1,6 +1,6 @@ --- name: version - version: 0.0.3 + version: 0.0.4 description: Versioning based on semver bin: ./version.c repository: diff --git a/testVersion.c b/testVersion.c @@ -254,7 +254,7 @@ START_TEST(equalT) parseO(&ver2,"1.0.0"); ck_assert(eqO(&ver, &ver2)); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert(!eqO(&ver, &ver2)); freeO(&ver2); @@ -269,7 +269,7 @@ START_TEST(equalST) parseO(&ver, "v1"); ck_assert(eqSO(&ver, "1.0")); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert(!eqSO(&ver, "1.0")); freeO(&ver); @@ -297,11 +297,11 @@ START_TEST(cmpT) parseO(&ver2,"1.0.0"); ck_assert_int_eq(cmpO(&ver, &ver2), 0); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(cmpO(&ver, &ver2), 1); - incO(&ver2, releaseVer); - incO(&ver2, releaseVer); + incrO(&ver2, releaseVer); + incrO(&ver2, releaseVer); ck_assert_int_eq(cmpO(&ver, &ver2), -1); freeO(&ver2); @@ -316,7 +316,7 @@ START_TEST(cmpST) parseO(&ver, "v1"); ck_assert_int_eq(cmpSO(&ver, "1.0"), 0); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(cmpSO(&ver, "1.0"), 1); ck_assert_int_eq(cmpSO(&ver, "3.1"), -1); @@ -339,31 +339,31 @@ START_TEST(cmpSST) END_TEST -START_TEST(incT) +START_TEST(incrT) createVersion(ver); parseO(&ver, "0.0.0"); - incO(&ver, releaseVer); + incrO(&ver, releaseVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 0); ck_assert_int_eq(ver.minor, 0); ck_assert_int_eq(ver.patch, 0); - incO(&ver, majorVer); + incrO(&ver, majorVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 0); ck_assert_int_eq(ver.patch, 0); - incO(&ver, minorVer); + incrO(&ver, minorVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 1); ck_assert_int_eq(ver.patch, 0); - incO(&ver, patchVer); + incrO(&ver, patchVer); ck_assert_int_eq(ver.release, 1); ck_assert_int_eq(ver.major, 1); ck_assert_int_eq(ver.minor, 1); @@ -782,7 +782,7 @@ Suite * versionSuite(void) { tcase_add_test(tc_core, cmpT); tcase_add_test(tc_core, cmpST); tcase_add_test(tc_core, cmpSST); - tcase_add_test(tc_core, incT); + tcase_add_test(tc_core, incrT); tcase_add_test(tc_core, sortT); tcase_add_test(tc_core, satisfiesT); tcase_add_test(tc_core, toJsonT); diff --git a/version.c b/version.c @@ -34,7 +34,7 @@ local bool equalSSVersion(versiont *self, const char *v1, const char *v2); local int cmpVersion(versiont *self, versiont *ver); local int cmpSVersion(versiont *self, const char *v); local int cmpSSVersion(versiont *self, const char *v1, const char *v2); -local bool incVersion(versiont *self, u32 level); +local bool incrVersion(versiont *self, u32 level); local smallArrayt* sortVersion(versiont *self, smallArrayt *vlist); local bool satisfiesVersion(versiont *self, const char *vrange); local smallJsont* toJsonVersion(versiont *self); @@ -58,6 +58,7 @@ local bool fromJsonStrVersion(versiont *self, const char *json); // bitset used to strip invalid characters staticBitsetT(validt, u64 , 256); +// bug in gcc 4.9, ignore: warning: missing braces around initializer [-Wmissing-braces] local validt validChars = {0}; // parser states @@ -122,7 +123,7 @@ void registerMethodsVersion(versionFunctionst *f) { f->cmp = cmpVersion; f->cmpS = cmpSVersion; f->cmpSS = cmpSSVersion; - f->inc = incVersion; + f->incr = incrVersion; f->sort = sortVersion; f->satisfies = satisfiesVersion; f->toJson = toJsonVersion; @@ -846,7 +847,7 @@ local int cmpSSVersion(versiont *self UNUSED, const char *v1, const char *v2) { ret r; } -local bool incVersion(versiont *self, u32 level) { +local bool incrVersion(versiont *self, u32 level) { switch(level) { case releaseVer: self->release++; diff --git a/version.h b/version.h @@ -11,7 +11,7 @@ #define cmpO(obj, versionObj) (obj)->f->cmp(obj, versionObj) #define cmpSO(obj, version) (obj)->f->cmpS(obj, version) #define cmpSSO(obj, v1, v2) (obj)->f->cmpSS(obj, v1, v2) -#define incO(obj, level) (obj)->f->inc(obj, level) +#define incrO(obj, level) (obj)->f->incr(obj, level) #define vsortO(obj, varray) (obj)->f->sort(obj, varray) #define satisfiesO(obj, vrange) (obj)->f->satisfies(obj, vrange) #define toJsonO(obj) (obj)->f->toJson(obj) @@ -110,9 +110,9 @@ typ int (*cmpSSVersionFt) (versiont *self, const char *v1, cons * increase one of the main component * level values are defined in the enum above: releaseVer, majorVer, minorVer, patchVer * Example: - * incO(v, patchVer); + * incrO(v, patchVer); */ -typ bool (*incVersionFt) (versiont *self, u32 level); +typ bool (*incrVersionFt) (versiont *self, u32 level); /** * sort an array of version strings * \return @@ -169,7 +169,7 @@ typ bool (*fromJsonStrVersionFt)(versiont *self, const char *json); cmpVersionFt cmp;\ cmpSVersionFt cmpS;\ cmpSSVersionFt cmpSS;\ - incVersionFt inc;\ + incrVersionFt incr;\ sortVersionFt sort;\ satisfiesVersionFt satisfies;\ toJsonVersionFt toJson;\