Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 184 lines (168 sloc) 4.98 kb
924ea54 @bos Initial commit
authored
1 name: aeson
143c541 @mightybyte Relax template-haskell version bounds and bump version to 0.3.2.13.
mightybyte authored
2 version: 0.3.2.13
924ea54 @bos Initial commit
authored
3 license: BSD3
4 license-file: LICENSE
5 category: Text, Web, JSON
6 copyright: Copyright 2011 MailRank, Inc.
7 author: Bryan O'Sullivan <bos@mailrank.com>
8 maintainer: Bryan O'Sullivan <bos@mailrank.com>
9 stability: experimental
10 tested-with: GHC == 6.12.3
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
11 synopsis: Fast JSON parsing and encoding
924ea54 @bos Initial commit
authored
12 cabal-version: >= 1.8
13 homepage: http://github.com/mailrank/aeson
14 bug-reports: http://github.com/mailrank/aeson/issues
15 build-type: Simple
16 description:
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
17 A JSON parsing and encoding library optimized for ease of use
e3982d3 @bos More docs
authored
18 and high performance.
19 .
2acc2ce @bos Doc improvements.
authored
20 To get started, see the documentation for the @Data.Aeson@ module
21 below.
22 .
f70f80d @bos Update docs to refer to the double-conversion problems.
authored
23 /Note/: if you use GHCi or Template Haskell, please see the
24 @README@ file for important details about building this package,
25 and other packages that depend on it:
26 <https://github.com/mailrank/aeson#readme>
27 .
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
28 Parsing performance on a late 2010 MacBook Pro (2.66GHz Core i7),
29 for mostly-English tweets from Twitter's JSON search API:
e3982d3 @bos More docs
authored
30 .
51699e5 @bos Update benchmark results.
authored
31 * 0.8 KB, 32-bit GHC 6.12.3: 30538 msg\/sec (24.9 MB\/sec)
e3982d3 @bos More docs
authored
32 .
51699e5 @bos Update benchmark results.
authored
33 * 0.8 KB, 64-bit GHC 7.0.3: 31204 msg\/sec (25.4 MB\/sec)
e3982d3 @bos More docs
authored
34 .
51699e5 @bos Update benchmark results.
authored
35 * 6.4 KB, 32-bit GHC 6.12.3: 6731 msg\/sec (42.3 MB\/sec)
e3982d3 @bos More docs
authored
36 .
51699e5 @bos Update benchmark results.
authored
37 * 6.4 KB, 64-bit GHC 7.0.3: 6627 msg\/sec (41.7 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
38 .
51699e5 @bos Update benchmark results.
authored
39 * 11.8 KB, 32-bit GHC 6.12.3: 3751 msg\/sec (43.2 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
40 .
51699e5 @bos Update benchmark results.
authored
41 * 11.8 KB, 64-bit GHC 7.0.3: 3381 msg\/sec (38.9 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
42 .
43 * 31.2 KB, 32-bit GHC 6.12.3: 1306 msg\/sec (39.8 MB\/sec)
44 .
51699e5 @bos Update benchmark results.
authored
45 * 31.2 KB, 64-bit GHC 7.0.3: 1132 msg\/sec (34.5 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
46 .
51699e5 @bos Update benchmark results.
authored
47 * 61.5 KB, 32-bit GHC 6.12.3: 616 msg\/sec (37.0 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
48 .
51699e5 @bos Update benchmark results.
authored
49 * 61.5 KB, 64-bit GHC 7.0.3: 534 msg\/sec (32.1 MB\/sec)
cb78de0 @bos Update benchmark results
authored
50 .
51 Handling heavily-escaped text is a little more work. Here is
52 parsing performance with Japanese tweets, where much of the text
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
53 is entirely Unicode-escaped.
cb78de0 @bos Update benchmark results
authored
54 .
51699e5 @bos Update benchmark results.
authored
55 * 14.6 KB, 32-bit GHC 6.12.3: 2315 msg\/sec (33.1 MB\/sec)
cb78de0 @bos Update benchmark results
authored
56 .
51699e5 @bos Update benchmark results.
authored
57 * 14.6 KB, 64-bit GHC 7.0.3: 1986 msg\/sec (28.4 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
58 .
51699e5 @bos Update benchmark results.
authored
59 * 44.1 KB, 32-bit GHC 6.12.3: 712 msg\/sec (30.7 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
60 .
51699e5 @bos Update benchmark results.
authored
61 * 44.1 KB, 64-bit GHC 7.0.3: 634 msg\/sec (27.3 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
62 .
51699e5 @bos Update benchmark results.
authored
63 * 82.9 KB, 32-bit GHC 6.12.3: 377 msg\/sec (30.5 MB\/sec)
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
64 .
51699e5 @bos Update benchmark results.
authored
65 * 82.9 KB, 64-bit GHC 7.0.3: 332 msg\/sec (26.9 MB\/sec)
e3982d3 @bos More docs
authored
66 .
67 Encoding performance on the same machine and data:
68 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
69 * English, 854 bytes: 43439 msg\/sec (35.4 MB/sec)
e3982d3 @bos More docs
authored
70 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
71 * English, 6.4 KB: 7127 msg\/sec (44.8 MB/sec)
e3982d3 @bos More docs
authored
72 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
73 * Engish, 61.5 KB: 765 msg\/sec (46.0 MB/sec)
e3982d3 @bos More docs
authored
74 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
75 * Japanese, 14.6 KB: 4727 msg\/sec (67.5 MB/sec)
76 .
77 * Japanese, 44.1 KB: 1505 msg\/sec (64.8 MB/sec)
78 .
e3982d3 @bos More docs
authored
79 (A note on naming: in Greek mythology, Aeson was the father of Jason.)
80
924ea54 @bos Initial commit
authored
81 extra-source-files:
82 README.markdown
bf72444 @bos Fix missed rename
authored
83 benchmarks/AesonEncode.hs
3568e5e @bos More benchmarkery: try out the json library.
authored
84 benchmarks/AesonParse.hs
85 benchmarks/JsonParse.hs
1dc9a1e @bos Add more benchmark data
authored
86 benchmarks/Makefile
3568e5e @bos More benchmarkery: try out the json library.
authored
87 benchmarks/ReadFile.hs
1dc9a1e @bos Add more benchmark data
authored
88 benchmarks/parse.py
89 benchmarks/json-data/example.json
90 benchmarks/json-data/integers.json
91 benchmarks/json-data/jp10.json
92 benchmarks/json-data/jp50.json
93 benchmarks/json-data/jp100.json
94 benchmarks/json-data/numbers.json
95 benchmarks/json-data/twitter1.json
96 benchmarks/json-data/twitter10.json
97 benchmarks/json-data/twitter20.json
98 benchmarks/json-data/twitter50.json
99 benchmarks/json-data/twitter100.json
e9316c5 @bos Make sure the tests are distributed with the source
authored
100 tests/Makefile
101 tests/Properties.hs
98a7141 @nbogie Added the simplest runnable demo of parsing and generation.
nbogie authored
102 examples/Demo.hs
924ea54 @bos Initial commit
authored
103
104 flag developer
105 description: operate in developer mode
106 default: False
107
5dd9906 @basvandijk Allow building with both the newest deepseq (>= 1.2) and containers (>= ...
basvandijk authored
108 flag old-deepseq-containers
109 default: False
110
924ea54 @bos Initial commit
authored
111 library
112 exposed-modules:
113 Data.Aeson
00dd59d @bos Support JSON encoding
authored
114 Data.Aeson.Encode
a1ee5a5 @bos Partially implement generic JSON support.
authored
115 Data.Aeson.Generic
924ea54 @bos Initial commit
authored
116 Data.Aeson.Parser
117 Data.Aeson.Types
5b4d384 @roelvandijk Added Data.Aeson.TH, mechanically derived instances
roelvandijk authored
118 Data.Aeson.TH
924ea54 @bos Initial commit
authored
119
a1ee5a5 @bos Partially implement generic JSON support.
authored
120 other-modules:
121 Data.Aeson.Functions
7b678a2 @bos Hide genericToJSON and genericFromJSON.
authored
122 Data.Aeson.Types.Internal
a1ee5a5 @bos Partially implement generic JSON support.
authored
123
924ea54 @bos Initial commit
authored
124 build-depends:
54a3ae3 @bos Bump version, and performance-dependent version of attoparsec needed
authored
125 attoparsec >= 0.8.6.1,
924ea54 @bos Initial commit
authored
126 base == 4.*,
00dd59d @bos Support JSON encoding
authored
127 blaze-builder >= 0.2.1.4,
f70f80d @bos Update docs to refer to the double-conversion problems.
authored
128 blaze-textual >= 0.2.0.2,
924ea54 @bos Initial commit
authored
129 bytestring,
1cfcb82 @bos Bump dependency on hashable
authored
130 hashable >= 1.1.2.0,
375627d @bos Switch from monads-fd to mtl, and bump version
authored
131 mtl,
924ea54 @bos Initial commit
authored
132 old-locale,
a1ee5a5 @bos Partially implement generic JSON support.
authored
133 syb,
d05091c @bos Make developer flag control -auto-all.
authored
134 text >= 0.11.0.2,
143c541 @mightybyte Relax template-haskell version bounds and bump version to 0.3.2.13.
mightybyte authored
135 template-haskell >= 2.4,
924ea54 @bos Initial commit
authored
136 time,
495182f @bos Bump unordered-containers dependency
authored
137 unordered-containers >= 0.1.3.0,
924ea54 @bos Initial commit
authored
138 vector >= 0.7
139
5dd9906 @basvandijk Allow building with both the newest deepseq (>= 1.2) and containers (>= ...
basvandijk authored
140 if flag(old-deepseq-containers)
141 build-depends:
142 containers < 0.4.2,
143 deepseq < 1.2
144 else
145 build-depends:
146 containers >= 0.4.2,
147 deepseq >= 1.2
148
924ea54 @bos Initial commit
authored
149 if flag(developer)
150 ghc-options: -Werror
d05091c @bos Make developer flag control -auto-all.
authored
151 ghc-prof-options: -auto-all
924ea54 @bos Initial commit
authored
152
3ef2a6d @bos Tiny tweak
authored
153 if impl(ghc >= 7.2.1)
abf41d1 @basvandijk Default methods for toJSON and parseJSON using the new DefaultSignatures...
basvandijk authored
154 cpp-options: -DDEFAULT_SIGNATURES
155
924ea54 @bos Initial commit
authored
156 ghc-options: -Wall
157
2de6eec @bos Add test support.
authored
158 test-suite tests
159 type: exitcode-stdio-1.0
160 hs-source-dirs: tests
161 main-is: Properties.hs
162
163 ghc-options:
164 -Wall -threaded -rtsopts
165
166 build-depends:
6da6d9f @bos Test round-tripping of compound types.
authored
167 QuickCheck,
2de6eec @bos Add test support.
authored
168 aeson,
169 attoparsec,
170 base,
dab66da @bos Try encoding/decoding maps.
authored
171 containers,
2de6eec @bos Add test support.
authored
172 bytestring,
173 test-framework,
6da6d9f @bos Test round-tripping of compound types.
authored
174 test-framework-quickcheck2,
175 text
2de6eec @bos Add test support.
authored
176
924ea54 @bos Initial commit
authored
177 source-repository head
178 type: git
179 location: http://github.com/mailrank/aeson
3568e5e @bos More benchmarkery: try out the json library.
authored
180
181 source-repository head
182 type: mercurial
183 location: http://bitbucket.org/bos/aeson
Something went wrong with that request. Please try again.