Re: RE: XML_Tree2 vs XML_Tree 2.0.0
| From: | Greg Beaver | Date: | Sun, 30 May 2004 17:20:35 +0000 |
| Subject: | Re: RE: XML_Tree2 vs XML_Tree 2.0.0 | ||
| References: | 1 2 | Groups: | php.pear.qa |
| Request: | Send a blank email to pear-qa+get-1312@lists.php.net to get a copy of this message | ||
Mika Tuupola wrote:
On Sun, 30 May 2004, Stefan Neufeind wrote:This does not require a BC break - instead, have a flag that is by default set to do the old, incorrect behavior, and document heavily that you should set the flag. function getAttribute($name, $bc = true) {You intend to BC-break a stable package twice a year? Well, then itDid you happen to read the bug description? Where did I talk about bc breaking a stable package twice an year? Besides I am not maintaining XML_Tree so I have no intentions on that behalf. Bug #89 is IMO a good example where fixing a bug (XML_Tree did not follow XML standard, and fixing the bug might cause problems to those scripts relying on the broken feature) would force changing a package from Foo_Barvx to Foo_Barvx+1. Which to me seems plain stupid.
if (!$bc) {
$name = strtolower($name);
}
if (isset($this->attributes[$name])) {
return $this->attributes[$name];
}
return null;
}
BC breaks are not required to fix 99.9% of bugs. BC breaks are in themselves a major bug, much more serious than most bugs considered to be major - you can have an entire application stop working, and have no idea why, because somebody upgraded a shared copy of package X.
A little ingenuity removes the need for BC breaks even with major problems like bug 98
Greg