Hello community,
here is the log from the commit of package ghc-unordered-containers for
openSUSE:Factory checked in at 2020-10-23 15:15:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-unordered-containers (Old)
and /work/SRC/openSUSE:Factory/.ghc-unordered-containers.new.3463 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-unordered-containers"
Fri Oct 23 15:15:18 2020 rev:22 rq:842773 version:0.2.13.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-unordered-containers/ghc-unordered-containers.changes
2020-08-28 21:40:30.584868073 +0200
+++
/work/SRC/openSUSE:Factory/.ghc-unordered-containers.new.3463/ghc-unordered-containers.changes
2020-10-23 15:15:22.362163920 +0200
@@ -1,0 +2,9 @@
+Tue Oct 6 08:56:43 UTC 2020 - [email protected]
+
+- Update unordered-containers to version 0.2.13.0.
+ Upstream has edited the change log file since the last release in
+ a non-trivial way, i.e. they did more than just add a new entry
+ at the top. You can review the file at:
+
http://hackage.haskell.org/package/unordered-containers-0.2.13.0/src/CHANGES.md
+
+-------------------------------------------------------------------
Old:
----
unordered-containers-0.2.12.0.tar.gz
New:
----
unordered-containers-0.2.13.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-unordered-containers.spec ++++++
--- /var/tmp/diff_new_pack.htkKRs/_old 2020-10-23 15:15:22.898164178 +0200
+++ /var/tmp/diff_new_pack.htkKRs/_new 2020-10-23 15:15:22.902164180 +0200
@@ -19,7 +19,7 @@
%global pkg_name unordered-containers
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.2.12.0
+Version: 0.2.13.0
Release: 0
Summary: Efficient hashing-based container types
License: BSD-3-Clause
++++++ unordered-containers-0.2.12.0.tar.gz ->
unordered-containers-0.2.13.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unordered-containers-0.2.12.0/CHANGES.md
new/unordered-containers-0.2.13.0/CHANGES.md
--- old/unordered-containers-0.2.12.0/CHANGES.md 2001-09-09
03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/CHANGES.md 2001-09-09
03:46:40.000000000 +0200
@@ -1,3 +1,9 @@
+## [0.2.13.0]
+
+* [Add
`HashMap.compose`.](https://github.com/haskell-unordered-containers/unordered-containers/pull/299)
Thanks Alexandre Esteves.
+
+[0.2.13.0]:
https://github.com/haskell-unordered-containers/unordered-containers/compare/v0.2.12.0...v0.2.13.0
+
## [0.2.12.0]
* Add `HashMap.isSubmapOf[By]` and `HashSet.isSubsetOf`. Thanks Sven Keidel.
([#282])
@@ -7,7 +13,7 @@
* Documentation improvements in `Data.HashSet`, including a beginner-friendly
introduction. Thanks Matt Renaud. ([#267])
-* `HashMap[.Strict].alterF`: Skip key deletion for absent keys. ([#288])
+* `HashMap.alterF`: Skip key deletion for absent keys. ([#288])
* Remove custom `unsafeShift{L,R}` definitions. ([#281])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unordered-containers-0.2.12.0/Data/HashMap/Internal/Strict.hs
new/unordered-containers-0.2.13.0/Data/HashMap/Internal/Strict.hs
--- old/unordered-containers-0.2.12.0/Data/HashMap/Internal/Strict.hs
2001-09-09 03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/Data/HashMap/Internal/Strict.hs
2001-09-09 03:46:40.000000000 +0200
@@ -74,6 +74,9 @@
, unionWithKey
, unions
+ -- ** Compose
+ , compose
+
-- * Transformations
, map
, mapWithKey
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unordered-containers-0.2.12.0/Data/HashMap/Internal.hs
new/unordered-containers-0.2.13.0/Data/HashMap/Internal.hs
--- old/unordered-containers-0.2.12.0/Data/HashMap/Internal.hs 2001-09-09
03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/Data/HashMap/Internal.hs 2001-09-09
03:46:40.000000000 +0200
@@ -60,6 +60,9 @@
, unionWithKey
, unions
+ -- ** Compose
+ , compose
+
-- * Transformations
, map
, mapWithKey
@@ -418,7 +421,7 @@
#endif
-- | The ordering is total and consistent with the `Eq` instance. However,
--- nothing else about the ordering is specified, and it may change from
+-- nothing else about the ordering is specified, and it may change from
-- version to version of either this package or of hashable.
instance (Ord k, Ord v) => Ord (HashMap k v) where
compare = cmp compare compare
@@ -1679,6 +1682,29 @@
unions = L.foldl' union empty
{-# INLINE unions #-}
+
+------------------------------------------------------------------------
+-- * Compose
+
+-- | Relate the keys of one map to the values of
+-- the other, by using the values of the former as keys for lookups
+-- in the latter.
+--
+-- Complexity: \( O (n * \log(m)) \), where \(m\) is the size of the first
argument
+--
+-- >>> compose (fromList [('a', "A"), ('b', "B")]) (fromList
[(1,'a'),(2,'b'),(3,'z')])
+-- fromList [(1,"A"),(2,"B")]
+--
+-- @
+-- ('compose' bc ab '!?') = (bc '!?') <=< (ab '!?')
+-- @
+--
+-- @since UNRELEASED
+compose :: (Eq b, Hashable b) => HashMap b c -> HashMap a b -> HashMap a c
+compose bc !ab
+ | null bc = empty
+ | otherwise = mapMaybe (bc !?) ab
+
------------------------------------------------------------------------
-- * Transformations
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unordered-containers-0.2.12.0/Data/HashMap/Lazy.hs
new/unordered-containers-0.2.13.0/Data/HashMap/Lazy.hs
--- old/unordered-containers-0.2.12.0/Data/HashMap/Lazy.hs 2001-09-09
03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/Data/HashMap/Lazy.hs 2001-09-09
03:46:40.000000000 +0200
@@ -59,6 +59,9 @@
, unionWithKey
, unions
+ -- ** Compose
+ , compose
+
-- * Transformations
, map
, mapWithKey
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/unordered-containers-0.2.12.0/Data/HashMap/Strict.hs
new/unordered-containers-0.2.13.0/Data/HashMap/Strict.hs
--- old/unordered-containers-0.2.12.0/Data/HashMap/Strict.hs 2001-09-09
03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/Data/HashMap/Strict.hs 2001-09-09
03:46:40.000000000 +0200
@@ -58,6 +58,9 @@
, unionWithKey
, unions
+ -- ** Compose
+ , compose
+
-- * Transformations
, map
, mapWithKey
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/unordered-containers-0.2.12.0/unordered-containers.cabal
new/unordered-containers-0.2.13.0/unordered-containers.cabal
--- old/unordered-containers-0.2.12.0/unordered-containers.cabal
2001-09-09 03:46:40.000000000 +0200
+++ new/unordered-containers-0.2.13.0/unordered-containers.cabal
2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,5 @@
name: unordered-containers
-version: 0.2.12.0
+version: 0.2.13.0
synopsis: Efficient hashing-based container types
description:
Efficient hashing-based container types. The containers have been