Hello community, here is the log from the commit of package ghc-invariant for openSUSE:Factory checked in at 2019-05-09 10:10:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-invariant (Old) and /work/SRC/openSUSE:Factory/.ghc-invariant.new.5148 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-invariant" Thu May 9 10:10:05 2019 rev:4 rq:700200 version:0.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-invariant/ghc-invariant.changes 2018-12-24 11:37:29.457659835 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-invariant.new.5148/ghc-invariant.changes 2019-05-09 10:10:07.065149620 +0200 @@ -1,0 +2,8 @@ +Tue Apr 30 09:23:05 UTC 2019 - [email protected] + +- Update invariant to version 0.5.2. + # 0.5.2 [2019.04.26] + * Support `th-abstraction-0.3.0.0` or later. + * Only incur a `semigroups` dependency on old GHCs. + +------------------------------------------------------------------- Old: ---- invariant-0.5.1.tar.gz invariant.cabal New: ---- invariant-0.5.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-invariant.spec ++++++ --- /var/tmp/diff_new_pack.Cxccos/_old 2019-05-09 10:10:08.141152700 +0200 +++ /var/tmp/diff_new_pack.Cxccos/_new 2019-05-09 10:10:08.141152700 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-invariant # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,14 +19,13 @@ %global pkg_name invariant %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.5.1 +Version: 0.5.2 Release: 0 Summary: Haskell98 invariant functors License: BSD-2-Clause Group: Development/Libraries/Haskell URL: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-StateVar-devel BuildRequires: ghc-array-devel @@ -36,7 +35,6 @@ BuildRequires: ghc-contravariant-devel BuildRequires: ghc-profunctors-devel BuildRequires: ghc-rpm-macros -BuildRequires: ghc-semigroups-devel BuildRequires: ghc-stm-devel BuildRequires: ghc-tagged-devel BuildRequires: ghc-template-haskell-devel @@ -69,7 +67,6 @@ %prep %setup -q -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++++++ invariant-0.5.1.tar.gz -> invariant-0.5.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/invariant-0.5.1/CHANGELOG.md new/invariant-0.5.2/CHANGELOG.md --- old/invariant-0.5.1/CHANGELOG.md 2018-07-15 13:58:16.000000000 +0200 +++ new/invariant-0.5.2/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,7 @@ +# 0.5.2 [2019.04.26] +* Support `th-abstraction-0.3.0.0` or later. +* Only incur a `semigroups` dependency on old GHCs. + # 0.5.1 [2018.07.15] * Depend on `QuickCheck-2.11` or later in the test suite. * Some Haddock fixes in `Data.Functor.Invariant.TH`. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/invariant-0.5.1/invariant.cabal new/invariant-0.5.2/invariant.cabal --- old/invariant-0.5.1/invariant.cabal 2018-07-15 13:58:16.000000000 +0200 +++ new/invariant-0.5.2/invariant.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,5 @@ name: invariant -version: 0.5.1 +version: 0.5.2 synopsis: Haskell98 invariant functors description: Haskell98 invariant functors (also known as exponential functors). . @@ -24,8 +24,8 @@ , GHC == 7.10.3 , GHC == 8.0.2 , GHC == 8.2.2 - , GHC == 8.4.3 - , GHC == 8.6.1 + , GHC == 8.4.4 + , GHC == 8.6.4 extra-source-files: CHANGELOG.md, README.md source-repository head @@ -46,17 +46,19 @@ , contravariant >= 0.5 && < 2 , ghc-prim , profunctors >= 5.2.1 && < 6 - , semigroups >= 0.16.2 && < 1 , StateVar >= 1.1 && < 2 , stm >= 2.2 && < 3 , tagged >= 0.7.3 && < 1 , template-haskell >= 2.4 && < 2.15 - , th-abstraction >= 0.2.2 && < 1 + , th-abstraction >= 0.2.2 && < 0.4 , transformers >= 0.2 && < 0.6 , transformers-compat >= 0.3 && < 1 , unordered-containers >= 0.2.4 && < 0.3 ghc-options: -Wall + if !impl(ghc >= 8.0) + build-depends: semigroups >= 0.16.2 && < 1 + test-suite spec type: exitcode-stdio-1.0 hs-source-dirs: test diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/invariant-0.5.1/src/Data/Functor/Invariant/TH.hs new/invariant-0.5.2/src/Data/Functor/Invariant/TH.hs --- old/invariant-0.5.1/src/Data/Functor/Invariant/TH.hs 2018-07-15 13:58:16.000000000 +0200 +++ new/invariant-0.5.2/src/Data/Functor/Invariant/TH.hs 2001-09-09 03:46:40.000000000 +0200 @@ -269,26 +269,30 @@ deriveInvariantClass iClass opts name = do info <- reifyDatatype name case info of - DatatypeInfo { datatypeContext = ctxt - , datatypeName = parentName - , datatypeVars = vars - , datatypeVariant = variant - , datatypeCons = cons + DatatypeInfo { datatypeContext = ctxt + , datatypeName = parentName +#if MIN_VERSION_th_abstraction(0,3,0) + , datatypeInstTypes = instTys +#else + , datatypeVars = instTys +#endif + , datatypeVariant = variant + , datatypeCons = cons } -> do (instanceCxt, instanceType) - <- buildTypeInstance iClass parentName ctxt vars variant + <- buildTypeInstance iClass parentName ctxt instTys variant (:[]) `fmap` instanceD (return instanceCxt) (return instanceType) - (invmapDecs iClass opts parentName vars cons) + (invmapDecs iClass opts parentName instTys cons) -- | Generates a declaration defining the primary function corresponding to a -- particular class (invmap for Invariant and invmap2 for Invariant2). invmapDecs :: InvariantClass -> Options -> Name -> [Type] -> [ConstructorInfo] -> [Q Dec] -invmapDecs iClass opts parentName vars cons = +invmapDecs iClass opts parentName instTys cons = [ funD (invmapName iClass) [ clause [] - (normalB $ makeInvmapForCons iClass opts parentName vars cons) + (normalB $ makeInvmapForCons iClass opts parentName instTys cons) [] ] ] @@ -299,29 +303,33 @@ makeInvmapClass iClass opts name = do info <- reifyDatatype name case info of - DatatypeInfo { datatypeContext = ctxt - , datatypeName = parentName - , datatypeVars = vars - , datatypeVariant = variant - , datatypeCons = cons + DatatypeInfo { datatypeContext = ctxt + , datatypeName = parentName +#if MIN_VERSION_th_abstraction(0,3,0) + , datatypeInstTypes = instTys +#else + , datatypeVars = instTys +#endif + , datatypeVariant = variant + , datatypeCons = cons } -> -- We force buildTypeInstance here since it performs some checks for whether -- or not the provided datatype can actually have invmap/invmap2 -- implemented for it, and produces errors if it can't. - buildTypeInstance iClass parentName ctxt vars variant - >> makeInvmapForCons iClass opts parentName vars cons + buildTypeInstance iClass parentName ctxt instTys variant + >> makeInvmapForCons iClass opts parentName instTys cons -- | Generates a lambda expression for invmap(2) for the given constructors. -- All constructors must be from the same type. makeInvmapForCons :: InvariantClass -> Options -> Name -> [Type] -> [ConstructorInfo] -> Q Exp -makeInvmapForCons iClass opts _parentName vars cons = do +makeInvmapForCons iClass opts _parentName instTys cons = do value <- newName "value" covMaps <- newNameList "covMap" numNbs contraMaps <- newNameList "contraMap" numNbs let mapFuns = zip covMaps contraMaps - lastTyVars = map varTToName $ drop (length vars - fromEnum iClass) vars + lastTyVars = map varTToName $ drop (length instTys - fromEnum iClass) instTys tvMap = Map.fromList $ zip lastTyVars mapFuns argNames = concat (transpose [covMaps, contraMaps]) ++ [value] lamE (map varP argNames)
