Hello community, here is the log from the commit of package ghc-vinyl for openSUSE:Factory checked in at 2017-01-31 12:40:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-vinyl (Old) and /work/SRC/openSUSE:Factory/.ghc-vinyl.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "ghc-vinyl" Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-vinyl/ghc-vinyl.changes 2017-01-18 21:39:07.659318149 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-vinyl.new/ghc-vinyl.changes 2017-02-03 17:40:30.556853123 +0100 @@ -1,0 +2,5 @@ +Mon Dec 19 10:18:43 UTC 2016 - psimons@suse.com + +- Update to version 0.5.3 with cabal2obs. + +------------------------------------------------------------------- Old: ---- vinyl-0.5.2.tar.gz New: ---- vinyl-0.5.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-vinyl.spec ++++++ --- /var/tmp/diff_new_pack.2TvwDO/_old 2017-02-03 17:40:30.968794816 +0100 +++ /var/tmp/diff_new_pack.2TvwDO/_new 2017-02-03 17:40:30.972794250 +0100 @@ -19,23 +19,21 @@ %global pkg_name vinyl %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.5.2 +Version: 0.5.3 Release: 0 Summary: Extensible Records License: MIT -Group: System/Libraries +Group: Development/Languages/Other Url: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros BuildRoot: %{_tmppath}/%{name}-%{version}-build -# Begin cabal-rpm deps: %if %{with tests} BuildRequires: ghc-doctest-devel BuildRequires: ghc-lens-devel BuildRequires: ghc-singletons-devel %endif -# End cabal-rpm deps %description Extensible records for Haskell with lenses using modern GHC features. @@ -54,20 +52,14 @@ %prep %setup -q -n %{pkg_name}-%{version} - %build %ghc_lib_build - %install %ghc_lib_install - %check -%if %{with tests} -%{cabal} test -%endif - +%cabal_test %post devel %ghc_pkg_recache ++++++ vinyl-0.5.2.tar.gz -> vinyl-0.5.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vinyl-0.5.2/CHANGELOG.md new/vinyl-0.5.3/CHANGELOG.md --- old/vinyl-0.5.2/CHANGELOG.md 2016-02-23 00:07:01.000000000 +0100 +++ new/vinyl-0.5.3/CHANGELOG.md 2016-12-14 02:47:29.000000000 +0100 @@ -1,3 +1,7 @@ +# 0.5.3 + +Added a concise `Show` instance for `Const`. + # 0.5.2 Ported the tutorial to haddocks (andrewthad) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vinyl-0.5.2/Data/Vinyl/Core.hs new/vinyl-0.5.3/Data/Vinyl/Core.hs --- old/vinyl-0.5.2/Data/Vinyl/Core.hs 2016-02-23 00:07:01.000000000 +0100 +++ new/vinyl-0.5.3/Data/Vinyl/Core.hs 2016-08-19 20:53:23.000000000 +0200 @@ -25,6 +25,8 @@ import Data.Typeable (Proxy(..)) import Data.List (intercalate) import Data.Vinyl.TypeLevel +import Data.Type.Equality (TestEquality (..), (:~:) (..)) +import Data.Type.Coercion (TestCoercion (..), Coercion (..)) -- | A record is parameterized by a universe @u@, an interpretation @f@ and a -- list of rows @rs@. The labels or indices of the record are given by @@ -39,6 +41,22 @@ infixl 8 <<$>> infixl 8 <<*>> +instance TestEquality f => TestEquality (Rec f) where + testEquality RNil RNil = Just Refl + testEquality (x :& xs) (y :& ys) = do + Refl <- testEquality x y + Refl <- testEquality xs ys + Just Refl + testEquality _ _ = Nothing + +instance TestCoercion f => TestCoercion (Rec f) where + testCoercion RNil RNil = Just Coercion + testCoercion (x :& xs) (y :& ys) = do + Coercion <- testCoercion x y + Coercion <- testCoercion xs ys + Just Coercion + testCoercion _ _ = Nothing + -- | Two records may be pasted together. rappend :: Rec f as diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vinyl-0.5.2/Data/Vinyl/Functor.hs new/vinyl-0.5.3/Data/Vinyl/Functor.hs --- old/vinyl-0.5.2/Data/Vinyl/Functor.hs 2016-02-23 00:07:01.000000000 +0100 +++ new/vinyl-0.5.3/Data/Vinyl/Functor.hs 2016-12-14 02:47:13.000000000 +0100 @@ -79,6 +79,9 @@ , Storable ) +instance Show a => Show (Const a b) where + show (Const x) = "(Const "++show x ++")" + instance (Functor f, Functor g) => Functor (Compose f g) where fmap f (Compose x) = Compose (fmap (fmap f) x) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vinyl-0.5.2/tests/Intro.lhs new/vinyl-0.5.3/tests/Intro.lhs --- old/vinyl-0.5.2/tests/Intro.lhs 2016-02-23 00:07:01.000000000 +0100 +++ new/vinyl-0.5.3/tests/Intro.lhs 2016-05-12 00:06:01.000000000 +0200 @@ -36,7 +36,7 @@
data Fields = Name | Age | Sleeping | Master deriving Show
Any record can be now described by a type-level list of these labels. -The `DataKinds` extension must be enabled to autmatically turn all the +The `DataKinds` extension must be enabled to automatically turn all the constructors of the `Field` type into types.
type LifeForm = [Name, Age, Sleeping] @@ -155,7 +155,7 @@ upcastedTucker = rcast tucker
The subtyping relationship between record types is expressed with the -`(<:)` constraint; so, rcast is of the following type: +`(<:)` constraint; so, `rcast` is of the following type: < rcast :: r1 <: r2 => Rec f r1 -> Rec f r2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vinyl-0.5.2/vinyl.cabal new/vinyl-0.5.3/vinyl.cabal --- old/vinyl-0.5.2/vinyl.cabal 2016-02-23 00:07:01.000000000 +0100 +++ new/vinyl-0.5.3/vinyl.cabal 2016-12-14 02:45:36.000000000 +0100 @@ -1,5 +1,5 @@ name: vinyl -version: 0.5.2 +version: 0.5.3 synopsis: Extensible Records -- description: license: MIT