forked from haskell/aeson
-
Notifications
You must be signed in to change notification settings - Fork 0
/
aeson.cabal
117 lines (108 loc) · 3.03 KB
/
aeson.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
name: aeson
version: 0.3.1.0
license: BSD3
license-file: LICENSE
category: Text, Web, JSON
copyright: Copyright 2011 MailRank, Inc.
author: Bryan O'Sullivan <bos@mailrank.com>
maintainer: Bryan O'Sullivan <bos@mailrank.com>
stability: experimental
tested-with: GHC == 6.12.3
synopsis: Fast JSON parsing and generation
cabal-version: >= 1.8
homepage: http://github.com/mailrank/aeson
bug-reports: http://github.com/mailrank/aeson/issues
build-type: Simple
description:
A JSON parsing and generation library optimized for ease of use
and high performance.
.
Parsing performance with GHC 6.12.3 on a late 2010 MacBook Pro
(2.66GHz Core i7), for mostly-English tweets from Twitter's JSON
search API:
.
* 854 bytes: 21054 msg\/sec (17.1 MB/sec)
.
* 6.4 KB: 4545 msg\/sec (28.6 MB/sec)
.
* 31.2 KB: 856 msg\/sec (26.1 MB/sec)
.
* 61.5 KB: 403 msg\/sec (24.2 MB/sec)
.
Handling heavily-escaped text is a little more work. Here is
parsing performance with Japanese tweets, where much of the text
is entirely Unicode-escaped:
.
* 14.6 KB: 1250 msg\/sec (17.9 MB/sec)
.
* 44.1 KB: 363 msg\/sec (15.6 MB/sec)
.
Encoding performance on the same machine and data:
.
* 854 bytes: 10647 msg\/sec (8.7 MB/sec)
.
* 6.4 KB: 2098 msg\/sec (13.2 MB/sec)
.
* 31.2 KB: 422 msg\/sec (12.9 MB/sec)
.
* 61.5 KB: 219 msg\/sec (13.2 MB/sec)
.
(A note on naming: in Greek mythology, Aeson was the father of Jason.)
extra-source-files:
README.markdown
benchmarks/AesonParse.hs
benchmarks/EncodeFile.hs
benchmarks/JsonParse.hs
benchmarks/Makefile
benchmarks/ReadFile.hs
benchmarks/parse.py
benchmarks/json-data/example.json
benchmarks/json-data/integers.json
benchmarks/json-data/jp10.json
benchmarks/json-data/jp20.json
benchmarks/json-data/jp50.json
benchmarks/json-data/jp100.json
benchmarks/json-data/numbers.json
benchmarks/json-data/twitter1.json
benchmarks/json-data/twitter10.json
benchmarks/json-data/twitter20.json
benchmarks/json-data/twitter50.json
benchmarks/json-data/twitter100.json
flag developer
description: operate in developer mode
default: False
library
exposed-modules:
Data.Aeson
Data.Aeson.Encode
Data.Aeson.Generic
Data.Aeson.Parser
Data.Aeson.Types
other-modules:
Data.Aeson.Functions
build-depends:
attoparsec >= 0.8.5.0,
base == 4.*,
blaze-builder >= 0.2.1.4,
bytestring,
bytestring-show,
containers,
deepseq,
hashable,
monads-fd,
old-locale,
syb,
text >= 0.11.0.2,
time,
unordered-containers >= 0.1.2.0,
vector >= 0.7
if flag(developer)
ghc-options: -Werror
ghc-prof-options: -auto-all
ghc-options: -Wall
source-repository head
type: git
location: http://github.com/mailrank/aeson
source-repository head
type: mercurial
location: http://bitbucket.org/bos/aeson