on 0.3.2.5 help sign in
typeable/aeson/aeson.cabal
125 lines 3.5 kB history raw
1name: aeson
2version: 0.3.2.5
3license: BSD3
4license-file: LICENSE
5category: Text, Web, JSON
6copyright: Copyright 2011 MailRank, Inc.
7author: Bryan O'Sullivan <bos@mailrank.com>
8maintainer: Bryan O'Sullivan <bos@mailrank.com>
9stability: experimental
10tested-with: GHC == 6.12.3
11synopsis: Fast JSON parsing and generation
12cabal-version: >= 1.8
13homepage: http://github.com/mailrank/aeson
14bug-reports: http://github.com/mailrank/aeson/issues
15build-type: Simple
16description:
17 A JSON parsing and generation library optimized for ease of use
18 and high performance.
19 .
20 Parsing performance with GHC 6.12.3 on a late 2010 MacBook Pro
21 (2.66GHz Core i7), for mostly-English tweets from Twitter's JSON
22 search API:
23 .
24 * English, 854 bytes: 29029 msg\/sec (23.6 MB/sec)
25 .
26 * English, 6.4 KB: 6407 msg\/sec (40.3 MB/sec)
27 .
28 * English, 31.2 KB: 1265 msg\/sec (38.8 MB/sec)
29 .
30 * English, 61.5 KB: 585 msg\/sec (35.2 MB/sec)
31 .
32 Handling heavily-escaped text is a little more work. Here is
33 parsing performance with Japanese tweets, where much of the text
34 is entirely Unicode-escaped:
35 .
36 * Japanese, 14.6 KB: 2227 msg\/sec (31.9 MB/sec)
37 .
38 * Japanese, 44.1 KB: 671 msg\/sec (29.6 MB/sec)
39 .
40 Encoding performance on the same machine and data:
41 .
42 * English, 854 bytes: 43439 msg\/sec (35.4 MB/sec)
43 .
44 * English, 6.4 KB: 7127 msg\/sec (44.8 MB/sec)
45 .
46 * Engish, 61.5 KB: 765 msg\/sec (46.0 MB/sec)
47 .
48 * Japanese, 14.6 KB: 4727 msg\/sec (67.5 MB/sec)
49 .
50 * Japanese, 44.1 KB: 1505 msg\/sec (64.8 MB/sec)
51 .
52 With GHC 7.0.2, the story is mixed: parsing is 20-40% slower than
53 GHC 6.12.3, while encoding performance ranges from about the same
54 to twice as fast (on numeric data).
55 .
56 (A note on naming: in Greek mythology, Aeson was the father of Jason.)
58extra-source-files:
59 README.markdown
60 benchmarks/AesonEncode.hs
61 benchmarks/AesonParse.hs
62 benchmarks/JsonParse.hs
63 benchmarks/Makefile
64 benchmarks/ReadFile.hs
65 benchmarks/parse.py
66 benchmarks/json-data/example.json
67 benchmarks/json-data/integers.json
68 benchmarks/json-data/jp10.json
69 benchmarks/json-data/jp20.json
70 benchmarks/json-data/jp50.json
71 benchmarks/json-data/jp100.json
72 benchmarks/json-data/numbers.json
73 benchmarks/json-data/twitter1.json
74 benchmarks/json-data/twitter10.json
75 benchmarks/json-data/twitter20.json
76 benchmarks/json-data/twitter50.json
77 benchmarks/json-data/twitter100.json
78 tests/Makefile
79 tests/Properties.hs
81flag developer
82 description: operate in developer mode
83 default: False
85library
86 exposed-modules:
87 Data.Aeson
88 Data.Aeson.Encode
89 Data.Aeson.Generic
90 Data.Aeson.Parser
91 Data.Aeson.Types
93 other-modules:
94 Data.Aeson.Functions
96 build-depends:
97 attoparsec >= 0.8.5.3,
98 base == 4.*,
99 blaze-builder >= 0.2.1.4,
100 blaze-textual,
101 bytestring,
102 containers,
103 deepseq,
104 hashable,
105 mtl,
106 old-locale,
107 syb,
108 text >= 0.11.0.2,
109 time,
110 unordered-containers >= 0.1.2.0,
111 vector >= 0.7
113 if flag(developer)
114 ghc-options: -Werror
115 ghc-prof-options: -auto-all
117 ghc-options: -Wall
119source-repository head
120 type: git
121 location: http://github.com/mailrank/aeson
123source-repository head
124 type: mercurial
125 location: http://bitbucket.org/bos/aeson