packages feed

JuicyPixels 3.2.1 → 3.2.2

raw patch · 16 files changed

+201/−130 lines, 16 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

JuicyPixels.cabal view
@@ -1,86 +1,86 @@-Name:                JuicyPixels-Version:             3.2.1-Synopsis:            Picture loading/serialization (in png, jpeg, bitmap, gif, tga, tiff and radiance)-Description:-    <<data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADABAMAAACg8nE0AAAAElBMVEUAAABJqDSTWEL/qyb///8AAABH/1GTAAAAAXRSTlMAQObYZgAAAN5JREFUeF7s1sEJgFAQxFBbsAV72v5bEVYWPwT/XDxmCsi7zvHXavYREBDI3XP2GgICqBBYuwIC+/rVayPUAyAg0HvIXBcQoDFDGnUBgWQQ2Bx3AYFaRoBpAQHWb3bt2ARgGAiCYFFuwf3X5HA/McgGJWI2FdykCv4aBYzmKwDwvl6NVmUAAK2vlwEALK7fo88GANB6HQsAAAAAAAAA7P94AQCzswEAAAAAAAAAAAAAAAAAAICzh4UAO4zWAYBfRutHA4Bn5C69JhowAMGoBaMWDG0wCkbBKBgFo2AUAACPmegUST/IJAAAAABJRU5ErkJggg==>>-    .-    This library can load and store images in PNG,Bitmap, Jpeg, Radiance, Tiff and Gif images.--homepage:            https://github.com/Twinside/Juicy.Pixels-License:             BSD3-License-file:        LICENSE-Author:              Vincent Berthoux-Maintainer:          vincent.berthoux@gmail.com-Category:            Codec, Graphics, Image-Stability:           Stable-Build-type:          Simple---- Constraint on the version of Cabal needed to build this package.-Cabal-version:       >= 1.10--extra-source-files: changelog, docimages/*.png, docimages/*.svg-extra-doc-files: docimages/*.png, docimages/*.svg--Source-Repository head-    Type:      git-    Location:  git://github.com/Twinside/Juicy.Pixels.git--Source-Repository this-    Type:      git-    Location:  git://github.com/Twinside/Juicy.Pixels.git-    Tag:       v3.2.1--Flag Mmap-    Description: Enable the file loading via mmap (memory map)-    Default: False--Library-  hs-source-dirs: src-  Default-Language: Haskell2010-  Exposed-modules:  Codec.Picture,-                    Codec.Picture.Bitmap,-                    Codec.Picture.Gif,-                    Codec.Picture.Png,-                    Codec.Picture.Jpg,-                    Codec.Picture.HDR,-                    Codec.Picture.Tga,-                    Codec.Picture.Tiff,-                    Codec.Picture.Saving,-                    Codec.Picture.Types,-                    Codec.Picture.ColorQuant--  Ghc-options: -O3 -Wall-  Ghc-prof-options: -rtsopts -Wall -prof -auto-all-  Build-depends: base                >= 4       && < 5,-                 bytestring          >= 0.9     && < 0.11,-                 mtl                 >= 1.1     && < 2.3,-                 binary              >= 0.5     && < 0.8,-                 zlib                >= 0.5.3.1 && < 0.6,-                 transformers        >= 0.2,-                 vector              >= 0.9     && < 0.11,-                 primitive           >= 0.4     && < 0.6,-                 deepseq             >= 1.1     && < 1.5,-                 containers          >= 0.4.2   && < 0.6--  if flag(Mmap)-    Build-depends: mmap-    CC-Options: "-DWITH_MMAP_BYTESTRING"--  -- Modules not exported by this package.-  Other-modules: Codec.Picture.Jpg.DefaultTable,-                 Codec.Picture.Jpg.FastIdct,-                 Codec.Picture.Jpg.FastDct,-                 Codec.Picture.Jpg.Types,-                 Codec.Picture.Jpg.Common,-                 Codec.Picture.Jpg.Progressive,-                 Codec.Picture.Gif.LZW,-                 Codec.Picture.Gif.LZWEncoding,-                 Codec.Picture.Png.Export,-                 Codec.Picture.Png.Type,-                 Codec.Picture.BitWriter,-                 Codec.Picture.InternalHelper,-                 Codec.Picture.VectorByteConversion--  Install-Includes: src/Codec/Picture/ConvGraph.hs-  Include-Dirs: src/Codec/Picture-+Name:                JuicyPixels
+Version:             3.2.2
+Synopsis:            Picture loading/serialization (in png, jpeg, bitmap, gif, tga, tiff and radiance)
+Description:
+    <<data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMAAAADABAMAAACg8nE0AAAAElBMVEUAAABJqDSTWEL/qyb///8AAABH/1GTAAAAAXRSTlMAQObYZgAAAN5JREFUeF7s1sEJgFAQxFBbsAV72v5bEVYWPwT/XDxmCsi7zvHXavYREBDI3XP2GgICqBBYuwIC+/rVayPUAyAg0HvIXBcQoDFDGnUBgWQQ2Bx3AYFaRoBpAQHWb3bt2ARgGAiCYFFuwf3X5HA/McgGJWI2FdykCv4aBYzmKwDwvl6NVmUAAK2vlwEALK7fo88GANB6HQsAAAAAAAAA7P94AQCzswEAAAAAAAAAAAAAAAAAAICzh4UAO4zWAYBfRutHA4Bn5C69JhowAMGoBaMWDG0wCkbBKBgFo2AUAACPmegUST/IJAAAAABJRU5ErkJggg==>>
+    .
+    This library can load and store images in PNG,Bitmap, Jpeg, Radiance, Tiff and Gif images.
+
+homepage:            https://github.com/Twinside/Juicy.Pixels
+License:             BSD3
+License-file:        LICENSE
+Author:              Vincent Berthoux
+Maintainer:          vincent.berthoux@gmail.com
+Category:            Codec, Graphics, Image
+Stability:           Stable
+Build-type:          Simple
+
+-- Constraint on the version of Cabal needed to build this package.
+Cabal-version:       >= 1.10
+
+extra-source-files: changelog, docimages/*.png, docimages/*.svg
+extra-doc-files: docimages/*.png, docimages/*.svg
+
+Source-Repository head
+    Type:      git
+    Location:  git://github.com/Twinside/Juicy.Pixels.git
+
+Source-Repository this
+    Type:      git
+    Location:  git://github.com/Twinside/Juicy.Pixels.git
+    Tag:       v3.2.2
+
+Flag Mmap
+    Description: Enable the file loading via mmap (memory map)
+    Default: False
+
+Library
+  hs-source-dirs: src
+  Default-Language: Haskell2010
+  Exposed-modules:  Codec.Picture,
+                    Codec.Picture.Bitmap,
+                    Codec.Picture.Gif,
+                    Codec.Picture.Png,
+                    Codec.Picture.Jpg,
+                    Codec.Picture.HDR,
+                    Codec.Picture.Tga,
+                    Codec.Picture.Tiff,
+                    Codec.Picture.Saving,
+                    Codec.Picture.Types,
+                    Codec.Picture.ColorQuant
+
+  Ghc-options: -O3 -Wall
+  Ghc-prof-options: -rtsopts -Wall -prof -auto-all
+  Build-depends: base                >= 4       && < 5,
+                 bytestring          >= 0.9     && < 0.11,
+                 mtl                 >= 1.1     && < 2.3,
+                 binary              >= 0.5     && < 0.8,
+                 zlib                >= 0.5.3.1 && < 0.6,
+                 transformers        >= 0.2,
+                 vector              >= 0.9     && < 0.11,
+                 primitive           >= 0.4     && < 0.6,
+                 deepseq             >= 1.1     && < 1.5,
+                 containers          >= 0.4.2   && < 0.6
+
+  if flag(Mmap)
+    Build-depends: mmap
+    CC-Options: "-DWITH_MMAP_BYTESTRING"
+
+  -- Modules not exported by this package.
+  Other-modules: Codec.Picture.Jpg.DefaultTable,
+                 Codec.Picture.Jpg.FastIdct,
+                 Codec.Picture.Jpg.FastDct,
+                 Codec.Picture.Jpg.Types,
+                 Codec.Picture.Jpg.Common,
+                 Codec.Picture.Jpg.Progressive,
+                 Codec.Picture.Gif.LZW,
+                 Codec.Picture.Gif.LZWEncoding,
+                 Codec.Picture.Png.Export,
+                 Codec.Picture.Png.Type,
+                 Codec.Picture.BitWriter,
+                 Codec.Picture.InternalHelper,
+                 Codec.Picture.VectorByteConversion
+
+  Install-Includes: src/Codec/Picture/ConvGraph.hs
+  Include-Dirs: src/Codec/Picture
+
changelog view
@@ -1,5 +1,8 @@ -*-change-log-*-
 
+v3.2.2 January 2015
+ * Squashing GHC 7.10 warnings
+
 v3.2.1 December 2014
  * Bumping deepseq dependencies preparing for GHC 7.10
    release.
src/Codec/Picture/BitWriter.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE Rank2Types #-}
+{-# LANGUAGE CPP #-}
 -- | This module implement helper functions to read & write data
 -- at bits level.
 module Codec.Picture.BitWriter( BoolReader
@@ -24,8 +25,12 @@                               , runBoolReaderWith
                               ) where
 
-import Data.STRef
+#if !MIN_VERSION_base(4,8,0)
 import Control.Applicative( (<$>), (<*>) )
+#endif
+
+import Data.STRef
+import Control.Applicative( (<$>) )
 import Control.Monad( when )
 import Control.Monad.ST( ST )
 import qualified Control.Monad.Trans.State.Strict as S
src/Codec/Picture/ColorQuant.hs view
@@ -2,6 +2,7 @@ {-# LANGUAGE BangPatterns #-}
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP #-}
 -- | This module provide some color quantisation algorithm
 -- in order to help in the creation of paletted images.
 -- The most important function is `palettize` which will
@@ -14,7 +15,11 @@     , PaletteOptions( .. )
     ) where
 
-import           Control.Applicative (Applicative (..), (<$>))
+#if !MIN_VERSION_base(4,8,0)
+import           Control.Applicative (Applicative (..))
+#endif
+
+import           Control.Applicative ((<$>))
 import           Data.Bits           (unsafeShiftL, unsafeShiftR, (.&.), (.|.))
 import           Data.List           (elemIndex)
 import           Data.Maybe          (fromMaybe)
src/Codec/Picture/Gif.hs view
@@ -1,6 +1,7 @@ {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE CPP #-}
 -- | Module implementing GIF decoding.
 module Codec.Picture.Gif ( -- * Reading
                            decodeGif
@@ -20,7 +21,12 @@                          , greyPalette
                          ) where
 
-import Control.Applicative( pure, (<$>), (<*>) )
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( pure, (<*>) )
+#endif
+
+import Control.Applicative( (<$>) )
+
 import Control.Monad( replicateM, replicateM_, unless )
 import Control.Monad.ST( runST )
 import Control.Monad.Trans.Class( lift )
src/Codec/Picture/Gif/LZWEncoding.hs view
@@ -1,12 +1,16 @@ {-# LANGUAGE BangPatterns, CPP #-}
 module Codec.Picture.Gif.LZWEncoding( lzwEncode ) where
 
+#if !MIN_VERSION_base(4,8,0)
+import Data.Monoid( mempty )
+#endif
+
 import Control.Applicative( (<$>) )
 import Control.Monad.ST( runST )
 import qualified Data.ByteString.Lazy as L
 import Data.Maybe( fromMaybe )
-import Data.Monoid( mempty )
 import Data.Word( Word8 )
+
 #if MIN_VERSION_containers(0,5,0)
 import qualified Data.IntMap.Strict as I
 #else
src/Codec/Picture/HDR.hs view
@@ -10,11 +10,16 @@                         , writeRLENewStyleHDR
                         ) where
 
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( pure, (<*>) )
+#endif
+
+import Control.Applicative( (<$>) )
+
 import Data.Bits( Bits, (.&.), (.|.), unsafeShiftL, unsafeShiftR )
 import Data.Char( ord, chr, isDigit )
 import Data.Word( Word8 )
 import Data.Monoid( (<>) )
-import Control.Applicative( pure, (<$>), (<*>) )
 import Control.Monad( when, foldM, foldM_, forM, forM_, unless )
 import Control.Monad.Trans.Class( lift )
 import qualified Data.ByteString as B
src/Codec/Picture/Jpg.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE BangPatterns #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP #-}
 {-# OPTIONS_GHC -fspec-constr-count=5 #-}
 -- | Module used for JPEG file loading and writing.
 module Codec.Picture.Jpg( decodeJpeg
@@ -11,8 +12,13 @@                         , encodeJpeg
                         ) where
 
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( pure )
+#endif
+
+import Control.Applicative( (<$>) )
+
 import Control.Arrow( (>>>) )
-import Control.Applicative( pure, (<$>) )
 import Control.Monad( when, forM_ )
 import Control.Monad.ST( ST, runST )
 import Control.Monad.Trans( lift )
src/Codec/Picture/Jpg/Common.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE BangPatterns #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP #-}
 module Codec.Picture.Jpg.Common
     ( DctCoefficients
     , JpgUnpackerParameter( .. )
@@ -18,7 +19,11 @@     , decodeRestartInterval
     ) where
 
+#if !MIN_VERSION_base(4,8,0)
 import Control.Applicative( (<$>), pure )
+#endif
+
+import Control.Applicative( (<$>) )
 import Control.Monad( replicateM, when )
 import Control.Monad.ST( ST, runST )
 import Data.Bits( unsafeShiftL, unsafeShiftR, (.&.) )
src/Codec/Picture/Jpg/DefaultTable.hs view
@@ -3,35 +3,35 @@ -- | Module used by the jpeg decoder internally, shouldn't be used
 -- in user code.
 module Codec.Picture.Jpg.DefaultTable( DctComponent( .. )
-									 , HuffmanTree( .. )
-									 , HuffmanTable
-									 , HuffmanPackedTree
-									 , MacroBlock
-									 , QuantificationTable
-									 , HuffmanWriterCode 
-									 , scaleQuantisationMatrix
-									 , makeMacroBlock
-									 , makeInverseTable
-									 , buildHuffmanTree
-									 , packHuffmanTree
-									 , huffmanPackedDecode
+                                     , HuffmanTree( .. )
+                                     , HuffmanTable
+                                     , HuffmanPackedTree
+                                     , MacroBlock
+                                     , QuantificationTable
+                                     , HuffmanWriterCode 
+                                     , scaleQuantisationMatrix
+                                     , makeMacroBlock
+                                     , makeInverseTable
+                                     , buildHuffmanTree
+                                     , packHuffmanTree
+                                     , huffmanPackedDecode
 
-									 , defaultChromaQuantizationTable
+                                     , defaultChromaQuantizationTable
 
-									 , defaultLumaQuantizationTable
+                                     , defaultLumaQuantizationTable
 
-									 , defaultAcChromaHuffmanTree
-									 , defaultAcChromaHuffmanTable
+                                     , defaultAcChromaHuffmanTree
+                                     , defaultAcChromaHuffmanTable
 
-									 , defaultAcLumaHuffmanTree 
-									 , defaultAcLumaHuffmanTable 
+                                     , defaultAcLumaHuffmanTree 
+                                     , defaultAcLumaHuffmanTable 
 
-									 , defaultDcChromaHuffmanTree 
-									 , defaultDcChromaHuffmanTable
+                                     , defaultDcChromaHuffmanTree 
+                                     , defaultDcChromaHuffmanTable
 
                                      , defaultDcLumaHuffmanTree
-									 , defaultDcLumaHuffmanTable
-									 ) where
+                                     , defaultDcLumaHuffmanTable
+                                     ) where
 
 import Data.Int( Int16 )
 import Foreign.Storable ( Storable )
src/Codec/Picture/Jpg/Progressive.hs view
@@ -2,12 +2,17 @@ {-# LANGUAGE TypeSynonymInstances #-}
 {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE CPP #-}
 module Codec.Picture.Jpg.Progressive
     ( JpgUnpackerParameter( .. )
     , progressiveUnpack
     ) where
 
-import Control.Applicative( pure, (<$>) )
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( pure )
+#endif
+
+import Control.Applicative( (<$>) )
 import Control.Monad( when, forM_ )
 import Control.Monad.ST( ST )
 import Control.Monad.Trans( lift )
src/Codec/Picture/Jpg/Types.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE ScopedTypeVariables #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP #-}
 module Codec.Picture.Jpg.Types( MutableMacroBlock
                               , createEmptyMutableMacroBlock
                               , printMacroBlock
@@ -19,7 +20,12 @@                               , dctBlockSize
                               ) where
 
-import Control.Applicative( (<$>), (<*>))
+
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( (<*>))
+#endif
+
+import Control.Applicative( (<$>) )
 import Control.Monad( when, replicateM, forM, forM_, unless )
 import Control.Monad.ST( ST )
 import Data.Bits( (.|.), (.&.), unsafeShiftL, unsafeShiftR )
src/Codec/Picture/Png/Type.hs view
@@ -119,9 +119,9 @@ data PngFilter =
     -- | Filt(x) = Orig(x), Recon(x) = Filt(x)
       FilterNone
-    -- | Filt(x) = Orig(x) - Orig(a), 	Recon(x) = Filt(x) + Recon(a)
+    -- | Filt(x) = Orig(x) - Orig(a),     Recon(x) = Filt(x) + Recon(a)
     | FilterSub
-    -- | Filt(x) = Orig(x) - Orig(b), 	Recon(x) = Filt(x) + Recon(b)
+    -- | Filt(x) = Orig(x) - Orig(b),     Recon(x) = Filt(x) + Recon(b)
     | FilterUp
     -- | Filt(x) = Orig(x) - floor((Orig(a) + Orig(b)) / 2),
     -- Recon(x) = Filt(x) + floor((Recon(a) + Recon(b)) / 2)
@@ -183,10 +183,10 @@              (fail $ "Invalid CRC : " ++ show computedCrc ++ ", "
                                       ++ show crc)
         return PngRawChunk {
-        	chunkLength = size,
-        	chunkData = imgData,
-        	chunkCRC = crc,
-        	chunkType = chunkSig
+            chunkLength = size,
+            chunkData = imgData,
+            chunkCRC = crc,
+            chunkType = chunkSig
         }
 
 instance Binary PngIHdr where
@@ -219,10 +219,10 @@         interlace <- get
         _crc <- getWord32be
         return PngIHdr {
-        	width = w,
-        	height = h,
-        	bitDepth = depth,
-        	colourType = colorType,
+            width = w,
+            height = h,
+            bitDepth = depth,
+            colourType = colorType,
             compressionMethod = compression,
             filterMethod = filtermethod,
             interlaceMethod = interlace
src/Codec/Picture/Tga.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE BangPatterns #-}
+{-# LANGUAGE CPP #-}
 -- | Module implementing function to read and write
 -- Targa (*.tga) files.
 module Codec.Picture.Tga( decodeTga
@@ -12,8 +13,15 @@                         , writeTga
                         )  where
 
+
+#if !MIN_VERSION_base(4,8,0)
+import Data.Monoid( mempty )
+import Control.Applicative( (<*>), pure )
+#endif
+
+import Control.Applicative( (<$>) )
+
 import Control.Monad.ST( ST, runST )
-import Control.Applicative( (<$>), (<*>), pure )
 import Data.Bits( (.&.)
                 , (.|.)
                 , bit
@@ -21,7 +29,6 @@                 , setBit
                 , unsafeShiftL
                 , unsafeShiftR )
-import Data.Monoid( mempty )
 import Data.Word( Word8, Word16 )
 import Data.Binary( Binary( .. ), encode )
 import Data.Binary.Get( Get
src/Codec/Picture/Tiff.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
 {-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE CPP #-}
 -- | Module implementing TIFF decoding.
 --
 -- Supported compression schemes:
@@ -26,7 +27,13 @@ --
 module Codec.Picture.Tiff( decodeTiff, TiffSaveable, encodeTiff, writeTiff ) where
 
-import Control.Applicative( (<$>), (<*>), pure )
+
+#if !MIN_VERSION_base(4,8,0)
+import Control.Applicative( (<*>), pure )
+#endif
+
+import Control.Applicative( (<$>) )
+
 import Control.Monad( when, replicateM, foldM_, unless )
 import Control.Monad.ST( ST, runST )
 import Control.Monad.Writer.Strict( execWriter, tell, Writer )
src/Codec/Picture/VectorByteConversion.hs view
@@ -1,13 +1,20 @@ {-# LANGUAGE ScopedTypeVariables #-}
 {-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE CPP #-}
 module Codec.Picture.VectorByteConversion( blitVector
                                          , toByteString
                                          , imageFromUnsafePtr ) where
 
 import Data.Word( Word8 )
 import Data.Vector.Storable( Vector, unsafeToForeignPtr, unsafeFromForeignPtr0 )
-import Foreign.ForeignPtr.Safe( ForeignPtr, castForeignPtr )
 import Foreign.Storable( Storable, sizeOf )
+
+#if !MIN_VERSION_base(4,8,0)
+import Foreign.ForeignPtr.Safe( ForeignPtr, castForeignPtr )
+#else
+import Foreign.ForeignPtr( ForeignPtr, castForeignPtr )
+#endif
+
 
 import qualified Data.ByteString as B
 import qualified Data.ByteString.Internal as S