This is a patch release of Commons Collections 2.1
The latest version of Commons Collections is 3.0.
Unfortunately, the release of version 3.0 introduced a binary incompatibility
with 2.1 in the IteratorUtils
class. We apologise for this error.
Regrettably, despite the issue being discovered by other teams, no feedback was given to the Commons Collections team, preventing a simple solution. Please provide feedback to Commons Collections when you find issues like this!
This patch to Commons Collections is designed to allow version 2.1.1 to co-exist with version 3.1. The patch contains the following changes:
IteratorUtils.arrayIterator(...)
-
use new ArrayIterator(...)
insteadIteratorUtils.singletonIterator(...)
-
use new SingletonIterator(...)
insteadIteratorUtils.emptyIterator()
-
use EmptyIterator.INSTANCE
insteadIteratorUtils.emptyListIterator()
-
use EmptyListIterator.INSTANCE
insteadIteratorUtils.EMPTY_ITERATOR
-
use EmptyIterator.INSTANCE
insteadIteratorUtils.EMPTY_LIST_ITERATOR
-
use EmptyIterator.INSTANCE
insteadEmptyIterator
EmptyListIterator
To make your code compatible with both 2.1.1 and 3.1 and later, remove all deprecation warnings from your code and re-release. If you have no deprecation warnings after installing this jar, your code is already compatible, and will run with versions 2.1, 2.1.1, 3.0 and later.