on master help sign in
Make the benchmarks subtree saner

--HG-- rename : tests/benchmarks/.gitignore => benchmarks/.gitignore rename : tests/benchmarks/Setup.hs => benchmarks/Setup.hs rename : tests/benchmarks/cbits/time_iconv.c => benchmarks/cbits/time_iconv.c rename : tests/benchmarks/src/Data/Text/Benchmarks.hs => benchmarks/haskell/Benchmarks.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Builder.hs => benchmarks/haskell/Benchmarks/Builder.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/DecodeUtf8.hs => benchmarks/haskell/Benchmarks/DecodeUtf8.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/EncodeUtf8.hs => benchmarks/haskell/Benchmarks/EncodeUtf8.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Equality.hs => benchmarks/haskell/Benchmarks/Equality.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/FileRead.hs => benchmarks/haskell/Benchmarks/FileRead.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/FoldLines.hs => benchmarks/haskell/Benchmarks/FoldLines.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/BigTable.hs => benchmarks/haskell/Benchmarks/Programs/BigTable.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Cut.hs => benchmarks/haskell/Benchmarks/Programs/Cut.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Fold.hs => benchmarks/haskell/Benchmarks/Programs/Fold.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Sort.hs => benchmarks/haskell/Benchmarks/Programs/Sort.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/StripTags.hs => benchmarks/haskell/Benchmarks/Programs/StripTags.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Programs/Throughput.hs => benchmarks/haskell/Benchmarks/Programs/Throughput.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Pure.hs => benchmarks/haskell/Benchmarks/Pure.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/ReadNumbers.hs => benchmarks/haskell/Benchmarks/ReadNumbers.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Replace.hs => benchmarks/haskell/Benchmarks/Replace.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Search.hs => benchmarks/haskell/Benchmarks/Search.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/Stream.hs => benchmarks/haskell/Benchmarks/Stream.hs rename : tests/benchmarks/src/Data/Text/Benchmarks/WordFrequencies.hs => benchmarks/haskell/Benchmarks/WordFrequencies.hs rename : tests/benchmarks/python/.gitignore => benchmarks/python/.gitignore rename : tests/benchmarks/python/cut.py => benchmarks/python/cut.py rename : tests/benchmarks/python/sort.py => benchmarks/python/sort.py rename : tests/benchmarks/python/strip_tags.py => benchmarks/python/strip_tags.py rename : tests/benchmarks/python/utils.py => benchmarks/python/utils.py rename : tests/benchmarks/ruby/cut.rb => benchmarks/ruby/cut.rb rename : tests/benchmarks/ruby/fold.rb => benchmarks/ruby/fold.rb rename : tests/benchmarks/ruby/sort.rb => benchmarks/ruby/sort.rb rename : tests/benchmarks/ruby/strip_tags.rb => benchmarks/ruby/strip_tags.rb rename : tests/benchmarks/ruby/utils.rb => benchmarks/ruby/utils.rb rename : tests/benchmarks/text-benchmarks.cabal => benchmarks/text-benchmarks.cabal

commit0922578781ce6eaeb6e9b96eb327791bd33eec9b authorBryan O'Sullivan <bos@serpentine.com> dateThu 28 Jun 2012, 21:06 (14 years ago) parent6e29fac
36 files changed+86−83
Data/Text/Lazy/Fusion.hs+5−3 tests/benchmarks/.gitignore → benchmarks/.gitignore tests/benchmarks/Setup.hs → benchmarks/Setup.hs tests/benchmarks/cbits/time_iconv.c → benchmarks/cbits/time_iconv.c tests/benchmarks/src/Data/Text/Benchmarks.hs → benchmarks/haskell/Benchmarks.hs+18−18 tests/benchmarks/src/Data/Text/Benchmarks/Builder.hs → benchmarks/haskell/Benchmarks/Builder.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/DecodeUtf8.hs → benchmarks/haskell/Benchmarks/DecodeUtf8.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/EncodeUtf8.hs → benchmarks/haskell/Benchmarks/EncodeUtf8.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Equality.hs → benchmarks/haskell/Benchmarks/Equality.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/FileRead.hs → benchmarks/haskell/Benchmarks/FileRead.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/FoldLines.hs → benchmarks/haskell/Benchmarks/FoldLines.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/BigTable.hs → benchmarks/haskell/Benchmarks/Programs/BigTable.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/Cut.hs → benchmarks/haskell/Benchmarks/Programs/Cut.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/Fold.hs → benchmarks/haskell/Benchmarks/Programs/Fold.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/Sort.hs → benchmarks/haskell/Benchmarks/Programs/Sort.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/StripTags.hs → benchmarks/haskell/Benchmarks/Programs/StripTags.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Programs/Throughput.hs → benchmarks/haskell/Benchmarks/Programs/Throughput.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Pure.hs → benchmarks/haskell/Benchmarks/Pure.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/ReadNumbers.hs → benchmarks/haskell/Benchmarks/ReadNumbers.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Replace.hs → benchmarks/haskell/Benchmarks/Replace.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Search.hs → benchmarks/haskell/Benchmarks/Search.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/Stream.hs → benchmarks/haskell/Benchmarks/Stream.hs+1−1 tests/benchmarks/src/Data/Text/Benchmarks/WordFrequencies.hs → benchmarks/haskell/Benchmarks/WordFrequencies.hs+1−1 tests/benchmarks/python/.gitignore → benchmarks/python/.gitignore tests/benchmarks/python/cut.py → benchmarks/python/cut.py tests/benchmarks/python/sort.py → benchmarks/python/sort.py tests/benchmarks/python/strip_tags.py → benchmarks/python/strip_tags.py tests/benchmarks/python/utils.py → benchmarks/python/utils.py tests/benchmarks/ruby/cut.rb → benchmarks/ruby/cut.rb tests/benchmarks/ruby/fold.rb → benchmarks/ruby/fold.rb tests/benchmarks/ruby/sort.rb → benchmarks/ruby/sort.rb tests/benchmarks/ruby/strip_tags.rb → benchmarks/ruby/strip_tags.rb tests/benchmarks/ruby/utils.rb → benchmarks/ruby/utils.rb benchmarks/text-benchmarks.cabal+37 tests/benchmarks/text-benchmarks.cabal−36 text.cabal+8−8
Data/Text/Lazy/Fusion.hs+5−3
@@ -47,6 +47,8 @@ stream text = Stream next (text :*: 0) unknownSize
4747 where Iter c d = iter t i
4848{-# INLINE [0] stream #-}
4949
50+data UC s = UC s {-# UNPACK #-} !Int
51+
5052-- | /O(n)/ Convert a 'Stream Char' into a 'Text', using the given
5153-- chunk size.
5254unstreamChunks :: Int -> Stream Char -> Text
@@ -59,12 +61,12 @@ unstreamChunks chunkSize (Stream next s0 len0)
5961 Done -> Empty
6062 Skip s' -> outer s'
6163 Yield x s' -> I.Text arr 0 len `chunk` outer s''
62− where (arr,(s'',len)) = A.run2 fill
64+ where (arr, UC s'' len) = A.run2 fill
6365 fill = do a <- A.new unknownLength
6466 unsafeWrite a 0 x >>= inner a unknownLength s'
6567 unknownLength = 4
6668 inner marr len s !i
67− | i + 1 >= chunkSize = return (marr, (s,i))
69+ | i + 1 >= chunkSize = return (marr, UC s i)
6870 | i + 1 >= len = {-# SCC "unstreamChunks/resize" #-} do
6971 let newLen = min (len `shiftL` 1) chunkSize
7072 marr' <- A.new newLen
@@ -73,7 +75,7 @@ unstreamChunks chunkSize (Stream next s0 len0)
7375 | otherwise =
7476 {-# SCC "unstreamChunks/inner" #-}
7577 case next s of
76− Done -> return (marr,(s,i))
78+ Done -> return (marr, UC s i)
7779 Skip s' -> inner marr len s' i
7880 Yield x s' -> do d <- unsafeWrite marr i x
7981 inner marr len s' (i+d)
tests/benchmarks/.gitignore → benchmarks/.gitignorerenamed

The content is the same.

tests/benchmarks/Setup.hs → benchmarks/Setup.hsrenamed

The content is the same.

tests/benchmarks/cbits/time_iconv.c → benchmarks/cbits/time_iconv.crenamed

The content is the same.

tests/benchmarks/src/Data/Text/Benchmarks.hs → benchmarks/haskell/Benchmarks.hsrenamed+18−18
@@ -9,25 +9,25 @@ import Criterion.Main (Benchmark, defaultMain, bgroup)
99import System.FilePath ((</>))
1010import System.IO (IOMode (WriteMode), openFile, hSetEncoding, utf8)
1111
12−import qualified Data.Text.Benchmarks.Builder as Builder
13−import qualified Data.Text.Benchmarks.DecodeUtf8 as DecodeUtf8
14−import qualified Data.Text.Benchmarks.EncodeUtf8 as EncodeUtf8
15−import qualified Data.Text.Benchmarks.Equality as Equality
16−import qualified Data.Text.Benchmarks.FileRead as FileRead
17−import qualified Data.Text.Benchmarks.FoldLines as FoldLines
18−import qualified Data.Text.Benchmarks.Pure as Pure
19−import qualified Data.Text.Benchmarks.ReadNumbers as ReadNumbers
20−import qualified Data.Text.Benchmarks.Replace as Replace
21−import qualified Data.Text.Benchmarks.Search as Search
22−import qualified Data.Text.Benchmarks.Stream as Stream
23−import qualified Data.Text.Benchmarks.WordFrequencies as WordFrequencies
12+import qualified Benchmarks.Builder as Builder
13+import qualified Benchmarks.DecodeUtf8 as DecodeUtf8
14+import qualified Benchmarks.EncodeUtf8 as EncodeUtf8
15+import qualified Benchmarks.Equality as Equality
16+import qualified Benchmarks.FileRead as FileRead
17+import qualified Benchmarks.FoldLines as FoldLines
18+import qualified Benchmarks.Pure as Pure
19+import qualified Benchmarks.ReadNumbers as ReadNumbers
20+import qualified Benchmarks.Replace as Replace
21+import qualified Benchmarks.Search as Search
22+import qualified Benchmarks.Stream as Stream
23+import qualified Benchmarks.WordFrequencies as WordFrequencies
2424
25−import qualified Data.Text.Benchmarks.Programs.BigTable as Programs.BigTable
26−import qualified Data.Text.Benchmarks.Programs.Cut as Programs.Cut
27−import qualified Data.Text.Benchmarks.Programs.Fold as Programs.Fold
28−import qualified Data.Text.Benchmarks.Programs.Sort as Programs.Sort
29−import qualified Data.Text.Benchmarks.Programs.StripTags as Programs.StripTags
30−import qualified Data.Text.Benchmarks.Programs.Throughput as Programs.Throughput
25+import qualified Benchmarks.Programs.BigTable as Programs.BigTable
26+import qualified Benchmarks.Programs.Cut as Programs.Cut
27+import qualified Benchmarks.Programs.Fold as Programs.Fold
28+import qualified Benchmarks.Programs.Sort as Programs.Sort
29+import qualified Benchmarks.Programs.StripTags as Programs.StripTags
30+import qualified Benchmarks.Programs.Throughput as Programs.Throughput
3131
3232main :: IO ()
3333main = benchmarks >>= defaultMain
tests/benchmarks/src/Data/Text/Benchmarks/Builder.hs → benchmarks/haskell/Benchmarks/Builder.hsrenamed+1−1
@@ -5,7 +5,7 @@
55-- * Concatenating many small strings using a builder
66--
77{-# LANGUAGE OverloadedStrings #-}
8−module Data.Text.Benchmarks.Builder
8+module Benchmarks.Builder
99 ( benchmark
1010 ) where
1111
tests/benchmarks/src/Data/Text/Benchmarks/DecodeUtf8.hs → benchmarks/haskell/Benchmarks/DecodeUtf8.hsrenamed+1−1
@@ -14,7 +14,7 @@
1414--
1515-- The latter are used for testing stream fusion.
1616--
17−module Data.Text.Benchmarks.DecodeUtf8
17+module Benchmarks.DecodeUtf8
1818 ( benchmark
1919 ) where
2020
tests/benchmarks/src/Data/Text/Benchmarks/EncodeUtf8.hs → benchmarks/haskell/Benchmarks/EncodeUtf8.hsrenamed+1−1
@@ -6,7 +6,7 @@
66--
77-- * UTF-8 encoding it
88--
9−module Data.Text.Benchmarks.EncodeUtf8
9+module Benchmarks.EncodeUtf8
1010 ( benchmark
1111 ) where
1212
tests/benchmarks/src/Data/Text/Benchmarks/Equality.hs → benchmarks/haskell/Benchmarks/Equality.hsrenamed+1−1
@@ -5,7 +5,7 @@
55--
66-- * Comparison of strings (Eq instance)
77--
8−module Data.Text.Benchmarks.Equality
8+module Benchmarks.Equality
99 ( benchmark
1010 ) where
1111
tests/benchmarks/src/Data/Text/Benchmarks/FileRead.hs → benchmarks/haskell/Benchmarks/FileRead.hsrenamed+1−1
@@ -4,7 +4,7 @@
44--
55-- * Reading a file from the disk
66--
7−module Data.Text.Benchmarks.FileRead
7+module Benchmarks.FileRead
88 ( benchmark
99 ) where
1010
tests/benchmarks/src/Data/Text/Benchmarks/FoldLines.hs → benchmarks/haskell/Benchmarks/FoldLines.hsrenamed+1−1
@@ -6,7 +6,7 @@
66-- * Buffered, line-based IO
77--
88{-# LANGUAGE BangPatterns #-}
9−module Data.Text.Benchmarks.FoldLines
9+module Benchmarks.FoldLines
1010 ( benchmark
1111 ) where
1212
tests/benchmarks/src/Data/Text/Benchmarks/Programs/BigTable.hs → benchmarks/haskell/Benchmarks/Programs/BigTable.hsrenamed+1−1
@@ -7,7 +7,7 @@
77-- * Writing to a handle
88--
99{-# LANGUAGE OverloadedStrings #-}
10−module Data.Text.Benchmarks.Programs.BigTable
10+module Benchmarks.Programs.BigTable
1111 ( benchmark
1212 ) where
1313
tests/benchmarks/src/Data/Text/Benchmarks/Programs/Cut.hs → benchmarks/haskell/Benchmarks/Programs/Cut.hsrenamed+1−1
@@ -12,7 +12,7 @@
1212--
1313-- * Writing back to a handle
1414--
15−module Data.Text.Benchmarks.Programs.Cut
15+module Benchmarks.Programs.Cut
1616 ( benchmark
1717 ) where
1818
tests/benchmarks/src/Data/Text/Benchmarks/Programs/Fold.hs → benchmarks/haskell/Benchmarks/Programs/Fold.hsrenamed+1−1
@@ -13,7 +13,7 @@
1313-- * Writing back to a handle
1414--
1515{-# LANGUAGE OverloadedStrings #-}
16−module Data.Text.Benchmarks.Programs.Fold
16+module Benchmarks.Programs.Fold
1717 ( benchmark
1818 ) where
1919
tests/benchmarks/src/Data/Text/Benchmarks/Programs/Sort.hs → benchmarks/haskell/Benchmarks/Programs/Sort.hsrenamed+1−1
@@ -13,7 +13,7 @@
1313-- * Writing back to a handle
1414--
1515{-# LANGUAGE OverloadedStrings #-}
16−module Data.Text.Benchmarks.Programs.Sort
16+module Benchmarks.Programs.Sort
1717 ( benchmark
1818 ) where
1919
tests/benchmarks/src/Data/Text/Benchmarks/Programs/StripTags.hs → benchmarks/haskell/Benchmarks/Programs/StripTags.hsrenamed+1−1
@@ -11,7 +11,7 @@
1111-- * Writing back to a handle
1212--
1313{-# OPTIONS_GHC -fspec-constr-count=5 #-}
14−module Data.Text.Benchmarks.Programs.StripTags
14+module Benchmarks.Programs.StripTags
1515 ( benchmark
1616 ) where
1717
tests/benchmarks/src/Data/Text/Benchmarks/Programs/Throughput.hs → benchmarks/haskell/Benchmarks/Programs/Throughput.hsrenamed+1−1
@@ -14,7 +14,7 @@
1414--
1515-- * Writing back to a handle
1616--
17−module Data.Text.Benchmarks.Programs.Throughput
17+module Benchmarks.Programs.Throughput
1818 ( benchmark
1919 ) where
2020
tests/benchmarks/src/Data/Text/Benchmarks/Pure.hs → benchmarks/haskell/Benchmarks/Pure.hsrenamed+1−1
@@ -6,7 +6,7 @@
66--
77{-# LANGUAGE BangPatterns, GADTs, MagicHash #-}
88{-# OPTIONS_GHC -fno-warn-orphans #-}
9−module Data.Text.Benchmarks.Pure
9+module Benchmarks.Pure
1010 ( benchmark
1111 ) where
1212
tests/benchmarks/src/Data/Text/Benchmarks/ReadNumbers.hs → benchmarks/haskell/Benchmarks/ReadNumbers.hsrenamed+1−1
@@ -16,7 +16,7 @@
1616--
1717-- * Lexing/parsing of different numerical types
1818--
19−module Data.Text.Benchmarks.ReadNumbers
19+module Benchmarks.ReadNumbers
2020 ( benchmark
2121 ) where
2222
tests/benchmarks/src/Data/Text/Benchmarks/Replace.hs → benchmarks/haskell/Benchmarks/Replace.hsrenamed+1−1
@@ -4,7 +4,7 @@
44--
55-- * Search and replace of a pattern in a text
66--
7−module Data.Text.Benchmarks.Replace
7+module Benchmarks.Replace
88 ( benchmark
99 ) where
1010
tests/benchmarks/src/Data/Text/Benchmarks/Search.hs → benchmarks/haskell/Benchmarks/Search.hsrenamed+1−1
@@ -4,7 +4,7 @@
44--
55-- * Searching all occurences of a pattern using library routines
66--
7−module Data.Text.Benchmarks.Search
7+module Benchmarks.Search
88 ( benchmark
99 ) where
1010
tests/benchmarks/src/Data/Text/Benchmarks/Stream.hs → benchmarks/haskell/Benchmarks/Stream.hsrenamed+1−1
@@ -7,7 +7,7 @@
77--
88{-# LANGUAGE BangPatterns #-}
99{-# OPTIONS_GHC -fno-warn-orphans #-}
10−module Data.Text.Benchmarks.Stream
10+module Benchmarks.Stream
1111 ( benchmark
1212 ) where
1313
tests/benchmarks/src/Data/Text/Benchmarks/WordFrequencies.hs → benchmarks/haskell/Benchmarks/WordFrequencies.hsrenamed+1−1
@@ -8,7 +8,7 @@
88--
99-- * Comparing: Eq/Ord instances
1010--
11−module Data.Text.Benchmarks.WordFrequencies
11+module Benchmarks.WordFrequencies
1212 ( benchmark
1313 ) where
1414
tests/benchmarks/python/.gitignore → benchmarks/python/.gitignorerenamed

The content is the same.

tests/benchmarks/python/cut.py → benchmarks/python/cut.pyrenamed

The content is the same.

tests/benchmarks/python/sort.py → benchmarks/python/sort.pyrenamed

The content is the same.

tests/benchmarks/python/strip_tags.py → benchmarks/python/strip_tags.pyrenamed

The content is the same.

tests/benchmarks/python/utils.py → benchmarks/python/utils.pyrenamed

The content is the same.

tests/benchmarks/ruby/cut.rb → benchmarks/ruby/cut.rbrenamed

The content is the same.

tests/benchmarks/ruby/fold.rb → benchmarks/ruby/fold.rbrenamed

The content is the same.

tests/benchmarks/ruby/sort.rb → benchmarks/ruby/sort.rbrenamed

The content is the same.

tests/benchmarks/ruby/strip_tags.rb → benchmarks/ruby/strip_tags.rbrenamed

The content is the same.

tests/benchmarks/ruby/utils.rb → benchmarks/ruby/utils.rbrenamed

The content is the same.

benchmarks/text-benchmarks.cabalnew file+37
@@ -0,0 +1,37 @@
1+name: text-benchmarks
2+version: 0.0.0.0
3+synopsis: Benchmarks for the text package
4+description: Benchmarks for the text package
5+homepage: https://bitbucket.org/bos/text
6+license: BSD3
7+license-file: ../LICENSE
8+author: Jasper Van der Jeugt <jaspervdj@gmail.com>,
9+ Bryan O'Sullivan <bos@serpentine.com>,
10+ Tom Harper <rtomharper@googlemail.com>,
11+ Duncan Coutts <duncan@haskell.org>
12+maintainer: jaspervdj@gmail.com
13+category: Text
14+build-type: Simple
15+
16+cabal-version: >=1.2
17+
18+executable text-benchmarks
19+ hs-source-dirs: haskell ..
20+ c-sources: ../cbits/cbits.c
21+ cbits/time_iconv.c
22+ main-is: Benchmarks.hs
23+ ghc-options: -Wall -O2
24+ cpp-options: -DHAVE_DEEPSEQ
25+ build-depends: base == 4.*,
26+ binary,
27+ blaze-builder,
28+ bytestring,
29+ bytestring-lexing,
30+ containers,
31+ criterion >= 0.6.0.1,
32+ deepseq,
33+ directory,
34+ filepath,
35+ ghc-prim,
36+ stringsearch,
37+ utf8-string
tests/benchmarks/text-benchmarks.cabaldeleted−36
@@ -1,36 +0,0 @@
1−name: text-benchmarks
2−version: 0.0.0.0
3−synopsis: Benchmarks for the text package
4−description: Benchmarks for the text package
5−homepage: https://bitbucket.org/bos/text
6−license: BSD3
7−license-file: ../../LICENSE
8−author: Jasper Van der Jeugt <jaspervdj@gmail.com>,
9− Bryan O'Sullivan <bos@serpentine.com>,
10− Tom Harper <rtomharper@googlemail.com>,
11− Duncan Coutts <duncan@haskell.org>
12−maintainer: jaspervdj@gmail.com
13−category: Text
14−build-type: Simple
15−
16−cabal-version: >=1.2
17−
18−executable text-benchmarks
19− hs-source-dirs: src ../..
20− c-sources: ../../cbits/cbits.c
21− cbits/time_iconv.c
22− main-is: Data/Text/Benchmarks.hs
23− ghc-options: -Wall -O2
24− cpp-options: -DHAVE_DEEPSEQ
25− build-depends: base >= 4 && < 5,
26− criterion >= 0.5 && < 0.7,
27− bytestring >= 0.9,
28− deepseq >= 1.1 && < 1.2,
29− filepath >= 1.1 && < 1.3,
30− directory >= 1.1 && < 1.2,
31− containers >= 0.3 && < 0.5,
32− binary >= 0.5 && < 0.6,
33− utf8-string >= 0.3 && < 0.4,
34− blaze-builder >= 0.3 && < 0.4,
35− bytestring-lexing >= 0.2 && < 0.3,
36− stringsearch >= 0.3 && < 0.4
text.cabal+8−8
@@ -49,18 +49,18 @@ category: Data, Text
4949build-type: Simple
5050cabal-version: >= 1.8
5151extra-source-files:
52− README.markdown
5352 -- scripts/CaseFolding.txt
5453 -- scripts/SpecialCasing.txt
54+ README.markdown
55+ benchmarks/Setup.hs
56+ benchmarks/cbits/*.c
57+ benchmarks/python/*.py
58+ benchmarks/ruby/*.rb
59+ benchmarks/src/Data/Text/*.hs
60+ benchmarks/src/Data/Text/Benchmarks/*.hs
61+ benchmarks/text-benchmarks.cabal
5562 scripts/*.hs
5663 tests/README.markdown
57− tests/benchmarks/Setup.hs
58− tests/benchmarks/cbits/*.c
59− tests/benchmarks/python/*.py
60− tests/benchmarks/ruby/*.rb
61− tests/benchmarks/src/Data/Text/*.hs
62− tests/benchmarks/src/Data/Text/Benchmarks/*.hs
63− tests/benchmarks/text-benchmarks.cabal
6464 tests/tests/.ghci
6565 tests/tests/Makefile
6666 tests/tests/scripts/*.sh