Re: Deprecate or remove mbstring function overloads in PHP 7

From: Date: Wed, 25 Mar 2015 12:35:23 +0000
Subject: Re: Deprecate or remove mbstring function overloads in PHP 7
References: 1 2 3 4 5 6  Groups: php.internals 
Request: Send a blank email to internals+get-85460@lists.php.net to get a copy of this message
Levi Morrison wrote on 24/03/2015 20:35:
On Tue, Mar 24, 2015 at 11:30 AM, Rowan Collins <rowan.collins@gmail.com> wrote:
François Laupretre wrote on 24/03/2015 16:30:
De : Bob Weinand [mailto:bobwei9@hotmail.com] No, he isn't asking for delaying the timeline. He's asking if we can do this without RFC. Minimal self-contained changes don't need a RFC and can go as well into alpha/beta phase without issues.
Sorry, I don't understand when a change is supposed to require an RFC or not, and when it can come after feature freeze or not. Is it written somewhere ? What is the definition of a 'minimal self-contained' change ? Why is it different if it belongs to an extension ? I may be wrong but the proposed change is not what I call a 'minimal self-contained' change and there's a clear BC break. I'd love it to be part of 7.0 but I would first appreciate to be sure the rules are the same for everyone.
Agreed, this is quite a major feature, and pretty much everything in PHP is an "extension" as far as the architecture is concerned. While I agree it would be great to phase this functionality out, I don't see how that can be done without an RFC.
If we deprecate it I am fine with doing this without an RFC. Removing it would need an RFC in my opinion.
But a decision to "deprecate" just means "remove, but not yet", so either way we're making a decision about what features the language will have, and skipping the established process in the name of convenience. I wonder if people are confusing the fact that they don't like this feature, and don't need it, with it being a "minor" feature. There are definitely people out there using it, and the impact of removing it may be considerable to them. There is also the question of what we are deprecating it in favour of. Remember that it's perfectly acceptable to deprecate something in a minor release, so if by the time of 7.1 or 7.2 a new way of working with Unicode or character set aware strings is taking shape, we could deprecate in favour of that. Or, if we think that the costs of including the feature are too great, and forcing use of mb_* functions directly is appropriate, we can deprecate in 7.1, presumably waiting until 8.0 to make the breaking change of removal. Once again, the decisions taken are that there is no 5.7 for deprecation, and no more RFCs allowed for 7.0 anyway. If we're going to stick to those decisions, we have to accept that ideas we come up with now will have to wait until 7.1 (next year) or 8.0 (4 to 5 years time). Regards, -- Rowan Collins [IMSoP]

« previous php.internals (#85460) next »