Author: ggregory
Date: Mon Aug 10 11:40:01 2026
New Revision: 86676
Log:
Publish commons-collections4 4.6.0 Release
Added:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.asc
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.asc
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.asc
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.asc
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.sha512
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.sha512
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.asc
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.asc
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.sha512
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.sha512
release/commons/collections/source/commons-collections4-4.6.0-src.zip
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip
release/commons/collections/source/commons-collections4-4.6.0-src.zip.asc
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.asc
release/commons/collections/source/commons-collections4-4.6.0-src.zip.sha512
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.sha512
Replaced:
release/commons/collections/RELEASE-NOTES.txt
- copied unchanged from r86675,
dev/commons/collections/4.6.0-RC1/RELEASE-NOTES.txt
Deleted:
dev/commons/collections/4.6.0-RC1/RELEASE-NOTES.txt
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.asc
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.asc
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.sha512
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.asc
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.sha512
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.asc
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.sha512
Copied: release/commons/collections/RELEASE-NOTES.txt (from r86675,
dev/commons/collections/4.6.0-RC1/RELEASE-NOTES.txt)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ release/commons/collections/RELEASE-NOTES.txt Mon Aug 10 11:40:01
2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/RELEASE-NOTES.txt)
@@ -0,0 +1,825 @@
+Apache Commons Collections 4.6.0 Release Notes
+----------------------------------------------
+
+The Apache Commons Collections team is pleased to announce the release of
Apache Commons Collections 4.6.0.
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+This is a feature and maintenance release. Java 8 or later is required.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* Add generics to UnmodifiableIterator for the wrapped type. Thanks to Gary
Gregory.
+* Add a Maven benchmark profile for JMH. Thanks to Gary Gregory.
+* Add a Maven benchmark profile for JMH. Thanks to Gary Gregory.
+* COLLECTIONS-893: Add SortedMultiSet interface, TreeMultiSet implementation,
sorted multiset decorators, and MultiSetUtils factory methods, giving MultiSet
feature parity with SortedBag/TreeBag. Thanks to Paul King.
+* COLLECTIONS-893: Add
MultiSetUtils.containsOccurrences/removeOccurrences/retainOccurrences providing
Bag's cardinality-respecting semantics under explicit names, and
Bag-to-MultiSet migration notes in the Bag javadoc. Thanks to Paul King.
+* Add IterableUtils.sumSizes(Iterable<? extends Collection<E>>). Thanks to
Gary Gregory.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-776: Wrapping PassiveExpiringMap in Collections.synchronizedMap
breaks expiration. Thanks to Gary Gregory.
+*
org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceEntry.toReference(ReferenceStrength,
T, int) now throws IllegalArgumentException instead of Error. Thanks to Gary
Gregory.
+* Remove deprecation annotation of org.apache.commons.collections4.Factory;
this will be deprecated in 5.0 in favor of java.util.function.Supplier. Thanks
to Eric Hubert, Gary Gregory.
+* Remove deprecation annotation of org.apache.commons.collections4.Predicate;
this will be deprecated in 5.0 in favor of java.util.function.Predicate. Thanks
to Eric Hubert, Gary Gregory.
+* Remove deprecation annotation of
org.apache.commons.collections4.Transformer; this will be deprecated in 5.0 in
favor of java.util.function.Function. Thanks to Eric Hubert, Gary Gregory.
+* Remove deprecation annotation of org.apache.commons.collections4.Closure;
this will be deprecated in 5.0 in favor of java.util.function.Consumer. Thanks
to Eric Hubert, Gary Gregory.
+* COLLECTIONS-874: MapUtils.getLongValue(Map, K, Function) returns a byte
instead of a long. Thanks to Sebastian Götz, Gary Gregory.
+* MapUtils.getIntValue(Map, K, Function) returns a byte instead of an int.
Thanks to Naveed Khan, Gary Gregory.
+* Fix exception message in
org.apache.commons.collections4.functors.FunctorUtils.validate(Consumer...)
Thanks to Gary Gregory.
+* Fix exception message in
org.apache.commons.collections4.iterators.UnmodifiableIterator.remove() to
match java.util.Iterator.remove(). Thanks to Gary Gregory.
+* COLLECTIONS-838: Calling SetUtils.union on multiple instances of SetView
causes JVM to hang Thanks to Piotr P. Karwasz, Joerg Budischewski.
+* COLLECTIONS-722: Improve IteratorUtils.chainedIterator() performance.
Thanks to Piotr P. Karwasz, Joerg Budischewski.
+* Fix UselessOverridingMethod in
org.apache.commons.collections4.properties.PropertiesFactory. Thanks to Gary
Gregory, PMD.
+* COLLECTIONS-693: OrderedProperties.stringPropertyNames() returns an
unordered Set. Thanks to Adam Rauch, Gary Gregory.
+* Fix SortedProperties.keySet() returned an unsorted Set. Thanks to Gary
Gregory.
+* Fix SortedProperties.propertyNames() returned an unsorted Enumeration.
Thanks to Gary Gregory.
+* Fix SortedProperties.stringPropertyNames() returned an unsorted Set. Thanks
to Gary Gregory.
+* Fix SortedProperties.forEach() called its consumer out of order. Thanks to
Gary Gregory.
+* Fix Apache RAT plugin console warnings. Thanks to Gary Gregory.
+* Add MultiValuedMap.inverted() #665. Thanks to Paul King, Gary Gregory, Sebb.
+* COLLECTIONS-885: PatriciaTrie submap and range view operations silently
mutate trie structure resulting in ConcurrentModificationException for any
iterating threads #672. Thanks to John Griffin, Gary Gregory.
+* COLLECTIONS-886: [javadoc] CompositeSet.addComposited(Set) does not throw
NullPointerException when null is passed #675. Thanks to Partha Protim Paul.
+* COLLECTIONS-887: ConcurrentReferenceHashMap.remove(key), remove(key,
value), replace(key, value), and replace(key, oldValue, newValue) throw
NullPointerException inconsistently. Thanks to Partha Paul, Gary Gregory.
+* COLLECTIONS-888: PatriciaTrie incompatible with Java 21 (JEP 431 Sequenced
Collections). Thanks to Marc Carter, Gary Gregory.
+* Reject non-positive entry count in bag/multiset doReadObject (#679). Thanks
to Dexter.k, Gary Gregory.
+* Fix most Junit 5 nested tests (#681). Thanks to Dexter.k, Gary Gregory.
+* COLLECTIONS-881: MultiMapUtils.getXXX ensure safe copy (#669). Thanks to
Suhyeon Park, Gary Gregory.
+* Re-validate entries in PredicatedMap/PredicatedCollection readObject (#682).
Thanks to Dexter.k, Gary Gregory.
+* COLLECTIONS-889: IndexedCollection.remove(Object) removes all values for a
non-unique index key. Thanks to Ruiqi Dong, Gary Gregory.
+* COLLECTIONS-890: TransformIterator throws NullPointerException when its
transformer is null. Thanks to Ruiqi Dong, Gary Gregory.
+* COLLECTIONS-892: IndexedCollection.add(Object) mutates unique indexed
collections before rejecting duplicate keys. Thanks to Ruiqi Dong, Gary
Gregory.
+* COLLECTIONS-878: MapUtils.invertMap() improves HashMap construction (#652).
Thanks to Maxim Safronov, Gary Gregory.
+* Validate order and uniqueness invariants in decorator readObject() (#684).
Thanks to Dexter.k, Gary Gregory.
+* TransformIterator now fail-fast on a null Iterator (#686). Thanks to Gary
Gregory.
+* COLLECTIONS-884: [COLLECTIONS-884] Fix JUnit 5 test discovery for Map
EntrySet and Values views (#689). Thanks to sankalp suman, Ben Manes.
+* Reject non-positive maxSize in LRUMap.doReadObject() (#690). Thanks to
Dexter.k, Gary Gregory.
+* [javadoc] Document that BloomFilter merge operations are non-atomic and a
filter that throws during a merge should be considered invalid (#695). Thanks
to Naveed Khan, Alex Herbert, Gary Gregory.
+* Fix AbstractMapBag.retainAll removing all copies when the other bag has more
(#692). Thanks to Vasiliy Mikhailov, Gary Gregory.
+* Fix integer overflow in SetOperations.cosineSimilarity (#693). Thanks to
Vasiliy Mikhailov, Gary Gregory.
+* Validate deserialized size in CircularFifoQueue.readObject (#678). Thanks to
Vasiliy Mikhailov, Gary Gregory.
+* Do not mutate the input map in SwitchTransformer.switchTransformer (#696).
Thanks to Vasiliy Mikhailov, Gary Gregory.
+* Do not mutate the input map in SwitchClosure.switchClosure,
ClosureUtils.switchMapClosure and TransformerUtils.switchMapTransformer (#700).
Thanks to Naveed Khan, Gary Gregory.
+* Fix stale size in AbstractMapMultiSet view iterator remove (#701). Thanks to
Dexter.k, Gary Gregory.
+* Stop ExtendedMessageFormat seekNonWs reading past the pattern end (#1740).
Thanks to Javid Khan, Gary Gregory.
+* Remove stale keys in OrderedProperties compute and merge (#702). Thanks to
Dexter.k, Gary Gregory.
+* COLLECTIONS-776: Fix expiration bypass in PassiveExpiringMap when wrapped
in SynchronizedMap (#694). Thanks to sankalp suman, Gary Gregory.
+* Fix MapUtils.getIntValue(Map, K, Function) returning a byte (#704). Thanks
to Dexter.k, Gary Gregory.
+* COLLECTIONS-893: Bring (Collection compliant) MultiSet family to
(non-compliant) Bag parity (#703). Thanks to Paul King, Gary Gregory.
+* AbstractMapBag and AbstractMapMultiSet.add(Object, int) overflow the size
and element count past Integer.MAX_VALUE (#705). Thanks to Naveed Khan, Gary
Gregory.
+* COLLECTIONS-894: TreeBag documentation should explicitly warn about
infinite loop as a result of concurrent writes (#707). Thanks to Paul King, Sol
Thiessen, Gary Gregory.
+* COLLECTIONS-896: Add TransformedMultiSet plus fill minor gaps for MultiSet
vs. Bags (#708). Thanks to Paul King, Gary Gregory.
+* COLLECTIONS-895: Deprecate the Bag family in favor of the MultiSet family
(#709). Thanks to Paul King, Gary Gregory.
+* CompositeCollection, CompositeSet, CompositeMap, AbstractMultiValuedMap and
AbstractMultiSet size() overflow int when the total exceeds Integer.MAX_VALUE
(#710). Thanks to Naveed Khan, Gary Gregory.
+* DualHashBidiMap, DualLinkedHashBidiMap, and DualTreeBidiMap entrySet()
Map.Entry.setValue(Object) returns the new value instead of the previous value
(#711). Thanks to Naveed Khan, Gary Gregory.
+* COLLECTIONS-714: PatriciaTrie ignores trailing null characters in keys
(#712). Thanks to sankalp suman, Gary Gregory.
+* Flat3Map entrySet().remove(Object) removes a mapping when only the key
matches, ignoring the entry value (#714). Thanks to Naveed Khan, Gary Gregory.
+* SetUniqueList and ListOrderedSet leave the backing collection inconsistent
when add(int, Object) or addAll(int, Collection) is called with an out-of-range
index. Thanks to Naveed Khan, Gary Gregory.
+* CollectionUtils.collate(Iterable, Iterable, Comparator, boolean) does not
remove duplicate null elements when includeDuplicates is false (#715). Thanks
to Naveed Khan, Gary Gregory.
+* Do not register a value collection until an add succeeds (#717). Thanks to
Naveed Khan, Gary Gregory.
+* Increment modCount after the bounds check in TreeList add and remove (#716).
Thanks to Naveed Khan, Gary Gregory.
+* Add messages when throwing NullPointerException. Thanks to Gary Gregory.
+* Reject remove on the Unmodifiable map from SplitMapUtils.readableMap (#718).
Thanks to Naveed Khan, Gary Gregory.
+* Keep OrderedProperties keySet and values in sync with the map (#719). Thanks
to Naveed Khan, Gary Gregory.
+* COLLECTIONS-859: Clarify ambiguous @return Javadoc in PredicateUtils.
Thanks to Daniele, THE_ZAID, Gary Gregory.
+* Synchronize forEach() in SynchronizedCollection (#720). Thanks to Naveed
Khan, Gary Gregory.
+
+Changes
+-------
+
+* Bump org.apache.commons:commons-parent from 81 to 103 #612, #645, #662,
#663. Thanks to Gary Gregory, Dependabot.
+* Bump com.google.guava:guava-testlib from 33.3.1-jre to 33.5.0-jre #644.
Thanks to Gary Gregory.
+* Bump PMD from 7.8.0 to 7.13.0 (now inherited from parent POM). Thanks to
Gary Gregory.
+* Bump org.easymock:easymock from 5.5.0 to 5.6.0 #617. Thanks to Gary Gregory.
+* [test] Bump org.apache.commons:commons-lang3 from 3.17.0 to 3.20.0 #625.
Thanks to Gary Gregory.
+* [test] Bump commons-io:commons-io from 2.19.0 to 2.22.0. Thanks to Gary
Gregory.
+* Bump commons-codec:commons-codec from 1.18.0 to 1.22.1. Thanks to Gary
Gregory.
+* Bump doxia.module.markdown.version from 2.0.0 to 2.1.0. Thanks to Gary
Gregory.
+* Bump com.google.guava:guava-testlib from 33.5.0-jre to 33.6.0-jre (#680).
Thanks to Gary Gregory, Dependabot.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.5.0 Release Notes
+----------------------------------------------
+
+The Apache Commons Collections team is pleased to announce the release of
Apache Commons Collections 4.5.0.
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+This is a feature and maintenance release. Java 8 or later is required.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* Add IteratorUtils.toSet(Iterator). Thanks to Gary Gregory.
+* Add IteratorUtils.toSet(Iterator, int). Thanks to Gary Gregory.
+* Add EnumerationUtils.toSet(Enumeration). Thanks to Gary Gregory.
+* COLLECTIONS-693: Please add OWASP Dependency Check to the build. Thanks to
Gary Gregory.
+
+Fixed Bugs
+----------
+
+* Refactor AbstractPropertiesFactory.load(File) to use NIO. Thanks to Gary
Gregory.
+* Refactor AbstractPropertiesFactory.load(String) to use NIO. Thanks to Gary
Gregory.
+
+Changes
+-------
+
+* Bump commons-codec:commons-codec from 1.17.1 to 1.18.0 #591. Thanks to Gary
Gregory.
+* Bump org.apache.commons:commons-parent from 78 to 81 #2296. Thanks to Gary
Gregory, Dependabot.
+* Bump commons.jacoco.version from 0.8.13-SNAPSHOT to 0.13.0. Thanks to Gary
Gregory.
+* [test] Bump commons-io:commons-io from 2.18.0 to 2.19.0. Thanks to Gary
Gregory.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.5.0-M3 RELEASE NOTES
+-------------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+This is a feature and maintenance release. Java 8 or later is required.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* LayerManager.Builder implements Supplier. Thanks to Gary Gregory.
+* Add CollectionUtils.duplicateList(Collection). Thanks to Gary Gregory,
hemanth0525.
+* Add CollectionUtils.duplicateSet(Collection). Thanks to Gary Gregory,
hemanth0525.
+* Add CollectionUtils.duplicateSequencedSet(Collection). Thanks to Gary
Gregory, hemanth0525.
+* Add HashBag.HashBag(Iterable). Thanks to Gary Gregory.
+* Add TreeBag.TreeBag(Iterable). Thanks to Gary Gregory.
+* COLLECTIONS-858: Add CartesianProductIterator #509. Thanks to Alexey
Pelykh, Alex Herbert, Gary Gregory.
+* Add missing methods in AbstractMapTests. Thanks to Gary Gregory.
+* COLLECTIONS-700: Add ConcurrentReferenceHashMap. Thanks to Gary Gregory.
+* Add commons.easymock.version to parameterize EasyMock version. Thanks to
Gary Gregory.
+* COLLECTIONS-869: Add
org.apache.commons.collections4.IteratorUtils.chainedIterator(Iterator<?
extends Iterator<? extends E>>). Thanks to Gary Gregory.
+* COLLECTIONS-533: Add ArrayListValuedLinkedHashMap #560. Thanks to Peter De
Maeyer.
+* Add missing test AbstractIteratorTest.testForEachRemaining(). Thanks to Gary
Gregory.
+* Add FilterIterator.removeNext() #564. Thanks to Gary Gregory, Claude Warren.
+* COLLECTIONS-870: Add ExtendedIterator and tests #564. Thanks to Claude
Warren, Gary Gregory.
+* Refactor ExtendedIterator and FilterIterator with a new interface
IteratorOperations. Thanks to Gary Gregory.
+* COLLECTIONS-871: Add LinkedHashSetValuedLinkedHashMap #565. Thanks to Peter
De Maeyer.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-857: Complete bloom filter documentation #507. Thanks to Claude
Warren.
+* Package private AbstractEmptyIterator implements ResettableIterator so
subclasses don't. Thanks to Gary Gregory.
+* Deprecate AbstractEmptyIterator.add(E) without replacement. Thanks to Gary
Gregory.
+* Add missing Javadocs. Thanks to Gary Gregory.
+* PatriciaTrie constructor reuse the stateless singleton
StringKeyAnalyzer.INSTANCE. Thanks to Gary Gregory.
+* Deprecate StringKeyAnalyzer.StringKeyAnalyzer() in favor of
StringKeyAnalyzer.INSTANCE. Thanks to Gary Gregory.
+* [Functional] FunctorUtils.validate(Closure...) is now
FunctorUtils.validate(Consumer...). Thanks to Gary Gregory.
+* [Functional] FunctorUtils.validate(Predicate...) is now
FunctorUtils.validate(java.util.function.Predicate...). Thanks to Gary Gregory.
+* [Functional] FunctorUtils.validate(Transformer...) is now
FunctorUtils.validate(Function...). Thanks to Gary Gregory.
+* Increase test coverage for ListUtils #517. Thanks to Dávid Szigecsán. Gary
Gregory.
+* Use the Junit (Jupiter) API #518. Thanks to Dávid Szigecsán.
+* BloomFilterExtractor.flatten() should throw an exception instead of
returning null. Thanks to Gary Gregory, Alex Herbert.
+* Improve WrappedBloomFilterTest. All tests now assert copy() the same way.
Thanks to Gary Gregory, Claude Warren.
+* COLLECTIONS-860: Javadoc CollectionBag.add* to throw ClassCastException.
Thanks to Gary Gregory, Daniele.
+* Fix generics in IteratorChain.IteratorChain(Collection). Thanks to Gary
Gregory.
+* Fix generics in
org.apache.commons.collections4.IteratorUtils.chainedIterator(Collection).
Thanks to Gary Gregory.
+* COLLECTIONS-856: Javadoc: Document interaction between peek and filter
iterator #515. Thanks to Benjamin Confino, Gary Gregory.
+* COLLECTIONS-815: Javadoc: Update ClosureUtils Javadoc to match runtime.
Thanks to Elia Bertolina, Gary Gregory.
+* COLLECTIONS-815: Javadoc: Update ClosureUtils Javadoc to match runtime.
Thanks to Gary Gregory.
+* COLLECTIONS-777: Migrate to JUnit 5. Thanks to Gary Gregory.
+* Fix NullPointerException in FilterIterator.setNextObject(). Thanks to Gary
Gregory.
+* EqualPredicate.test(Object) should return true if the parameter is the same
object as given the constructor. Thanks to Gary Gregory.
+
+Changes
+-------
+
+* Bump org.apache.commons:commons-parent from 71 to 78 #534, #545, #550 #555,
#566. Thanks to Gary Gregory.
+* COLLECTIONS-857: Update bloom filter documentation #508. Thanks to Claude
Warren.
+* Bump commons-codec:commons-codec from 1.17.0 to 1.17.1 #514. Thanks to
Dependabot, Gary Gregory.
+* Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.17.0 #516, #525,
#535. Thanks to Dependabot, Gary Gregory.
+* Bump org.hamcrest:hamcrest from 2.2 to 3.0 #522, #532. Thanks to Dependabot,
Gary Gregory.
+* Bump com.google.guava:guava-testlib from 33.2.1-jre to 33.3.1-jre #531,
#549. Thanks to Dependabot, Gary Gregory.
+* Bump MathJax from 2.7.2 to 2.7.9. Thanks to Gary Gregory.
+* [test] Bump org.easymock:easymock from 5.3.0 to 5.5.0 #521, #576. Thanks to
Dependabot, Gary Gregory.
+* [test] Bump commons-io:commons-io from 2.16.1 to 2.18.0 #544, #575. Thanks
to Dependabot, Gary Gregory.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.5.0-M2 RELEASE NOTES
+-------------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+This milestone release requires Java 8 and adds the package
`org.apache.commons.collections4.bloomfilter`.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* COLLECTIONS-852: Add layered Bloom filter clean method #476. Thanks to
Claude Warren, Alex Herbert.
+* COLLECTIONS-842: Deprecate Lists incompatible with Java 21, add new variant
of AbstractLinkedList #485. Thanks to Julian Reschke.
+
+Fixed Bugs
+----------
+
+* Deprecate Closure in favor of java.util.function.Consumer. Thanks to Gary
Gregory.
+* Deprecate Factory in favor of java.util.function.Supplier. Thanks to Gary
Gregory.
+* Deprecate Predicate in favor of java.util.function.Predicate. Thanks to Gary
Gregory.
+* Deprecate Transformer in favor of java.util.function.Function. Thanks to
Gary Gregory.
+* COLLECTIONS-853: Change LayerManager to use List and added generics to
LayerdedBloomFilter #481. Thanks to Claude Warren, Alex Herbert, Gary Gregory.
+* Fix PMD UselessOverridingMethod in PropertiesFactory.EmptyProperties. Thanks
to PMD, Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in AbstractHashedMap. Thanks to PMD,
Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in AbstractLinkedMap. Thanks to PMD,
Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in CaseInsensitiveMap. Thanks to PMD,
Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in CollectionUtils. Thanks to PMD,
Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in DefaultEquator. Thanks to PMD, Gary
Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in IndexUtils. Thanks to PMD, Gary
Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in LinkIterator. Thanks to PMD, Gary
Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in MapUtils. Thanks to PMD, Gary
Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in PredicateUtils. Thanks to PMD, Gary
Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in ReferenceMapIterator. Thanks to
PMD, Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in StringKeyAnalyzer. Thanks to PMD,
Gary Gregory.
+* Fix PMD UnnecessaryFullyQualifiedName in TransformerUtils. Thanks to PMD,
Gary Gregory.
+* COLLECTIONS-854: Renaming bloomfilter components and methods as per ticket
#492. Thanks to Claude Warren, Alex Herbert, Gary Gregory.
+* Fix Java 22 builds through Easymock upgrade #502. Thanks to Gary Gregory.
+* COLLECTIONS-855: Fixed hashing calculation as per report #501. Thanks to
Claude Warren, Alex Herbert, Gary Gregory.
+
+Changes
+-------
+
+* Bump org.apache.commons:commons-parent from 67 to 71 #473, #503. Thanks to
Dependabot, Gary Gregory.
+* Bump tests commons-io:commons-io from 2.16.0 to 2.16.1 #475. Thanks to
Dependabot.
+* Bump optional commons-codec:commons-codec from 1.16.1 to 1.17.0. Thanks to
Dependabot.
+* Bump com.google.guava:guava-testlib from 33.1.0-jre to 33.2.1-jre #487,
#500. Thanks to Dependabot.
+* Bump org.easymock:easymock from 5.2.0 to 5.3.0 #502. Thanks to Dependabot.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.5.0-M1 RELEASE NOTES
+-------------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+This milestone release requires Java 8 and adds the package
`org.apache.commons.collections4.bloomfilter` for review.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* COLLECTIONS-843: Implement Layered Bloom filter #402. Thanks to Claude
Warren, Alex Herbert, Gary Gregory.
+* COLLECTIONS-748: Let
org.apache.commons.collections4.properties.[Sorted]PropertiesFactory accept XML
input. Thanks to Gary Gregory.
+* COLLECTIONS-772: Add private constructor to ArrayUtils; better Javadocs,
#195. Thanks to Arturo Bernal, Alex Herbert, Gary Gregory, Bruno P. Kinoshita.
+* COLLECTIONS-760: Add tests for MapUtils. Thanks to Isira Seneviratne.
+* Test subMap and tailMap #94. Thanks to dota17.
+* Add junit for add, remove, setCount and entrySet in the
UnmodifiableMultiSetTest #95. Thanks to dota17.
+* Add two test cases in UnmodifiableQueueTest #96. Thanks to dota17.
+* Update two test cases in AbstractMultiValuedMapTest testPutAll_map1
testPutAll_map2 #97. Thanks to dota17.
+* Add a test case for AbstractMultiValuedMapTest testToString() #100. Thanks
to dota17.
+* Add a test case AbstractMultiValuedMapTest#testMultiValuedMapIterator()
#108. Thanks to dota17.
+* Add junit for getWithNull and subList in LazyListTest; #103. Thanks to
dota17.
+* Add test cases to ArrayListValuedHashMapTest; #106. Thanks to dota17.
+* Add test cases in UnmodifiableMultiValuedMapTest; #102. Thanks to dota17.
+* COLLECTIONS-674: Add CollectionUtils removeRange, removeCount #91. Thanks
to dota17.
+* Add ListUtils.getFirst() and getLast(). Thanks to Gary Gregory.
+* Add singleton ObjectToStringComparator.INSTANCE. Thanks to Gary Gregory.
+* Add github/codeql-action.
+* COLLECTIONS-811: Add Guava testlib tests. Thanks to Ben Manes.
+* COLLECTIONS-728: Add BloomFilter contribution. Thanks to Claude Warren.
+* COLLECTIONS-726: Add lambdas function to provide default values in MapUtils
#81. Thanks to liuhaozzu, Gary Gregory.
+* Add three test cases in UnmodifiableQueueTest #105. Thanks to dota17.
+* COLLECTIONS-744: Add
org.apache.commons.collections4.EnumerationUtils.asIterable(Enumeration).
Thanks to Gary Gregory.
+* COLLECTIONS-746: Add
org.apache.commons.collections4.properties.PropertiesFactory.EMPTY_PROPERTIES.
Thanks to Gary Gregory.
+* COLLECTIONS-746: Add PropertiesFactory. Thanks to Gary Gregory.
+* Add org.apache.commons.collections4.properties.OrderedProperties and
OrderedPropertiesFactory. Thanks to Gary Gregory.
+* Make AbstractPatriciaTrie public #407. Thanks to Vadim, Claude Warren, Gary
Gregory, Alex Herbert.
+* Add test cases for indexOf and contains method of ArrayUtils class #215.
Thanks to Ajay Kumar Jha, Bruno P. Kinoshita, Claude Warren.
+* Add Maven property project.build.outputTimestamp for build reproducibility.
Thanks to Gary Gregory.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-780: Use assertThrows V2. Thanks to Arturo Bernal.
+* COLLECTIONS-778: Use assertThrows. Thanks to Arturo Bernal.
+* COLLECTIONS-771: Fix flaky AbstractMultiValuedMapTest#testToString. Thanks
to Xin Tong.
+* COLLECTIONS-769: Fix flaky UnmodifiableMultiValuedMapTest. Thanks to Xin
(Cynthia) Tong.
+* COLLECTIONS-764: Refine javadoc and fix typos. Thanks to XenoAmess.
+* COLLECTIONS-765: Update Javadoc of ListIteratorWrapper#remove. Thanks to
Tobias Kiecker.
+* COLLECTIONS-708: Add hashCode method to CollectionUtils that supports an
equator parameter. Thanks to dota17.
+* COLLECTIONS-759: Fix checkstyle issues regarding missing newline at end of
file, and CRLF vs LF.
+* COLLECTIONS-727: A potential misleading comment #82. Thanks to XiangzheXu,
XZ-X.
+* COLLECTIONS-679: Using existing class in example given in Javadocs. #85.
Thanks to David Mollitor, Mikko Maunu.
+* COLLECTIONS-729: Add test cases to IteratorUtilsTest #86. Thanks to dota17.
+* Fix typos in release notes and Javadoc for AbstractHashedMap and
AbstractHashedMapTest #88. Thanks to dota17.
+* COLLECTIONS-740: Add missing @throws comment for
SwitchTransformer.switchTransformer. #124. Thanks to Pengyu Nie.
+* COLLECTIONS-739: Fix inconsistent @throws comments in DefaultedMap #123.
Thanks to Pengyu Nie.
+* Fix links to release notes and update contents for 4.4 #127. Thanks to
Dominik Stadler.
+* Fix checkstyle syntax (was scope, is now accessModifiers) via PR #235.
Thanks to Jin Xu.
+* COLLECTIONS-786: Fix PassiveExpiringMap documentation for methods that
involve accessing the entire map. Thanks to vandrewskis.
+* SortedProperties should sort entrySet() as well as keys() #256. Thanks to
Michael Berry.
+* COLLECTIONS-796: SetUniqueList.createSetBasedOnList doesn't add list
elements to return value. Thanks to Clemens Kurz.
+* COLLECTIONS-799: UnmodifiableNavigableSet can be modified by pollFirst()
and pollLast(). Thanks to Stefano Cordio.
+* Use Java 8 and method reference. #274. Thanks to Arturo Bernal.
+* COLLECTIONS-788: Use Java 8 features #228. Thanks to Arturo Bernal.
+* COLLECTIONS-807: Upgraded org.junit.Test to org.junit.jupiter.api.Test
#295, #304. Thanks to Pradeesh Kumar, samabcde.
+* COLLECTIONS-802: ReferenceMap iterator remove violates contract #300.
Thanks to samabcde, Ben Manes.
+* COLLECTIONS-812: Fix flaky EmptyPropertiesTest#testSave. Thanks to Ng Tsz
Sum.
+* Use java.lang.Objects#equals; eliminate a couple of nulls #307. Thanks to
Steve Bosman.
+* COLLECTIONS-814: CollectionUtils.removeAll() not throwing NPE #340. Thanks
to angusdev.
+* Fix minor typos #323 Thanks to Marc Wrobel.
+* AbstractReferenceMap.SoftRef implements hashCode() but not equals(). Thanks
to Gary Gregory.
+* AbstractReferenceMap.WeakRef implements hashCode() but not equals(). Thanks
to Gary Gregory.
+* Use Java style array decelerations #362. Thanks to Arturo Bernal.
+* COLLECTIONS-806: Remove use of JUnit4 junit.framework.Test class #371.
Thanks to Piyush Sagar.
+* COLLECTIONS-839: Migrate Map tests to JUnit 5 assertions #391. Thanks to
Sam Ng, Gary Gregory, Bruno P. Kinoshita.
+* COLLECTIONS-835: Fix links in javadoc and documentations #325. Thanks to
Marc Wrobel.
+* Correct test of Collection toArray(Object[]) vs toArray() to optionally
ignore array order.
+ Ordering is not specified for some collections such as Bags.
Thanks to Partha Protim Paul.
+* COLLECTIONS-836: Correct test of BidiMap to optionally ignore testing the
key set matches the values order.
+ Ordering is not specified for some BidiMaps such as
DualHashBidiMaps. Thanks to Anant Dahiya.
+* COLLECTIONS-737: Return 0 immediately if the given iterable is null in
IterableUtils#size. Update tests. Thanks to Prodigysov.
+* COLLECTIONS-697: Javadoc for FixedSizeList should warn that modifying
underlying list is still allowed and is not prevented Thanks to Ranjan George.
+* Fill in some map test cases #104. Thanks to dota17.
+* COLLECTIONS-738: Remove the redundant assertNull in IterableUtilsTest.find
and update Javadocs. Thanks to Pengyu Nie.
+* COLLECTIONS-724: Simplify two remove-if loops #77. Thanks to Eitan Adler.
+* Fix inconsistent @throws comments in ListOrderedSet #125. Thanks to Chen.
+* COLLECTIONS-704: Update size to capacity for GrowthList #90. Thanks to
dota17.
+* TransformedSortedBagTest should work with TransformedSortedBag, not
TransformedBag #98. Thanks to dota17.
+* Remove the parentheses in the error message in CircularFifoQueue #107.
Thanks to dota17.
+* COLLECTIONS-747: MultiKey.getKeys class cast exception. Thanks to Gary
Gregory, Walter Laan.
+* COLLECTIONS-759: Use newline at end of file, and convert to Unix (LF
instead of CRLF) fixing checkstyle #147. Thanks to Bruno P. Kinoshita.
+* Fixed the typo and deal the NPE with Objects.requireNonNull #118. Thanks to
Chen.
+* COLLECTIONS-757: Javadoc BidiMap classes #146. Thanks to Chen.
+* COLLECTIONS-773: Assert ensureCapacity #198. Thanks to Martin Monperrus.
+* COLLECTIONS-775: Fix flaky CollectionUtilsTest.getFromMap() #200. Thanks to
Xin Tong, Bruno P. Kinoshita, Gary Gregory.
+* Minor Improvements #203, #208. Thanks to Arturo Bernal.
+* Fix typo erroring -> erring #202. Thanks to EruDev.
+* COLLECTIONS-734: Encountered an IllegalStateException while traversing with
Flat3Map.entrySet(). #115. Thanks to Chen.
+* Better NPE messages in CollectionUtils with Objects.requireNonNull #117.
Thanks to Chen, Bruno P. Kinoshita, Gary Gregory, Michael Osipov.
+* Improve MapUtils with the null checks, add JUnit for it and add Javadoc for
the parameter indent. #126. Thanks to Chen.
+* COLLECTIONS-793: Simplify Assertion. Thanks to Arturo Bernal.
+* [StepSecurity] ci: Harden GitHub Actions #401. Thanks to step-security-bot,
Gary Gregory.
+* Fix punctuation and minor Javadoc issues #409. Thanks to Martin Wiesner,
Bruno P. Kinoshita, Gary Gregory.
+* Deprecate IterableUtils 0-argument constructor. Thanks to Gary Gregory.
+* COLLECTIONS-850: Tests in org.apache.commons.collections4.multimap should
not depend on map iteration order, see also #429. Thanks to Gary Gregory,
Anirudh Madhavan.
+* COLLECTIONS-850: Reimplement FixedOrderComparator#equals() and hashCode(),
see also #392. Thanks to Gary Gregory, Saurabh Rahate.
+
+Changes
+-------
+
+* Bump org.easymock:easymock from 4.0.2 to 5.2.0 #352, #355, #375, #414.
Thanks to Gary Gregory, Dependabot.
+* Bump actions/cache. Thanks to Dependabot, Gary Gregory.
+* Bump actions/setup-java. Thanks to Dependabot, Gary Gregory.
+* Bump actions/checkout. Thanks to Dependabot, Gary Gregory.
+* Bump codecov/codecov-action. Thanks to Dependabot.
+* Bump Apache commons-parent from 48 to 67. Thanks to Gary Gregory,
Dependabot.
+* Bump Jacoco from 0.8.4 to 0.8.8. Thanks to Gary Gregory.
+* Bump tests from Apache Commons Lang 3.9 to 3.11. Thanks to Gary Gregory.
+* Bump maven-checkstyle-plugin 3.1.0 to 3.2.1 #379. Thanks to Gary Gregory.
+* Bump checkstyle from 8.29 to 9.3. Thanks to Gary Gregory.
+* COLLECTIONS-754: Bump to JUnit v5.6.2 #136. Thanks to John Patrick.
+* COLLECTIONS-777: Migrate JUnit 4.12 to 5.9.1 #324, #338. Thanks to John
Patrick, Gary Gregory, Dependabot.
+* COLLECTIONS-753: Bump Hamcrest to 2.2. Thanks to John Patrick.
+* Remove deprecated sudo setting. #161. Thanks to dengliming.
+* Bump tests from commons-io:commons-io 2.6 to 2.16.0 #180, #469. Thanks to
Gary Gregory.
+* Bump maven-pmd-plugin from 3.12.0 to 3.19.0 #167, #196, #253, #311, #334.
Thanks to Dependabot, Gary Gregory.
+* Bump optional commons-codec:commons-codec from 1.14 to 1.16.1. Thanks to
Gary Gregory.
+* Bump commons.junit.version from 5.6.2 to 5.8.2 #181 #213 #236 #252 #254
#268. Thanks to Dependabot.
+* COLLECTIONS-774: Bump maven-antrun-plugin from 1.8 to 3.1.0 #170, #303.
Thanks to Dependabot.
+* Bump maven-checkstyle-plugin from 3.1.1 to 3.1.2 #211. Thanks to Dependabot.
+* COLLECTIONS-779: Migrate assert to Assertions #209. Thanks to Arturo
Bernal, Gary Gregory.
+* COLLECTIONS-781: Add and use CollectionUtils.INDEX_NOT_FOUND constant.
Thanks to Arturo Bernal, Gary Gregory.
+* Bump commons-lang3 from 3.11 to 3.14.0. Thanks to Dependabot, Gary Gregory.
+* COLLECTIONS-785: Add new variables to oac.collections4.CollectionUtils and
use them in the code base. Thanks to Arturo Bernal.
+* Bump easymock from 4.2 to 4.3 #226. Thanks to Dependabot.
+* Bump maven-pmd-plugin from 3.15.0 to 3.16.0 #286. Thanks to Dependabot.
+* Bump commons-parent from 52 to 58 #299, #368, #373, #393. Thanks to
Dependabot, Gary Gregory.
+* Bump japicmp from 0.15.4 to 0.16.0. Thanks to Dependabot.
+* Bump pmd from 6.46.0 to 6.52.0 #318, #327, #333, #347. Thanks to Dependabot,
Gary Gregory.
+* Bump guava-testlib from 31.1-jre to 33.1.0-jre #394, #395, #404, #405, #411,
#423, #438, #462. Thanks to Dependabot.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.4 RELEASE NOTES
+--------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+Maintenance release.
+
+Changes in this version
+-----------------------
+
+New features
+------------
+
+* COLLECTIONS-715: Implement Collection's removeIf(). Thanks to morningmemo,
Gary Gregory.
+* COLLECTIONS-719: Create a PropertiesFactory and SortedPropertiesFactory.
Thanks to Gary Gregory.
+* COLLECTIONS-719: Support Transformer for LazyList #52. Thanks to Stephan
Windmüller, Bruno P. Kinoshita.
+* COLLECTIONS-723: Make use of FunctionalInterface #48. Thanks to Eitan
Adler, SOC, Bruno P. Kinoshita.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-710: NullPointerExceptions in CompositeCollection,
CompositeSet, and CompositeMap. Thanks to Yu Shi, Gary Gregory.
+
+Changes
+-------
+
+* COLLECTIONS-718: Fix LRUMap exception message. Thanks to Eitan Adler.
+* COLLECTIONS-716: Don't include email address in Exception messages. Thanks
to Sebb.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.3 RELEASE NOTES
+--------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+Update from Java 7 to Java 8, bug fixes, and small changes.
+
+Changes in this version include:
+
+New features
+------------
+
+* COLLECTIONS-696: AbstractReferenceMap made easier for subclassing; PR #51.
Thanks to Maxim Solodovnik.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-691: Use boolean operator for boolean result. Thanks to Eitan
Adler.
+* COLLECTIONS-701: StackOverflowError in SetUniqueList.add() when it receives
itself. Thanks to Shin Hong, Don Jeba.
+* COLLECTIONS-703: The PassiveExpiringMap#put() method should return the
previous record only if not expired. Thanks to Tomas Tulka.
+* COLLECTIONS-706: Add SetUtils.unmodifiableSet(T... items) method. Thanks to
Richard Eckart de Castilho, Gary Gregory.
+
+Changes
+-------
+
+* COLLECTIONS-688: Update platform requirement from Java 7 to 8.
+* COLLECTIONS-689: Link to Javadoc API broken. Thanks to Richard Walker.
+* COLLECTIONS-692: Replace use of deprecated Class#newInstance() PR #49.
Thanks to Gary Gregory, Eitan Adler.
+
+Please NOTE: Clirr errors reported for this release are false positive, this
is proved by Japicmp report
+And manual testing.
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.2 RELEASE NOTES
+--------------------------------------------
+
+The Apache Commons Collections package contains types that extend and augment
the Java Collections Framework.
+
+Update from Java 6 to Java 7, bug fixes, and small changes.
+
+Changes in this version include:
+
+New features
+------------
+
+* COLLECTIONS-681: Add test for MultiSetUtils Thanks to Stephan Fuhrmann.
+* COLLECTIONS-658: Add Automatic-Module-Name MANIFEST entry for Java 9
compatibility.
+* COLLECTIONS-589: Add null-safe MapUtils.size(Map<?, ?>) method. Thanks to
Gary Gregory.
+* COLLECTIONS-586: PatriciaTrie prefixMap clear throws NullPointerException.
Thanks to Shailender Bathula, Gary Gregory.
+* COLLECTIONS-654: Add class SortedProperties to sort keys.
+* COLLECTIONS-668: Add CollectionUtils containsAny method for primitive
array:
org.apache.commons.collections4.CollectionUtils.containsAny(Collection<?>,
T...). Thanks to Gary Gregory.
+* COLLECTIONS-575: Synchronized queue wrapper in QueueUtils. Thanks to Guram
Savinov, Grzegorz Rożniecki, Bruno P. Kinoshita, Gary Gregory.
+* COLLECTIONS-670: Add
org.apache.commons.collections4.IteratorUtils.first(Iterator). Thanks to Gary
Gregory.
+* COLLECTIONS-671: Add
org.apache.commons.collections4.IterableUtils.first(Iterable). Thanks to Gary
Gregory.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-599: HashEntry array object naming data initialized with double
the size during deserialization. Thanks to Tejas Patel, Saleem Akbar, Gary
Gregory.
+* COLLECTIONS-662: Unit tests MapUtilsTest and ListIteratorWrapperTest no
longer fail on Java 9. Thanks to Vamsi Kavuri.
+* COLLECTIONS-661: Intermittent test failures in Windows for
HashSetValuedHashMap.
+* COLLECTIONS-660: Uncomment test in AbstractMapTest regarding LRUMap equals.
+* COLLECTIONS-656: Fix site build on Java 8.
+* COLLECTIONS-653: Update Javadoc to Build on Java 1.8.
+* COLLECTIONS-606: Build status, Coverage status and Maven central weren't in
README.md Thanks to Vamsi Kavuri.
+* COLLECTIONS-594: Website spelling error: MultiValuedMapList. Thanks to
Javen O'Neal.
+* COLLECTIONS-597: Correction of Javadoc for
org.apache.commons.collections4.functors.CatchAndRethrowClosure. Thanks to
Enrique.
+* COLLECTIONS-678: The verification of unsupported iterator methods is not
complete. Thanks to Oscar Luis Vera Pérez.
+* COLLECTIONS-673: ListUtils.partition potential integer overflow. Thanks to
John Mark, Stephan Fuhrmann.
+
+Changes
+-------
+
+* COLLECTIONS-602: Improve efficiency of DefaultedMap.get. Thanks to John
Mark.
+* COLLECTIONS-603: Small improvements for generics, conditional statements,
and warnings suppressions. Thanks to Artem Konovalov.
+* COLLECTIONS-655: Update platform from Java 6 to Java 7.
+* COLLECTIONS-666: org.apache.commons.collections4.ListUtils.union(List,
List) should pre-allocate result list. Thanks to BELUGA BEHR.
+* COLLECTIONS-669: Update
org.apache.commons.collections4.CollectionUtils.addAll(Collection<C>, C[]) to
addAll(Collection<C>, C...). Thanks to BELUGA BEHR, Gary Gregory.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+Download page:
https://commons.apache.org/proper/commons-collections/download_collections.cgi
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 4.1 RELEASE NOTES
+--------------------------------------------
+
+Introduction
+------------
+
+Apache Commons Collections is a project to develop and maintain collection
+classes based on and inspired by the JDK collection framework.
+
+This v4.1 release is a minor and security release, fixing several bugs present
in
+previous releases of the 4.X branch. Additionally, this release provides a
mitigation
+for a known remote code exploitation via the standard java object serialization
+mechanism. Serialization support for unsafe classes in the functor package has
been
+completely removed (classes do not implement the Serializable interface
anymore).
+For more details, please refer to COLLECTIONS-580.
+
+All users are strongly encouraged to update to this release.
+
+
+Compatibility
+-------------
+
+ o Java 6 or later is now required (previous version 4.0 required Java 5).
+ o This release is source and binary compatible with the previous 4.0 release
+ of Commons Collections with the exception that some classes in the functor
+ package do not implement the Serializable interface anymore (see
COLLECTIONS-580).
+ o some unit tests are disabled when executed with an IBM JDK 6 due to a faulty
+ java.util.TreeMap implementation.
+
+Major changes since 4.0
+-----------------------
+
+ o Added interface MultiSet (package multiset)
+ o Added interfaces MultiValuedMap, ListValuedMap and SetValuedMap (package
multimap)
+ o Added fluent API for Iterable instances (class FluentIterable)
+
+
+Changes
+-------
+
+* [COLLECTIONS-580]: Serialization support for unsafe classes in the functor
package
+ has been removed as this can be exploited for remote code
execution
+ attacks. Classes considered to be unsafe are:
CloneTransformer,
+ ForClosure, InstantiateFactory, InstantiateTransformer,
InvokerTransformer,
+ PrototypeCloneFactory, PrototypeSerializationFactory,
WhileClosure.
+* [COLLECTIONS-551]: Deprecated various method in "CollectionUtils" in favor
of similar
+ methods in the newly introduced "IterableUtils".
+* [COLLECTIONS-570]: All constructors and static factory methods will now
throw a "NullPointerException"
+ if a required input argument is null. Previously
sometimes a "IllegalArgumentException"
+ was used.
+* [COLLECTIONS-571]: Deprecated methods "synchronizedCollection(Collection)"
and
+ "unmodifiableCollection(Collection)" in class
"CollectionUtils", the corresponding
+ methods in "java.util.Collections" should be used
instead.
+* [COLLECTIONS-562]: Upgraded minimum java requirement to Java 6 (up from Java
5).
+
+
+New features
+------------
+
+* [COLLECTIONS-508]: Added new interfaces "MultiValuedMap", "ListValuedMap"
and "SetValuedMap"
+ as a replacement for "MultiMap". Decorators and
implementations reside in
+ the "multimap" package and a "MultiMapUtils" class has
been added.
+ The existing interface "MultiMap" as well as the concrete
implementation
+ "MultiValueMap" has been deprecated.
+* [COLLECTIONS-567]: Added new MultiSet interface which is intended to be a
replacement for
+ the Bag interface. The main difference is that a MultiSet
is fully compatible
+ to the Collection contract.
+* [COLLECTIONS-572]: Added set operations to "SetUtils": union, difference,
intersection and disjunction.
+ The operations return a view of the result that is backed
by the input sets.
+* [COLLECTIONS-557]: Added support to specify the initial size of a "LRUMap".
Thanks to Philippe Mouawad.
+* [COLLECTIONS-565]: Added decorators for "NavigableSet" interface.
+* [COLLECTIONS-464]
+ +COLLECTIONS-442]: Added new class "FluentIterable" to support a fluent API
for manipulating
+ Iterable instances. Additionally various supporting
methods have been
+ added to "IterableUtils" and "IteratorUtils".
+* [COLLECTIONS-464]: Added new "ZippingIterator" and factory methods
"IteratorUtils#zippingIterator(...)".
+* [COLLECTIONS-464]: Added new decorator "SkippingIterator" and factory
methods "IteratorUtils#skippingIterator(...)".
+* [COLLECTIONS-556]: Added method "SetUtils#newIdentityHashSet()" which
returns a new identity HashSet
+ using reference-equality instead of object-equality.
+* [COLLECTIONS-395]: Added method "LRUMap#get(Object, boolean)" that allows to
query the map
+ without affecting the least recently used order. Thanks
to David Hawthorne.
+* [COLLECTIONS-427]: Added "toString(...)" methods to newly created
"IterableUtils" and existing "IteratorUtils"
+ to get a string representation of an Iterable/Iterator
instance similar to "Arrays#toString(...)".
+ Thanks to Gonçalo Marques.
+* [COLLECTIONS-539]: Changed scope of "CircularFifoQueue#isAtFullCapacity()"
to public. Thanks to Guram Savinov.
+* [COLLECTIONS-511]: Added new methods "IterableUtils#partition(...)" to
partition an input collection
+ into separate output collections based on evaluation of
one or more predicates.
+ Thanks to Nathan Blomquist, Brent Worden.
+* [COLLECTIONS-529]: Added methods "removeAll(...)" and "retainAll(...)" to
"CollectionUtils" that perform
+ equality checks using the provided "Equator" object
instead of "Object#equals()".
+ Thanks to Alexander Muthmann, Dipanjan Laha.
+* [COLLECTIONS-503]: Added new transformer "IfTransformer" and factory methods
"TransformerUtils#ifTransformer(...)"
+ which replace
"TransformerUtils#switchTransformer(Predicate, Transformer, Transformer)".
+ Thanks to Josh Cain.
+* [COLLECTIONS-471]: Added new decorator "BoundedIterator" and factory methods
"IteratorUtils#boundedIterator(...)".
+ Thanks to Radford Tam.
+
+
+Fixed Bugs
+----------
+
+* [COLLECTIONS-580]: Added validation when de-serializing a
"MultiValueMap#ReflectionFactory":
+ only Collection classes are allowed, otherwise an
UnsupportedOperationException
+ will be thrown during de-serialization.
+* [COLLECTIONS-576]: Subclasses of MultiKey did not re-calculate their
hashcode after de-serialization.
+ Thanks to Stephan Roch.
+* [COLLECTIONS-566]: "IteratorUtils#collate(...)" methods did not use natural
ordering when a
+ null comparator was provided.
+* [COLLECTIONS-558]: Changed return type of "ListOrderedSet#remove(int)" from
Object to the generic
+ type parameter. Thanks to Felix Rabe.
+* [COLLECTIONS-555]: Added clarification to javadoc of "TreeBag#add(Object)"
wrt null arguments.
+ Thanks to M Kim.
+* [COLLECTIONS-427]: Reverted performance improvement for
"SetUniqueList#retainAll(Collection)"
+ introduced in 4.0. Added clarifying javadoc wrt runtime
complexity instead.
+* [COLLECTIONS-426]: Reverted performance improvement for
"ListOrderedSet#retainAll(Collection)"
+ introduced in 4.0. Added clarifying javadoc wrt runtime
complexity instead.
+* [COLLECTIONS-530]: Added a Builder for "PredicatedCollection". Elements
added to the builder
+ that fail the predicate will not throw an
IllegalArgumentException. The builder
+ supports creating predicated lists, bags, sets and
queues. Thanks to Erik.
+* [COLLECTIONS-545]: Documented runtime complexity of
"CollectionUtils#removeAll(Collection, Collection).
+ Thanks to Oswaldo Olivo.
+* [COLLECTIONS-543]: "AbstractCollectionDecorator" doesn't forward equals and
hashCode anymore.
+* [COLLECTIONS-544]: Documented runtime complexity of
"CollectionUtils#retainAll(Collection, Collection).
+ Thanks to Oswaldo Olivo.
+* [COLLECTIONS-542]: "AbstractHashedMap" still inherits from "AbstractMap",
contrary to what
+ the class javadoc stated. The inheritance will now be
removed in v5.0.
+* [COLLECTIONS-525]: The map returned by "PatriciaTrie#prefixMap()" did not
contain all keys
+ that are prefixed by the given search key in some rare
cases. Thanks to Zigler Zhang.
+* [COLLECTIONS-537]: Harmonized signature of factory methods for
functor-related classes which take
+ a collection as input with their array counterparts.
Thanks to Frank Jakop.
+* [COLLECTIONS-540]: Added overloaded method "CollectionUtils#get(Enumeration,
int)" and simplified
+ code for "CollectionUtils#get(Object, int)". Thanks to
Daniel Stewart, Issam El Atif.
+* [COLLECTIONS-536]: Improved check for null input in "MapUtils#putAll(Map,
Object[])". Thanks to Tagir Valeev.
+* [COLLECTIONS-534]: Added clarifying javadoc wrt runtime complexity of
"CollectionBag#retainAll".
+ Thanks to Oswaldo Olivo.
+* [COLLECTIONS-531]: Use correct type bounds in
+ "CollectionUtils#isEqualCollection(Collection,
Collection, Equator)" to
+ prevent a "ClassCastException" at runtime for invalid
inputs. Thanks to Dipanjan Laha.
+* [COLLECTIONS-523]: Removed unneeded private method in "PassiveExpiringMap".
Thanks to Thiago Andrade.
+* [COLLECTIONS-516]: Added clarification to the javadoc of
"MapUtils#toProperties(Map)" in case
+ of null keys/values. Thanks to Cyrille Artho.
+* [COLLECTIONS-524]: "ListOrderedSet#listOrderedSet(List)" did not remove
duplicates from the
+ input list as advertised in the javadoc. Thanks to J
Goodfellow.
+* [COLLECTIONS-521]: "MultiKeyMap" was throwing a "NullPointerException" for
various operations
+ if two key arguments have been used and the second was
"null". Thanks to Maxime Nay.
+* [COLLECTIONS-522]: Updated code example for "PredicatedList". Thanks to
Erik.
+* [COLLECTIONS-512]: "TransformingComparator" and "FixedOrderComparator" did
not comply with
+ the contract of "Object#equals". Thanks to Cyrille Artho.
+* [COLLECTIONS-510]: Fix compilation errors when using source level 1.8 and a
recent java 8 compiler.
+ Thanks to Hollis Waite.
+* [COLLECTIONS-509]: Clarified javadoc of "CollectionBag" wrt changes from the
original Bag interface.
+* [COLLECTIONS-507]: Removed wrong type bounds for
"ComparatorUtils#chainedComparator(...)". Thanks to Gerson.
+* [COLLECTIONS-506]: Added javadoc clarification to class "CollectionUtils"
that input objects which
+ override "Object#equals(Object)" must also maintain the
general contract of
+ "Object#hashCode()" as various utility methods take
advantage of sets/maps/bags.
+ Thanks to Anthony Communier.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/proper/commons-collections/
+
+-----------------------------------------------------------------------------
+
+Apache Commons Collections 3.2.2 RELEASE NOTES
+----------------------------------------------
+
+Introduction
+------------
+
+Commons collections is a project to develop and maintain collection classes
+based on and inspired by the JDK collection framework.
+This release is JDK1.3 compatible, and does not use JDK1.5 generics.
+
+This v3.2.2 release is a bugfix release, fixing several bugs present in the
previous
+releases of the 3.2 branch. Additionally, this release provides a mitigation
for a
+known remote code exploitation via the standard java object serialization
mechanism.
+By default, serialization support for unsafe classes in the functor package is
+disabled and will result in an exception when either trying to serialize or
de-serialize
+an instance of these classes. For more details, please refer to
COLLECTIONS-580.
+
+All users are strongly encouraged to update to this release.
+
+
+Changes in this version include:
+
+Changes
+-------
+
+* COLLECTIONS-580: Serialization support for unsafe classes in the functor
package is
+ disabled by default as this can be exploited for remote
code execution
+ attacks. To re-enable the feature the system property
+ "org.apache.commons.collections.enableUnsafeSerialization"
needs to be
+ set to "true".
+ Classes considered to be unsafe are: CloneTransformer,
ForClosure,
+ InstantiateFactory, InstantiateTransformer,
InvokerTransformer,
+ PrototypeCloneFactory, PrototypeSerializationFactory,
WhileClosure.
+
+Fixed Bugs
+----------
+
+* COLLECTIONS-538: "ExtendedProperties" will now use a privileged action to
access the
+ "file.separator" system property. In case the class does
not have
+ permission to read system properties, the "File#separator"
field will
+ be used instead. Thanks to Trejkaz.
+* COLLECTIONS-447: Tree traversal with a TreeListIterator will not be
affected anymore by
+ the removal of an element directly after a call to
previous(). Thanks to Jeffrey Barnes.
+* COLLECTIONS-444: SetUniqueList.set(int, Object) now works correctly if the
object to be inserted
+ is already placed at the given position. Thanks to Thomas
Vahrst, John Vasileff.
+* COLLECTIONS-350: Removed debug output in "MapUtils#getNumber(Map)". Thanks
to Michael Akerman.
+* COLLECTIONS-335: Fixed cache assignment for "TreeBidiMap#entrySet". Thanks
to sebb.
+* COLLECTIONS-334: Synchronized access to lock in "StaticBucketMap#size()".
Thanks to sebb.
+* COLLECTIONS-307: "SetUniqueList#subList()#contains(Object)" will now
correctly check the subList
+ rather than the parent list. Thanks to Christian Semrau.
+* COLLECTIONS-304: "SetUniqueList#set(int, Object)" will now correctly
enforce the uniqueness constraint.
+ Thanks to Rafa? Figas,Bjorn Townsend.
+* COLLECTIONS-294: "CaseInsensitiveMap" will now convert input strings to
lower-case in a
+ locale-independent manner. Thanks to Benjamin Bentmann.
+* COLLECTIONS-266: "MultiKey" will now be correctly serialized/de-serialized.
Thanks to Joerg Schaible.
+* COLLECTIONS-261: "Flat3Map#remove(Object)" will now return the correct
value mapped to the removed key
+ if the size of the map is less or equal 3. Thanks to ori.
+* COLLECTIONS-249: "SetUniqueList.addAll(int, Collection)" now correctly add
the collection at the
+ provided index. Thanks to Joe Kelly.
+* COLLECTIONS-228: "MultiValueMap#put(Object, Object)" and
"MultiValueMap#putAll(Object, Collection)"
+ now correctly return if the map has changed by this
operation.
+* COLLECTIONS-219: "CollectionUtils#removeAll" wrongly called
"ListUtils#retainAll". Thanks to Tom Leccese.
+* COLLECTIONS-217: Calling "setValue(Object)" on any Entry returned by a
"Flat3Map" will now
+ correctly set the value for the current entry. Thanks to
Matt Bishop.
+
+
+For complete information on Apache Commons Collections, including instructions
on how to submit bug reports,
+patches, or suggestions for improvement, see the Apache Commons Collections
website:
+
+https://commons.apache.org/collections/
+
+-----------------------------------------------------------------------------
Copied:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz)
==============================================================================
Binary file (source and/or target). No diff available.
Copied:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.asc
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.asc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.asc
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.asc)
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+
+iJEEABYKADkWIQT03VnJAUi9xSvrkKRTCqXyXCUBHwUCanRcMhsUgAAAAAAEAA5t
+YW51MiwyLjUrMS4xMiwwLDMACgkQUwql8lwlAR/bGgD/SymcoMNF35nVJPSzQrQ4
+bftoKM7jEVeLX4yeiYojN7cBAM+M2t4LGOEJYpWxDGy2aWB2K/yik7IEyJM65g1V
+wSYK
+=69ML
+-----END PGP SIGNATURE-----
Copied:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.tar.gz.sha512)
@@ -0,0 +1 @@
+b54c61737ff2ec7eaf6e1caf4d2adae42534dd28a9383c3fae1d5f299bce97b00ca15aee2c81ba4a4b50e64db69103cc3629a43af39b52f90990cdee944d3aa5
Copied: release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip)
==============================================================================
Binary file (source and/or target). No diff available.
Copied:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.asc
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.asc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.asc
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.asc)
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+
+iJEEABYKADkWIQT03VnJAUi9xSvrkKRTCqXyXCUBHwUCanRcMhsUgAAAAAAEAA5t
+YW51MiwyLjUrMS4xMiwwLDMACgkQUwql8lwlAR/32QD/a6ObsnJfr1gavVofw5wO
+m6Q0GIuZf7VOy8rwcqfuFKQA/27R3QEUYXDjgOUR+K5HyFpGRTu/Ui0fSQPDFy6x
+3mcJ
+=PUQ9
+-----END PGP SIGNATURE-----
Copied:
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.sha512
(from r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.sha512)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/binaries/commons-collections4-4.6.0-bin.zip.sha512
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/binaries/commons-collections4-4.6.0-bin.zip.sha512)
@@ -0,0 +1 @@
+7dd17310d9cde4148efca1c077040b4fc390056ac6ed93891037e012db89e5e5fac7cf6b7031c053f66fb36f7a246dab3c9b11a09c8974a8ad2a4b29c4ce7c01
Copied:
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz (from
r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz)
==============================================================================
Binary file (source and/or target). No diff available.
Copied:
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.asc
(from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.asc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.asc
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.asc)
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+
+iJEEABYKADkWIQT03VnJAUi9xSvrkKRTCqXyXCUBHwUCanRcMhsUgAAAAAAEAA5t
+YW51MiwyLjUrMS4xMiwwLDMACgkQUwql8lwlAR/Q/QD/dIlyWmNYSEbyZWuhnGD2
+ex9erJHaRJO8W36NtebK85wBAIMlAaVB4oge9l2bfw1tOJ0sWZQa+x+NKvyW3P9N
+0L4F
+=yTTX
+-----END PGP SIGNATURE-----
Copied:
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.sha512
(from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.sha512)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/source/commons-collections4-4.6.0-src.tar.gz.sha512
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.tar.gz.sha512)
@@ -0,0 +1 @@
+445a1771c01ca87dd37e5ed16304858add36b4f7b8a0032ef2ba6aae8c4e59fa31e45ebcc67c1c71c64f34784c4382b2378ddc212819000a1f04ec25e77513d5
Copied: release/commons/collections/source/commons-collections4-4.6.0-src.zip
(from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip)
==============================================================================
Binary file (source and/or target). No diff available.
Copied:
release/commons/collections/source/commons-collections4-4.6.0-src.zip.asc (from
r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.asc)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ release/commons/collections/source/commons-collections4-4.6.0-src.zip.asc
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.asc)
@@ -0,0 +1,8 @@
+-----BEGIN PGP SIGNATURE-----
+
+iJEEABYKADkWIQT03VnJAUi9xSvrkKRTCqXyXCUBHwUCanRcMhsUgAAAAAAEAA5t
+YW51MiwyLjUrMS4xMiwwLDMACgkQUwql8lwlAR/iqgEAkgOZl02F3cIQ4xFtebRB
+KfOYs/nnsG+ytEAq2GO1nRQA/3HLddBF0GASEiKYEu2HIpMIDG82zLUjtKK8x4wa
+iEEK
+=nKLP
+-----END PGP SIGNATURE-----
Copied:
release/commons/collections/source/commons-collections4-4.6.0-src.zip.sha512
(from r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.sha512)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++
release/commons/collections/source/commons-collections4-4.6.0-src.zip.sha512
Mon Aug 10 11:40:01 2026 (r86676, copy of r86675,
dev/commons/collections/4.6.0-RC1/source/commons-collections4-4.6.0-src.zip.sha512)
@@ -0,0 +1 @@
+6c58b8fd8eee2bc2b081e26c18685a0f13074ba92ef4ca5bd413ffaad71f3df04c977aa56f0eac9472cc8ddee5cb86bfc9525e60816e5e71c78f762566c0c9d2