packages feed

deepseq 1.3.0.1 → 1.3.0.2

raw patch · 3 files changed

+90/−28 lines, 3 filesdep ~arraydep ~basenew-uploaderPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: array, base

API changes (from Hackage documentation)

Files

Control/DeepSeq.hs view
@@ -1,4 +1,5 @@-#if __GLASGOW_HASKELL__ >= 703+{-# LANGUAGE CPP #-}+#if __GLASGOW_HASKELL__ >= 702 && MIN_VERSION_array(0,4,0) {-# LANGUAGE Safe #-} #endif -----------------------------------------------------------------------------@@ -6,7 +7,7 @@ -- Module      :  Control.DeepSeq -- Copyright   :  (c) The University of Glasgow 2001-2009 -- License     :  BSD-style (see the file LICENSE)--- +-- -- Maintainer  :  libraries@haskell.org -- Stability   :  stable -- Portability :  portable@@ -19,7 +20,7 @@ -- -- > import System.IO -- > import Control.DeepSeq--- > +-- > -- > main = do -- >     h <- openFile "f" ReadMode -- >     s <- hGetContents h@@ -44,6 +45,7 @@ -- thread, before passing to another thread (preventing work moving to -- the wrong threads). --+-- /Since: 1.1.0.0/ module Control.DeepSeq (      deepseq, ($!!), force,      NFData(..),@@ -78,11 +80,14 @@ -- evaluation, use 'pseq' from "Control.Parallel" in the -- @parallel@ package. --+-- /Since: 1.1.0.0/ deepseq :: NFData a => a -> b -> b deepseq a b = rnf a `seq` b  -- | the deep analogue of '$!'.  In the expression @f $!! x@, @x@ is -- fully evaluated before the function @f@ is applied to it.+--+-- /Since: 1.2.0.0/ ($!!) :: (NFData a) => (a -> b) -> a -> b f $!! x = x `deepseq` f x @@ -94,25 +99,28 @@ -- @force x@ only performs evaluation when the value of @force x@ -- itself is demanded, so essentially it turns shallow evaluation into -- deep evaluation.-+--+-- /Since: 1.2.0.0/ force :: (NFData a) => a -> a force x = x `deepseq` x  -- | A class of types that can be fully evaluated.+--+-- /Since: 1.1.0.0/ class NFData a where     -- | rnf should reduce its argument to normal form (that is, fully     -- evaluate all sub-components), and then return '()'.-    -- -    -- The default implementation of 'rnf' is      --+    -- The default implementation of 'rnf' is+    --     -- > rnf a = a `seq` ()-    -- +    --     -- which may be convenient when defining instances for data types with     -- no unevaluated fields (e.g. enumerations).     rnf :: a -> ()     rnf a = a `seq` () -instance NFData Int +instance NFData Int instance NFData Word instance NFData Integer instance NFData Float@@ -132,10 +140,13 @@ instance NFData Word32 instance NFData Word64 +-- |/Since: 1.3.0.0/ instance NFData (Fixed a)  -- |This instance is for convenience and consistency with 'seq'. -- This assumes that WHNF is equivalent to NF for functions.+--+-- /Since: 1.3.0.0/ instance NFData (a -> b)  --Rational and complex numbers.@@ -144,7 +155,7 @@   rnf x = rnf (numerator x, denominator x)  instance (RealFloat a, NFData a) => NFData (Complex a) where-  rnf (x:+y) = rnf x `seq` +  rnf (x:+y) = rnf x `seq`                rnf y `seq`                () @@ -156,6 +167,7 @@     rnf (Left x)  = rnf x     rnf (Right y) = rnf y +-- |/Since: 1.3.0.0/ instance NFData Data.Version.Version where     rnf (Data.Version.Version branch tags) = rnf branch `seq` rnf tags @@ -170,15 +182,15 @@   rnf (x,y) = rnf x `seq` rnf y  instance (NFData a, NFData b, NFData c) => NFData (a,b,c) where-  rnf (x,y,z) = rnf x `seq` rnf y `seq` rnf z +  rnf (x,y,z) = rnf x `seq` rnf y `seq` rnf z  instance (NFData a, NFData b, NFData c, NFData d) => NFData (a,b,c,d) where-  rnf (x1,x2,x3,x4) = rnf x1 `seq` -		        rnf x2 `seq` -		        rnf x3 `seq` -		        rnf x4 +  rnf (x1,x2,x3,x4) = rnf x1 `seq`+                      rnf x2 `seq`+                      rnf x3 `seq`+                      rnf x4 -instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5) => +instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5) =>          NFData (a1, a2, a3, a4, a5) where   rnf (x1, x2, x3, x4, x5) =                   rnf x1 `seq`@@ -187,7 +199,7 @@                   rnf x4 `seq`                   rnf x5 -instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6) => +instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6) =>          NFData (a1, a2, a3, a4, a5, a6) where   rnf (x1, x2, x3, x4, x5, x6) =                   rnf x1 `seq`@@ -197,7 +209,7 @@                   rnf x5 `seq`                   rnf x6 -instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7) => +instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7) =>          NFData (a1, a2, a3, a4, a5, a6, a7) where   rnf (x1, x2, x3, x4, x5, x6, x7) =                   rnf x1 `seq`@@ -208,7 +220,7 @@                   rnf x6 `seq`                   rnf x7 -instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8) => +instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8) =>          NFData (a1, a2, a3, a4, a5, a6, a7, a8) where   rnf (x1, x2, x3, x4, x5, x6, x7, x8) =                   rnf x1 `seq`@@ -220,7 +232,7 @@                   rnf x7 `seq`                   rnf x8 -instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8, NFData a9) => +instance (NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8, NFData a9) =>          NFData (a1, a2, a3, a4, a5, a6, a7, a8, a9) where   rnf (x1, x2, x3, x4, x5, x6, x7, x8, x9) =                   rnf x1 `seq`
+ changelog view
@@ -0,0 +1,35 @@+-*-change-log-*-++1.3.0.2  Nov 2013+        * Update package description to Cabal 1.10 format+        * Add support for GHC 7.8+        * Drop support for GHCs older than GHC 7.0.1+        * Add `/since: .../` annotations to Haddock comments+        * Add changelog++1.3.0.1  Sep 2012+        * No changes++1.3.0.0  Feb 2012+        * Add instances for `Fixed`, `a->b` and `Version`++1.3.0.1  Sep 2011+        * Disable SafeHaskell for GHC 7.2++1.2.0.0  Sep 2011+        * New function `force`+        * New operator `$!!`+        * Add SafeHaskell support+        * Dropped dependency on containers++1.1.0.2  Nov 2010+        * Improve Haddock documentation++1.1.0.1  Oct 2010+        * Enable support for containers-0.4.x++1.1.0.0  Nov 2009+        * Major rewrite++1.0.0.0  Nov 2009+        * Initial release
deepseq.cabal view
@@ -1,5 +1,6 @@ name:		deepseq-version:        1.3.0.1+version:        1.3.0.2+-- GHC 7.6.1 released with 1.3.0.1 license:	BSD3 license-file:	LICENSE maintainer:	libraries@haskell.org@@ -19,17 +20,31 @@     components) which defines strategies for fully evaluating different     data types.     .+    If you want to automatically derive 'NFData' instances via the+    "GHC.Generics" facility, there is a companion package+    <http://hackage.haskell.org/package/deepseq-generics deepseq-generics>+    which builds on top of this package. build-type:     Simple-cabal-version:  >=1.6+cabal-version:  >=1.10+tested-with:    GHC==7.6.3, GHC==7.6.2, GHC==7.6.1, GHC==7.4.2, GHC==7.4.1, GHC==7.2.2, GHC==7.2.1, GHC==7.0.4, GHC==7.0.3, GHC==7.0.2, GHC==7.0.1 +extra-source-files: changelog+ source-repository head-    type:     git-    location: http://darcs.haskell.org/packages/deepseq.git/+  type:     git+  location: http://git.haskell.org/packages/deepseq.git -library {+source-repository this+  type:     git+  location: http://git.haskell.org/packages/deepseq.git+  tag:      deepseq-1.3.0.2-release++library+  default-language: Haskell2010+  other-extensions: CPP+  if impl(ghc >= 7.2)+    other-extensions: Safe   exposed-modules: Control.DeepSeq-  build-depends: base       >= 3   && < 5, -                 array      >= 0.1 && < 0.5+  build-depends: base       >= 4.3 && < 4.8,+                 array      >= 0.3 && < 0.6   ghc-options: -Wall-  extensions: CPP-}