commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject cvs commit: jakarta-commons/collections/xdocs compatibility.xml history.xml navigation.xml index.xml
Date Sat, 29 May 2004 14:23:25 GMT
scolebourne    2004/05/29 07:23:25

  Modified:    collections/xdocs history.xml navigation.xml index.xml
  Added:       collections/xdocs compatibility.xml
  Version 2.1.1 released
  Revision  Changes    Path
  1.3       +11 -1     jakarta-commons/collections/xdocs/history.xml
  Index: history.xml
  RCS file: /home/cvs/jakarta-commons/collections/xdocs/history.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- history.xml	18 Feb 2004 00:54:12 -0000	1.2
  +++ history.xml	29 May 2004 14:23:25 -0000	1.3
  @@ -79,7 +79,17 @@
   Essentially the 3.0 release represents the result of changing from a 'dumping ground'
   of re-used collections to a component <b>designed</b> for the purpose.
  -Of course, backwards compatability has been retained during all transitions using deprecation.
  +Of course, backwards compatibility has been retained during all transitions using deprecation.
  +<b>Collections 2.1.1</b> is a patch release to v2.1.
  +Unfortunately, v3.0 created a binary incompatibility in the IteratorUtils class.
  +This patch was created as a work around, enabling v2.1.1 to be compatible with v3.1.
  +<b>Collections 3.1</b> (due soon) fixes some bugs in v3.0 and adds a few new
  1.10      +2 -1      jakarta-commons/collections/xdocs/navigation.xml
  Index: navigation.xml
  RCS file: /home/cvs/jakarta-commons/collections/xdocs/navigation.xml,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- navigation.xml	2 Mar 2004 03:27:48 -0000	1.9
  +++ navigation.xml	29 May 2004 14:23:25 -0000	1.10
  @@ -30,6 +30,7 @@
       <menu name="Commons Collections">
         <item name="Overview" href="/index.html"/>
  +      <item name="Download" href=""/>
         <item name="Users guide" href="/userguide.html"/>
         <item name="History" href="/history.html"/>
         <item name="Javadoc (3.0 release)" href="apidocs-COLLECTIONS_3_0/index.html"/>
  @@ -38,7 +39,7 @@
         <item name="Tasks" href="/tasks.html"/>
         <item name="CVS" href=""/>
         <item name="Javadoc (CVS latest)" href="apidocs/index.html"/>
  -      <item name="Javadoc (2.1 old)" href="apidocs-COLLECTIONS_2_1/index.html"/>
  +      <item name="Javadoc (2.1.1 old)" href="apidocs-COLLECTIONS_2_1_1/index.html"/>
  1.14      +8 -4      jakarta-commons/collections/xdocs/index.xml
  Index: index.xml
  RCS file: /home/cvs/jakarta-commons/collections/xdocs/index.xml,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- index.xml	18 Feb 2004 00:54:12 -0000	1.13
  +++ index.xml	29 May 2004 14:23:25 -0000	1.14
  @@ -52,6 +52,10 @@
   <li>Utilities to test or create typical set-theory properties of collections such
as union, intersection, and closure</li>
  +Patch version 2.1.1 has just been released.
  +The provides a work around to a <a href="compatibility.html">version compatibility</a>
issue between v2.1 and v3.0.
  @@ -64,7 +68,7 @@
   <li>The <a href="apidocs-COLLECTIONS_3_0/index.html">current release 3.0</a></li>
  -<li>The <a href="apidocs-COLLECTIONS_2_1/index.html">previous version 2.1</a></li>
  +<li>The <a href="apidocs-COLLECTIONS_2_1_1/index.html">previous version 2.1.1</a></li>
   <li>The <a href="apidocs/index.html">latest CVS</a></li>
  @@ -75,9 +79,9 @@
   <section name="Releases">
  -Version 3.0 - 
  - <a href="">Binary</a> - 
  - <a href="">Source</a>
  +Version 3.0/2.1.1 - 
  + <a href="">Binary</a>
  + <a href="">Source</a>
    For previous releases, see the <a href="">Apache
  1.1                  jakarta-commons/collections/xdocs/compatibility.xml
  Index: compatibility.xml
  <?xml version="1.0" encoding="ISO-8859-1"?>
     Copyright 2004 The Apache Software Foundation
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
    <title>Commons Collections - Compatibility</title>
    <author email="">Commons Documentation Team</author>
  <section name="Version compatibility of Commons Collections">
  This page details the compatibiilty of different collections releases.
  There are two types of compatibility discussed here, source and binary.
   Two versions are source compatible when application code can be compiled
   against either version successfully. The compilation may result in deprecation warnings
   but that is perfectly acceptable.
   When code is source incompatible, it fails to compile, thus this type of incompatibility
is easy to find.
   Two versions are binary compatible when application code compiled against
   one version will run using the other version without recompilation.
   This is much more difficult to test for, and follows quite complicated rules from the
   <a href="">Java
  Releases of Apache projects, including collections, aim to be source and binary compatible
  within minor versions, and to avoid breakages as much as possible between major versions.
  Commons collections 3.0 is source compatible with version 2.1 and 2.0 with the exception
  of classes previously deprecated in 2.0/2.1 (which were removed in 3.0).
  Commons collections 3.0 is binary compatible with version 2.1 and 2.0
  <b>except for certain methods on one class</b>.
  As the release was a major version, this is permitted, however it was unintentional and
an error.
  The problem is in the <b><code>IteratorUtils</code></b> class (see
methods below).
  It is not possible to make v2.1 and v3.0 compatible without futher binary incompatibility.
  The chosen solution is to provide a work around by releasing v2.1.1 and v3.1.
  The following deprecations must be resolved in v2.1.1 to allow compatibiilty with v3.1.
  <li>Deprecated <code>IteratorUtils.arrayIterator(...)</code> -
       use <code>new ArrayIterator(...)</code> instead</li>
  <li>Deprecated <code>IteratorUtils.singletonIterator(...)</code> -
       use <code>new SingletonIterator(...)</code> instead</li>
  <li>Deprecated <code>IteratorUtils.emptyIterator()</code> -
       use <code>EmptyIterator.INSTANCE</code> instead</li>
  <li>Deprecated <code>IteratorUtils.emptyListIterator()</code> -
       use <code>EmptyListIterator.INSTANCE</code> instead</li>
  <li>Deprecated <code>IteratorUtils.EMPTY_ITERATOR</code> -
       use <code>EmptyIterator.INSTANCE</code> instead</li>
  <li>Deprecated <code>IteratorUtils.EMPTY_LIST_ITERATOR</code> -
       use <code>EmptyIterator.INSTANCE</code> instead</li>
  For the future, a new tool <a href="">clirr</a>
is being developed
  to help spot binary incompatibiilty before release.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message