Add MonadPlus instance
[darcs-mirrors/vector.git] / vector.cabal
index 2940468..507264d 100644 (file)
@@ -1,50 +1,68 @@
 Name:           vector
-Version:        0.5.1
+Version:        0.8
 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-2010
+Copyright:      (c) Roman Leshchinskiy 2008-2011
 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 (both mutable
-        and immutable), with a powerful loop fusion optimization framework .
+        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.Unboxed@] Unboxed vectors with an adaptive
+        ["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.Primitive@] Unboxed vectors of primitive types as
-        defined by the @primitive@ package. @Data.Vector.Unboxed@ is more
+        ["Data.Vector.Primitive"] Unboxed vectors of primitive types as
+        defined by the @primitive@ package. "Data.Vector.Unboxed" is more
         flexible at no performance cost.
         .
-        [@Data.Vector.Generic@] Generic interface to the vector types.
+        ["Data.Vector.Generic"] Generic interface to the vector types.
+        .
+        Each module has a @Safe@ version with is marked as @Trustworthy@
+        (see <http://hackage.haskell.org/trac/ghc/wiki/SafeHaskell>).
         .
         There is also a (draft) tutorial on common uses of vector.
         .
         * <http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial>
         .
-        Changes since version 0.4.2
+        Please use the project trac to submit bug reports and feature
+        requests.
+        .
+        * <http://trac.haskell.org/vector>
+        .
+        Changes in version 0.8
+        .
+        * New functions: @constructN@, @constructrN@
+        .
+        * Support for GHC 7.2 array copying primitives
+        .
+        * New fixity for @(!)@
+        .
+        * Safe Haskell support (contributed by David Terei)
         .
-        * Unboxed vectors of primitive types and tuples
+        * 'Functor', 'Monad', 'Applicative', 'Alternative', 'Foldable' and
+          'Traversable' instances for boxed vectors
+          (/WARNING: they tend to be slow and are only provided for completeness/)
         .
-        * Redesigned interface between mutable and immutable vectors (now
-          with the popular @unsafeFreeze@ primitive)
+        * 'Show' instances for immutable vectors follow containers conventions
         .
-        * Many new combinators
+        * 'Read' instances for all immutable vector types
         .
-        * Significant performance improvements
+        * Performance improvements
         .
 
-Cabal-Version:  >= 1.2
+Cabal-Version:  >= 1.2.3
 Build-Type:     Simple
 
 Extra-Source-Files:
@@ -56,8 +74,24 @@ Extra-Source-Files:
       tests/Utilities.hs
       tests/Tests/Stream.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
+      Changelog
 
 Flag BoundsChecks
   Description: Enable bounds checking
@@ -75,21 +109,29 @@ 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.Monadic.Safe
         Data.Vector.Fusion.Stream
+        Data.Vector.Fusion.Stream.Safe
 
         Data.Vector.Generic.Mutable
+        Data.Vector.Generic.Mutable.Safe
+        Data.Vector.Generic.Base
         Data.Vector.Generic.New
+        Data.Vector.Generic.New.Safe
         Data.Vector.Generic
+        Data.Vector.Generic.Safe
 
         Data.Vector.Primitive.Mutable
+        Data.Vector.Primitive.Mutable.Safe
         Data.Vector.Primitive
+        Data.Vector.Primitive.Safe
 
         Data.Vector.Storable.Internal
         Data.Vector.Storable.Mutable
@@ -97,10 +139,14 @@ Library
 
         Data.Vector.Unboxed.Base
         Data.Vector.Unboxed.Mutable
+        Data.Vector.Unboxed.Mutable.Safe
         Data.Vector.Unboxed
+        Data.Vector.Unboxed.Safe
 
         Data.Vector.Mutable
+        Data.Vector.Mutable.Safe
         Data.Vector
+        Data.Vector.Safe
 
   Include-Dirs:
         include, internal
@@ -108,7 +154,7 @@ Library
   Install-Includes:
         vector.h
 
-  Build-Depends: base >= 2 && < 5, ghc >= 6.9, primitive >= 0.2 && < 0.3
+  Build-Depends: base >= 4 && < 5, primitive >= 0.4 && < 0.5
 
   if impl(ghc<6.13)
     Ghc-Options: -finline-if-enough-args -fno-method-sharing