On Mon, 1 Dec 2014, Matt Coleman wrote:

well, we don't intend to make backwards incompatible changes :-)

What noble intentions...

The only backwards incompatible changes that I know of that we've deliberatly made since I started using rsyslog in the 3.x days is the dropping of the BSD config language and the changes to the module interface for 8.x


as such we will be on 8.100 in a few years

What's wrong with that? Numbers have this great feature: they can be as big as we need! Besides, the same concern applies to 6 week incrementing plan, it would just take quite a few years. :)

people (and systems) have some trouble with the idea that 1.100.1 is larger than 1.9.1. Since it's not a simple number they do an alpha sort and get the wrong answer.

That said, I think such systems are broken and people should learn, so I don't have a problem with the minor number being large.

Unless we take the Linus approach and say that when the minor number gets uncomfortably large we increment the major to reset it.

This undermines the main benefit of Semantic Versioning: "I know this version of the dependency will break my software."

I don't think that semantic versioning is really that useful. There are far more cases where bugs caus incompatibility than deliberate incompatibilities.

Or looking at it another way, if there are backwards incompatible changes, how 
many do there need to be to cause a major version change?
If there are backwards incompatible changes in a release cycle, that cycle's 
version number has the major version incremented (not once per 
backwards-incompatible change).

if there are 5 features out of 1000 dropped over a few release cycles, should 
that cause the major version to jump by 5, especially if they are minor features
If those 5 features were dropped over 5 release cycles, then there would be 5 major 
version increases. "Minor" features may be minor in your usage, yet core to 
someone else's work. No one seems to have a problem with Chrome's major version being 39 
(or Firefox's 34).

The problem with changing the major number is that for some reason, distro maintainers are terrified of new major numbers, no matter what the reason, and will frequently stick with old major numbers for a long time. See how rsyslog 4.x and 6.x were basically skipped by the distros entirely, and 7,x came within a couple months of being skipped as well (8.x was very near it's stable release when the first distros shipped a 7.x version)

We are not setting policies about major number changes.
Since you're reworking the rest of the versioning scheme, why not set the policy for the major version as well? Having a policy in place would eliminate an "Is it time to bump the major version?" mailing list discussion in the future.

<shrug> I just don't think it's a big deal, and I think that the things that could trigger a major change are unpredictable enough that it's not worth arguing much about setting a policy.

David Lang
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to