Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.058 X-Spam-Evidence: '*H*': 0.88; '*S*': 0.00; 'subject:Python': 0.06; 'fixes': 0.07; 'versions.': 0.07; 'deprecated': 0.09; 'lawrence': 0.09; 'subject:Why': 0.09; 'btw': 0.16; 'considers': 0.16; 'nick': 0.16; 'requisite': 0.16; 'tuple': 0.16; 'tuples,': 0.16; 'version"': 0.16; 'appropriate': 0.16; 'wrote:': 0.18; 'documented': 0.24; 'subject:like': 0.24; 'versions': 0.24; '>': 0.26; 'second': 0.26; 'header:In-Reply-To:1': 0.27; 'idea': 0.28; 'point': 0.28; 'patch': 0.29; 'tim': 0.29; 'message- id:@mail.gmail.com': 0.30; 'comments': 0.31; '4.0': 0.31; 'minor': 0.31; 'bugs': 0.33; 'to:name:python-list': 0.33; 'agree': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'version': 0.36; 'i.e.': 0.36; 'introducing': 0.36; 'next': 0.36; 'possible': 0.36; 'url:org': 0.36; 'should': 0.36; 'being': 0.38; 'skip:& 10': 0.38; 'to:addr:python-list': 0.38; 'anything': 0.39; 'does': 0.39; 'to:addr:python.org': 0.39; 'major': 0.40; 'remove': 0.60; 'everybody': 0.60; 'august': 0.61; 'no.': 0.61; 'numbers': 0.61; 'first': 0.61; 'more': 0.64; 'here': 0.66; 'increase': 0.74; 'introduce': 0.78; '"just': 0.84; '"simply': 0.84; '3.10': 0.84; 'url:2014': 0.84; 'url:posts': 0.84; 'edwards': 0.91; 'increases': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=NZMrdXhYP5dCm8ONF+mVQcm6QUzKEmuP4lOsvzVbGB8=; b=cSqQOvYcOISbHzsMA3hftYfQl6rh8whiqUvjO4dLGUWlFry88m4VWRMUBoIvjKMpgH gDMv6IfrUwjH2HUPHxPdDx/hc7z6LOqgcmS1J3iNpIPl/u0y2eWcMcQPJNSsRCoQwBps v9OYmLaUYKH7jVt1xgCXYnEVD+JVwOArAuK6PXqAqmXkpQwCGarpaFKbfyQffYH2mOtX czVEceziHEpHCRaAhn101ngwGAeGUIPaSItUy7cZW/xLOqhOZBvn57Xfgj3mMEJk7BOa 7bSFd5LHLT6MZiC3uI3cM1p6BJPonOt6iPxxVkNCJI3qnuCN/4DiuXaBp272v+OorBjG Aq3Q== MIME-Version: 1.0 X-Received: by 10.182.29.200 with SMTP id m8mr25539052obh.13.1408409273243; Mon, 18 Aug 2014 17:47:53 -0700 (PDT) In-Reply-To: References: Date: Tue, 19 Aug 2014 10:47:53 +1000 Subject: Re: Why Python 4.0 won't be like Python 3.0 From: Tim Delaney To: Python-List Content-Type: multipart/alternative; boundary=001a11c1c2de6e20940500f0d65a X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 85 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1408409281 news.xs4all.nl 2867 [2001:888:2000:d::a6]:36034 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:76533 --001a11c1c2de6e20940500f0d65a Content-Type: text/plain; charset=UTF-8 On 19 August 2014 00:51, Grant Edwards wrote: > On 2014-08-17, Mark Lawrence wrote: > > A blog from Nick Coghlan > > http://www.curiousefficiency.org/posts/2014/08/python-4000.html that > > should help put a few minds to rest. > > I agree with the comments that the appellation for "simply the next > version after 3.9" should be 3.10 and not 4.0. Everybody I know > considers SW versions numbers to be dot-separated tuples, not > floating point numbers. > > To all of us out here in user-land a change in the first value in the > version tuple means breakage and incompatibilities. And when the > second value is "0", you avoid it until some other sucker has found > the bugs and a few more minor releases have come out. > No. A major version increase *may* introduce breakage and incompatibilities. It does not mean that it *has* to introduce breakage and incompatibilities. If the major version increase is documented as "just being the next version" then there's no reason to avoid it - unless your policy is "wait for the first patch release" i.e. never take major.minor.0 but always wait for major.minor.1. What is more important is that minor and patch version increases should avoid introducing breakage and incompatibilities wherever possible (security fixes are one reason to allow incompatibility in a minor release). BTW I agree with the idea that 4.0 would be an appropriate time to remove anything that has been deprecated for the requisite number of versions. Tim Delaney --001a11c1c2de6e20940500f0d65a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On 1= 9 August 2014 00:51, Grant Edwards <invalid@invalid.invalid><= /span> wrote:
On 2014-08-17, Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:<= br> > A blog from Nick Coghlan
> http://www.curiousefficiency.org/posts/2014/08/pyth= on-4000.html that
> should help put a few minds to rest.

I agree with the comments that the appellation for "simply the n= ext
version after 3.9" should be 3.10 and not 4.0.=C2=A0 Everybody I know<= br> considers SW versions numbers to be dot-separated tuples, not
floating point numbers.

To all of us out here in user-land a change in the first value in the
version tuple means breakage and incompatibilities. And when the
second value is "0", you avoid it until some other sucker has fou= nd
the bugs and a few more minor releases have come out.
=
=C2=A0No. A major version increase *may* introduce breakage = and incompatibilities. It does not mean that it *has* to introduce breakage= and incompatibilities. If the major version increase is documented as &quo= t;just being the next version" then there's no reason to avoid it = - unless your policy is "wait for the first patch release" i.e. n= ever take major.minor.0 but always wait for major.minor.1.

What is more important is that minor and patch version = increases should avoid introducing breakage and incompatibilities wherever = possible (security fixes are one reason to allow incompatibility in a minor= release).

BTW I agree with the idea that 4.0 would be an appropri= ate time to remove anything that has been deprecated for the requisite numb= er of versions.

Tim Delaney
--001a11c1c2de6e20940500f0d65a--