At long last, we have released containers-0.6.3.1. The most important
changes in this release are bug fixes for IntMap traversals:
* Fix traverse and traverseWithKey for IntMap, which would previously
produce invalid IntMaps 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). These now traverse in
key order; previously they would traverse non-negative keys before
negative keys.
If you traverse any IntMaps, please take note of these changes.
We also have several additions to the API:
* Add compose for Map and IntMap (Thanks, Alexandre Esteves).
* Add alterF for Set and IntSet (Thanks, Simon Jakobi).
* Add Data.IntSet.mapMonotonic (Thanks, Javran Cheng).
* Add instance Bifoldable Map (Thanks, Joseph C. Sible).
Performance improvements of note:
* Make (<*) for Data.Sequence incrementally asymptotically optimal
(Thanks, David Feuer). This finally completes the task, begun in
December 2014, of making all the Applicative 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 in Data.IntSet, Data.IntMap
and Data.IntMap.Strict (Thanks, Bertram Felgenhauer).
* Use count{Leading,Trailing}Zeros in Data.IntSet internals (Thanks,
Alex Biehl).
There are also numerous documentation improvements and packaging
updates. Please see the changelog for full details.
Thanks to all the contributors,
The containers team
_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.