[ 
https://issues.apache.org/jira/browse/CASSANDRA-5156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13556425#comment-13556425
 ] 

Sylvain Lebresne commented on CASSANDRA-5156:
---------------------------------------------

bq. It's possible that I'm simply stubborn

Well, you do switch arguments :). I though we agree initially that semver was 
probably overkill for us with your "As for the patch version (Z), I think 
you're right. I doesn't offer much value". So I was mainly arguing that even if 
don't follow http://semver.org/, I'd still rather keep a 3 number version 
rather than 2.

bq. to a less-structured ad hoc one

Let's not be too extreme in our judgement. All I'm suggesting is to follow 
what's described by the first sentence here: 
http://en.wikipedia.org/wiki/Software_versioning#Change_significance. Hardly 
very ad hoc.

bq. I'm not seeing how moving from a widely-used, documented, structured 
convention, to a less-structured ad hoc one will better communicate changes and 
set expectations

All I'm saying is that imo a good way to fail expectation is to set them too 
high. So I suggest no pretending we follow http://semver.org/ (which after all 
calls itself a "specification", not "guidelines") unless we are, as a project, 
very committed to do it. I'm not really honestly, and I don't think we're that 
disciplined as a project. And bumping versions on a significance basis is just 
easier (yes, because it's more subjective) and kind of very common imo.

                
> CQL: loosen useless versioning constraint
> -----------------------------------------
>
>                 Key: CASSANDRA-5156
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5156
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Trivial
>             Fix For: 1.2.1
>
>         Attachments: 5156.txt
>
>
> So far the CQL doc says the CQL language follows http://semver.org/. Meaning 
> that a version is X.Y.Z where:
> * X is the major version and denotes backward incompatible changes
> * Y is the minor version and denotes backward compatible changes
> * Z is the patch version and denotes backward *and* forward compatible 
> changes, i.e. change to the implementation.
> Now I don't think for CQL we have much use of the patch version. Not that 
> knowing when implementation fixes have been done is not useful but:
> # The Cassandra version number already kind of cover that.
> # While a patch version would be more precise in that it would only concern 
> CQL3 related changes, I have no illusion on our capacity in maintaining such 
> patch version accuratly (and frankly, I don't blame us).
> So instead of keeping a number that will end up having no usefulness 
> whatsoever, I suggest that we either:
> # remove it and have CQL3 version being just major and minor.
> # use that latter number as a sub-minor version, i.e. a version that only
> # denotes backward compatible changes, not forward ones. We would then bump 
> the two last digit at our discretion, to denote some form of "importance" of 
> the changes.
> I don't care much about which of the two we end up doing, but since we 
> already have a 3 numbers version and since I kind of like the idea of having 
> two numbers to convey a sense of importance of the changes, I'm attaching a 
> patch for the 2nd solution.
> Note that the patch removes the changes section from the doc, but that's 
> because I think it's useless in it's current form (on top of being 
> inaccurate).  I do plan on adding a new changes section that lists changes 
> between CQL minor version as soon as we have some of those.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to