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 BA81F10109 for ; Sat, 6 Dec 2014 19:07:37 +0000 (UTC) Received: (qmail 26272 invoked by uid 500); 6 Dec 2014 19:07:37 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 26218 invoked by uid 500); 6 Dec 2014 19:07:37 -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 26206 invoked by uid 99); 6 Dec 2014 19:07:36 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 06 Dec 2014 19:07:36 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of josh.elser@gmail.com designates 209.85.192.48 as permitted sender) Received: from [209.85.192.48] (HELO mail-qg0-f48.google.com) (209.85.192.48) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 06 Dec 2014 19:07:32 +0000 Received: by mail-qg0-f48.google.com with SMTP id q107so1958049qgd.35 for ; Sat, 06 Dec 2014 11:05:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=nsBjks9VpM9uGMXC0wfJkxuzNOOB3R1vv0SU4CFXngY=; b=C4qIuFY008NlxPh3rdbwgxYstG9UvxxBUh6LdAPCEUu51Gyprl6Gov7KLv8yBLEPEo aU0H2sg3SjuD0n6oRkjH2SyLtLLxlEYHyQt0YZ9K4JmhoB2xVmZ3oL9n8tKGTWeGgfTj 83y5/ryJtKPZu0JjQxsKYYFpbWuc9Rlvut8gry0bWpEX2zPLNIPqk22yX0xjxRlSd6/i 7BUBIz+9KYIsnaa1SMCRf5bXsDq+p8vRtojSLp6CQ6GRHPlBO5SeDiP/7aTrFElyAJMd P30ncOVi0n/NuzaALVCs6esOGF4DKQT4t9SF915uTpuPFA1cjRoSFgw8DSNuTP5kO7y6 jaGA== X-Received: by 10.140.92.2 with SMTP id a2mr36261289qge.51.1417892741483; Sat, 06 Dec 2014 11:05:41 -0800 (PST) Received: from [192.168.2.38] (pool-71-166-48-231.bltmmd.fios.verizon.net. [71.166.48.231]) by mx.google.com with ESMTPSA id j1sm22894754qan.29.2014.12.06.11.05.40 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 06 Dec 2014 11:05:40 -0800 (PST) Message-ID: <548353B0.30606@gmail.com> Date: Sat, 06 Dec 2014 14:06:24 -0500 From: Josh Elser User-Agent: Postbox 3.0.11 (Windows/20140602) MIME-Version: 1.0 To: dev@accumulo.apache.org Subject: Re: [DISCUSS] Semantic Versioning References: <1481687993.13499212.1417632067373.JavaMail.zimbra@comcast.net> <5480B15C.1010308@gmail.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [+1]: adopt semver 2.0.0 (http://semver.org) [+1]: adopt additional strictness to require documenting deprecation for at least 1 major release before possible to consider in the next major release [+1]: adopt additional strictness to ensure forward compatibility between bugfix releases [-0]: start operating under whatever rules we adopt as of the master branch [-0]: keep the master branch named 1.7.0 [-0]: define scope of these versioning compatibility rules to be our current definition of "public API" and the wire version As I said down below, I don't think trying to fully adopt semver when we're still on 1.X is going to work out well because we're missing the 3 necessary version components. I think we should continue to operate as we had and just address whatever concerns devs have until 2.0.0. Also, as Keith very well stated already, wire compat is a new guarantee and, if we do decide to make such a guarantee, we should have some mechanism in place for the first such release we make with the guarantee. A quick solution here is to have a champion behind the wire-compat testing who can shepherd it into the targeted release. Christopher wrote: > It would be helpful to this thread, if we can get some informal votes on > the following propositions: > > [ ]: adopt semver 2.0.0 (http://semver.org) > [ ]: adopt additional strictness to require documenting deprecation for at > least 1 major release before possible to consider in the next major release > [ ]: adopt additional strictness to ensure forward compatibility between > bugfix releases > [ ]: start operating under whatever rules we adopt as of the master branch > [ ]: keep the master branch named 1.7.0 > [ ]: define scope of these versioning compatibility rules to be our > current definition of "public API" and the wire version > > I'm going to assume it's a given that if any exceptional situations arise, > we'll handle those through further discussions/voting, as appropriate. > > > -- > Christopher L Tubbs II > http://gravatar.com/ctubbsii > > On Thu, Dec 4, 2014 at 2:09 PM, Josh Elser wrote: > >> Christopher wrote: >> >>> On Wed, Dec 3, 2014 at 1:41 PM, wrote: >>> >>> > +1 to semver >>>>> +1 to 1 major release before removing deprecated items >>>>> +1 to forward compatibility between bugfix releases >>>>> >>>>> What's the version # for the master branch if these rules are applied? >>>>> >>>>> >>> Well, I'd say1.7 still, since it is consistent with our existing rules >>> for >>> determining a "major" releasetoday, *and* it matches semver definition >>> of >>> a "minor" release, because it doesn't break backwards-compatibility >>> compatibility from1.6 (with one tiny exception of dropping >>> Instance.getConfiguration()... because it was an exceptional situation >>> discussed in previous threads; if people are uncomfortable with that >>> exception, I can return it to the API, if it helps achieve consensus >>> here). >>> >>> >> Sounds right to me. >> >> When we actually have code to land in Apache for 2.0.0, I figured we'd >> break 1.7.X off to branch named "1.7" and master would become 2.0.0. We can >> have some feature branch in Apache off to the side to make sure 2.0.0 >> development can happen in a shared environment before making the above >> switch. >> >