Electronics & Programming

develissimo

Open Source electronics development and programming

  • You are not logged in.
  • Root
  • » PHP
  • » [PHP-DEV] Curlies again [was: Upgrade notes for PHP 5.1 - final draft] [RSS Feed]

#1 Nov. 20, 2005 13:27:12

Matthias P.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[PHP-DEV] Curlies again [was: Upgrade notes for PHP 5.1 - final draft]


If I got that right, you still want to discourage {} and un-deprecate
again, despite all the good reasons given on this list not to do so?

PHP5.1 would be accomplishing facts as to this one. ("Let's remove {}
altogether in 6 - nobody should be using them anyway as they were
deprecated since 5.1").

The discussion on this list would be silenced and take place "out there"
with a much broader audience instead.

Changing language syntax that way back and forth again will cause a loss
in credibility - once again after the 4.4.0 release.

-mp.

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

Offline

#2 Nov. 20, 2005 14:56:57

Matthias P.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[PHP-DEV] Curlies again [was: Upgrade notes for PHP 5.1 - final draft]


Derick,

> If you prefer a PHP which causes strange crashses and memory
> corruptions, please downgrade to 4.3.11. I am getting tired
> about this
> bickering about this **FIX** that makes PHP stable.

You got me wrong here. I did not want to say anything against the 4.4.0
fix or even blame you for it.

But: nobody doubts that there has been a lot of public discussion about
it, that people were upset because they felt the language has been
changed in a way that caused them a lot of work and because their
scripts suddenly broke (and if only a by showing a warning or notice,
however).

I was only saying that you (i. e. the people who have enough karma to
make the final decisions here) should not light-heartedly make such a
change - and in this case, with no obvious need for it (apart from
cleaning up - I know myself that sometimes this is tempting for
developers).

As to the possible impact - I did a quick scan of Smarty and
phpDocumentor (because I used to have CVS HEAD checkouts of them at
hand) and found that both of them would be affected. Please, do not make
such a change that late in an RC5 and push it out with PHP5.1. At least
give the maintainers of popular PHP based projects some time to pick it
up and test it.

As with the 4.4.0, this is nothing you cannot fix or workaround or
suppress with an appropriate config. But once again the average user out
there might once again feel lost out there simply because his hoster did
the upgrade.

-mp.

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

Offline

#3 Nov. 20, 2005 20:45:59

Matthias P.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[PHP-DEV] Curlies again [was: Upgrade notes for PHP 5.1 - final draft]


> This is a non-issue for phpDocumentor. All we need is at
> least 6 months
> to a year of lead time on the final decision in order to
> adjust the code.

As I wrote, I happend to have Smarty and phpDocumentor checkouts at
hand. I just checked a recently installed version of Mediawiki and they
also use curlies (although only in a very few places). But at least this
should be a good argument against "nobody out there is using them
anyway". Let alone all the other good reasons. Oh, btw, phpMyAdmin also
uses them.

> However, it is obvious that a script is needed that iterates over a
> script and changes things that are easy to fix like the
> $a{blah} one. I

Yeah, someone just started a thread regarding this idea. As to this
special case, maybe you can automagically find exactly the affected or
possibly affected lines of code and update them.

But more generally, I think writing the "general purpose automagical
updater" is infeasible because sooner or later you'll run into issues
you cannot detect or fix with a lint-type analysis but that require real
execution of all possible code paths (e.g. stricter function argument
parsing, changes in handling of NULL when used in array functions,
passing non-array to array_merge...). Even worse, something like
reordering function arguments (as somebody mentioned shortly mentioned
here?) can only be detected by having specifically written test cases at
hand.

> 2) be thankful this is transparent enough that we can have
> enough lead
> time to make small changes to legacy scripts as needed - this
> is why the
> E_STRICT is added to PHP 5.1 now. Would you prefer a sudden break in
> PHP 6 without any warning?

Apart from that nobody has given a sound reason yet (maybe I missed it)
why it needs a change at all, as we know from recent history there are
people out there who happen to get notices on their sites and consider
that "breaking things".

So for these people, this issue by itself is why things might "break" as
soon as their hosters upgrade to 5.1.

> 3) ALWAYS test RCs of releases when they come out with our critical
> applications and note any breaks here, to determine whether they are
> bugs or intentional changes in PHP.

That was yet another thing I felt disturbing and complained about but
noone has commented on that yet - why do you need to make changes like
this one in RC5? Every change that is later than an RC1 is more likely
to be missed by people, even those who are diligently testing their
stuff. Additionally, RC5 is damn pretty close to a release and that puts
unnecessary pressure on people to get it fixed.

Sorry for being so annoying.

-mp.

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

Offline

  • Root
  • » PHP
  • » [PHP-DEV] Curlies again [was: Upgrade notes for PHP 5.1 - final draft] [RSS Feed]

Board footer

Moderator control

Enjoy the 27th of April
PoweredBy

The Forums are managed by develissimo stuff members, if you find any issues or misplaced content please help us to fix it. Thank you! Tell us via Contact Options
Leave a Message
Welcome to Develissimo Live Support