containers 0.6.3.1
Bug fixes
-
Fix
traverseandtraverseWithKeyforIntMap, which would
previously produce invalidIntMaps when the input contained
negative keys (Thanks, Felix Paulusma). -
Fix the traversal order of various functions for
Data.IntMap:
traverseWithKey,traverseMaybeWithKey,filterWithKeyA,
minimum,maximum,mapAccum,mapAccumWithKey,mapAccumL,
mapAccumRWithKey,mergeA(Thanks, Felix Paulusma, Simon Jakobi).
Additions
-
Add
composeforMapandIntMap(Thanks, Alexandre Esteves). -
Add
alterFforSetandIntSet(Thanks, Simon Jakobi). -
Add
Data.IntSet.mapMonotonic(Thanks, Javran Cheng). -
Add
instance Bifoldable Map(Thanks, Joseph C. Sible).
Performance improvements
-
Make
(<*)forData.Sequenceincrementally asymptotically optimal.
This finally completes the task, begun in December 2014, of making all
theApplicativemethods for sequences asymptotically optimal
even when their results are consumed incrementally. Many thanks to
Li-Yao Xia and Bertram Felgenhauer for helping to clean up and begin
to document this rather tricky code. -
Speed up
fromListand related functions inData.IntSet,Data.IntMap
andData.IntMap.Strict(Thanks, Bertram Felgenhauer). -
Use
count{Leading,Trailing}ZerosinData.IntSetinternals (Thanks, Alex
Biehl).
Other changes
-
Reduce usage of the
Foresttype synonym inData.Tree(Thanks, David
Feuer). -
Address a Core lint warning for
foldToMaybeTree(Thanks, Matthew Pickering). -
Improve documentation (Thanks to Daniel Wagner, Johannes Waldmann, Steve Mao,
Gabriel Greif, Jean-Baptiste Mazon, Ziyang Liu, Matt Renaud, Li-Yao Xia). -
Improvements to the testsuite and benchmarks (Thanks, Bertram Felgenhauer,
Simon Jakobi, Johannes Waldmann). -
Canonicalise
Seq'sMonoidinstance (Thanks, Fumiaki Kinoshita).