Torsten Curdt wrote:
On 18.05.2007, at 21:56, Thorbjørn Ravn Andersen wrote:
I suggest marking the offending methods as deprecated for the 1.x series, and schedule them for removal in the 2.x series.

Well, then let's create a 2.x branch and do a release without the classes *now*. No problem with that. Then it is communicated and people can choose. But doing *nothing* just because of binary compatibility is silly.

Doing nothing because of binary incompatibility is not silly, its essential. Commons has to be far more extreme than almost any other OSS project on this point.

In fact, I contend that commons is now in such a position that we can't make incompatible changes even in major version number releases.

Especially as no one *has* to upgrade libraries. And checking release notes if you do can't hurt if you upgrade.

Users are forced to upgrade all the time, and thats why they require backwards compatibility.

For example, if project A is complied against the old [beanutils] jar, while project B is compiled against the new [beanutils] jar, then it is impossible to use both project A and project B together. You cannot physically upgrade the jar file to the one B needs, because A needs the old one.

The only solutions to this at present are
-  for the 2.x series to have a different package name, including 'v2'
- to force the user to play with class loaders, so they can load two different versions of the same class


In summary, I suggest we all just let this one be. This isn't causing major pain IMO. The lesson should be to not have dependencies between commons projects wherever possible.

Stephen

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to