Re: [RFC2] Handling Backwards Compatibility in PEAR

From: Date: Sat, 20 Sep 2003 16:43:48 +0000
Subject: Re: [RFC2] Handling Backwards Compatibility in PEAR
References: 1  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-21848@lists.php.net to get a copy of this message
On 20 Sep 2003 at 11:46, Greg Beaver wrote: > Stefan Neufeind wrote: > > >Well, if we (Alexey and me) mis-understood each other *that* much > >then Greg you're right ... and my apologize go to Alexey for mis- > >understanding him. The way I understood Alexey was that "a complete > >API break" or "complete rewrite" would require a new major version. > >But "minor breaks" could be solved also inside the same major > >version. And that's what lead me to the point of thinking "hmm, > >renaming a function is only a minor break so he didn't want to bump > >the major version so users might get into problems". > > > I didn't read this in what Alexey wrote, I just figured Alexey was > defining version numbering. The problem of minor BC breaks is the > reason why it needs to be possible to do this versioning scheme: > > Foo 1.0.0 > Foo 1.0.1 bugfixes > Foo 1.1.0 feature additions > Foo 2.0.0 minor BC breakage - the package is essentially the same, > users must do text search-and-replace for a few methods Foo 2.1.0 etc. > Foo3 3.0.0 MAJOR BC breakage - whole API is reworked to give major new > features not possible with Foo 2.x, give users whose apps only need > the functionality of Foo 2.x no need to rewrite their apps, and allow > newer code to co-exist if necessary with older code until the old code > is rewritten in the future. Yes, and this minor brake in 2.0.0 is the thing I can't get myself friendly with. Or do you mean "deprecated" functions? That would be okay. But if 1.x and 2.x are not API-compatible we would end in the same problem wherefor we introduced the whole Foo / Foo2-thing. I'm against API-breaks in the same package (here: all inside Foo). Stefan

« previous php.pear.dev (#21848) next »