Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:62932 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3550 invoked from network); 10 Sep 2012 20:27:28 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Sep 2012 20:27:28 -0000 Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.217.170 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.217.170 mail-lb0-f170.google.com Received: from [209.85.217.170] ([209.85.217.170:35519] helo=mail-lb0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B9/B1-26944-F2D4E405 for ; Mon, 10 Sep 2012 16:27:27 -0400 Received: by lbbgp3 with SMTP id gp3so1564333lbb.29 for ; Mon, 10 Sep 2012 13:27:23 -0700 (PDT) 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 :cc:content-type; bh=m9ENBE5VbOoToIA4HW07aU1KbDSgxfGgyfknoJwy10s=; b=YrppEsAhR/aGrQBPFJrEc3XOaZ+S9/dfZp3VIl/cDSZplEjZETFBMCDGeoGF3aVi4M 5Boxq80Xh85k+FnxzAqgPz0MVjTa54aByyTGMmkkeVZQEWqnz59v6O1H2AkSbEI4h/ll ZN3sEZQl+ULdUtCQINFB5WPqm1Z3UwO4wJCM9UCQiPp4w69dqoGvPKuX6SnVNQBlqpgN nUbWIsENNSXlDKsq7lz38fxcnqRc5yYXWbGebufQabtkNWkxaX3ektjtXxSVHfXR5C8T kFnrL8no6Xet8OkN7bh0M3KBlDCP1MtdjUbwVaRkrSknVxlOc61/8VvGuM3SsS737WMt qL9w== MIME-Version: 1.0 Received: by 10.152.110.9 with SMTP id hw9mr9029930lab.55.1347308843794; Mon, 10 Sep 2012 13:27:23 -0700 (PDT) Received: by 10.152.108.145 with HTTP; Mon, 10 Sep 2012 13:27:23 -0700 (PDT) In-Reply-To: <504E4568.4030701@lerdorf.com> References: <504E4568.4030701@lerdorf.com> Date: Mon, 10 Sep 2012 22:27:23 +0200 Message-ID: To: Rasmus Lerdorf Cc: Anthony Ferrara , Pierre Joye , jpauli , PHP Internals Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [PHP-DEV] What is our definition of a "Backward Compatibility Break" From: nikita.ppv@gmail.com (Nikita Popov) On Mon, Sep 10, 2012 at 9:54 PM, Rasmus Lerdorf wrote: > On 09/10/2012 12:00 PM, Anthony Ferrara wrote: > >> I chose it for that specific reason. The line is blurry if taken literally >> (which many do)... > > It can't possibly be an absolute rule. If you take it completely > literally then we wouldn't be able to fix bugs either. Every change has > some effect that may or may not affect users. > > I know we are mostly geeks here and geeks love structure and rules > without exceptions to fall back on so they don't have to think so much > and can end arguments simply by pointing at a set of hard rules everyone > follows. But this really doesn't work that well in the real world. The > real world isn't binary. It is a complicated analog world with many many > levels of gray between right and wrong, between minor and major BC break > and between peoples' expectations and their personal uses of PHP. I'd like to point out two things here: a) The current releaseprocess RFC [1] says that "Backward compatibility must be kept" in minor version increments (5.4 -> 5.5). Seeing the discussion above, may I rephrase this to "Only minor backwards compatibility breaks allowed"? It seems that we agree that smaller breaks are okay, just no big stuff. I think that's what was meant all along there, but phrased a little bit too conservatively. b) In the PHP 5.5 thread Pierre said the following: > There is o 5.5 branch, there is master. Master is the development > branch and as such can have such breakages. It does not mean that we > have these BC breaks in 5.5. 5.5 should be based on 5.4 with the > feature additions and improvements we want in, but definitively not > with BC breaks. This is concerning me a bit. Does this mean that PHP 5.5 will be branched off PHP 5.4 and we will then backport features from master? If so, this would seem like a Very Bad Idea to me, from a purely technical point of view. Unless I'm much mistaken this would have to be done manually (git is of no help here) and would be a very tedious and fragile business. Before Pierre said that I was under the impression that PHP 5.5 will be branched off master, which would make a lot more sense to me. Could someone clarify how it will be done? [1]: https://wiki.php.net/rfc/releaseprocess