Require primitive >= 0.5.0.1
[darcs-mirrors/vector.git] / vector.cabal
index c7ac1bb..b9bdc08 100644 (file)
@@ -1,31 +1,57 @@
 Name:           vector
-Version:        0.5
+Version:        0.10
 License:        BSD3
 License-File:   LICENSE
 Author:         Roman Leshchinskiy <rl@cse.unsw.edu.au>
 Maintainer:     Roman Leshchinskiy <rl@cse.unsw.edu.au>
-Copyright:      (c) Roman Leshchinskiy 2008-2009
-Homepage:       http://darcs.haskell.org/vector
+Copyright:      (c) Roman Leshchinskiy 2008-2012
+Homepage:       http://code.haskell.org/vector
+Bug-Reports:    http://trac.haskell.org/vector
 Category:       Data, Data Structures
 Synopsis:       Efficient Arrays
 Description:
         .
-        An efficient implementation of Int-indexed arrays with a powerful loop
-        fusion framework.
+        An efficient implementation of Int-indexed arrays (both mutable
+        and immutable), with a powerful loop optimisation framework .
         .
         It is structured as follows:
         .
-        [@Data.Vector@] boxed vectors of arbitrary types
+        ["Data.Vector"] Boxed vectors of arbitrary types.
         .
-        [@Data.Vector.Primitive@] unboxed vectors of primitive types as
-                defined by the @primitive@ package
+        ["Data.Vector.Unboxed"] Unboxed vectors with an adaptive
+        representation based on data type families.
         .
-        [@Data.Vector.Storable@] unboxed vectors of 'Storable' types
+        ["Data.Vector.Storable"] Unboxed vectors of 'Storable' types.
         .
-        [@Data.Vector.Generic@] generic interface to the vector types
+        ["Data.Vector.Primitive"] Unboxed vectors of primitive types as
+        defined by the @primitive@ package. "Data.Vector.Unboxed" is more
+        flexible at no performance cost.
         .
-
-Cabal-Version:  >= 1.2
+        ["Data.Vector.Generic"] Generic interface to the vector types.
+        .
+        There is also a (draft) tutorial on common uses of vector.
+        .
+        * <http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial>
+        .
+        Please use the project trac to submit bug reports and feature
+        requests.
+        .
+        * <http://trac.haskell.org/vector>
+        .
+        Changes in version 0.10.0.1
+        .
+        * Require @primitive@ to include workaround for a GHC array copying bug
+        .
+        Changes in version 0.10
+        .
+       * @NFData@ instances
+       .
+       * More efficient block fills
+       .
+       * Safe Haskell support removed
+       .
+
+Cabal-Version:  >= 1.2.3
 Build-Type:     Simple
 
 Extra-Source-Files:
@@ -35,8 +61,26 @@ Extra-Source-Files:
       tests/Main.hs
       tests/Boilerplater.hs
       tests/Utilities.hs
-      tests/Tests/Stream.hs
+      tests/Tests/Move.hs
+      tests/Tests/Bundle.hs
       tests/Tests/Vector.hs
+      benchmarks/vector-benchmarks.cabal
+      benchmarks/LICENSE
+      benchmarks/Setup.hs
+      benchmarks/Main.hs
+      benchmarks/Algo/AwShCC.hs
+      benchmarks/Algo/HybCC.hs
+      benchmarks/Algo/Leaffix.hs
+      benchmarks/Algo/ListRank.hs
+      benchmarks/Algo/Quickhull.hs
+      benchmarks/Algo/Rootfix.hs
+      benchmarks/Algo/Spectral.hs
+      benchmarks/Algo/Tridiag.hs
+      benchmarks/TestData/Graph.hs
+      benchmarks/TestData/ParenTree.hs
+      benchmarks/TestData/Random.hs
+      internal/GenUnboxTuple.hs
+      internal/unbox-tuple-instances
 
 Flag BoundsChecks
   Description: Enable bounds checking
@@ -45,7 +89,7 @@ Flag BoundsChecks
 Flag UnsafeChecks
   Description: Enable bounds checking in unsafe operations at the cost of a
                significant performance penalty
-  Description: False
+  Default: False
 
 Flag InternalChecks
   Description: Enable internal consistency checks at the cost of a
@@ -54,16 +98,19 @@ Flag InternalChecks
 
 
 Library
-  Extensions: CPP
+  Extensions: CPP, DeriveDataTypeable
   Exposed-Modules:
+        Data.Vector.Internal.Check
+
         Data.Vector.Fusion.Util
-        Data.Vector.Fusion.Stream.Size
         Data.Vector.Fusion.Stream.Monadic
-        Data.Vector.Fusion.Stream
-
-        Data.Vector.Internal.Check
+        Data.Vector.Fusion.Bundle.Size
+        Data.Vector.Fusion.Bundle.Monadic
+        Data.Vector.Fusion.Bundle
 
+        Data.Vector.Generic.Mutable.Base
         Data.Vector.Generic.Mutable
+        Data.Vector.Generic.Base
         Data.Vector.Generic.New
         Data.Vector.Generic
 
@@ -74,19 +121,26 @@ Library
         Data.Vector.Storable.Mutable
         Data.Vector.Storable
 
+        Data.Vector.Unboxed.Base
+        Data.Vector.Unboxed.Mutable
+        Data.Vector.Unboxed
+
         Data.Vector.Mutable
         Data.Vector
 
   Include-Dirs:
-        include
+        include, internal
 
   Install-Includes:
         vector.h
 
-  Build-Depends: base >= 2 && < 5, ghc >= 6.9, primitive
+  Build-Depends: base >= 4 && < 5
+               , primitive >= 0.5.0.1 && < 0.6
+               , ghc-prim
+               , deepseq >= 1.1 && < 1.4
 
   if impl(ghc<6.13)
-    Ghc-Options: -finline-if-enough-args
+    Ghc-Options: -finline-if-enough-args -fno-method-sharing
   
   Ghc-Options: -O2