Hello community, here is the log from the commit of package ghc-mono-traversable for openSUSE:Factory checked in at 2019-10-18 14:34:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-mono-traversable (Old) and /work/SRC/openSUSE:Factory/.ghc-mono-traversable.new.2352 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-mono-traversable" Fri Oct 18 14:34:21 2019 rev:19 rq:737205 version:1.0.13.0 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-mono-traversable/ghc-mono-traversable.changes 2019-08-24 18:44:25.737768749 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-mono-traversable.new.2352/ghc-mono-traversable.changes 2019-10-18 14:34:23.388089952 +0200 @@ -1,0 +2,8 @@ +Fri Oct 4 02:01:58 UTC 2019 - psim...@suse.com + +- Update mono-traversable to version 1.0.13.0. + ## 1.0.13.0 + * Added `WrappedPoly` to `Data.MonoTraversable` + [#180](https://github.com/snoyberg/mono-traversable/pull/180) + +------------------------------------------------------------------- Old: ---- mono-traversable-1.0.12.0.tar.gz New: ---- mono-traversable-1.0.13.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-mono-traversable.spec ++++++ --- /var/tmp/diff_new_pack.jGmA5e/_old 2019-10-18 14:34:23.864088713 +0200 +++ /var/tmp/diff_new_pack.jGmA5e/_new 2019-10-18 14:34:23.868088702 +0200 @@ -19,7 +19,7 @@ %global pkg_name mono-traversable %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.0.12.0 +Version: 1.0.13.0 Release: 0 Summary: Type classes for mapping, folding, and traversing monomorphic containers License: MIT ++++++ mono-traversable-1.0.12.0.tar.gz -> mono-traversable-1.0.13.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mono-traversable-1.0.12.0/ChangeLog.md new/mono-traversable-1.0.13.0/ChangeLog.md --- old/mono-traversable-1.0.12.0/ChangeLog.md 2019-08-14 05:22:01.000000000 +0200 +++ new/mono-traversable-1.0.13.0/ChangeLog.md 2019-10-03 14:47:12.000000000 +0200 @@ -1,3 +1,7 @@ +## 1.0.13.0 +* Added `WrappedPoly` to `Data.MonoTraversable` + [#180](https://github.com/snoyberg/mono-traversable/pull/180) + ## 1.0.12.0 * Added `filterSet` to `Data.Containers` * Use container specific implementations for `filterSet` and `filterMap` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mono-traversable-1.0.12.0/mono-traversable.cabal new/mono-traversable-1.0.13.0/mono-traversable.cabal --- old/mono-traversable-1.0.12.0/mono-traversable.cabal 2019-08-14 05:22:04.000000000 +0200 +++ new/mono-traversable-1.0.13.0/mono-traversable.cabal 2019-10-03 14:47:17.000000000 +0200 @@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack -- --- hash: bb2c95aee7a253f7f93bf9fb96eeb108b577eb9e3bf4015d290187a0f4dafc28 +-- hash: f15c018a84778989ad8a6b3271167acba04984c689d9620523b6855ce2ec78f1 name: mono-traversable -version: 1.0.12.0 +version: 1.0.13.0 synopsis: Type classes for mapping, folding, and traversing monomorphic containers description: Please see the README at <https://www.stackage.org/package/mono-traversable> category: Data @@ -39,7 +39,7 @@ src ghc-options: -Wall build-depends: - base >=4.9 && <5 + base >=4.10 && <5 , bytestring >=0.9 , containers >=0.5.8 , hashable diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mono-traversable-1.0.12.0/src/Data/MonoTraversable.hs new/mono-traversable-1.0.13.0/src/Data/MonoTraversable.hs --- old/mono-traversable-1.0.12.0/src/Data/MonoTraversable.hs 2019-08-14 05:21:19.000000000 +0200 +++ new/mono-traversable-1.0.13.0/src/Data/MonoTraversable.hs 2019-10-03 14:47:12.000000000 +0200 @@ -1,11 +1,13 @@ {-# LANGUAGE ConstrainedClassMethods #-} {-# LANGUAGE CPP #-} {-# LANGUAGE DefaultSignatures #-} +{-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} -- | Type classes mirroring standard typeclasses, but working with monomorphic containers. -- -- The motivation is that some commonly used data types (i.e., 'ByteString' and @@ -1382,3 +1384,27 @@ ointercalate x = T.intercalate x . otoList #-} {-# RULES "intercalate LText" forall x. ointercalate x = TL.intercalate x . otoList #-} + +-- | Provides a `MonoFoldable`, `MonoFunctor` or `MonoPointed` for an arbitrary +-- `F.Foldable`, `Functor` or `Applicative`. +-- +-- Useful for, e.g., passing a `F.Foldable` type you don't own into a +-- function that expects a `MonoFoldable`. +-- +-- > // package A +-- > data MyList a = MyList [a] deriving Foldable +-- > +-- > // package B +-- > process :: MonoFoldable mono => mono -> IO () +-- > +-- > // package C +-- > process (WrappedPoly (MyList [])) +-- +-- @since 1.0.13.0 +newtype WrappedPoly f a = WrappedPoly { unwrapPoly :: f a } + deriving newtype (F.Foldable, Functor, Applicative, Monad) + +type instance Element (WrappedPoly f a) = a +instance F.Foldable f => MonoFoldable (WrappedPoly f a) +instance Functor f => MonoFunctor (WrappedPoly f a) +instance Applicative f => MonoPointed (WrappedPoly f a)