> 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