Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 151E010939 for ; Mon, 7 Apr 2014 13:26:58 +0000 (UTC) Received: (qmail 13541 invoked by uid 500); 7 Apr 2014 13:26:56 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 13183 invoked by uid 500); 7 Apr 2014 13:26:51 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 13166 invoked by uid 99); 7 Apr 2014 13:26:50 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Apr 2014 13:26:50 +0000 X-ASF-Spam-Status: No, hits=2.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_SOFTFAIL X-Spam-Check-By: apache.org Received-SPF: softfail (nike.apache.org: transitioning domain of wilhelm.von.cloud@accumulo.net does not designate 209.85.213.48 as permitted sender) Received: from [209.85.213.48] (HELO mail-yh0-f48.google.com) (209.85.213.48) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Apr 2014 13:26:44 +0000 Received: by mail-yh0-f48.google.com with SMTP id z6so5725550yhz.7 for ; Mon, 07 Apr 2014 06:26:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=1SzfASb9p1Housrsb3mqNtV96ZBOdCzs1b3dfbajhkE=; b=hPLEjJoOQ/sTR/N3DR+9rHfgm2/lw5m1igBMrVJcvRRlxo2eYm6J2gDQGLFVck3eL9 F5WKkajGTWg2lxdNYtV/BGwAHkjfMUhJjx0LLPlgv8X1+U7RjwHQBGE4W+GWxoOKAA6x osi9L1jjJVeL3w3S9iPZk8yHTydFPq30yb7RFiz3x+edywujxYZ/OkrXBcX+n+uL+HfP Uk3F14pagRg96S6kK56IS6rCa/QCmEDI0tExHz4czE15ID6VZzQea09BW1KV4AA2zBFk 9V662mttc88z52LD7J/e20+IA9K0NY+PxeI33k6jQR3cDXGHeeHCvu36xS2EQhuGqUEn JvgA== X-Gm-Message-State: ALoCoQlm/6FflOz3xVKcJHiCvdi3u7HFueyLr6xRCOVwlFaI02G1MImPEJVK9eEwXcIa6hdDOPVz MIME-Version: 1.0 X-Received: by 10.236.4.225 with SMTP id 61mr4578896yhj.108.1396877181730; Mon, 07 Apr 2014 06:26:21 -0700 (PDT) Received: by 10.170.117.14 with HTTP; Mon, 7 Apr 2014 06:26:21 -0700 (PDT) X-Originating-IP: [98.117.207.73] In-Reply-To: References: <01e601cf4f90$67bfc620$373f5260$@comcast.net> <1777229427.13692180.1396626525860.JavaMail.root@comcast.net> Date: Mon, 7 Apr 2014 09:26:21 -0400 Message-ID: Subject: Re: [DISCUSS] Bugs-only strictness for bugfix releases From: William Slacum To: dev@accumulo.apache.org Content-Type: multipart/alternative; boundary=089e013cc12a368f0204f673d0f7 X-Virus-Checked: Checked by ClamAV on apache.org --089e013cc12a368f0204f673d0f7 Content-Type: text/plain; charset=ISO-8859-1 A bug would be something that's an actual issue outside of the expected behavior of the program-- for instance, if we're getting a NullPointerException while running a scan of a table that worked in a previous state of the source code. An improvement would be something that makes us better off, but doesn't address any behavioral issues. I would say something like resolving compiler warnings or your ticket regarding the use of try-with-resources. On Mon, Apr 7, 2014 at 8:45 AM, Mike Drob wrote: > Christopher, > > Can you provide a delineation between bug fix and improvement? I've noticed > that you recategorized several issues, including ACCUMULO-2638 and > ACCUMULO-2639 and was wondering what your criteria was for such. > > Is a bug-fix only something that has been reported by a user? > > Mike > > > On Fri, Apr 4, 2014 at 4:53 PM, Sean Busbey wrote: > > > None of our previous 1.x releases met semver's requirements for a minor > > version, so I don't think we need to worry about adopting that approach > as > > a part of the 1.6.0 release cycle. > > > > There are a ton of reasons I want a 2.0.0. Given the significance of > that > > change I think we should have a discussion about reqs. > > > > It's out of scope for this thread though. > > > > > > On Fri, Apr 4, 2014 at 6:46 PM, Christopher wrote: > > > > > It's probably true that 1.6.0 currently would not meet semver's > > > requirements for minor release compatibility, but something like this > > > I think should probably change at the beginning of a dev cycle, not at > > > the end. It seems to me that 1.7.0 would be the time to apply this, > > > considering it 1) has a different minimum JDK version, and 2) is > > > expected to contain a drastically improved client API module, where we > > > could actually apply maven plugins to ensure public API versioning > > > compliance naturally. > > > > > > -- > > > Christopher L Tubbs II > > > http://gravatar.com/ctubbsii > > > > > > > > > On Fri, Apr 4, 2014 at 11:48 AM, wrote: > > > > I don't know the specifics of the api changes in 1.6.0. But I would > be > > > curious, if we applied the rules of something like semver, if the > version > > > of code in the 1.6.0 branch is not consistent with the 1.6.0 version > > > number, but is maybe a 2.0.0. > > > > > > > > - Dave > > > > > > > > ----- Original Message ----- > > > > > > > > From: dlmarion@comcast.net > > > > To: dev@accumulo.apache.org > > > > Sent: Thursday, April 3, 2014 6:59:44 PM > > > > Subject: RE: [DISCUSS] Bugs-only strictness for bugfix releases > > > > > > > > > > > > I like the idea of what semver defines (and provides in maven > > plugins). I > > > > don't think we are following this methodology today. I think people > > have > > > a > > > > tendency to want to backport or add features to patch releases > because > > of > > > > the long running release cycles (I know I have). If we could get the > > > > testing/release cycle to be faster, then we could put out more minor > > and > > > > patch releases and not have long running releases. The other problem > is > > > > users that are stuck on a particular version. They want the patches, > > but > > > not > > > > the api changes. If we could tell our consumers that 1.7 will be > client > > > api > > > > compatible with 1.6, then users will likely upgrade faster and we > will > > > have > > > > less pressure to backport features to a minor/patch release. > > > > > > > > +1 to the main idea of this thread, but I think "bug only" strictness > > for > > > > patch releases will be the positive side effect of faster > > > testing/releases > > > > and adopting some specification like semver. > > > > > > > > - Dave > > > > > > > > -----Original Message----- > > > > From: ctubbsii@gmail.com [mailto:ctubbsii@gmail.com] On Behalf Of > > > > Christopher > > > > Sent: Thursday, April 03, 2014 3:45 PM > > > > To: Accumulo Dev List > > > > Subject: Re: [DISCUSS] Bugs-only strictness for bugfix releases > > > > > > > > I don't think that's it's quite true to say '1.major.minor' is our de > > > facto > > > > scheme. Once again, I think many of us have always viewed it as > > > > '1.long-term-support.bugfix'. > > > > > > > > -- > > > > Christopher L Tubbs II > > > > http://gravatar.com/ctubbsii > > > > > > > > > > > > On Thu, Apr 3, 2014 at 3:39 PM, Bill Havanki < > > bhavanki@clouderagovt.com> > > > > wrote: > > > >> I agree with Christopher in principle, but I share Sean's concern > > > >> about the versioning situation. Right now, the *de facto* versioning > > > >> scheme is 1.major.minor. We should just adopt semantic versioning > (or > > > >> similar) and then enforce bugs-only for bugfix releases. This gives > us > > > the > > > >> room we need. > > > >> > > > >> For reference: semver.org > > > >> > > > >> > > > >> On Thu, Apr 3, 2014 at 3:24 PM, Sean Busbey > > > >> wrote: > > > >> > > > >>> -1 > > > >>> > > > >>> Until we have a full discussion on compatibility and what we're > going > > > >>> to mean for version numbers, this is counter productive to our > > > >>> volunteer-driven CtR process. That some of us choose to focus our > > > >>> resources on more recent major versions is irrelevant. > > > >>> > > > >>> Right now, we conflate minor and bugfix versions. This change would > > > >>> mean instead conflating our major and minor versions. That's going > to > > > >>> make it harder for people to upgrade for compatible improvements > > > >>> because the inclusion of the major changes will be disruptive. > > > >>> > > > >>> We need to have the compatibility and versioning discussion. This > > > >>> band aid won't help. > > > >>> > > > >>> > > > >>> On Thu, Apr 3, 2014 at 2:16 PM, John Vines > wrote: > > > >>> > > > >>> > +1 > > > >>> > > > > >>> > > > > >>> > On Thu, Apr 3, 2014 at 2:15 PM, Christopher > > > > >>> > wrote: > > > >>> > > > > >>> > > JIRA JQL: > > > >>> > > 'project = ACCUMULO AND resolution = Unresolved AND type not in > > > >>> > > (Sub-task, Bug) AND fixVersion in (1.4.6,1.5.2,1.6.1)' > > > >>> > > > > > >>> > > There are 32 outstanding issues not marked as "Bugs" planned > for > > > >>> > > bugfix releases. This seems inappropriate to me. I would prefer > > > >>> > > to be very strict about the right-most segment of a version > > > >>> > > number, by defining it as "for bugfix releases", and by > following > > > >>> > > the rule: if the issue doesn't fix a bug, then it doesn't go > in a > > > >>> > > bugfix release. > > > >>> > > > > > >>> > > This strictness could help us focus on fixing and supporting > > > >>> > > actual bugs in previous releases, without being bogged down by > > > >>> > > non-bugs, it could help focus improvements in the latest > version > > > >>> > > and encourage more rapid releases, and give users more reasons > to > > > >>> > > upgrade. It would also help stabilize previous releases, by > > > >>> > > avoiding the introduction of new bugs, which bodes well for > > > long-term > > > >>> > > support. > > > >>> > > > > > >>> > > I know we've previously talked about semver and other strict > > > >>> > > versioning schemes, but regardless of whether we do any of > those > > > >>> > > other things, I think this strictness is the very least we > could > > > >>> > > do, and we could start encouraging this strictness today, with > > > >>> > > minimal impact. > > > >>> > > All it would take is to define the last segment of the > versioned > > > >>> > > releases as "for bugfix releases", regardless of defining the > > > >>> > > rest of the version number (which can be discussed separately, > > > >>> > > and this is a subset of most any versioning scheme we've > > discussed > > > >>> > > already). > > > >>> > > > > > >>> > > The implication is that some things we've done in the past to > > > >>> > > "backport" improvements and features, which didn't address a > bug, > > > >>> > > would no longer be permitted. Or, at the very least, would have > > > >>> > > been highly discouraged, or would have warranted a vote (see > next > > > >>> > > paragraph). > > > >>> > > > > > >>> > > As with anything, there may be important exceptions, so perhaps > > > >>> > > with this strictness about "bugfix only for bugfix releases", > we > > > >>> > > could encourage (by convention, if not by policy) calling a > vote > > > >>> > > for non-bugfix changes, and rely on the veto for enforcement > if a > > > >>> > > non-bugfix was applied to a bugfix version. If we agree to this > > > >>> > > strictness as a community, knowing a particular change is > likely > > > >>> > > to result in a veto can be a big help in discouraging > violations. > > > >>> > > > > > >>> > > As a final note, I should mention that there are at least a few > > > >>> > > of us who have been thinking about this last segment of the > > > >>> > > version as "bugfix only" anyways, if only informally. The lack > of > > > >>> > > formalization/strictness about this, though, has permitted some > > > >>> > > things in the past that are probably not the best ideas in > terms > > > >>> > > of stability and long-term support of previous release lines. > > > >>> > > Hopefully, by adopting this strictness as a community, instead > of > > > >>> > > just informally in a few of our heads, we can all get on the > same > > > >>> > > page, and it will make the project better overall. > > > >>> > > > > > >>> > > -- > > > >>> > > Christopher L Tubbs II > > > >>> > > http://gravatar.com/ctubbsii > > > >>> > > > > > >>> > > > > >>> > > > >> > > > >> > > > >> > > > >> -- > > > >> // Bill Havanki > > > >> // Solutions Architect, Cloudera Govt Solutions // 443.686.9283 > > > > > > > > > > > > > > > -- > > Sean > > > --089e013cc12a368f0204f673d0f7--