On Wed, Sep 21, 2016 at 12:44 PM, Jakub Zelenka <bu...@php.net> wrote:

> Hi,
>
> On Wed, Sep 21, 2016 at 7: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'm just wondering, how is it possible that this got changed when the only
> RFC mentioning this change got rejected ( https://wiki.php.net/rfc/
> reflectiontypeimprovements )? I don't see any consensus in the later
> discussion so unless I missed something, which is quite possible, this
> change should not be there in the first place, right?
>

The best I can find are these messages [1] where it specifically mentions
that toString should change even though this was rejected, and it had at
least some agreement at the time.

[1] http://php-news.ctrl-f5.net/message/php.internals/94452

>
> Cheers
>
> Jakub
>
>

Reply via email to