Hi Andi,
On 6/21/07, Andi Gutmans <andi@zend.com> wrote:
> I very much agree with Rasmus that giving our users the option is
> extremely valuable.
>
> Unicode support is useful to some people but I think it's a mistake to
> force it down everyone's throat. Forget the fact that it will be
> considerably slower and eat up more memory than PHP 5 & 4, but there
> will also be some serious BC issues and idiosyncrasies which a huge part
> of our community (arguably over 90%) just don't care about.
That's true, and this 90% doesn't care either about php6.
> Some people here said that we weren't successful in keeping BC between
> PHP 5 and PHP 4. Whoever said that must not have migrated applications
> between the versions. It took very little effort to do so. Most people I
> know did it in a matter of hours for sizeable code bases and in fact
> most time was spent on regression testing which would need to be done
> anyway.
I was one who said it and I will said it again. I made many
migrations. I confirmed it was not 100% BC and it required work. The
problem (even worst after 5.x than between 4.x and 5.x) was all
changes after 5.x. The new pedantic errors added in minor versions and
other warnings, it was actually more painfull after 5.x than between
two 5.x. For a simple reason, 4.x to 5.x issues were mostly known, it
was wisely planed and decided.
> I also think that the fact that we *do* still support PHP 4 is a
> strength and not a weakness of the PHP project (as much as I'd like
> everyone to migrate to PHP 5).
I agree but we don't have enough resources (as far as I understand.)
As you know, I don't consider maintaining 4.x is a lot of work. By
maintaining I mean only security fixes. It can be done independently
from any other releases and by completely different people.
> Sure maybe that gave less incentive to
> upgrade which is a bit of a PITA for the PHP eco-system. On the other
> hand look at technologies who didn't do that. Microsoft with VB, DNA,
> DCOM and some of their other technologies are good examples. Every
> version their users would suffer time and time again, often having to
> completely migrate their investment because they were not officially
> supported anymore. Look at how Microsoft are looking to ditch XP early
> in the process. I don't think we want to follow that path. The fact that
> we do our best not to break BC and are very careful when doing it is a
> HUGE plus for us. Not to mention still doing security and critical fixes
> for PHP 4.
It was not well done. A 3 commits release required months to be
released, that's simply unreliable. If we like to keep every releases
active for years, we have to change a couple of things in our model
(see the archives to get some tips).
> Btw, on the "if (UG(unicode)" issue. That's really a bunch of BS.
With all respects, how many extensions do you maintain? How many
commits do you actually do? Please don't tell me that what I said
about the extra work required about the two modes is BS. Well, you
don't say directly but you include every argument in the BS :)
> I have always been against premature optimizations and
> I can pretty much promise that the "if (UG(unicode))" is not going to be
> an issue. It's a bit more code yes. But I think it's worth it.
Most of us are against it for two reasons:
- php6 without unicode makes no sense. The impact will be much more
damageable than
magic gpc on/off or any other flags we had until now
- the extra work required
I think we all agree than the slowness is not yet an argument. Even if
it was, it is a non issue (as you well explained).
> We had a lot of discussions on this issue within the core development
> team and I think there was a strong enough case to keep things this way.
> If we are proven wrong down the road then there's always PHP 6.5 or 7
> where we can nuke the 8bit mode. But my guess is that at least 80%+ of
> PHP 6 users will not run in Unicode mode. For many there's just not
> sufficient reason to do so.
That's the worst thing to do. Breaking things between 6.0 and 6.x is a
no-no here. In the same manner, if we keep the flag, we will have to
keep it. Or why php7 will be a better moment than php6? That simply
makes no sense.
--Pierre