Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:54874 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15845 invoked from network); 24 Aug 2011 12:23:28 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 24 Aug 2011 12:23:28 -0000 Authentication-Results: pb1.pair.com header.from=zeev@zend.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=zeev@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 212.199.177.89 as permitted sender) X-PHP-List-Original-Sender: zeev@zend.com X-Host-Fingerprint: 212.199.177.89 il-mr1.zend.com Received: from [212.199.177.89] ([212.199.177.89:51142] helo=il-mr1.zend.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AB/4D-48631-F3DE45E4 for ; Wed, 24 Aug 2011 08:23:28 -0400 Received: from il-gw1.zend.com (unknown [10.1.1.22]) by il-mr1.zend.com (Postfix) with ESMTP id 9B9E86075C; Wed, 24 Aug 2011 15:22:12 +0300 (IDT) Received: from IL-EX2.zend.net ([fe80::6d27:be2c:57f3:272a]) by il-ex2.zend.net ([::1]) with mapi id 14.01.0255.000; Wed, 24 Aug 2011 15:22:39 +0300 To: Pierre Joye CC: "internals@lists.php.net" Thread-Topic: [PHP-DEV] PHP 5.3.8 Released! Thread-Index: AQHMYa7ZctuT+UGc90uFwsF80NSTy5UrDJAAgABg/QCAAB+qAIAAP6dQ///d6ICAADNWAP//0rEAgAA1KYD//9KDgAAGT0cA Date: Wed, 24 Aug 2011 12:22:38 +0000 Message-ID: <887FE7CFF6F8DE4BB3A9535F53AFD06A495AB153@il-ex2.zend.net> References: <1314115682.2635.98.camel@guybrush> <4E545A6C.60704@akbkhome.com> <4E54C658.6070209@akbkhome.com> <887FE7CFF6F8DE4BB3A9535F53AFD06A495AAA2F@il-ex2.zend.net> <887FE7CFF6F8DE4BB3A9535F53AFD06A495AAE17@il-ex2.zend.net> <887FE7CFF6F8DE4BB3A9535F53AFD06A495AB00F@il-ex2.zend.net> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [212.199.177.84] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: RE: [PHP-DEV] PHP 5.3.8 Released! From: zeev@zend.com (Zeev Suraski) > by case basis. It is now very well known that when a fix requires a test = change, > then it often leads to bc breaks or similar issues. >=20 > I do not think we have to argue about the semantics or general cases but = how > to avoid such things and be sure that we break as less code as possible i= n > patches release. In order to discuss how to avoid 'such things', we need to talk about diffe= rent types of cases. > It is also obvious, as you stated, that there will have edge cases where = we have > to break existing codes, for security or critical reasons. This is defini= tively not > the case here. It has nothing to do with security (criticality is subjective so I'm leavin= g it aside). The 3 bugs I mentioned (2 from 5.3.7 and one imaginary) have = nothing to do with security, and yet we fixed them (or would have fixed the= m), despite the potential for people out there relying on the old behavior.= It boils down to evaluating the severity of the bug and the likelihood tha= t it'll break code. If it's a clear bug, which IMHO this is_a() issue was = - then unless we're looking at code breakage at massive scale, it should be= fixed. Again, I'm almost religious about retaining compatibility (even across majo= r versions), but if we had a piece of code that was returning clearly the w= rong value, we can't ignore it because some (my guess very few but who know= s) relied on this behavior. Zeev