containers v0.6.4.1 Release Notes

Release Date: 2020-09-21 // over 3 years ago

Previous changes from v0.6.3.1

  • ๐Ÿ› Bug fixes

    ๐Ÿ›  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).

    โž• Additions

    โž• 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

    ๐Ÿ‘‰ Make (<*) for Data.Sequence incrementally asymptotically optimal.
    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

    Other changes

    โฌ‡๏ธ Reduce usage of the Forest type synonym in Data.Tree (Thanks, David

    โž• 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's Monoid instance (Thanks, Fumiaki Kinoshita).