Hello community,
here is the log from the commit of package ghc-th-lift-instances for
openSUSE:Factory checked in at 2020-06-19 17:19:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-th-lift-instances (Old)
and /work/SRC/openSUSE:Factory/.ghc-th-lift-instances.new.3606 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-th-lift-instances"
Fri Jun 19 17:19:49 2020 rev:11 rq:815193 version:0.1.17
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-th-lift-instances/ghc-th-lift-instances.changes
2019-12-27 13:58:21.824803126 +0100
+++
/work/SRC/openSUSE:Factory/.ghc-th-lift-instances.new.3606/ghc-th-lift-instances.changes
2020-06-19 17:19:51.071285296 +0200
@@ -2 +2 @@
-Fri Nov 8 16:14:58 UTC 2019 - Peter Simons <[email protected]>
+Wed Jun 10 02:00:24 UTC 2020 - [email protected]
@@ -4,12 +4 @@
-- Drop obsolete group attributes.
-
--------------------------------------------------------------------
-Wed Aug 14 02:02:39 UTC 2019 - [email protected]
-
-- Update th-lift-instances to version 0.1.14.
- Upstream does not provide a change log file.
-
--------------------------------------------------------------------
-Wed May 1 02:03:16 UTC 2019 - [email protected]
-
-- Update th-lift-instances to version 0.1.13.
+- Update th-lift-instances to version 0.1.17.
@@ -19,12 +8 @@
-Thu Feb 7 13:49:07 UTC 2019 - [email protected]
-
-- Update th-lift-instances to version 0.1.12.
- Upstream does not provide a change log file.
-
--------------------------------------------------------------------
-Sat Oct 20 11:32:06 UTC 2018 - Peter Simons <[email protected]>
-
-- Use https URL to refer to bugs.opensuse.org.
-
--------------------------------------------------------------------
-Wed Jul 18 14:26:44 UTC 2018 - [email protected]
+Tue Jun 9 09:26:37 UTC 2020 - [email protected]
@@ -32,25 +10 @@
-- Cosmetic: replace tabs with blanks, strip trailing white space,
- and update copyright headers with spec-cleaner.
-
--------------------------------------------------------------------
-Wed May 16 14:36:29 UTC 2018 - [email protected]
-
-- Prefer the new %license attribute over %doc.
-
--------------------------------------------------------------------
-Thu Aug 3 15:38:38 UTC 2017 - [email protected]
-
-- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf.
-
--------------------------------------------------------------------
-Fri Dec 16 17:59:39 UTC 2016 - [email protected]
-
-- Update to version 0.1.11 with cabal2obs.
-
--------------------------------------------------------------------
-Fri Jul 22 06:10:18 UTC 2016 - [email protected]
-
-- Update to version 0.1.10 revision 0 with cabal2obs.
-
--------------------------------------------------------------------
-Sun Jul 10 17:16:11 UTC 2016 - [email protected]
+- Add th-lift-instances at version 0.1.16.
@@ -58 +11,0 @@
-- Update to version 0.1.9 revision 0 with cabal2obs.
Old:
----
th-lift-instances-0.1.14.tar.gz
New:
----
th-lift-instances-0.1.17.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-th-lift-instances.spec ++++++
--- /var/tmp/diff_new_pack.E5AGqS/_old 2020-06-19 17:19:51.991287714 +0200
+++ /var/tmp/diff_new_pack.E5AGqS/_new 2020-06-19 17:19:51.995287724 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-th-lift-instances
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 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.14
+Version: 0.1.17
Release: 0
Summary: Lift instances for template-haskell for common data types
License: BSD-3-Clause
@@ -39,9 +39,9 @@
%endif
%description
-Most data types in haskell platform do not have Lift instances. This package
-provides orphan instances for containers, text, bytestring and vector.
-It also acts as a compat instances, definining instances not existing in
+Most data types in the haskell platform do not have Lift instances.
+This package provides orphan instances for containers, text, bytestring and
+vector. It also provides compat instances for older versions of
'template-haskell'
Note that <https://hackage.haskell.org/package/th-lift th-lift> package
++++++ th-lift-instances-0.1.14.tar.gz -> th-lift-instances-0.1.17.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/th-lift-instances-0.1.14/.travis.yml
new/th-lift-instances-0.1.17/.travis.yml
--- old/th-lift-instances-0.1.14/.travis.yml 2019-08-13 22:13:37.000000000
+0200
+++ new/th-lift-instances-0.1.17/.travis.yml 2001-09-09 03:46:40.000000000
+0200
@@ -28,7 +28,7 @@
- env: GHCVER=7.10.3 CABALVER=1.24
compiler: ghc-7.10.3
addons: {apt: {packages: [cabal-install-1.24, ghc-7.10.3, alex-3.1.4,
happy-1.19.5], sources: [hvr-ghc]}}
- - env: GHCVER=8.0.1 CABALVER=1.24 ROOT=1
+ - env: GHCVER=8.0.1 CABALVER=1.24
compiler: ghc-8.0.1
addons: {apt: {packages: [cabal-install-1.24, ghc-8.0.1, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
- env: GHCVER=8.2.2 CABALVER=2.0
@@ -37,10 +37,16 @@
- env: GHCVER=8.4.4 CABALVER=2.2
compiler: ghc-8.4.4
addons: {apt: {packages: [cabal-install-2.2, ghc-8.4.4, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
- - env: GHCVER=8.6.3 CABALVER=2.4
- compiler: ghc-8.6.3
- addons: {apt: {packages: [cabal-install-2.4, ghc-8.6.3, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
- - env: GHCVER=head CABALVER=head ALLOW_NEWER="template-haskell"
+ - env: GHCVER=8.6.5 CABALVER=2.4
+ compiler: ghc-8.6.5
+ addons: {apt: {packages: [cabal-install-2.4, ghc-8.6.5, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
+ - env: GHCVER=8.8.3 CABALVER=3.0 ROOT=1 V2=1
+ compiler: ghc-8.8.3
+ addons: {apt: {packages: [cabal-install-3.0, ghc-8.8.3, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
+ - env: GHCVER=8.10.1 CABALVER=3.2 V2=1
+ compiler: ghc-8.10.1
+ addons: {apt: {packages: [cabal-install-3.2, ghc-8.10.1, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
+ - env: GHCVER=head CABALVER=head ALLOW_NEWER="template-haskell" V2=1
compiler: ghc-head
addons: {apt: {packages: [cabal-install-head, ghc-head, alex-3.1.7,
happy-1.19.5], sources: [hvr-ghc]}}
allow_failures:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/th-lift-instances-0.1.14/LICENSE
new/th-lift-instances-0.1.17/LICENSE
--- old/th-lift-instances-0.1.14/LICENSE 2019-08-13 22:13:37.000000000
+0200
+++ new/th-lift-instances-0.1.17/LICENSE 2001-09-09 03:46:40.000000000
+0200
@@ -1,4 +1,4 @@
-Copyright 2013-2016 Benno Fünfstück
+Copyright 2013-2020 Benno Fünfstück
All rights reserved.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/th-lift-instances-0.1.14/src/Instances/TH/Lift.hs
new/th-lift-instances-0.1.17/src/Instances/TH/Lift.hs
--- old/th-lift-instances-0.1.14/src/Instances/TH/Lift.hs 2019-08-13
22:13:37.000000000 +0200
+++ new/th-lift-instances-0.1.17/src/Instances/TH/Lift.hs 2001-09-09
03:46:40.000000000 +0200
@@ -2,6 +2,8 @@
{-# LANGUAGE CPP #-}
#if __GLASGOW_HASKELL__ >= 800
{-# LANGUAGE TemplateHaskellQuotes #-}
+{-# LANGUAGE DeriveLift #-}
+{-# LANGUAGE StandaloneDeriving #-}
#else
{-# LANGUAGE TemplateHaskell #-}
#endif
@@ -54,6 +56,9 @@
) where
import Language.Haskell.TH.Syntax (Lift(..))
+#if MIN_VERSION_template_haskell(2,16,0)
+import Language.Haskell.TH.Syntax (unsafeTExpCoerce)
+#endif
import Language.Haskell.TH
import qualified Data.Foldable as F
@@ -78,12 +83,27 @@
#endif
-- Containers
+import qualified Data.Tree as Tree
+
+#if MIN_VERSION_containers(5,10,1)
+-- recent enough containers exports internals,
+-- so we can use DeriveLift
+-- This way we construct the data type exactly as we have it
+-- during compile time, so there is nothing left for run-time.
+#define HAS_CONTAINERS_INTERNALS 1
+
+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
+#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.Tree as Tree
+#endif
#if !MIN_VERSION_text(1,2,4)
-- Text
@@ -110,6 +130,12 @@
import Control.Applicative (Const (..))
import Data.Functor.Identity (Identity (..))
+#if MIN_VERSION_template_haskell(2,16,0)
+#define LIFT_TYPED_DEFAULT liftTyped = unsafeTExpCoerce . lift
+#else
+#define LIFT_TYPED_DEFAULT
+#endif
+
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
@@ -178,28 +204,47 @@
--------------------------------------------------------------------------------
-- Containers
+--
+
+#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 |]
+#endif
+
+#if HAS_CONTAINERS_INTERNALS
+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
instance Lift v => Lift (IntMap.IntMap v) where
lift m = [| IntMap.fromList m' |] where
m' = IntMap.toList m
+ LIFT_TYPED_DEFAULT
instance Lift IntSet.IntSet where
lift s = [| IntSet.fromList s' |] where
s' = IntSet.toList s
+ 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_TYPED_DEFAULT
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
-
-instance Lift a => Lift (Tree.Tree a) where
- lift (Tree.Node x xs) = [| Tree.Node x xs |]
+ LIFT_TYPED_DEFAULT
+#endif
#if !MIN_VERSION_text(1,2,4)
--------------------------------------------------------------------------------
@@ -207,10 +252,12 @@
instance Lift Text.Text where
lift t = [| Text.pack t' |] where
t' = Text.unpack t
+ LIFT_TYPED_DEFAULT
instance Lift Text.Lazy.Text where
lift t = [| Text.Lazy.pack t' |] where
t' = Text.Lazy.unpack t
+ LIFT_TYPED_DEFAULT
#endif
--------------------------------------------------------------------------------
@@ -227,6 +274,7 @@
#else
LitE $ StringPrimL $ ByteString.Char8.unpack b
#endif
+ LIFT_TYPED_DEFAULT
instance Lift ByteString.Lazy.ByteString where
lift lb = do
@@ -234,29 +282,44 @@
return (VarE 'ByteString.Lazy.fromChunks `AppE` b')
where
b = ByteString.Lazy.toChunks lb
+ LIFT_TYPED_DEFAULT
--------------------------------------------------------------------------------
-- Vector
instance (Vector.Primitive.Prim a, Lift a) => Lift (Vector.Primitive.Vector a)
where
- lift v = [| Vector.Primitive.fromList v' |] where
+ lift v = [| Vector.Primitive.fromListN n' v' |] where
+ n' = Vector.Primitive.length v
v' = Vector.Primitive.toList v
+ LIFT_TYPED_DEFAULT
instance (Vector.Storable.Storable a, Lift a) => Lift (Vector.Storable.Vector
a) where
- lift v = [| Vector.Storable.fromList v' |] where
+ lift v = [| Vector.Storable.fromListN n' v' |] where
+ n' = Vector.Storable.length v
v' = Vector.Storable.toList v
+ LIFT_TYPED_DEFAULT
instance (Vector.Unboxed.Unbox a, Lift a) => Lift (Vector.Unboxed.Vector a)
where
- lift v = [| Vector.Unboxed.fromList v' |] where
+ lift v = [| Vector.Unboxed.fromListN n' v' |] where
+ n' = Vector.Unboxed.length v
v' = Vector.Unboxed.toList v
+ LIFT_TYPED_DEFAULT
instance Lift a => Lift (Vector.Boxed.Vector a) where
- lift v = [| Vector.Boxed.fromList v' |] where
+ lift v = [| Vector.Boxed.fromListN n' v' |] where
+ n' = Vector.Boxed.length v
v' = Vector.Boxed.toList v
+ LIFT_TYPED_DEFAULT
--------------------------------------------------------------------------------
-- Transformers
+
+#if __GLASGOW_HASKELL__ >= 800
+deriving instance Lift a => Lift (Identity a)
+deriving instance Lift a => Lift (Const a b)
+#else
instance Lift a => Lift (Identity a) where
lift (Identity a) = [| Identity a |]
instance Lift a => Lift (Const a b) where
lift (Const a) = [| Const a |]
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/th-lift-instances-0.1.14/th-lift-instances.cabal
new/th-lift-instances-0.1.17/th-lift-instances.cabal
--- old/th-lift-instances-0.1.14/th-lift-instances.cabal 2019-08-13
22:13:37.000000000 +0200
+++ new/th-lift-instances-0.1.17/th-lift-instances.cabal 2001-09-09
03:46:40.000000000 +0200
@@ -1,20 +1,19 @@
name: th-lift-instances
-version: 0.1.14
+version: 0.1.17
cabal-version: >=1.10
build-type: Simple
license: BSD3
license-file: LICENSE
-copyright: Copyright (C) 2013-2016 Benno Fünfstück
+copyright: Copyright (C) 2013-2020 Benno Fünfstück
maintainer: Benno Fünfstück <[email protected]>
stability: experimental
homepage: http://github.com/bennofs/th-lift-instances/
bug-reports: http://github.com/bennofs/th-lift-instances/issues
synopsis: Lift instances for template-haskell for common data types.
description:
- Most data types in haskell platform do not have Lift instances.
+ Most data types in the haskell platform do not have Lift instances.
This package provides orphan instances for containers, text, bytestring
and vector.
- It also acts as a compat instances, definining instances not existing
- in @template-haskell@
+ It also provides compat instances for older versions of @template-haskell@
.
Note that <https://hackage.haskell.org/package/th-lift th-lift> package
provides
Template Haskell based derivation of @Lift@ instances (when you cannot use
@DeriveLift@ extension),
@@ -38,7 +37,7 @@
base >=4.3 && <5,
template-haskell >=2.5.0.0,
containers,
- vector >= 0.4,
+ vector >= 0.7,
text,
transformers,
bytestring