RE: [PHP-DEV] PHP 5.3.8 Released!
| From: | Zeev Suraski | Date: | Wed, 24 Aug 2011 11:40:17 +0000 |
| Subject: | RE: [PHP-DEV] PHP 5.3.8 Released! | ||
| References: | 1 2 3 4 5 6 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-54867@lists.php.net to get a copy of this message | ||
> No matter what it is or how it is defined by us, it breaks existing code and that
> should be avoided in bug fixes releases like 5.3.7/8.
Pierre,
This wholesale statement doesn't get us anywhere. Every bug fix can result in breaking
existing code. If due to a logic error, under some circumstances - file_exists() returned false for
a file that actually exists, are we barred from fixing that in a maintenance release? Obviously
not. What about bug # 54459? What if some piece of code out there relied on this behavior? What
about # 55082 - what if someone already relied on this and wrote a layer to alter the output
accordingly?
Since clearly the definition of never breaking existing code, no matter how far-fetched it may be,
means we can't do just about anything in bug fix releases - we need to set slightly more
realistic definitions. The fix for is_a() falls squarely within the realm of stuff we should be
doing in bug fix releases, IMHO. It is a bug fix, bug fixes by definition change behavior -
sometimes to the degree of breaking certain (broken) pieces of code.
Zeev