On Wed, Sep 21, 2016 at 12:07 PM, Levi Morrison <le...@php.net> wrote:
> On Wed, Sep 21, 2016 at 11:13 AM, Nicolas Grekas
> <nicolas.gre...@gmail.com> wrote:
>>> To handle this in code written around current __toString seems pretty
>> simple
>>
>> Yes it is, but that's not what we're talking about:
>> BC is about having perfectly fine code working in e.g. 7.0 be still working
>> fine on 7.1 *without any change*.
>>
>> Right now, we have red test suites on php7.1rc2.
>> This is the symptom of a BC break, by definition.
>> And the issue is not the existing code we have, but the new one that is
>> changing the behavior of the engine.
>
> This was understood when the decision was made. You seem to not be
> understanding the bigger issue and instead focusing on the BC break
> for a *single minor release, and a dot zero at that*. If we keep the
> BC compat this method is redundant and useless forever. If we fix it
> we break your code for *one single minor release, and a dot zero at
> that*. Which is the bigger disruption?
>
> This is why the decision was made. It is better to have the useful
> functionality from here on out than to preserve BC with a single minor
> release, and a dot-zero at that.

I should also add that the dot-zero is the same version it was
released. Having backwards compatibility breaks in the version after
its release in some cases is not that uncommon (though unfortunate).

Essentially I understand the frustration and empathize with having
your code broken. However, I still think it is better for the overall
language health to prepend the question mark, which is why it is there
in the RC releases despite the previous discussion thread.

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to