Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:18056 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 14915 invoked by uid 1010); 14 Aug 2005 17:09:02 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 14900 invoked from network); 14 Aug 2005 17:09:02 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Aug 2005 17:09:02 -0000 X-Host-Fingerprint: 212.112.227.169 ipx11223.ipxserver.de Linux 2.4/2.6 Received: from ([212.112.227.169:53635] helo=ipx11223.ipxserver.de) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 0B/75-33075-CAA7FF24 for ; Sun, 14 Aug 2005 13:09:01 -0400 Received: from localhost (localhost [127.0.0.1]) by ipx11223.ipxserver.de (Postfix) with ESMTP id 92AD6DF00B8; Sun, 14 Aug 2005 19:09:16 +0200 (CEST) Received: from ipx11223.ipxserver.de ([127.0.0.1]) by localhost (ipx11223 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 11007-09; Sun, 14 Aug 2005 19:09:11 +0200 (CEST) Received: from [127.0.0.1] (i528C1792.versanet.de [82.140.23.146]) by ipx11223.ipxserver.de (Postfix) with ESMTP id 57A2DDF0095; Sun, 14 Aug 2005 19:09:10 +0200 (CEST) Message-ID: <42FF7AA4.4090802@php.net> Date: Sun, 14 Aug 2005 19:08:52 +0200 User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Zeev Suraski Cc: Rasmus Lerdorf , internals References: <42FCE0E4.604@lerdorf.com> <5.1.0.14.2.20050814173103.07af77b0@localhost> In-Reply-To: <5.1.0.14.2.20050814173103.07af77b0@localhost> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by somedaemon at backendmedia.com Subject: Re: [PHP-DEV] PHP 6.0 Wishlist From: lsmith@php.net (Lukas Smith) Zeev Suraski wrote: > Even if we forget about the users, and only think about ourselves - > unless something drastic happens, we're going to look at supporting 4 > major different versions simultaneously - 4.3/4.4, 5.0, 5.1 and 6.0. Is > it really such a great idea to start breaking compatibility beyond what > we absolutely have to? I agree that breaking BC is not a binary thing. I also agree that not being academically pure has not prevent PHP from succeeding on quite a large scale. However I think stuff like renaming functions and dropping aliases can be easily countered by a BC lib like PEAR::PHP_Compat (http://pear.php.net/package/PHP_Compat/). There is even a package in PEAR that will determine the necessary includes you will need to make based on your code and your PHP version (http://pear.php.net/package/PHP_CompatInfo/). Finally to fix stuff like parameter order we also have a tool readily available (with a few minor tweaks to also cover internal functions) which is called runkit (http://pecl.php.net/package/runkit). Beyond that runkit also gives us sandboxing, which in absence of a proper taint model is a huge step forward in handling data which may come from all sort of distributed sources in larger projects. As for removing register globals, a simple auto prepend will get you register globals back, same goes for magic quotes. But moving this stuff into userland will force people to take another hard look at their code. So I think we have all the tools available to make PHP alot cleaner without forcing people to rewrite their code. Since while our mess has not hurt us, I am sure it has not helped us either. regards, Lukas