deepseq 1.4.4.0 → 1.4.5.0
raw patch · 3 files changed
+21/−4 lines, 3 filesdep ~basenew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- Control.DeepSeq: instance Control.DeepSeq.NFData (Data.Fixed.Fixed a)
- Control.DeepSeq: instance Control.DeepSeq.NFData (System.Mem.StableName.StableName a)
- Control.DeepSeq: instance Control.DeepSeq.NFData a => Control.DeepSeq.NFData (GHC.Base.Maybe a)
- Control.DeepSeq: instance Control.DeepSeq.NFData1 GHC.Base.Maybe
- Control.DeepSeq: instance Control.DeepSeq.NFData1 System.Mem.StableName.StableName
- Control.DeepSeq: instance forall k2 k1 (a :: k1) (b :: k2). Control.DeepSeq.NFData (a Data.Type.Equality.:~~: b)
+ Control.DeepSeq: instance Control.DeepSeq.GNFData arity (GHC.Generics.URec a)
+ Control.DeepSeq: instance Control.DeepSeq.NFData (GHC.StableName.StableName a)
+ Control.DeepSeq: instance Control.DeepSeq.NFData a => Control.DeepSeq.NFData (GHC.Maybe.Maybe a)
+ Control.DeepSeq: instance Control.DeepSeq.NFData1 GHC.Maybe.Maybe
+ Control.DeepSeq: instance Control.DeepSeq.NFData1 GHC.StableName.StableName
+ Control.DeepSeq: instance forall k (a :: k). Control.DeepSeq.NFData (Data.Fixed.Fixed a)
+ Control.DeepSeq: instance forall k1 k2 (a :: k1) (b :: k2). Control.DeepSeq.NFData (a Data.Type.Equality.:~~: b)
- Control.DeepSeq: ($!!) :: (NFData a) => (a -> b) -> a -> b
+ Control.DeepSeq: ($!!) :: NFData a => (a -> b) -> a -> b
- Control.DeepSeq: force :: (NFData a) => a -> a
+ Control.DeepSeq: force :: NFData a => a -> a
Files
- Control/DeepSeq.hs +12/−0
- changelog.md +5/−0
- deepseq.cabal +4/−4
Control/DeepSeq.hs view
@@ -179,6 +179,18 @@ grnf args = grnf args . unM1 {-# INLINEABLE grnf #-} +#if MIN_VERSION_base(4,9,0)+ -- | Because 'URec' did not exist prior to @base-4.9@, this instance is only+ -- defined on @base-4.9@ or later.+ --+ -- @since 1.4.5.0+instance GNFData arity (URec a) where+ grnf _ = rwhnf -- Every URec data instance consists of a single data+ -- constructor containing a single strict field, so reducing+ -- any URec instance to WHNF suffices to reduce it to NF.+ {-# INLINEABLE grnf #-}+#endif+ instance (GNFData arity a, GNFData arity b) => GNFData arity (a :*: b) where grnf args (x :*: y) = grnf args x `seq` grnf args y {-# INLINEABLE grnf #-}
changelog.md view
@@ -1,5 +1,10 @@ # Changelog for [`deepseq` package](http://hackage.haskell.org/package/deepseq) +## 1.4.5.0++ * Add `GNFData` for URec+ This will enable deriving NFData instances for unboxed types+ ## 1.4.4.0 *Sep 2018* * Bundled with GHC 8.6.1
deepseq.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.12 name: deepseq-version: 1.4.4.0+version: 1.4.5.0 -- NOTE: Don't forget to update ./changelog.md license: BSD3@@ -25,8 +25,8 @@ details. build-type: Simple-tested-with: GHC==8.6.1,- GHC==8.4.3, GHC==8.4.2, GHC==8.4.1,+tested-with: GHC==8.6.5, GHC==8.6.4,GHC==8.6.3,GHC==8.6.3,GHC==8.6.1,+ GHC==8.4.4, GHC==8.4.3, GHC==8.4.2, GHC==8.4.1, GHC==8.2.2, GHC==8.2.1, GHC==8.0.2, GHC==8.0.1, GHC==7.10.3, GHC==7.10.2, GHC==7.10.1,@@ -63,7 +63,7 @@ if impl(ghc>=7.8) other-extensions: EmptyCase - build-depends: base >= 4.5 && < 4.13,+ build-depends: base >= 4.5 && < 4.16, array >= 0.4 && < 0.6 ghc-options: -Wall