On Mon, Mar 30, 2015 at 3:10 PM, Ferenc Kovacs <tyr...@gmail.com> wrote:

>
>
> On Mon, Mar 30, 2015 at 1:15 PM, Michael Wallner <m...@php.net> 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

Reply via email to