Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-mono-traversable for
openSUSE:Factory checked in at 2024-10-28 15:18:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-mono-traversable (Old)
and /work/SRC/openSUSE:Factory/.ghc-mono-traversable.new.2020 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-mono-traversable"
Mon Oct 28 15:18:56 2024 rev:29 rq:1218564 version:1.0.20.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-mono-traversable/ghc-mono-traversable.changes
2024-03-20 21:16:16.378264540 +0100
+++
/work/SRC/openSUSE:Factory/.ghc-mono-traversable.new.2020/ghc-mono-traversable.changes
2024-10-28 15:21:19.833975434 +0100
@@ -1,0 +2,22 @@
+Fri Sep 13 07:56:38 UTC 2024 - Peter Simons <[email protected]>
+
+- Update mono-traversable to version 1.0.20.0.
+ ## 1.0.20.0
+
+ * Added instances for
[`Reverse`](https://hackage.haskell.org/package/transformers-0.6.1.1/docs/Data-Functor-Reverse.html#t:Reverse)
data structure.
+
+ ## 1.0.19.1
+
+ * Removed 'highly experimental' warning haddock comment from Data.Containers.
+
+ ## 1.0.19.0
+
+ * Added `filterWithKey` to `IsMap`.
+ [#232](https://github.com/snoyberg/mono-traversable/pull/232)
+
+ ## 1.0.18.0
+
+ * Added MonoPointed instance for text Builder
+ [#225](https://github.com/snoyberg/mono-traversable/pull/225)
+
+-------------------------------------------------------------------
Old:
----
mono-traversable-1.0.17.0.tar.gz
New:
----
mono-traversable-1.0.20.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-mono-traversable.spec ++++++
--- /var/tmp/diff_new_pack.dvyXNb/_old 2024-10-28 15:21:21.202032407 +0100
+++ /var/tmp/diff_new_pack.dvyXNb/_new 2024-10-28 15:21:21.202032407 +0100
@@ -20,7 +20,7 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 1.0.17.0
+Version: 1.0.20.0
Release: 0
Summary: Type classes for mapping, folding, and traversing monomorphic
containers
License: MIT
++++++ mono-traversable-1.0.17.0.tar.gz -> mono-traversable-1.0.20.0.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mono-traversable-1.0.17.0/ChangeLog.md
new/mono-traversable-1.0.20.0/ChangeLog.md
--- old/mono-traversable-1.0.17.0/ChangeLog.md 2024-02-28 11:35:03.000000000
+0100
+++ new/mono-traversable-1.0.20.0/ChangeLog.md 2024-09-13 09:56:31.000000000
+0200
@@ -1,5 +1,23 @@
# ChangeLog for mono-traversable
+## 1.0.20.0
+
+* Added instances for
[`Reverse`](https://hackage.haskell.org/package/transformers-0.6.1.1/docs/Data-Functor-Reverse.html#t:Reverse)
data structure.
+
+## 1.0.19.1
+
+* Removed 'highly experimental' warning haddock comment from Data.Containers.
+
+## 1.0.19.0
+
+* Added `filterWithKey` to `IsMap`.
+ [#232](https://github.com/snoyberg/mono-traversable/pull/232)
+
+## 1.0.18.0
+
+* Added MonoPointed instance for text Builder
+ [#225](https://github.com/snoyberg/mono-traversable/pull/225)
+
## 1.0.17.0
* Added `inits`, `tails`, `initTails` to class `IsSequence` with tests and
benchmarks for `initTails`.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mono-traversable-1.0.17.0/mono-traversable.cabal
new/mono-traversable-1.0.20.0/mono-traversable.cabal
--- old/mono-traversable-1.0.17.0/mono-traversable.cabal 2024-02-28
11:35:03.000000000 +0100
+++ new/mono-traversable-1.0.20.0/mono-traversable.cabal 2024-09-13
09:56:37.000000000 +0200
@@ -1,11 +1,11 @@
cabal-version: 1.12
--- This file has been generated from package.yaml by hpack version 0.36.0.
+-- This file has been generated from package.yaml by hpack version 0.37.0.
--
-- see: https://github.com/sol/hpack
name: mono-traversable
-version: 1.0.17.0
+version: 1.0.20.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
@@ -57,6 +57,8 @@
hs-source-dirs:
test
ghc-options: -O0
+ build-tool-depends:
+ hspec-discover:hspec-discover
build-depends:
HUnit
, QuickCheck
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mono-traversable-1.0.17.0/src/Data/Containers.hs
new/mono-traversable-1.0.20.0/src/Data/Containers.hs
--- old/mono-traversable-1.0.17.0/src/Data/Containers.hs 2023-08-01
15:01:06.000000000 +0200
+++ new/mono-traversable-1.0.20.0/src/Data/Containers.hs 2024-09-13
09:56:31.000000000 +0200
@@ -4,7 +4,7 @@
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE CPP #-}
--- | Warning: This module should be considered highly experimental.
+{-# LANGUAGE TypeOperators #-}
module Data.Containers where
import Prelude hiding (lookup)
@@ -547,8 +547,15 @@
-- | Filter values in a map.
--
-- @since 1.0.9.0
- filterMap :: IsMap map => (MapValue map -> Bool) -> map -> map
- filterMap p = mapFromList . filter (p . snd) . mapToList
+ filterMap :: (MapValue map -> Bool) -> map -> map
+ filterMap = filterWithKey . const
+
+ -- | Equivalent to 'filterMap', but the function accepts the key,
+ -- as well as the value.
+ --
+ -- @since 1.0.19.0
+ filterWithKey :: (ContainerKey map -> MapValue map -> Bool) -> map -> map
+ filterWithKey p = mapFromList . filter (uncurry p) . mapToList
-- | This instance uses the functions from "Data.Map.Strict".
instance Ord key => IsMap (Map.Map key value) where
@@ -598,6 +605,8 @@
{-# INLINE omapKeysWith #-}
filterMap = Map.filter
{-# INLINE filterMap #-}
+ filterWithKey = Map.filterWithKey
+ {-# INLINE filterWithKey #-}
-- | This instance uses the functions from "Data.HashMap.Strict".
instance (Eq key, Hashable key) => IsMap (HashMap.HashMap key value) where
@@ -635,6 +644,8 @@
--mapKeysWith = HashMap.mapKeysWith
filterMap = HashMap.filter
{-# INLINE filterMap #-}
+ filterWithKey = HashMap.filterWithKey
+ {-# INLINE filterWithKey #-}
-- | This instance uses the functions from "Data.IntMap.Strict".
instance IsMap (IntMap.IntMap value) where
@@ -683,6 +694,8 @@
{-# INLINE omapKeysWith #-}
filterMap = IntMap.filter
{-# INLINE filterMap #-}
+ filterWithKey = IntMap.filterWithKey
+ {-# INLINE filterWithKey #-}
instance Eq key => IsMap [(key, value)] where
type MapValue [(key, value)] = value
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/mono-traversable-1.0.17.0/src/Data/MonoTraversable/Unprefixed.hs
new/mono-traversable-1.0.20.0/src/Data/MonoTraversable/Unprefixed.hs
--- old/mono-traversable-1.0.17.0/src/Data/MonoTraversable/Unprefixed.hs
2023-08-01 15:01:06.000000000 +0200
+++ new/mono-traversable-1.0.20.0/src/Data/MonoTraversable/Unprefixed.hs
2024-09-13 09:56:31.000000000 +0200
@@ -1,6 +1,7 @@
{-# LANGUAGE CPP #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE TypeOperators #-}
-- | The functions in "Data.MonoTraversable" are all prefixed with the letter
-- @o@ to avoid conflicts with their polymorphic counterparts. This module
-- exports the same identifiers without the prefix, for all cases where the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/mono-traversable-1.0.17.0/src/Data/MonoTraversable.hs
new/mono-traversable-1.0.20.0/src/Data/MonoTraversable.hs
--- old/mono-traversable-1.0.17.0/src/Data/MonoTraversable.hs 2024-02-28
11:35:03.000000000 +0100
+++ new/mono-traversable-1.0.20.0/src/Data/MonoTraversable.hs 2024-09-13
09:56:31.000000000 +0200
@@ -37,10 +37,11 @@
import qualified Data.Foldable as F
import Data.Functor
import Data.Maybe (fromMaybe)
-import Data.Monoid (Monoid (..), Any (..), All (..))
+import Data.Monoid (Dual(..), Monoid (..), Any (..), All (..))
import Data.Proxy
import qualified Data.Text as T
import qualified Data.Text.Lazy as TL
+import qualified Data.Text.Lazy.Builder as TB
import Data.Traversable
import Data.Word (Word8)
import Data.Int (Int, Int64)
@@ -55,6 +56,7 @@
import Foreign.Ptr (plusPtr)
import Foreign.ForeignPtr (touchForeignPtr)
import Foreign.Storable (peek)
+import Control.Applicative.Backwards (Backwards (..))
import Control.Arrow (Arrow)
import Data.Tree (Tree (..))
import Data.Sequence (Seq, ViewL (..), ViewR (..))
@@ -64,6 +66,7 @@
import qualified Data.List as List
import Data.List.NonEmpty (NonEmpty)
import Data.Functor.Identity (Identity)
+import Data.Functor.Reverse (Reverse (..))
import Data.Map (Map)
import qualified Data.Map.Strict as Map
import Data.HashMap.Strict (HashMap)
@@ -111,6 +114,8 @@
type instance Element B.Builder = Word8
type instance Element T.Text = Char
type instance Element TL.Text = Char
+-- | @since 1.0.18.0
+type instance Element TB.Builder = Char
type instance Element [a] = a
type instance Element (IO a) = a
type instance Element (ZipList a) = a
@@ -165,6 +170,7 @@
type instance Element (U1 a) = a
type instance Element (V1 a) = a
type instance Element (Proxy a) = a
+type instance Element (Reverse f a) = Element (f a)
-- | Monomorphic containers that can be mapped over.
class MonoFunctor mono where
@@ -252,6 +258,9 @@
instance VS.Storable a => MonoFunctor (VS.Vector a) where
omap = VS.map
{-# INLINE omap #-}
+-- | @since 1.0.20.0
+instance MonoFunctor (f a) => MonoFunctor (Reverse f a) where
+ omap f (Reverse t) = Reverse (omap f t)
-- | @'replaceElem' old new@ replaces all @old@ elements with @new@.
--
@@ -820,6 +829,13 @@
instance MonoFoldable (V1 a)
-- | @since 1.0.11.0
instance MonoFoldable (Proxy a)
+-- | @since 1.0.20.0
+instance MonoFoldable (f a) => MonoFoldable (Reverse f a) where
+ ofoldMap f (Reverse t) = getDual (ofoldMap (Dual . f) t)
+ ofoldr f z (Reverse t) = ofoldl' (flip f) z t
+ ofoldl' f z (Reverse t) = ofoldr (flip f) z t
+ ofoldr1Ex f (Reverse t) = ofoldl1Ex' (flip f) t
+ ofoldl1Ex' f (Reverse t) = ofoldr1Ex (flip f) t
-- | Safe version of 'headEx'.
--
@@ -1083,6 +1099,9 @@
instance MonoTraversable (V1 a)
-- | @since 1.0.11.0
instance MonoTraversable (Proxy a)
+-- | @since 1.0.20.0
+instance (MonoTraversable (f a)) => MonoTraversable (Reverse f a) where
+ otraverse f (Reverse t) = (fmap Reverse . forwards) (otraverse (Backwards
. f) t)
-- | 'ofor' is 'otraverse' with its arguments flipped.
ofor :: (MonoTraversable mono, Applicative f) => mono -> (Element mono -> f
(Element mono)) -> f mono
@@ -1153,6 +1172,10 @@
instance MonoPointed TL.Text where
opoint = TL.singleton
{-# INLINE opoint #-}
+-- | @since 1.0.18.0
+instance MonoPointed TB.Builder where
+ opoint = TB.singleton
+ {-# INLINE opoint #-}
-- Applicative
instance MonoPointed [a]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/mono-traversable-1.0.17.0/src/Data/Sequences.hs
new/mono-traversable-1.0.20.0/src/Data/Sequences.hs
--- old/mono-traversable-1.0.17.0/src/Data/Sequences.hs 2024-02-28
11:35:03.000000000 +0100
+++ new/mono-traversable-1.0.20.0/src/Data/Sequences.hs 2024-09-13
09:56:31.000000000 +0200
@@ -5,6 +5,7 @@
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE FunctionalDependencies #-}
+{-# LANGUAGE TypeOperators #-}
-- | Abstractions over sequential data structures, like lists and vectors.
module Data.Sequences where