zenorogue / hyperrogue

A SDL roguelike in a non-euclidean world
GNU General Public License v2.0
554 stars 66 forks source link

Versioning scheme after 12.1z #350

Open AMDmi3 opened 8 months ago

AMDmi3 commented 8 months ago

Release number is getting close to 12.1z. If you, by the chance, are planning to go on with e.g. 12.1za, please don't - alphabetic sequences are not really expected in version numbers and some package managers won't be able to differentiate z and za suffix, which would require hacks, complicate packaging and break new release checks and automatic package updates. I suggest to switch to numeric-only version such as 12.2 (12.3...) or 12.2.0 (12.2.1...) if you need an extra component.

ann-dec commented 8 months ago

There is precedent for the minor version number to increment after this -- after 12.0z came 12.1.

On Mon, Oct 30, 2023, 13:58 Dmitry Marakasov @.***> wrote:

Release number is getting close to 12.1z. If you, by the chance, are planning to go on with e.g. 12.1za, please don't - alphabetic sequences are not really expected in version numbers and some package managers won't be able to differentiate z and za suffix, which would require hacks, complicate packaging and break new release checks and automatic package updates. I suggest to switch to numeric-only version such as 12.2 (12.3...) or 12.2.0 (12.2.1...) if you need an extra component.

— Reply to this email directly, view it on GitHub https://github.com/zenorogue/hyperrogue/issues/350, or unsubscribe https://github.com/notifications/unsubscribe-auth/ATEL5W37ONQQFO5R4SFFEF3YB6JADAVCNFSM6AAAAAA6V4NLXGVHI2DSMVQWIX3LMV43ASLTON2WKOZRHE3DQMJXGU4TMMQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

zenorogue commented 8 months ago

One time when letters went past z was 11.0, when these versions were displayed in game as 11.0ż and 11.0ź, and tagged as 11.0z1 and 11.0z2 to not confuse systems. Is this fine? Or is something like 11.0z.1 better?

We have enough new content for a major release (13.0), I do not plan any updates before that, except maybe 12.1z to fix some bugs.

AMDmi3 commented 8 months ago

I can't call any scheme with letters fine, as there definitely are repositories which do not support even the current scheme properly (from what I can see, that's Fedora, and from what I know, that's also Gentoo, though the latter doesn't package hyperrogue yet).

Extended schemes you've mentioned are more complex and thus even more problematic. Can't say for sure which repos these could break and so which scheme is preferred. From what I know FreeBSD handles both 11.0z1 and 11.0z.1 fine, but universal version comparison algorithm which, for instance, Repology uses, compares 11.0z1 lesser than 11.0z (the logic behind this comes from handling much more common prerelease scheme, e.g. 11.0a1 == 11.0alpha1 (prerelease) < 11.0a2 < 11.0b1 (beta, also prerelease) < 11.0z1 (nonsensical, but same pattern) < 11.0 < 11.0a (letter releases) < 11.0z). So I'd suggest to go on with 12.2 or 13.0 without letters, and in the case a 12.1 release after 12.1z is required, I'd prefer 11.0z.1.