Ho visto che al codice ripultito in master hai assegnato le versione 1.0.6a.
Apro una parentesi riguardo SemVer, dato che si era discusso sulla possibilità di adottarne la notazione per le release di Polygen da questo repo in poi.
La versione 1.0.6a non è valida in SemVer 2.0, perché i tre segmenti devono essere solo numerici, o 0 o un numero qualsiasi non preceduto da zeri.
L'unico modo per creare una release successiva alla 1.0.6 è creare la 1.0.7 (o una maggiore). L'alternative è creare una prerelease della 1.0.7, per es 1.0.7-a o 1.0.7-rc1 (o qualsasi schema si voglia adottare pre le prerelease).
Il problema in questione è facilmente illustrabile tramite esempi pratici:
1.0.6 > 1.0.6-a
1.0.6-c > 1.0.6-b
1.0.6-c > 1.0.6-a
1.0.6-b > 1.0.6-a
1.0.6-b < 1.0.6-aa
1.0.6-a < 1.0.6-aa
1.0.6-12 > 1.0.6-9
In SemVer una prerlease è sempre inferiore ad una release (ossia una versione che non contiene il segmento di pre-release). L'ordine di precedenza tra le prerelease (in una stessa versione) ha delle regole un po' arzigogolate:
identifiers consisting of only digits are compared numerically and identifiers with letters or hyphens are compared lexically in ASCII sort order. Numeric identifiers always have lower precedence than non-numeric identifiers. A larger set of pre-release fields has a higher precedence than a smaller set, if all of the preceding identifiers are equal. Example:
1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0
Come accennavo, conviene sempre verificare la validità di una release SemVer tramite un validatore online:
http://jubianchi.github.io/semver-check/
che consente anche di verificare che la precedenza tra le varie prerelease sia corretta.
Ho visto che al codice ripultito in
masterhai assegnato le versione1.0.6a.Apro una parentesi riguardo SemVer, dato che si era discusso sulla possibilità di adottarne la notazione per le release di Polygen da questo repo in poi.
La versione
1.0.6anon è valida in SemVer 2.0, perché i tre segmenti devono essere solo numerici, o0o un numero qualsiasi non preceduto da zeri.L'unico modo per creare una release successiva alla
1.0.6è creare la1.0.7(o una maggiore). L'alternative è creare una prerelease della1.0.7, per es1.0.7-ao1.0.7-rc1(o qualsasi schema si voglia adottare pre le prerelease).Il problema in questione è facilmente illustrabile tramite esempi pratici:
In SemVer una prerlease è sempre inferiore ad una release (ossia una versione che non contiene il segmento di pre-release). L'ordine di precedenza tra le prerelease (in una stessa versione) ha delle regole un po' arzigogolate:
Come accennavo, conviene sempre verificare la validità di una release SemVer tramite un validatore online:
http://jubianchi.github.io/semver-check/
che consente anche di verificare che la precedenza tra le varie prerelease sia corretta.