Sourced from org.jetbrains.kotlinx:kotlinx-collections-immutable's releases.
v0.5.2
- Fixed
addingAll,removingAll,retainingAll,intersect, andcontainsAllonPersistentHashSet,puttingAllonPersistentHashMap, and their builder counterparts returning wrong results when a collision node meets a single element at the bottom trie level #294- Fixed
puttingAllonPersistentHashMap, andputAllon its builder, keeping the receiver's value for a key that sits in a collision node on both sides #300- Fixed
PersistentHashSet.equalsbeing asymmetric afterintersect,retainingAll, or the builder'sretainAll#291- Fixed
PersistentHashMapBuilder.putof an already stored value invalidating live iterators and makingbuild()return a new map when the key is in a collision node #304- Fixed a live iterator of
PersistentHashMapBuilderreturning the old values after aputAllthat only replaces values #308- Fixed
PersistentOrderedMapBuilderiterators throwingConcurrentModificationExceptionafterMutableMap.MutableEntry.setValue, or aputthat only replaces a value, during iteration #307- Fixed
MutableMap.MutableEntry.setValueon aPersistentOrderedMapBuilderentry re-adding the key after it was removed from the builder #310Full changelog: https://github.com/Kotlin/kotlinx.collections.immutable/compare/v0.5.1...v0.5.2
Sourced from org.jetbrains.kotlinx:kotlinx-collections-immutable's changelog.
0.5.2
- Fixed
addingAll,removingAll,retainingAll,intersect, andcontainsAllonPersistentHashSet,puttingAllonPersistentHashMap, and their builder counterparts returning wrong results when a collision node meets a single element at the bottom trie level #294- Fixed
puttingAllonPersistentHashMap, andputAllon its builder, keeping the receiver's value for a key that sits in a collision node on both sides #300- Fixed
PersistentHashSet.equalsbeing asymmetric afterintersect,retainingAll, or the builder'sretainAll#291- Fixed
PersistentHashMapBuilder.putof an already stored value invalidating live iterators and makingbuild()return a new map when the key is in a collision node #304- Fixed a live iterator of
PersistentHashMapBuilderreturning the old values after aputAllthat only replaces values #308- Fixed
PersistentOrderedMapBuilderiterators throwingConcurrentModificationExceptionafterMutableMap.MutableEntry.setValue, or aputthat only replaces a value, during iteration #307- Fixed
MutableMap.MutableEntry.setValueon aPersistentOrderedMapBuilderentry re-adding the key after it was removed from the builder #310
9f961e4
Release v0.5.21d00eea
Skip the setValue write when the entry's key is gone from the builder
(#315)8a49b20
Count the value overwrites of putAll and keep the stored keys (#312)59bc873
Count only size changes for the ordered map builder's iterators (#311)2b9cc44
Return the collision node as is when the put value is already stored (#309)c9a67cb
Take the argument's value when two collision nodes share a key (#302)024f04c
Dispatch bulk trie ops to collision helpers at the bottom level (#301)578f6ed
Update kotlinx.benchmark to 0.4.17e72f86e
Lift the single remaining element to the root in set retainAll (#293)1fd89dd
Restore commented-out invariant asserts (#290)