Beyond 2.8 - some design thoughts
Alen Siljak
alen.siljak at gmx.com
Sun Dec 24 19:49:41 EST 2017
To me, as an outsider and an occassional tester, Semantic Versioning
would make much more sense than any other custom versioning system.
Simply because it is getting common across various software packages
and libraries. It might work for the GUI application as well, when
referring to the workflows instead of APIs.
In that regard, I would always go for the "don't make me think"
approach and stay away from numbering schemes that require a user
manual to figure out.
There's an answer on Stack Exchange that explains this into more
detail:
https://softwareengineering.stackexchange.com/questions/255190/how-does
-semantic-versioning-apply-to-programs-without-api
>
> Option A: let's number development snapshots starting from x.90. That
gives us
> 10 development snapshots. If that's not enough we can either choose
to start a
> bit earlier, like x.80 or from x.98 jump to x.980 to give us 20 more.
> Option B: as a variation all development snapshots do use a 3 number
version:
> x.99.z with 99 clearly indicating "right before the next major
release" and z
> incrementing with each snapshot.
>
I’m indifferent to the versioning system as long as it’s consistent,
but the distro packagers aren’t. Some of them recite the “Semantic
Versioning” [1] mantra even though it really applies only to libraries.
Back when we released 2.6 we were unsure about whether the coming
version would be 2.8 or 3.0. One of the criteria proposed was that we
should call it 3.0 if we upgraded to Gtk+3. Well, we have, so maybe the
coming release should be 3.0.0 instead of 2.8.0. That would certainly
be consistent with the Gnome guidelines [2] that include a major change
in the GUI as a reason for bumping the major version.
Should some of the component libraries (especially libgnucash) have
separate versioning that follows the semantic versioning rules?
Regards,
John Ralls
[1] [1]https://semver.org/ <[2]https://semver.org/>[2]
[3]https://developer.gnome.org/programming-guidelines/stable/versioning
.html.en
<[4]https://developer.gnome.org/programming-guidelines/stable/versionin
g.html.en>
References
1. https://semver.org/
2. https://semver.org/
3. https://developer.gnome.org/programming-guidelines/stable/versioning.html.en
4. https://developer.gnome.org/programming-guidelines/stable/versioning.html.en
More information about the gnucash-devel
mailing list