Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:85554 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 68223 invoked from network); 30 Mar 2015 13:49:28 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Mar 2015 13:49:28 -0000 Authentication-Results: pb1.pair.com smtp.mail=julienpauli@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=julienpauli@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.51 as permitted sender) X-PHP-List-Original-Sender: julienpauli@gmail.com X-Host-Fingerprint: 74.125.82.51 mail-wg0-f51.google.com Received: from [74.125.82.51] ([74.125.82.51:33900] helo=mail-wg0-f51.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 9E/63-44554-5BF49155 for ; Mon, 30 Mar 2015 08:29:26 -0500 Received: by wgbdm7 with SMTP id dm7so68626092wgb.1 for ; Mon, 30 Mar 2015 06:29:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=XhL2/zSnhNFgNvLTl3yrp6cpLyTAZXnjTZxj6oMaFz8=; b=DU0GQoME6c6y4tvHq64Wo8oqPaVVZ0MeNdTUOMHcqWI79wFc8LnlZvkrNF6Sh/Ox95 y/Qs8mCVkxac+bQjFci7ZqXE3ObXD6RVimn4QIG7Wd77F6nm41Fjp6ViDBBw69zOFzbG ejVgogefBdLmAJxPINZK4Gv7wwTCHbvgRtqkeTqMGA3IxPHcLhOd74RO1N0hotsn586O CMWEYpUeAk0dqQbG4atDXC7EbcDqCsiG5g9r00aQL9pSWqeaKGy2PNAlW9KHAmBT2QVx /9L5QjXykPuPpAOmHx+QsbZLydw1izqGzecIqStwn5wXdHr8HSDf+NhqKSJdZz0iAB+l BuKQ== X-Received: by 10.194.185.68 with SMTP id fa4mr62204982wjc.111.1427722162556; Mon, 30 Mar 2015 06:29:22 -0700 (PDT) MIME-Version: 1.0 Sender: julienpauli@gmail.com Received: by 10.194.198.210 with HTTP; Mon, 30 Mar 2015 06:28:42 -0700 (PDT) In-Reply-To: References: <55193060.5000804@php.net> Date: Mon, 30 Mar 2015 15:28:42 +0200 X-Google-Sender-Auth: sp9ChNNfGeksgB48aPfWY4zLefY Message-ID: To: Ferenc Kovacs Cc: Michael Wallner , PHP Internals , Stanislav Malyshev Content-Type: multipart/alternative; boundary=047d7bacb11e565260051281785f Subject: Re: [PHP-DEV] What's our official stance on small self-contained additions in a micro version From: jpauli@php.net (Julien Pauli) --047d7bacb11e565260051281785f Content-Type: text/plain; charset=UTF-8 On Mon, Mar 30, 2015 at 3:10 PM, Ferenc Kovacs wrote: > > > On Mon, Mar 30, 2015 at 1:15 PM, Michael Wallner wrote: > >> On 30/03/15 12:04, Ferenc Kovacs wrote: >> > Hi, >> > >> > I know that our official release process allows that, but there are some >> > reasonable arguments against doing that and this topic was brought up >> > multiple times related to specific fixes. >> > I have two open PRs like that: >> > https://github.com/php/php-src/pull/1204 >> > https://github.com/php/php-src/pull/969 >> > and of course there are a bunch of similar ones from other people, and >> > there are cases when somebody simply pushes a change like that, other >> times >> > somebody points out that it should require an RFC( >> > https://wiki.php.net/rfc/json_preserve_fractional_part for example), >> but >> > most of the times we simply don't know what to do, and eventually we >> just >> > let the PR/patch to rot and die. >> > I would like to know if we can come up with a rule which can have >> consensus >> > behind it, and maybe formalize it as an extension to our current >> > releaseprocess rfc. >> > >> > What do you think? >> > >> >> How about: >> >> It's okay, if it does not need `version_compare(PHP_VERSION)` but can be >> tested by e.g. `defined("SOME_CONSTANT")` or `function_exists("fn")`? >> >> -- >> Regards, >> Mike >> > > hi, > > That is a good think to keep in mind, but I don't think that is the only > thing matters. > Adding a new function/constants -> there is a chance that we break > somebodys code in a micro version > Adding a new class method -> can be problematic if somebody extended the > class and used the same method but with different signature. > As of now, we don't really consider this kind of things as BC breaks > (otherwise nothing but new optional arguments would be allowed in micro and > minor versions), but it is a PITA for those whose app we break in a micro > version. > I tend to agree that it would be easier for all parties if we stop adding > stuff in micro versions, as it is easier to remember and communicate that > something was added in x.y (as in x.y.0) than the current situation where > some stuff is just only present in 5.6.27, plus this would also eliminate > the confusion, that something is present in 5.6.27 but not in > 5.5.40(because 5.6.27 was released after 5.5.40, and this new stuff will > land in 5.5.41). > I agree. That was the case for 5.6 for example, that got added new functions etc... up to 5.6.3 AFAIR. As everything can be considered as beeing a BC break for at least someone on Earth, I admit it is hard to understand the meaning of "small self-contained additions in a micro version" :-p Julien.Pauli --047d7bacb11e565260051281785f--