Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-th-lift-instances for openSUSE:Factory checked in at 2022-10-13 15:43:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-th-lift-instances (Old) and /work/SRC/openSUSE:Factory/.ghc-th-lift-instances.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-th-lift-instances" Thu Oct 13 15:43:15 2022 rev:16 rq:1008529 version:0.1.20 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-th-lift-instances/ghc-th-lift-instances.changes 2022-02-11 23:11:45.599353865 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-th-lift-instances.new.2275/ghc-th-lift-instances.changes 2022-10-13 15:43:31.318899185 +0200 @@ -1,0 +2,12 @@ +Tue Aug 23 09:45:53 UTC 2022 - Peter Simons <psim...@suse.com> + +- Update th-lift-instances to version 0.1.20. + Upstream does not provide a change log file. + +------------------------------------------------------------------- +Tue Aug 9 16:30:14 UTC 2022 - Peter Simons <psim...@suse.com> + +- Update th-lift-instances to version 0.1.19 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- Old: ---- th-lift-instances-0.1.19.tar.gz New: ---- th-lift-instances-0.1.20.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-th-lift-instances.spec ++++++ --- /var/tmp/diff_new_pack.EvmXfr/_old 2022-10-13 15:43:32.198900902 +0200 +++ /var/tmp/diff_new_pack.EvmXfr/_new 2022-10-13 15:43:32.206900918 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-th-lift-instances # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ %global pkg_name th-lift-instances %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.1.19 +Version: 0.1.20 Release: 0 Summary: Lift instances for template-haskell for common data types License: BSD-3-Clause ++++++ th-lift-instances-0.1.19.tar.gz -> th-lift-instances-0.1.20.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/th-lift-instances-0.1.19/README.md new/th-lift-instances-0.1.20/README.md --- old/th-lift-instances-0.1.19/README.md 2001-09-09 03:46:40.000000000 +0200 +++ new/th-lift-instances-0.1.20/README.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,7 +1,5 @@ th-lift-instances ==================== -[![Build Status](https://secure.travis-ci.org/bennofs/th-lift-instances.png?branch=master)](http://travis-ci.org/bennofs/th-lift-instances) - Some more Lift instances for common haskell data types. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/th-lift-instances-0.1.19/src/Instances/TH/Lift.hs new/th-lift-instances-0.1.20/src/Instances/TH/Lift.hs --- old/th-lift-instances-0.1.19/src/Instances/TH/Lift.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/th-lift-instances-0.1.20/src/Instances/TH/Lift.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,6 @@ {-# OPTIONS_GHC -fno-warn-orphans #-} {-# LANGUAGE CPP #-} +{-# LANGUAGE ScopedTypeVariables #-} #if __GLASGOW_HASKELL__ >= 800 {-# LANGUAGE TemplateHaskellQuotes #-} {-# LANGUAGE DeriveLift #-} @@ -61,8 +62,6 @@ #endif import Language.Haskell.TH -import qualified Data.Foldable as F - -- Base #if !MIN_VERSION_template_haskell(2,9,1) import Data.Int @@ -83,9 +82,11 @@ #endif -- Containers + +#if !MIN_VERSION_containers(0,6,6) import qualified Data.Tree as Tree -#if MIN_VERSION_containers(5,10,1) +#if MIN_VERSION_containers(0,5,10) -- recent enough containers exports internals, -- so we can use DeriveLift -- This way we construct the data type exactly as we have it @@ -95,15 +96,22 @@ import qualified Data.IntMap.Internal as IntMap import qualified Data.IntSet.Internal as IntSet import qualified Data.Map.Internal as Map -import qualified Data.Sequence.Internal as Sequence import qualified Data.Set.Internal as Set +import qualified Data.Sequence.Internal as Sequence +# if __GLASGOW_HASKELL__ >= 708 +import Data.Coerce (coerce) +# else +import Unsafe.Coerce (unsafeCoerce) +# endif #else import qualified Data.IntMap as IntMap import qualified Data.IntSet as IntSet import qualified Data.Map as Map -import qualified Data.Sequence as Sequence import qualified Data.Set as Set +import qualified Data.Sequence as Sequence +import qualified Data.Foldable as F #endif +# endif #if !MIN_VERSION_text(1,2,4) -- Text @@ -210,23 +218,97 @@ -- Containers -- +#if !MIN_VERSION_containers(0,6,6) #if __GLASGOW_HASKELL__ >= 800 deriving instance Lift a => Lift (Tree.Tree a) #else instance Lift a => Lift (Tree.Tree a) where lift (Tree.Node x xs) = [| Tree.Node x xs |] + LIFT_TYPED_DEFAULT #endif +#if __GLASGOW_HASKELL__ >= 800 +deriving instance Lift a => Lift (Sequence.ViewL a) +deriving instance Lift a => Lift (Sequence.ViewR a) +#else +instance Lift a => Lift (Sequence.ViewL a) where + lift Sequence.EmptyL = [| Sequence.EmptyL |] + lift (x Sequence.:< xs) = [| x Sequence.:< xs |] + LIFT_TYPED_DEFAULT +instance Lift a => Lift (Sequence.ViewR a) where + lift Sequence.EmptyR = [| Sequence.EmptyR |] + lift (xs Sequence.:> x) = [| xs Sequence.:> x |] + LIFT_TYPED_DEFAULT +#endif + #if HAS_CONTAINERS_INTERNALS +-- The coercion gunk reduces the expression size by a substantial +-- constant factor, which I imagine is good for compilation +-- speed. +instance Lift a => Lift (Sequence.Seq a) where + lift xs = [| fixupSeq ft' |] + where + -- The tree produced by zipWith has the same shape as + -- that of its first argument. replicate produces a shallow + -- tree, which is usually desirable. + Sequence.Seq rebalanced = + Sequence.zipWith + (flip const) + (Sequence.replicate (Sequence.length xs) ()) + xs + ft' :: Sequence.FingerTree a + ft' = stripElem rebalanced + LIFT_TYPED_DEFAULT + +fixupSeq :: Sequence.FingerTree a -> Sequence.Seq a +stripElem :: Sequence.FingerTree (Sequence.Elem a) -> Sequence.FingerTree a +# if __GLASGOW_HASKELL__ >= 708 +fixupSeq = coerce +stripElem = coerce +# else +fixupSeq = unsafeCoerce +stripElem = unsafeCoerce +# endif + +# if __GLASGOW_HASKELL__ >= 800 +deriving instance Lift a => Lift (Sequence.Digit a) +deriving instance Lift a => Lift (Sequence.Node a) +deriving instance Lift a => Lift (Sequence.FingerTree a) +# else +instance Lift a => Lift (Sequence.Elem a) where + lift (Sequence.Elem a) = [| Sequence.Elem a |] + LIFT_TYPED_DEFAULT +instance Lift a => Lift (Sequence.Digit a) where + lift (Sequence.One a) = [| Sequence.One a |] + lift (Sequence.Two a b) = [| Sequence.Two a b |] + lift (Sequence.Three a b c) = [| Sequence.Three a b c |] + lift (Sequence.Four a b c d) = [| Sequence.Four a b c d |] + LIFT_TYPED_DEFAULT +instance Lift a => Lift (Sequence.Node a) where + lift (Sequence.Node2 s a b) = [| Sequence.Node2 s a b |] + lift (Sequence.Node3 s a b c) = [| Sequence.Node3 s a b c |] + LIFT_TYPED_DEFAULT +instance Lift a => Lift (Sequence.FingerTree a) where + lift Sequence.EmptyT = [| Sequence.EmptyT |] + lift (Sequence.Single a) = [| Sequence.Single a |] + lift (Sequence.Deep s pr m sf) = [| Sequence.Deep s pr m sf |] + LIFT_TYPED_DEFAULT +# endif + +#endif + +#if HAS_CONTAINERS_INTERNALS && __GLASGOW_HASKELL__ >= 800 deriving instance Lift v => Lift (IntMap.IntMap v) deriving instance Lift IntSet.IntSet deriving instance (Lift k, Lift v) => Lift (Map.Map k v) -deriving instance Lift a => Lift (Sequence.Seq a) deriving instance Lift a => Lift (Set.Set a) + #else +-- No containers internals here, or no Lift deriving + instance Lift v => Lift (IntMap.IntMap v) where - lift m = [| IntMap.fromList m' |] where - m' = IntMap.toList m + lift m = [| IntMap.fromDistinctAscList m' |] where + m' = IntMap.toAscList m LIFT_TYPED_DEFAULT instance Lift IntSet.IntSet where @@ -235,21 +317,25 @@ LIFT_TYPED_DEFAULT instance (Lift k, Lift v) => Lift (Map.Map k v) where - lift m = [| Map.fromList m' |] where - m' = Map.toList m + lift m = [| Map.fromDistinctAscList m' |] where + m' = Map.toAscList m LIFT_TYPED_DEFAULT +instance Lift a => Lift (Set.Set a) where + lift s = [| Set.fromDistinctAscList s' |] where + s' = Set.toAscList s + LIFT_TYPED_DEFAULT +#endif + +#if !HAS_CONTAINERS_INTERNALS instance Lift a => Lift (Sequence.Seq a) where lift s = [| Sequence.fromList s' |] where s' = F.toList s LIFT_TYPED_DEFAULT - -instance Lift a => Lift (Set.Set a) where - lift s = [| Set.fromList s' |] where - s' = Set.toList s - LIFT_TYPED_DEFAULT #endif +# endif + #if !MIN_VERSION_text(1,2,4) -------------------------------------------------------------------------------- -- Text diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/th-lift-instances-0.1.19/th-lift-instances.cabal new/th-lift-instances-0.1.20/th-lift-instances.cabal --- old/th-lift-instances-0.1.19/th-lift-instances.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/th-lift-instances-0.1.20/th-lift-instances.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,5 @@ name: th-lift-instances -version: 0.1.19 +version: 0.1.20 cabal-version: >=1.10 build-type: Simple license: BSD3