packages feed

Cabal revisions of stock-aeson-0.1.0.0

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-cabal-version:       3.0-name:                stock-aeson-version:             0.1.0.0-synopsis:            Derive ToJSON / FromJSON via the stock plugin-description:-  The @stock@ plugin provides a datatype for deriving and synthesising-  instances at compile time. @stock-aeson@ extends the @stock@ with-  support for @FromJSON@ and @ToJSON@, and their higher-kinded variants.--  > {-# options_ghc -fplugin Stock #-}-  > -  > {-# language DerivingVia #-}-  > -  > import Stock-  > import Stock.Aeson-  > -  > data T = MkT Int String-  >   deriving (ToJSON, FromJSON) via Stock T--  The wire format reproduces aeson's @genericToJSON \/ genericParseJSON-  defaultOptions@ exactly (a self-inverse tagged object,-  @{ "tag": "Con", "contents": [field0, …] }@), so @stock-aeson@ is a drop-in-  for @deriving stock Generic@ + @deriving anyclass (ToJSON, FromJSON)@.--  > instance DeriveStock  ToJSON     ..-  > instance DeriveStock  FromJSON   ..-  > instance DeriveStock1 ToJSON1    ..-  > instance DeriveStock1 FromJSON1  ..-  > instance DeriveStock2 ToJSON2    ..-  > instance DeriveStock2 FromJSON2  ..--  The lifted variants derive the same zero-cost way (no @Generic@ at runtime):-  parameter fields route through the supplied per-parameter encoders\/parsers, so-  the bytes still match @aeson@'s generic deriving.--  > data F a   = MkF a [a]   deriving (ToJSON1, FromJSON1) via Stock1 F-  > data P a b = MkP a b [b] deriving (ToJSON2, FromJSON2) via Stock2 P--  (@aeson@ has no @Generic2@; the arity-2 encoding is defined to coincide with-  the value encoding when both per-parameter encoders are @toJSON@.)-license:             BSD-3-Clause-license-file:        LICENSE-author:              Baldur Blöndal-maintainer:          baldur.blondal@iohk.io-category:            Type System-build-type:          Simple-tested-with:         GHC == 9.8.1, GHC == 9.10.3, GHC == 9.12.4, GHC == 9.14.1--library-  exposed-modules:   Stock.Aeson-  build-depends:     base >=4.18 && <5,-                     ghc >=9.6 && <9.16,-                     stock >=0.1 && <0.2,-                     aeson >=2 && <3-  hs-source-dirs:    .-  default-language:  GHC2021-  ghc-options:       -Wall--test-suite test-  type:              exitcode-stdio-1.0-  main-is:           Test.hs-  build-depends:     base, stock, stock-aeson, aeson, bytestring-  ghc-options:       -fplugin=Stock-  hs-source-dirs:    test-  default-language:  GHC2021--source-repository head-  type:     git-  location: https://github.com/Icelandjack/stock.git-  subdir:   aeson+cabal-version:       3.0
+name:                stock-aeson
+version:             0.1.0.0
+x-revision:    1
+synopsis:            Derive ToJSON / FromJSON via the stock plugin
+description:
+  The <https://hackage.haskell.org/package/stock stock> plugin provides a datatype for deriving and synthesising
+  instances at compile time. @stock-aeson@ extends the <https://hackage.haskell.org/package/stock stock> with
+  support for @FromJSON@ and @ToJSON@, and their higher-kinded variants.
+
+  > {-# options_ghc -fplugin Stock #-}
+  > 
+  > {-# language DerivingVia #-}
+  > 
+  > import Stock
+  > import Stock.Aeson
+  > 
+  > data T = MkT Int String
+  >   deriving (ToJSON, FromJSON) via Stock T
+
+  The wire format reproduces aeson's @genericToJSON \/ genericParseJSON
+  defaultOptions@ exactly (a self-inverse tagged object,
+  @{ "tag": "Con", "contents": [field0, …] }@), so @stock-aeson@ is a drop-in
+  for @deriving stock Generic@ + @deriving anyclass (ToJSON, FromJSON)@.
+
+  > instance DeriveStock  ToJSON     ..
+  > instance DeriveStock  FromJSON   ..
+  > instance DeriveStock1 ToJSON1    ..
+  > instance DeriveStock1 FromJSON1  ..
+  > instance DeriveStock2 ToJSON2    ..
+  > instance DeriveStock2 FromJSON2  ..
+
+  The lifted variants derive the same zero-cost way (no @Generic@ at runtime):
+  parameter fields route through the supplied per-parameter encoders\/parsers, so
+  the bytes still match @aeson@'s generic deriving.
+
+  > data F a   = MkF a [a]   deriving (ToJSON1, FromJSON1) via Stock1 F
+  > data P a b = MkP a b [b] deriving (ToJSON2, FromJSON2) via Stock2 P
+
+  (@aeson@ has no @Generic2@; the arity-2 encoding is defined to coincide with
+  the value encoding when both per-parameter encoders are @toJSON@.)
+license:             BSD-3-Clause
+license-file:        LICENSE
+author:              Baldur Blöndal
+maintainer:          baldur.blondal@iohk.io
+category:            Type System
+build-type:          Simple
+tested-with:         GHC == 9.8.1, GHC == 9.10.3, GHC == 9.12.4, GHC == 9.14.1
+
+library
+  exposed-modules:   Stock.Aeson
+  build-depends:     base >=4.18 && <5,
+                     ghc >=9.6 && <9.16,
+                     stock >=0.1 && <0.2,
+                     aeson >=2 && <3
+  hs-source-dirs:    .
+  default-language:  GHC2021
+  ghc-options:       -Wall
+
+test-suite test
+  type:              exitcode-stdio-1.0
+  main-is:           Test.hs
+  build-depends:     base, stock, stock-aeson, aeson, bytestring
+  ghc-options:       -fplugin=Stock
+  hs-source-dirs:    test
+  default-language:  GHC2021
+
+source-repository head
+  type:     git
+  location: https://github.com/Icelandjack/stock.git
+  subdir:   aeson
revision 2
-cabal-version:       3.0
-name:                stock-aeson
-version:             0.1.0.0
-x-revision:    1
-synopsis:            Derive ToJSON / FromJSON via the stock plugin
+cabal-version: 3.0
+name:          stock-aeson
+version:       0.1.0.0
+x-revision:    2
+synopsis:      Derive ToJSON / FromJSON via the stock plugin
 description:
-  The <https://hackage.haskell.org/package/stock stock> plugin provides a datatype for deriving and synthesising
-  instances at compile time. @stock-aeson@ extends the <https://hackage.haskell.org/package/stock stock> with
-  support for @FromJSON@ and @ToJSON@, and their higher-kinded variants.
 
+  The @<https://hackage.haskell.org/package/stock stock>@ plugin
+  provides a datatype for deriving and synthesising instances at
+  compile time. __stock-aeson__ extends it to support
+  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
+  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, and their higher-kinded variants.
+
   > {-# options_ghc -fplugin Stock #-}
   > 
   > {-# language DerivingVia #-}
   > import Stock
   > import Stock.Aeson
   > 
-  > data T = MkT Int String
-  >   deriving (ToJSON, FromJSON) via Stock T
+  > data Person = P { name :: String, age :: Int }
+  >   deriving (ToJSON, FromJSON) via 
+  >     Stock Person
 
-  The wire format reproduces aeson's @genericToJSON \/ genericParseJSON
-  defaultOptions@ exactly (a self-inverse tagged object,
-  @{ "tag": "Con", "contents": [field0, …] }@), so @stock-aeson@ is a drop-in
-  for @deriving stock Generic@ + @deriving anyclass (ToJSON, FromJSON)@.
+  The wire format reproduces aeson's @genericToJSON@ \/
+  @genericParseJSON defaultOptions@ exactly, __stock-aeson__ is a
+  drop-in for @deriving anyclass (ToJSON, FromJSON)@.
 
-  > instance DeriveStock  ToJSON     ..
-  > instance DeriveStock  FromJSON   ..
-  > instance DeriveStock1 ToJSON1    ..
-  > instance DeriveStock1 FromJSON1  ..
-  > instance DeriveStock2 ToJSON2    ..
-  > instance DeriveStock2 FromJSON2  ..
+  __stock-aeson__ provides six instances, that signal to the plugin
+  how to derive
+  @<https://hackage.haskell.org/package/profunctors/docs/Data-Profunctor.html#t:Profunctor Profunctor>@.
 
-  The lifted variants derive the same zero-cost way (no @Generic@ at runtime):
-  parameter fields route through the supplied per-parameter encoders\/parsers, so
-  the bytes still match @aeson@'s generic deriving.
+  > instance DeriveStock  ToJSON    ..
+  > instance DeriveStock1 ToJSON1   ..
+  > instance DeriveStock2 ToJSON2   ..
+  > instance DeriveStock  FromJSON  ..
+  > instance DeriveStock1 FromJSON1 ..
+  > instance DeriveStock2 FromJSON2 ..
 
+  The lifted variants derive the same zero-cost way (no @Generic@ at
+  runtime): parameter fields route through the supplied per-parameter
+  encoders\/parsers, so the bytes still match @aeson@'s generic
+  deriving.
+
   > data F a   = MkF a [a]   deriving (ToJSON1, FromJSON1) via Stock1 F
   > data P a b = MkP a b [b] deriving (ToJSON2, FromJSON2) via Stock2 P
 
-  (@aeson@ has no @Generic2@; the arity-2 encoding is defined to coincide with
-  the value encoding when both per-parameter encoders are @toJSON@.)
+  @<https://hackage.haskell.org/package/stock-deepseq stock>@ companion packages include:
+
+  * @<https://hackage.haskell.org/package/stock-deepseq stock-deepseq>@: @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData NFData>@, @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData1 NFData1>@, @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData2 NFData2>@
+  * @<https://hackage.haskell.org/package/stock-hashable stock-hashable>@: @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable1 Hashable1>@, @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@
+  * __stock-aeson__: @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON1 ToJSON1>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON2 ToJSON2>@; @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON1 FromJSON1>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON2 FromJSON2>@
+  * @<https://hackage.haskell.org/package/stock-quickcheck stock-quickcheck>@: @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary Arbitrary>@, @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary1 Arbitrary1>@, @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary2 Arbitrary2>@; @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:CoArbitrary CoArbitrary>@
+  * @<https://hackage.haskell.org/package/stock-profunctors stock-profunctors>@: @<https://hackage.haskell.org/package/profunctors/docs/Data-Profunctor.html#t:Profunctor Profunctor>@
+
 license:             BSD-3-Clause
 license-file:        LICENSE
 author:              Baldur Blöndal
revision 3
 cabal-version: 3.0
 name:          stock-aeson
 version:       0.1.0.0
-x-revision:    2
+x-revision:    3
 synopsis:      Derive ToJSON / FromJSON via the stock plugin
 description:
 
   @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, and their higher-kinded variants.
 
   > {-# options_ghc -fplugin Stock #-}
-  > 
+  >
   > {-# language DerivingVia #-}
-  > 
+  >
   > import Stock
   > import Stock.Aeson
-  > 
+  >
   > data Person = P { name :: String, age :: Int }
-  >   deriving (ToJSON, FromJSON) via 
+  >   deriving (ToJSON, FromJSON) via
   >     Stock Person
 
-  The wire format reproduces aeson's @genericToJSON@ \/
-  @genericParseJSON defaultOptions@ exactly, __stock-aeson__ is a
-  drop-in for @deriving anyclass (ToJSON, FromJSON)@.
+  The wire format reproduces
+  @<https://hackage.haskell.org/package/aeson aeson>@'s
+  @genericToJSON@ \/ @genericParseJSON
+  defaultOptions@. __stock-aeson__ is a drop-in for @deriving anyclass
+  (ToJSON, FromJSON)@.
 
   __stock-aeson__ provides six instances, that signal to the plugin
   how to derive
-  @<https://hackage.haskell.org/package/profunctors/docs/Data-Profunctor.html#t:Profunctor Profunctor>@.
+  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
+  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@.
 
   > instance DeriveStock  ToJSON    ..
   > instance DeriveStock1 ToJSON1   ..
revision 4
 cabal-version: 3.0
 name:          stock-aeson
 version:       0.1.0.0
-x-revision:    3
+x-revision:    4
 synopsis:      Derive ToJSON / FromJSON via the stock plugin
 description:
 
-  The @<https://hackage.haskell.org/package/stock stock>@ plugin
-  provides a datatype for deriving and synthesising instances at
-  compile time. __stock-aeson__ extends it to support
+  The <https://hackage.haskell.org/package/stock stock> plugin
+  provides a newtype
+  __@<https://hackage-content.haskell.org/package/stock-0.1.0.0/docs/Stock.html#t:Stock Stock>@__ 
+  for deriving and synthesising instances at compile
+  time. __stock-aeson__ extends it to support
   @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
   @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, and their higher-kinded variants.
 
   > data F a   = MkF a [a]   deriving (ToJSON1, FromJSON1) via Stock1 F
   > data P a b = MkP a b [b] deriving (ToJSON2, FromJSON2) via Stock2 P
 
-  @<https://hackage.haskell.org/package/stock-deepseq stock>@ companion packages include:
+  <https://hackage.haskell.org/package/stock stock> companion packages include:
 
-  * @<https://hackage.haskell.org/package/stock-deepseq stock-deepseq>@: @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData NFData>@, @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData1 NFData1>@, @<https://hackage.haskell.org/package/deepseq/docs/Control-DeepSeq.html#t:NFData2 NFData2>@
-  * @<https://hackage.haskell.org/package/stock-hashable stock-hashable>@: @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable1 Hashable1>@, @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@
-  * __stock-aeson__: @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON1 ToJSON1>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON2 ToJSON2>@; @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON1 FromJSON1>@, @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON2 FromJSON2>@
-  * @<https://hackage.haskell.org/package/stock-quickcheck stock-quickcheck>@: @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary Arbitrary>@, @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary1 Arbitrary1>@, @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:Arbitrary2 Arbitrary2>@; @<https://hackage.haskell.org/package/QuickCheck/docs/Test-QuickCheck.html#t:CoArbitrary CoArbitrary>@
-  * @<https://hackage.haskell.org/package/stock-profunctors stock-profunctors>@: @<https://hackage.haskell.org/package/profunctors/docs/Data-Profunctor.html#t:Profunctor Profunctor>@
+  * __@<https://hackage.haskell.org/package/stock-deepseq stock-deepseq>@__: @<https://hackage-content.haskell.org/package/deepseq-1.5.2.0/docs/Control-DeepSeq.html#t:NFData NFData>@, @<https://hackage-content.haskell.org/package/deepseq-1.5.2.0/docs/Control-DeepSeq.html#t:NFData1 NFData1>@, @<https://hackage-content.haskell.org/package/deepseq-1.5.2.0/docs/Control-DeepSeq.html#t:NFData2 NFData2>@
+  * __@<https://hackage.haskell.org/package/stock-hashable stock-hashable>@__: @<https://hackage-content.haskell.org/package/hashable-1.5.1.0/docs/Data-Hashable.html#t:Hashable Hashable>@, @<https://hackage-content.haskell.org/package/hashable-1.5.1.0/docs/Data-Hashable-Lifted.html#t:Hashable1 Hashable1>@, @<https://hackage-content.haskell.org/package/hashable-1.5.1.0/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@
+  * __@stock-aeson@__: @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:ToJSON ToJSON>@, @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:ToJSON1 ToJSON1>@, @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:ToJSON2 ToJSON2>@; @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:FromJSON FromJSON>@, @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:FromJSON1 FromJSON1>@, @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:FromJSON2 FromJSON2>@
+  * __@<https://hackage.haskell.org/package/stock-quickcheck stock-quickcheck>@__: @<https://hackage-content.haskell.org/package/QuickCheck-2.18.0.0/docs/Test-QuickCheck.html#t:Arbitrary Arbitrary>@, @<https://hackage-content.haskell.org/package/QuickCheck-2.18.0.0/docs/Test-QuickCheck.html#t:Arbitrary1 Arbitrary1>@, @<https://hackage-content.haskell.org/package/QuickCheck-2.18.0.0/docs/Test-QuickCheck.html#t:Arbitrary2 Arbitrary2>@; @<https://hackage-content.haskell.org/package/QuickCheck-2.18.0.0/docs/Test-QuickCheck.html#t:CoArbitrary CoArbitrary>@
+  * __@<https://hackage.haskell.org/package/stock-profunctors stock-profunctors>@__: @<https://hackage-content.haskell.org/package/profunctors-5.6.3/docs/Data-Profunctor.html#t:Profunctor Profunctor>@
 
 license:             BSD-3-Clause
 license-file:        LICENSE
revision 5
 cabal-version: 3.0
 name:          stock-aeson
 version:       0.1.0.0
-x-revision:    4
+x-revision:    5
 synopsis:      Derive ToJSON / FromJSON via the stock plugin
 description:
 
   __@<https://hackage-content.haskell.org/package/stock-0.1.0.0/docs/Stock.html#t:Stock Stock>@__ 
   for deriving and synthesising instances at compile
   time. __stock-aeson__ extends it to support
-  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
-  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@, and their higher-kinded variants.
+  @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
+  @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:FromJSON FromJSON>@, and their higher-kinded variants.
 
   > {-# options_ghc -fplugin Stock #-}
   >
 
   __stock-aeson__ provides six instances, that signal to the plugin
   how to derive
-  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
-  @<https://hackage.haskell.org/package/aeson/docs/Data-Aeson.html#t:FromJSON FromJSON>@.
+  @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:ToJSON ToJSON>@,
+  @<https://hackage-content.haskell.org/package/aeson-2.3.0.0/docs/Data-Aeson.html#t:FromJSON FromJSON>@.
 
   > instance DeriveStock  ToJSON    ..
   > instance DeriveStock1 ToJSON1   ..