containers 0.6.3.1
Bug fixes
-
Fix
traverse
andtraverseWithKey
forIntMap
, which would
previously produce invalidIntMap
s 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
compose
forMap
andIntMap
(Thanks, Alexandre Esteves). -
Add
alterF
forSet
andIntSet
(Thanks, Simon Jakobi). -
Add
Data.IntSet.mapMonotonic
(Thanks, Javran Cheng). -
Add
instance Bifoldable Map
(Thanks, Joseph C. Sible).
Performance improvements
-
Make
(<*)
forData.Sequence
incrementally asymptotically optimal.
This finally completes the task, begun in December 2014, of making all
theApplicative
methods 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
fromList
and related functions inData.IntSet
,Data.IntMap
andData.IntMap.Strict
(Thanks, Bertram Felgenhauer). -
Use
count{Leading,Trailing}Zeros
inData.IntSet
internals (Thanks, Alex
Biehl).
Other changes
-
Reduce usage of the
Forest
type 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
'sMonoid
instance (Thanks, Fumiaki Kinoshita).