Metadata revisions for stock-hashable-0.1.0.0

Package maintainers and Hackage trustees are allowed to edit certain bits of package metadata after a release, without uploading a new tarball. Note that the tarball itself is never changed, just the metadata that is stored separately. For more information about metadata revisions, please refer to the Hackage Metadata Revisions FAQ.

No. Time User SHA256
-r5 2026-06-24T01:45:36Z BaldurBlondal ba1bceac5b550b61c5935f25a0010a9026e3e53a252ab4124f7c04cb802c0f4a
  • Changed tested-with from

    ghc ==9.8.1: ghc ==9.10.3: ghc ==9.12.4: ghc ==9.14.1
    to
    ghc ==9.8.1: ghc ==9.10.3: ghc ==9.12.4: ghc ==9.14.1: ghc ==9.10.3: ghc ==9.12.4: ghc ==9.14.1

  • Changed description from

    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-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, 
    and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @<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>@ and @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    <https://hackage.haskell.org/package/stock stock> companion packages include:
    
    * __@<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>@
    * __@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>@
    * __@<https://hackage.haskell.org/package/stock-aeson 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>@
    to
    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-hashable__ extends it to support
    @<https://hackage-content.haskell.org/package/hashable-1.5.1.0/docs/Data-Hashable.html#t:Hashable Hashable>@, 
    and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @<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>@ and @<https://hackage-content.haskell.org/package/hashable-1.5.1.0/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    <https://hackage.haskell.org/package/stock stock> companion packages include:
    
    * __@<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>@
    * __@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>@
    * __@<https://hackage.haskell.org/package/stock-aeson 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>@

-r4 2026-06-24T00:20:51Z BaldurBlondal 13d220c621b67f2ca4601f0985442688b75a06ed43634a672ec4be93a0c97de9
  • Changed description from

    The @<https://hackage.haskell.org/package/stock stock>@ plugin
    provides a datatype for deriving and synthesising instances at
    compile time. __stock-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    @<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>@
    * __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>@
    * @<https://hackage.haskell.org/package/stock-aeson 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>@
    to
    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-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, 
    and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @<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>@ and @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable-Lifted.html#t:Hashable2 Hashable2>@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    <https://hackage.haskell.org/package/stock stock> companion packages include:
    
    * __@<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>@
    * __@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>@
    * __@<https://hackage.haskell.org/package/stock-aeson 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>@

-r3 2026-06-23T19:41:54Z BaldurBlondal 3664b5ebc50b847275335f1cafd896874c294c51e7af7fdaebf4f040effc84bd
  • Changed description from

    The @<https://hackage.haskell.org/package/stock stock>@ plugin
    provides a datatype for deriving and synthesising instances at
    compile time. __stock-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable
    Hashable>@, and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    @<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>@
    * __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>@
    * @<https://hackage.haskell.org/package/stock-aeson 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>@
    to
    The @<https://hackage.haskell.org/package/stock stock>@ plugin
    provides a datatype for deriving and synthesising instances at
    compile time. __stock-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable Hashable>@, and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    @<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>@
    * __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>@
    * @<https://hackage.haskell.org/package/stock-aeson 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>@

-r2 2026-06-23T19:20:36Z BaldurBlondal fa5a443fe5dd2108a14b150c429f313134c3ca239a39cf3abb4847652575480b
  • Changed description from

    The <https://hackage.haskell.org/package/stock stock> plugin provides a datatype for deriving and synthesising
    instances at compile time. @stock-hashable@ extends the <https://hackage.haskell.org/package/stock stock> with
    support for @Hashable@ and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    @stock-hashable@ provides three instances, that signal to the plugin
    how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    to
    The @<https://hackage.haskell.org/package/stock stock>@ plugin
    provides a datatype for deriving and synthesising instances at
    compile time. __stock-hashable__ extends it to support
    @<https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html#t:Hashable
    Hashable>@, and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    __stock-hashable__ provides three instances, that signal to the
    plugin how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    
    @<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>@
    * __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>@
    * @<https://hackage.haskell.org/package/stock-aeson 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>@

-r1 2026-06-23T16:28:29Z BaldurBlondal 69790e16d33fe21ef08a6b2745e4bf3b6f59b17a60426427b426e33144774a89
  • Changed description from

    The @stock@ plugin provides a datatype for deriving and synthesising
    instances at compile time. @stock-hashable@ extends the @stock@ with
    support for @Hashable@ and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    @stock-hashable@ provides three instances, that signal to the plugin
    how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..
    to
    The <https://hackage.haskell.org/package/stock stock> plugin provides a datatype for deriving and synthesising
    instances at compile time. @stock-hashable@ extends the <https://hackage.haskell.org/package/stock stock> with
    support for @Hashable@ and higher-kinded variants.
    
    > {-# options_ghc -fplugin Stock #-}
    > 
    > {-# language DerivingVia #-}
    > 
    > import Stock
    > import Stock.Hashable
    > 
    > data Pair a b = Pair a b
    >  deriving (Eq,  Hashable)  via Stock  (Pair a b)
    >  deriving (Eq1, Hashable1) via Stock1 (Pair a)
    >  deriving (Eq2, Hashable2) via Stock2 Pair
    
    @stock-hashable@ provides three instances, that signal to the plugin
    how to derive @Hashable@.
    
    > instance DeriveStock  Hashable  ..
    > instance DeriveStock1 Hashable1 ..
    > instance DeriveStock2 Hashable2 ..

-r0 2026-06-23T15:43:49Z BaldurBlondal 9f29ff16b458f42e5cc1c08986e7f929fe931ace324fec8f6541a47e292b51ef