[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: commons-collections packages



Hi,

On Tue, 24 Nov 2009 16:52:18 +0530, Onkar Shinde <onkarshinde@gmail.com>
wrote:
> On Tue, Nov 24, 2009 at 2:28 PM, Emmanuel Bourg <ebourg@apache.org>
wrote:
>> I'm not sure it is fully backward compatible. There was a binary
>> incompatibility between 2.1 and 3.0 which was resolved in Commons
>> Collections 2.1.1. And some deprecated classes and methods were removed
>> in the 3.0 release.
>>
>>    http://commons.apache.org/collections/compatibility.html
>>
>> Is it possible to know how many packages depend on the 2.x collections
>> package? It would be worth checking if they still compile after the
>> migration.
> 
> Following is the list of current rdepends of
> libcommons-collections-java. In my opinion if they compile fine with
> collections3 then there is no problem.

Source API Compatibility != Binary API Compatibility (even when using
Java, as you can see on [1] [2] :)

This means that, maybe, we'll have to *rebuild and reupload* each package
to take API changes into account.
We can't just release a libcommons-collections3-java 3.x which replace
libcommons-collections-java 2.x (by Conflict/Provide/Replace).
(I've already had this kind of binary compatibility breakeage [3] on
plexus-maven-plugin)

AFAIK, IteratorUtils seems to be the only class which break binary
compatibility in commons-collections.
I'll have a look at IteratorUtils "deprecated" usages in package which
currentlty Build-Depends libcommons-collections-java 2.x.
Maybe everything will work as expected :)

[1] http://stackoverflow.com/questions/1365409
[2]
http://java.sun.com/docs/books/jls/second_edition/html/binaryComp.doc.html
[3]
http://packages.debian.org/changelogs/pool/main/p/plexus-maven-plugin/current/changelog

Cheers,

-- 
Damien - Debian Developper
http://wiki.debian.org/DamienRaudeMorvan


Reply to: