on 1.1.0.0 help sign in
typeable/aeson/aeson.cabal
226 lines 5.7 kB history raw
1name: aeson
2version: 1.1.0.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 Parsing performance on a late 2013 MacBook Pro (2.6GHz Core i7),
25 running 64-bit GHC 7.10.1, for mostly-English tweets from Twitter's
26 JSON search API:
27 .
28 * 6.4 KB payloads, English: 7570 msg\/sec (47.6 MB\/sec)
29 .
30 * 14.6 KB payloads, Japanese: 3261 msg\/sec (46.6 MB\/sec)
31 .
32 Encoding performance on the same machine and data:
33 .
34 * 6.4 KB payloads, English: 22738 msg\/sec (142.9 MB\/sec)
35 .
36 * 14.6 KB payloads, Japanese: 15911 msg\/sec (227.4 MB\/sec)
37 .
38 (A note on naming: in Greek mythology, Aeson was the father of Jason.)
40extra-source-files:
41 README.markdown
42 benchmarks/*.cabal
43 benchmarks/*.hs
44 benchmarks/*.py
45 benchmarks/Compare/*.hs
46 benchmarks/Makefile
47 benchmarks/Typed/*.hs
48 benchmarks/json-data/*.json
49 include/overlapping-compat.h
50 include/incoherent-compat.h
51 changelog.md
52 examples/*.cabal
53 examples/*.hs
54 examples/Twitter/*.hs
55 include/*.h
56 cbits/*.c
58flag developer
59 description: operate in developer mode
60 default: False
61 manual: True
63flag fast
64 description: compile without optimizations
65 default: False
66 manual: True
68flag bytestring-builder
69 description: Depend on the bytestring-builder package for backwards compatibility.
70 default: False
71 manual: False
73library
74 default-language: Haskell2010
76 exposed-modules:
77 Data.Aeson
78 Data.Aeson.Encoding
79 Data.Aeson.Parser
80 Data.Aeson.Text
81 Data.Aeson.Types
82 Data.Aeson.TH
84 Data.Aeson.Encoding.Internal
85 Data.Aeson.Internal
86 Data.Aeson.Internal.Time
88 -- Deprecated modules
89 exposed-modules:
90 Data.Aeson.Encode
92 other-modules:
93 Data.Aeson.Encoding.Builder
94 Data.Aeson.Internal.Functions
95 Data.Aeson.Parser.Internal
96 Data.Aeson.Parser.Unescape
97 Data.Aeson.Parser.Time
98 Data.Aeson.Types.FromJSON
99 Data.Aeson.Types.Generic
100 Data.Aeson.Types.ToJSON
101 Data.Aeson.Types.Class
102 Data.Aeson.Types.Internal
104 build-depends:
105 attoparsec >= 0.13.0.1,
106 base >= 4.5 && < 5,
107 base-compat >= 0.9.1 && < 0.10,
108 containers >= 0.2.4.1,
109 deepseq >= 1.3,
110 dlist >= 0.2,
111 ghc-prim >= 0.2,
112 hashable >= 1.1.2.0,
113 scientific >= 0.3.4.7 && < 0.4,
114 tagged >=0.8.3 && <0.9,
115 template-haskell >= 2.7,
116 text >= 1.1.1.0,
117 time >= 1.1.1.4,
118 time-locale-compat >= 0.1.1 && < 0.2,
119 unordered-containers >= 0.2.5.0,
120 uuid-types >= 1.0.3 && <1.1,
121 vector >= 0.8
123 if flag(bytestring-builder)
124 build-depends: bytestring >= 0.9 && < 0.10.4,
125 bytestring-builder >= 0.10.4 && < 1
126 else
127 build-depends: bytestring >= 0.10.4
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
141 ghc-options: -Wall
143 if flag(developer)
144 ghc-options: -Werror
145 ghc-prof-options: -auto-all
147 if flag(fast)
148 ghc-options: -O0
149 else
150 ghc-options: -O2
152 include-dirs: include
153 c-sources: cbits/unescape_string.c
155test-suite tests
156 default-language: Haskell2010
157 type: exitcode-stdio-1.0
158 hs-source-dirs: tests
159 main-is: Tests.hs
160 other-modules:
161 DataFamilies.Properties
162 DataFamilies.Instances
163 DataFamilies.Encoders
164 DataFamilies.Types
165 Encoders
166 Functions
167 Instances
168 Options
169 Properties
170 Types
171 UnitTests
172 UnitTests.NullaryConstructors
174 ghc-options: -Wall -threaded -rtsopts
176 build-depends:
177 HUnit,
178 QuickCheck >= 2.7 && <2.9.3,
179 aeson,
180 attoparsec,
181 base,
182 base-compat,
183 base-orphans >= 0.5.3 && <0.6,
184 base16-bytestring,
185 containers,
186 directory,
187 dlist,
188 filepath,
189 generic-deriving >= 1.10 && < 1.12,
190 ghc-prim >= 0.2,
191 hashable >= 1.2.4.0,
192 scientific,
193 tagged,
194 template-haskell,
195 test-framework,
196 test-framework-hunit,
197 test-framework-quickcheck2,
198 text,
199 time,
200 time-locale-compat,
201 unordered-containers,
202 uuid-types,
203 vector,
204 quickcheck-instances >=0.3.12
206 if flag(bytestring-builder)
207 build-depends: bytestring >= 0.9 && < 0.10.4,
208 bytestring-builder >= 0.10.4 && < 1
209 else
210 build-depends: bytestring >= 0.10.4
212 if !impl(ghc >= 8.0)
213 build-depends:
214 semigroups >= 0.18.2 && < 0.19,
215 transformers >= 0.2.2.0,
216 transformers-compat >= 0.3
218 if !impl(ghc >= 7.10)
219 build-depends: nats >=1 && <1.2
221 if impl(ghc >= 7.8)
222 build-depends: hashable-time >= 0.2 && <0.3
224source-repository head
225 type: git
226 location: git://github.com/bos/aeson.git