on 1.4.1.0 help sign in
typeable/aeson/aeson.cabal
243 lines 6.1 kB history raw
1name: aeson
2version: 1.4.1.0
3license: BSD3
4license-file: LICENSE
5category: Text, Web, JSON
6copyright: (c) 2011-2016 Bryan O'Sullivan
7 (c) 2011 MailRank, Inc.
8author: Bryan O'Sullivan <bos@serpentine.com>
9maintainer: Adam Bergmark <adam@bergmark.nl>
10stability: experimental
11tested-with: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1
12synopsis: Fast JSON parsing and encoding
13cabal-version: >= 1.10
14homepage: https://github.com/bos/aeson
15bug-reports: https://github.com/bos/aeson/issues
16build-type: Simple
17description:
18 A JSON parsing and encoding library optimized for ease of use
19 and high performance.
20 .
21 To get started, see the documentation for the @Data.Aeson@ module
22 below.
23 .
24 (A note on naming: in Greek mythology, Aeson was the father of Jason.)
26extra-source-files:
27 *.yaml
28 README.markdown
29 benchmarks/*.cabal
30 benchmarks/*.hs
31 benchmarks/*.py
32 benchmarks/Compare/*.hs
33 benchmarks/Makefile
34 benchmarks/Typed/*.hs
35 benchmarks/json-data/*.json
36 cbits/*.c
37 changelog.md
38 examples/*.cabal
39 examples/*.hs
40 examples/Twitter/*.hs
41 ffi/Data/Aeson/Parser/*.hs
42 include/*.h
43 tests/JSONTestSuite/test_parsing/*.json
44 tests/JSONTestSuite/test_transform/*.json
45 pure/Data/Aeson/Parser/*.hs
47flag developer
48 description: operate in developer mode
49 default: False
50 manual: True
52flag fast
53 description: compile without optimizations
54 default: False
55 manual: True
57flag bytestring-builder
58 description: Depend on the bytestring-builder package for backwards compatibility.
59 default: False
60 manual: False
62flag cffi
63 description: Controls whether to include c-ffi bits or pure haskell. Default to False for security.
64 default: False
65 manual: True
67library
68 default-language: Haskell2010
69 hs-source-dirs: . attoparsec-iso8601/
71 exposed-modules:
72 Data.Aeson
73 Data.Aeson.Encoding
74 Data.Aeson.Parser
75 Data.Aeson.Text
76 Data.Aeson.Types
77 Data.Aeson.TH
79 Data.Aeson.Encoding.Internal
80 Data.Aeson.Internal
81 Data.Aeson.Internal.Time
82 Data.Aeson.Parser.Internal
84 -- Deprecated modules
85 exposed-modules:
86 Data.Aeson.Encode
88 other-modules:
89 Data.Aeson.Compat
90 Data.Aeson.Encoding.Builder
91 Data.Aeson.Internal.Functions
92 Data.Aeson.Parser.Unescape
93 Data.Aeson.Parser.Time
94 Data.Aeson.Types.FromJSON
95 Data.Aeson.Types.Generic
96 Data.Aeson.Types.ToJSON
97 Data.Aeson.Types.Class
98 Data.Aeson.Types.Internal
99 Data.Attoparsec.Time
100 Data.Attoparsec.Time.Internal
102 build-depends:
103 attoparsec >= 0.13.0.1,
104 base >= 4.5 && < 5,
105 base-compat >= 0.9.1 && < 0.11,
106 containers >= 0.4.2,
107 deepseq >= 1.3 && < 1.5,
108 dlist >= 0.6,
109 ghc-prim >= 0.2,
110 hashable >= 1.1.2.0,
111 primitive >= 0.6.1,
112 scientific >= 0.3.4.7 && < 0.4,
113 tagged >=0.8.3 && <0.9,
114 template-haskell >= 2.7,
115 text >= 1.2.3,
116 th-abstraction >= 0.2.2 && < 0.3,
117 time >= 1.1.1.4,
118 time-locale-compat >= 0.1.1 && < 0.2,
119 unordered-containers >= 0.2.5.0 && < 0.3,
120 uuid-types >= 1.0.3 && <1.1,
121 vector >= 0.8
123 if flag(bytestring-builder)
124 build-depends: bytestring >= 0.9.2 && < 0.10.4,
125 bytestring-builder >= 0.10.4 && < 1
126 else
127 build-depends: bytestring >= 0.10.4 && < 0.11
129 if !impl(ghc >= 8.0)
130 -- `Data.Semigroup` and `Control.Monad.Fail` and `Control.Monad.IO.Class` are available in base only since GHC 8.0 / base 4.9
131 build-depends:
132 semigroups >= 0.18.2 && < 0.19,
133 transformers >= 0.2.2.0,
134 transformers-compat >= 0.3,
135 fail == 4.9.*
137 if !impl(ghc >= 7.10)
138 -- `Numeric.Natural` is available in base only since GHC 7.10 / base 4.8
139 build-depends: nats >= 1 && < 1.2,
140 void >= 0.7.2 && < 0.8
142 ghc-options: -Wall
144 if flag(developer)
145 ghc-options: -Werror
146 ghc-prof-options: -auto-all
148 if flag(fast)
149 ghc-options: -O0
150 else
151 ghc-options: -O2
153 include-dirs: include
154 if impl(ghcjs) || !flag(cffi)
155 hs-source-dirs: pure
156 other-modules: Data.Aeson.Parser.UnescapePure
157 else
158 c-sources: cbits/unescape_string.c
159 cpp-options: -DCFFI
160 hs-source-dirs: ffi
161 other-modules: Data.Aeson.Parser.UnescapeFFI
163test-suite tests
164 default-language: Haskell2010
165 type: exitcode-stdio-1.0
166 hs-source-dirs: tests ffi pure
167 main-is: Tests.hs
168 c-sources: cbits/unescape_string.c
169 ghc-options: -Wall -threaded -rtsopts
171 other-modules:
172 Data.Aeson.Parser.UnescapeFFI
173 Data.Aeson.Parser.UnescapePure
174 DataFamilies.Properties
175 DataFamilies.Instances
176 DataFamilies.Encoders
177 DataFamilies.Types
178 Encoders
179 ErrorMessages
180 Functions
181 Instances
182 Options
183 Properties
184 SerializationFormatSpec
185 Types
186 UnitTests
187 UnitTests.NullaryConstructors
189 build-depends:
190 QuickCheck >= 2.10.0.1 && < 2.12,
191 aeson,
192 integer-logarithms >= 1 && <1.1,
193 attoparsec,
194 base,
195 base-compat,
196 base-orphans >= 0.5.3 && <0.8,
197 base16-bytestring,
198 containers,
199 directory,
200 dlist,
201 filepath,
202 generic-deriving >= 1.10 && < 1.13,
203 ghc-prim >= 0.2,
204 hashable >= 1.2.4.0,
205 scientific,
206 tagged,
207 template-haskell,
208 tasty,
209 tasty-hunit,
210 tasty-quickcheck,
211 text,
212 time,
213 time-locale-compat,
214 unordered-containers,
215 uuid-types,
216 vector,
217 quickcheck-instances >= 0.3.16
219 if flag(bytestring-builder)
220 build-depends: bytestring >= 0.9 && < 0.10.4,
221 bytestring-builder >= 0.10.4 && < 1
222 else
223 build-depends: bytestring >= 0.10.4
225 if !impl(ghc >= 8.0)
226 build-depends:
227 semigroups >= 0.18.2 && < 0.19,
228 transformers >= 0.2.2.0,
229 transformers-compat >= 0.3
231 if !impl(ghc >= 7.10)
232 build-depends: nats >=1 && <1.2,
233 void >=0.7.2 && <0.8
235 if impl(ghc >= 7.8)
236 build-depends: hashable-time >= 0.2 && <0.3
238 if flag(fast)
239 ghc-options: -fno-enable-rewrite-rules
241source-repository head
242 type: git
243 location: git://github.com/bos/aeson.git