11.0.0
This is the 11.0.0 major release. The central theme of this release is the addition of new APIs, features as requested by the community and decrease tech debt.
New Functionality
- Helpful and convenient APIs - These are API requested either by the community or by project committers.
- Added putAllMapIterable method to Mutable Maps.
- Added selectWithIndex and rejectWithIndex to OrderedIterable and ListIterable.
- Added toImmutableSortedBagBy,toImmutableSortedMap, toImmutableSortedMapBy,toSortedMap, toSortedMapBy to Collectors2.
- Fused methods - Added toImmutableMap, toImmutableBiMap,toImmutableSortedList, toImmutableSortedSet, toImmutableSortedBag, toImmutableList/Set/Bag to RichIterable. Added toImmutableSortedBag/List/Set with Comparator and toImmutableSortedBagBy/ListBy/SetBy with Function to RichIterable.
- Added newWithMap, newWithMapIterable to ImmutableMap and withMapIterable, putAllMapIterable to MutableMap.
- Added toImmutableList, toImmutableSet, toImmutableBag to AbstractMultiReaderMutableCollection and AbstractSynchronizedRichIterable
- Implemented containsAny and containsNone on primitive iterables.
- Added toSortedList(Comparator) and toSortedListBy(Function) to primitive Iterables.
- Implemented Bag.anySatisfyWithOccurrences(), Bag.allSatisfyWithOccurrences(), Bag.noneSatisfyWithOccurrences(), Bag.detectWithOccurrences().
- Added union, intersect, difference, symmetric difference, cartesianProduct , isSubsetOf, isProperSubsetOf operations on primitive sets.
- Added Norwegian translation for the Eclipse Collections website.
Tech Debt Reduction
- Added test coverage to improve PIT Mutation coverage and missing tests in some cases.
- Deprecated ImmutableArrayStack.
- Removed implementations of OrderedIterable.toStack(), aggregateBy, aggregateInPlaceBy as they can use the default implementation instead.
Removed Functionality
- Removed Verify.assertThrows() which takes a Runnable in favor of Assert.assertThrows(). This is a breaking change.
- Removed assertNotEquals() from Verify as Assert already has the same API.
Ongoing maintenance changes
- Upgrades to project dependencies - EBR plugin, actions/cache, actions/upload-artifact, antlr ST4, checkstyle, codehaus maven plugin, jacoco, jmh-core, maven-resources-plugin, JUnit, setup-java.
- Other changes include adding badges to README.
- Added documentation on serializing Eclipse Collections with Jackson.