Hello community, here is the log from the commit of package ghc-aeson for openSUSE:Factory checked in at 2020-09-07 21:28:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-aeson (Old) and /work/SRC/openSUSE:Factory/.ghc-aeson.new.3399 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-aeson" Mon Sep 7 21:28:59 2020 rev:30 rq:832240 version:1.5.4.0 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-aeson/ghc-aeson.changes 2020-08-28 21:24:43.948421198 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-aeson.new.3399/ghc-aeson.changes 2020-09-07 21:30:29.885246757 +0200 @@ -1,0 +2,10 @@ +Mon Aug 31 02:02:42 UTC 2020 - psim...@suse.com + +- Update aeson to version 1.5.4.0. + ### 1.5.4.0 + + * Add instances for `ToJSONKey` and `FromJSONKey` to `Const`, thanks to Dan Fithian. + * Add support for template-haskell 2.17, thanks to Galen Huntington. + * Documentation typo fix, thanks to Jean-Baptiste Mazon. + +------------------------------------------------------------------- Old: ---- aeson-1.5.3.0.tar.gz New: ---- aeson-1.5.4.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-aeson.spec ++++++ --- /var/tmp/diff_new_pack.BR99QO/_old 2020-09-07 21:30:30.349246971 +0200 +++ /var/tmp/diff_new_pack.BR99QO/_new 2020-09-07 21:30:30.353246973 +0200 @@ -19,7 +19,7 @@ %global pkg_name aeson %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.5.3.0 +Version: 1.5.4.0 Release: 0 Summary: Fast JSON parsing and encoding License: BSD-3-Clause ++++++ aeson-1.5.3.0.tar.gz -> aeson-1.5.4.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/Data/Aeson/Types/FromJSON.hs new/aeson-1.5.4.0/Data/Aeson/Types/FromJSON.hs --- old/aeson-1.5.3.0/Data/Aeson/Types/FromJSON.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/Data/Aeson/Types/FromJSON.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1459,6 +1459,9 @@ {-# INLINE parseJSON #-} parseJSON = fmap Const . parseJSON +instance (FromJSON a, FromJSONKey a) => FromJSONKey (Const a b) where + fromJSONKey = fmap Const fromJSONKey + instance FromJSON1 Maybe where liftParseJSON _ _ Null = pure Nothing diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/Data/Aeson/Types/Internal.hs new/aeson-1.5.4.0/Data/Aeson/Types/Internal.hs --- old/aeson-1.5.3.0/Data/Aeson/Types/Internal.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/Data/Aeson/Types/Internal.hs 2001-09-09 03:46:40.000000000 +0200 @@ -366,7 +366,7 @@ -- | -- --- The ordering is total, consistent with 'Eq' innstance. +-- The ordering is total, consistent with 'Eq' instance. -- However, nothing else about the ordering is specified, -- and it may change from environment to environment and version to version -- of either this package or its dependencies ('hashable' and 'unordered-containers'). @@ -426,7 +426,9 @@ where a' = V.toList a lift (Object o) = [| Object (H.fromList . map (first pack) $ o') |] where o' = map (first unpack) . H.toList $ o -#if MIN_VERSION_template_haskell(2,16,0) +#if MIN_VERSION_template_haskell(2,17,0) + liftTyped = TH.unsafeCodeCoerce . TH.lift +#elif MIN_VERSION_template_haskell(2,16,0) liftTyped = TH.unsafeTExpCoerce . TH.lift #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/Data/Aeson/Types/ToJSON.hs new/aeson-1.5.4.0/Data/Aeson/Types/ToJSON.hs --- old/aeson-1.5.3.0/Data/Aeson/Types/ToJSON.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/Data/Aeson/Types/ToJSON.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1234,6 +1234,9 @@ toEncoding (Const x) = toEncoding x {-# INLINE toEncoding #-} +instance (ToJSON a, ToJSONKey a) => ToJSONKey (Const a b) where + toJSONKey = contramap getConst toJSONKey + instance ToJSON1 Maybe where liftToJSON t _ (Just a) = t a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/aeson.cabal new/aeson-1.5.4.0/aeson.cabal --- old/aeson-1.5.3.0/aeson.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/aeson.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,5 @@ name: aeson -version: 1.5.3.0 +version: 1.5.4.0 license: BSD3 license-file: LICENSE category: Text, Web, JSON @@ -103,8 +103,8 @@ bytestring >= 0.10.4.0 && < 0.11, containers >= 0.5.5.1 && < 0.7, deepseq >= 1.3.0.0 && < 1.5, - ghc-prim >= 0.2 && < 0.7, - template-haskell >= 2.9.0.0 && < 2.17, + ghc-prim >= 0.2 && < 0.8, + template-haskell >= 2.9.0.0 && < 2.18, text >= 1.2.3.0 && < 1.3, time >= 1.4 && < 1.11 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/changelog.md new/aeson-1.5.4.0/changelog.md --- old/aeson-1.5.3.0/changelog.md 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/changelog.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,11 @@ For the latest version of this document, please see [https://github.com/bos/aeson/blob/master/changelog.md](https://github.com/bos/aeson/blob/master/changelog.md). +### 1.5.4.0 + +* Add instances for `ToJSONKey` and `FromJSONKey` to `Const`, thanks to Dan Fithian. +* Add support for template-haskell 2.17, thanks to Galen Huntington. +* Documentation typo fix, thanks to Jean-Baptiste Mazon. + ### 1.5.3.0 * Add instances for types in `strict` and `data-fix` packages, thanks to Oleg Grenrus. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/tests/PropertyKeys.hs new/aeson-1.5.4.0/tests/PropertyKeys.hs --- old/aeson-1.5.3.0/tests/PropertyKeys.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/tests/PropertyKeys.hs 2001-09-09 03:46:40.000000000 +0200 @@ -4,6 +4,7 @@ import Prelude.Compat +import Control.Applicative (Const) import Data.Time (Day, LocalTime, TimeOfDay, UTCTime) import Data.Version (Version) import Instances () @@ -37,4 +38,5 @@ , testProperty "Version" $ roundTripKey (undefined :: Version) , testProperty "Lazy Text" $ roundTripKey (undefined :: LT.Text) , testProperty "UUID" $ roundTripKey UUID.nil + , testProperty "Const Text" $ roundTripKey (undefined :: Const T.Text ()) ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/aeson-1.5.3.0/tests/UnitTests.hs new/aeson-1.5.4.0/tests/UnitTests.hs --- old/aeson-1.5.3.0/tests/UnitTests.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/aeson-1.5.4.0/tests/UnitTests.hs 2001-09-09 03:46:40.000000000 +0200 @@ -24,6 +24,7 @@ import Prelude.Compat +import Control.Applicative (Const) import Control.Monad (forM, forM_) import Data.Aeson ((.=), (.:), (.:?), (.:!), FromJSON(..), FromJSONKeyFunction(..), FromJSONKey(..), ToJSON1(..), decode, eitherDecode, encode, fromJSON, genericParseJSON, genericToEncoding, genericToJSON, object, withObject, withEmbeddedJSON) import Data.Aeson.Internal (JSONPathElement(..), formatError) @@ -346,6 +347,7 @@ #if __GLASGOW_HASKELL__ >= 710 , assertIsCoerce' "MyText'" (fromJSONKey :: FromJSONKeyFunction MyText') + , assertIsCoerce "Const Text" (fromJSONKey :: FromJSONKeyFunction (Const Text ())) #endif ] where