Update changelog and version
[packages/containers.git] / containers.cabal
1 name: containers
2 version: 0.5.10.1
3 license: BSD3
4 license-file: LICENSE
5 maintainer: libraries@haskell.org
6 bug-reports: https://github.com/haskell/containers/issues
7 synopsis: Assorted concrete container types
8 category: Data Structures
9 description:
10     This package contains efficient general-purpose implementations
11     of various basic immutable container types.  The declared cost of
12     each operation is either worst-case or amortized, but remains
13     valid even if structures are shared.
14 build-type: Simple
15 cabal-version:  >=1.8
16 extra-source-files:
17     include/containers.h
18     tests/Makefile
19     tests/*.hs
20     benchmarks/Makefile
21     benchmarks/bench-cmp.pl
22     benchmarks/bench-cmp.sh
23     benchmarks/*.hs
24     benchmarks/SetOperations/Makefile
25     benchmarks/SetOperations/*.hs
26     benchmarks/LookupGE/Makefile
27     benchmarks/LookupGE/*.hs
28     changelog.md
29
30 source-repository head
31     type:     git
32     location: http://github.com/haskell/containers.git
33
34 Library
35     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5
36     if impl(ghc)
37         build-depends: ghc-prim
38
39     ghc-options: -O2 -Wall
40
41     other-extensions: CPP, BangPatterns
42
43     exposed-modules:
44         Data.IntMap
45         Data.IntMap.Lazy
46         Data.IntMap.Strict
47         Data.IntMap.Internal
48         Data.IntMap.Merge.Lazy
49         Data.IntMap.Merge.Strict
50         Data.IntSet.Internal
51         Data.IntSet
52         Data.Map
53         Data.Map.Lazy
54         Data.Map.Lazy.Merge
55         Data.Map.Merge.Lazy
56         Data.Map.Strict.Internal
57         Data.Map.Strict
58         Data.Map.Strict.Merge
59         Data.Map.Merge.Strict
60         Data.Map.Internal
61         Data.Map.Internal.Debug
62         Data.Set.Internal
63         Data.Set
64         Data.Graph
65         Data.Sequence
66         Data.Sequence.Internal
67         Data.Tree
68         Utils.Containers.Internal.BitUtil
69         Utils.Containers.Internal.BitQueue
70         Utils.Containers.Internal.StrictPair
71
72     other-modules:
73         Utils.Containers.Internal.StrictFold
74         Utils.Containers.Internal.StrictMaybe
75         Utils.Containers.Internal.PtrEquality
76         Data.Map.Internal.DeprecatedShowTree
77
78     include-dirs: include
79
80 -----------------------------
81 -- B E N C H M A R K I N G --
82 -----------------------------
83
84 benchmark intmap-benchmarks
85   type: exitcode-stdio-1.0
86   hs-source-dirs: benchmarks
87   main-is: IntMap.hs
88   ghc-options: -O2
89   build-depends:
90     base >= 4.2 && < 5,
91     containers,
92     criterion >= 0.4.0 && < 1.2,
93     deepseq >= 1.1.0.0 && < 1.5
94
95 benchmark intset-benchmarks
96   type: exitcode-stdio-1.0
97   hs-source-dirs: benchmarks
98   main-is: IntSet.hs
99   ghc-options: -O2
100   build-depends:
101     base >= 4.2 && < 5,
102     containers,
103     criterion >= 0.4.0 && < 1.2,
104     deepseq >= 1.1.0.0 && < 1.5
105
106 benchmark map-benchmarks
107   type: exitcode-stdio-1.0
108   hs-source-dirs: benchmarks
109   main-is: Map.hs
110   ghc-options: -O2
111   build-depends:
112     base >= 4.2 && < 5,
113     containers,
114     criterion >= 0.4.0 && < 1.2,
115     deepseq >= 1.1.0.0 && < 1.5,
116     transformers
117
118 benchmark sequence-benchmarks
119   type: exitcode-stdio-1.0
120   hs-source-dirs: benchmarks
121   main-is: Sequence.hs
122   ghc-options: -O2
123   build-depends:
124     base >= 4.2 && < 5,
125     containers,
126     criterion >= 0.4.0 && < 1.2,
127     deepseq >= 1.1.0.0 && < 1.5,
128     random < 1.2,
129     transformers
130
131 benchmark set-benchmarks
132   type: exitcode-stdio-1.0
133   hs-source-dirs: benchmarks
134   main-is: Set.hs
135   ghc-options: -O2
136   build-depends:
137     base >= 4.2 && < 5,
138     containers,
139     criterion >= 0.4.0 && < 1.2,
140     deepseq >= 1.1.0.0 && < 1.5
141
142 benchmark set-operations-intmap
143   type: exitcode-stdio-1.0
144   hs-source-dirs: benchmarks/SetOperations
145   main-is: SetOperations-IntMap.hs
146   ghc-options: -O2
147   build-depends:
148     base >= 4.2 && < 5,
149     containers,
150     criterion >= 0.4.0 && < 1.2
151
152 benchmark set-operations-intset
153   type: exitcode-stdio-1.0
154   hs-source-dirs: benchmarks/SetOperations
155   main-is: SetOperations-IntSet.hs
156   ghc-options: -O2
157   build-depends:
158     base >= 4.2 && < 5,
159     containers,
160     criterion >= 0.4.0 && < 1.2
161
162 benchmark set-operations-map
163   type: exitcode-stdio-1.0
164   hs-source-dirs: benchmarks/SetOperations
165   main-is: SetOperations-Map.hs
166   ghc-options: -O2
167   build-depends:
168     base >= 4.2 && < 5,
169     containers,
170     criterion >= 0.4.0 && < 1.2
171
172 benchmark set-operations-set
173   type: exitcode-stdio-1.0
174   hs-source-dirs: benchmarks/SetOperations
175   main-is: SetOperations-Set.hs
176   ghc-options: -O2
177   build-depends:
178     base >= 4.2 && < 5,
179     containers,
180     criterion >= 0.4.0 && < 1.2
181
182 benchmark lookupge-intmap
183   type: exitcode-stdio-1.0
184   hs-source-dirs: benchmarks/LookupGE, .
185   main-is: IntMap.hs
186   ghc-options: -O2
187   cpp-options: -DTESTING
188   other-modules:
189     Data.IntMap.Internal
190   build-depends:
191     base >= 4.2 && < 5,
192     containers,
193     criterion >= 0.4.0 && < 1.2,
194     deepseq >= 1.1.0.0 && < 1.5,
195     ghc-prim
196
197 benchmark lookupge-map
198   type: exitcode-stdio-1.0
199   hs-source-dirs: benchmarks/LookupGE, .
200   main-is: Map.hs
201   ghc-options: -O2
202   cpp-options: -DTESTING
203   other-modules:
204     Data.Map.Internal
205   build-depends:
206     base >= 4.2 && < 5,
207     containers,
208     criterion >= 0.4.0 && < 1.2,
209     deepseq >= 1.1.0.0 && < 1.5,
210     ghc-prim
211
212 -------------------
213 -- T E S T I N G --
214 -------------------
215
216 -- Every test-suite contains the build-depends and options of the library,
217 -- plus the testing stuff.
218
219 Test-suite map-lazy-properties
220     hs-source-dirs: tests, .
221     main-is: map-properties.hs
222     type: exitcode-stdio-1.0
223     cpp-options: -DTESTING
224
225     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
226     ghc-options: -O2
227     other-extensions: CPP, BangPatterns
228     include-dirs: include
229
230     build-depends:
231         HUnit,
232         QuickCheck,
233         test-framework,
234         test-framework-hunit,
235         test-framework-quickcheck2,
236         transformers
237
238 Test-suite map-strict-properties
239     hs-source-dirs: tests, .
240     main-is: map-properties.hs
241     type: exitcode-stdio-1.0
242     cpp-options: -DTESTING -DSTRICT
243
244     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
245     ghc-options: -O2
246     other-extensions: CPP, BangPatterns
247     include-dirs: include
248
249     build-depends:
250         HUnit,
251         QuickCheck,
252         test-framework,
253         test-framework-hunit,
254         test-framework-quickcheck2,
255         transformers
256
257 Test-suite bitqueue-properties
258     hs-source-dirs: tests, .
259     main-is: bitqueue-properties.hs
260     type: exitcode-stdio-1.0
261     cpp-options: -DTESTING
262
263     build-depends: base >= 4.3 && < 5, ghc-prim
264     ghc-options: -O2
265     other-extensions: CPP, BangPatterns
266     include-dirs: include
267
268     build-depends:
269         QuickCheck,
270         test-framework,
271         test-framework-quickcheck2
272
273 Test-suite set-properties
274     hs-source-dirs: tests, .
275     main-is: set-properties.hs
276     type: exitcode-stdio-1.0
277     cpp-options: -DTESTING
278
279     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
280     ghc-options: -O2
281     other-extensions: CPP, BangPatterns
282     include-dirs: include
283
284     build-depends:
285         HUnit,
286         QuickCheck,
287         test-framework,
288         test-framework-hunit,
289         test-framework-quickcheck2,
290         transformers
291
292 Test-suite intmap-lazy-properties
293     hs-source-dirs: tests, .
294     main-is: intmap-properties.hs
295     type: exitcode-stdio-1.0
296     cpp-options: -DTESTING
297
298     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
299     ghc-options: -O2
300     other-extensions: CPP, BangPatterns
301     include-dirs: include
302
303     build-depends:
304         HUnit,
305         QuickCheck,
306         test-framework,
307         test-framework-hunit,
308         test-framework-quickcheck2
309
310 Test-suite intmap-strict-properties
311     hs-source-dirs: tests, .
312     main-is: intmap-properties.hs
313     type: exitcode-stdio-1.0
314     cpp-options: -DTESTING -DSTRICT
315
316     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
317     ghc-options: -O2
318     other-extensions: CPP, BangPatterns
319     include-dirs: include
320
321     build-depends:
322         HUnit,
323         QuickCheck,
324         test-framework,
325         test-framework-hunit,
326         test-framework-quickcheck2
327
328 Test-suite intset-properties
329     hs-source-dirs: tests, .
330     main-is: intset-properties.hs
331     type: exitcode-stdio-1.0
332     cpp-options: -DTESTING
333
334     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
335     ghc-options: -O2
336     other-extensions: CPP, BangPatterns
337     include-dirs: include
338
339     build-depends:
340         HUnit,
341         QuickCheck,
342         test-framework,
343         test-framework-hunit,
344         test-framework-quickcheck2
345
346 Test-suite deprecated-properties
347     hs-source-dirs: tests, .
348     main-is: deprecated-properties.hs
349     type: exitcode-stdio-1.0
350     cpp-options: -DTESTING
351
352     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
353     ghc-options: -O2
354     other-extensions: CPP, BangPatterns
355     include-dirs: include
356
357     build-depends:
358         QuickCheck,
359         test-framework,
360         test-framework-quickcheck2
361
362 Test-suite seq-properties
363     hs-source-dirs: tests, .
364     main-is: seq-properties.hs
365     type: exitcode-stdio-1.0
366     cpp-options: -DTESTING
367
368     build-depends: base >= 4.3 && < 5, array, deepseq >= 1.2 && < 1.5, ghc-prim
369     ghc-options: -O2
370     other-extensions: CPP, BangPatterns
371     include-dirs: include
372
373     build-depends:
374         QuickCheck,
375         test-framework,
376         test-framework-quickcheck2,
377         transformers
378
379 test-suite map-strictness-properties
380   hs-source-dirs: tests, .
381   main-is: map-strictness.hs
382   type: exitcode-stdio-1.0
383
384   build-depends:
385     array,
386     base >= 4.3 && < 5,
387     ChasingBottoms,
388     deepseq >= 1.2 && < 1.5,
389     QuickCheck >= 2.4.0.1,
390     ghc-prim,
391     test-framework >= 0.3.3,
392     test-framework-quickcheck2 >= 0.2.9
393
394   ghc-options: -Wall
395   other-extensions: CPP, BangPatterns
396   include-dirs: include
397
398 test-suite intmap-strictness-properties
399   hs-source-dirs: tests, .
400   main-is: intmap-strictness.hs
401   type: exitcode-stdio-1.0
402   other-extensions: CPP, BangPatterns
403
404   build-depends:
405     array,
406     base >= 4.3 && < 5,
407     ChasingBottoms,
408     deepseq >= 1.2 && < 1.5,
409     QuickCheck >= 2.4.0.1,
410     ghc-prim,
411     test-framework >= 0.3.3,
412     test-framework-quickcheck2 >= 0.2.9
413
414   ghc-options: -Wall
415   include-dirs: include
416
417 test-suite intset-strictness-properties
418   hs-source-dirs: tests, .
419   main-is: intset-strictness.hs
420   type: exitcode-stdio-1.0
421   other-extensions: CPP, BangPatterns
422
423   build-depends:
424     array,
425     base >= 4.3 && < 5,
426     ChasingBottoms,
427     deepseq >= 1.2 && < 1.5,
428     QuickCheck >= 2.4.0.1,
429     ghc-prim,
430     test-framework >= 0.3.3,
431     test-framework-quickcheck2 >= 0.2.9
432
433   ghc-options: -Wall
434   include-dirs: include