Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 171 lines (157 sloc) 4.627 kB
924ea54 @bos Initial commit
authored
1 name: aeson
fc707e0 @bos Bump version to 0.6.0.0
authored
2 version: 0.6.0.0
924ea54 @bos Initial commit
authored
3 license: BSD3
4 license-file: LICENSE
5 category: Text, Web, JSON
a83da41 @bos Start working on release notes and expanded examples.
authored
6 copyright: (c) 2011 Bryan O'Sullivan
7 (c) 2011 MailRank, Inc.
bf23c39 @bos Update mailrank addresses to serpentine
authored
8 author: Bryan O'Sullivan <bos@serpentine.com>
9 maintainer: Bryan O'Sullivan <bos@serpentine.com>
924ea54 @bos Initial commit
authored
10 stability: experimental
a83da41 @bos Start working on release notes and expanded examples.
authored
11 tested-with: GHC == 6.12.3, GHC == 7.0.4, GHC == 7.2.2
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
12 synopsis: Fast JSON parsing and encoding
924ea54 @bos Initial commit
authored
13 cabal-version: >= 1.8
a83da41 @bos Start working on release notes and expanded examples.
authored
14 homepage: https://github.com/bos/aeson
15 bug-reports: https://github.com/bos/aeson/issues
924ea54 @bos Initial commit
authored
16 build-type: Simple
17 description:
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
18 A JSON parsing and encoding library optimized for ease of use
e3982d3 @bos More docs
authored
19 and high performance.
20 .
2acc2ce @bos Doc improvements.
authored
21 To get started, see the documentation for the @Data.Aeson@ module
22 below.
23 .
a83da41 @bos Start working on release notes and expanded examples.
authored
24 For release notes, see
25 <https://github.com/bos/aeson/blob/master/release-notes.markdown>
26 .
f70f80d @bos Update docs to refer to the double-conversion problems.
authored
27 /Note/: if you use GHCi or Template Haskell, please see the
28 @README@ file for important details about building this package,
29 and other packages that depend on it:
bf23c39 @bos Update mailrank addresses to serpentine
authored
30 <https://github.com/bos/aeson#readme>
f70f80d @bos Update docs to refer to the double-conversion problems.
authored
31 .
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
32 Parsing performance on a late 2010 MacBook Pro (2.66GHz Core i7),
33 for mostly-English tweets from Twitter's JSON search API:
e3982d3 @bos More docs
authored
34 .
51699e5 @bos Update benchmark results.
authored
35 * 0.8 KB, 32-bit GHC 6.12.3: 30538 msg\/sec (24.9 MB\/sec)
e3982d3 @bos More docs
authored
36 .
51699e5 @bos Update benchmark results.
authored
37 * 0.8 KB, 64-bit GHC 7.0.3: 31204 msg\/sec (25.4 MB\/sec)
e3982d3 @bos More docs
authored
38 .
51699e5 @bos Update benchmark results.
authored
39 * 6.4 KB, 32-bit GHC 6.12.3: 6731 msg\/sec (42.3 MB\/sec)
e3982d3 @bos More docs
authored
40 .
51699e5 @bos Update benchmark results.
authored
41 * 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
42 .
51699e5 @bos Update benchmark results.
authored
43 * 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
44 .
51699e5 @bos Update benchmark results.
authored
45 * 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
46 .
47 * 31.2 KB, 32-bit GHC 6.12.3: 1306 msg\/sec (39.8 MB\/sec)
48 .
51699e5 @bos Update benchmark results.
authored
49 * 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
50 .
51699e5 @bos Update benchmark results.
authored
51 * 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
52 .
51699e5 @bos Update benchmark results.
authored
53 * 61.5 KB, 64-bit GHC 7.0.3: 534 msg\/sec (32.1 MB\/sec)
cb78de0 @bos Update benchmark results
authored
54 .
55 Handling heavily-escaped text is a little more work. Here is
56 parsing performance with Japanese tweets, where much of the text
047ca3e @bos Update 32-bit GHC 6.12.3 performance
authored
57 is entirely Unicode-escaped.
cb78de0 @bos Update benchmark results
authored
58 .
51699e5 @bos Update benchmark results.
authored
59 * 14.6 KB, 32-bit GHC 6.12.3: 2315 msg\/sec (33.1 MB\/sec)
cb78de0 @bos Update benchmark results
authored
60 .
51699e5 @bos Update benchmark results.
authored
61 * 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
62 .
51699e5 @bos Update benchmark results.
authored
63 * 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
64 .
51699e5 @bos Update benchmark results.
authored
65 * 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
66 .
51699e5 @bos Update benchmark results.
authored
67 * 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
68 .
51699e5 @bos Update benchmark results.
authored
69 * 82.9 KB, 64-bit GHC 7.0.3: 332 msg\/sec (26.9 MB\/sec)
e3982d3 @bos More docs
authored
70 .
71 Encoding performance on the same machine and data:
72 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
73 * English, 854 bytes: 43439 msg\/sec (35.4 MB/sec)
e3982d3 @bos More docs
authored
74 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
75 * English, 6.4 KB: 7127 msg\/sec (44.8 MB/sec)
e3982d3 @bos More docs
authored
76 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
77 * Engish, 61.5 KB: 765 msg\/sec (46.0 MB/sec)
e3982d3 @bos More docs
authored
78 .
636dd41 @bos Bump version, and include happy new performance numbers.
authored
79 * Japanese, 14.6 KB: 4727 msg\/sec (67.5 MB/sec)
80 .
81 * Japanese, 44.1 KB: 1505 msg\/sec (64.8 MB/sec)
82 .
e3982d3 @bos More docs
authored
83 (A note on naming: in Greek mythology, Aeson was the father of Jason.)
84
924ea54 @bos Initial commit
authored
85 extra-source-files:
86 README.markdown
6810039 @bos Build Haskell benchmarks with cabal
authored
87 benchmarks/*.cabal
0acf754 @bos Simplify .cabal manifest a bit
authored
88 benchmarks/*.hs
89 benchmarks/*.py
1dc9a1e @bos Add more benchmark data
authored
90 benchmarks/Makefile
0acf754 @bos Simplify .cabal manifest a bit
authored
91 benchmarks/json-data/*.json
a83da41 @bos Start working on release notes and expanded examples.
authored
92 examples/*.hs
0acf754 @bos Simplify .cabal manifest a bit
authored
93 release-notes.markdown
94 tests/Properties.hs
924ea54 @bos Initial commit
authored
95
96 flag developer
97 description: operate in developer mode
98 default: False
99
100 library
101 exposed-modules:
102 Data.Aeson
00dd59d @bos Support JSON encoding
authored
103 Data.Aeson.Encode
a1ee5a5 @bos Partially implement generic JSON support.
authored
104 Data.Aeson.Generic
924ea54 @bos Initial commit
authored
105 Data.Aeson.Parser
106 Data.Aeson.Types
5b4d384 @roelvandijk Added Data.Aeson.TH, mechanically derived instances
roelvandijk authored
107 Data.Aeson.TH
924ea54 @bos Initial commit
authored
108
a1ee5a5 @bos Partially implement generic JSON support.
authored
109 other-modules:
110 Data.Aeson.Functions
33cf247 @bos Clean up and document the stricter parsing functions.
authored
111 Data.Aeson.Parser.Internal
ff8a7d3 @bos Split Types/Internal.hs into 3 files.
authored
112 Data.Aeson.Types.Class
7b678a2 @bos Hide genericToJSON and genericFromJSON.
authored
113 Data.Aeson.Types.Internal
a1ee5a5 @bos Partially implement generic JSON support.
authored
114
ff8a7d3 @bos Split Types/Internal.hs into 3 files.
authored
115 if impl(ghc >= 7.2.1)
ebd766e @basvandijk Merge branch 'master' of git://github.com/mailrank/aeson into optimiz…
basvandijk authored
116 cpp-options: -DGENERICS
940449f @basvandijk Use the dlist package instead of using our own DList type
basvandijk authored
117 build-depends: ghc-prim >= 0.2, dlist >= 0.2
ff8a7d3 @bos Split Types/Internal.hs into 3 files.
authored
118 other-modules:
119 Data.Aeson.Types.Generic
120
924ea54 @bos Initial commit
authored
121 build-depends:
54a3ae3 @bos Bump version, and performance-dependent version of attoparsec needed
authored
122 attoparsec >= 0.8.6.1,
924ea54 @bos Initial commit
authored
123 base == 4.*,
00dd59d @bos Support JSON encoding
authored
124 blaze-builder >= 0.2.1.4,
924ea54 @bos Initial commit
authored
125 bytestring,
b84e358 @bos Try an even more robust way of handling containers.
authored
126 containers,
127 deepseq,
1cfcb82 @bos Bump dependency on hashable
authored
128 hashable >= 1.1.2.0,
375627d @bos Switch from monads-fd to mtl, and bump version
authored
129 mtl,
924ea54 @bos Initial commit
authored
130 old-locale,
a1ee5a5 @bos Partially implement generic JSON support.
authored
131 syb,
143c541 @mightybyte Relax template-haskell version bounds and bump version to 0.3.2.13.
mightybyte authored
132 template-haskell >= 2.4,
c959357 @juhp depends on text >= 0.11.1.0 for Data.Text.Lazy.Builder.RealFloat (Dat…
juhp authored
133 text >= 0.11.1.0,
924ea54 @bos Initial commit
authored
134 time,
495182f @bos Bump unordered-containers dependency
authored
135 unordered-containers >= 0.1.3.0,
3755b17 @basvandijk Fix for generic toJSON and parseJSON
basvandijk authored
136 vector >= 0.7.1
924ea54 @bos Initial commit
authored
137
138 if flag(developer)
139 ghc-options: -Werror
d05091c @bos Make developer flag control -auto-all.
authored
140 ghc-prof-options: -auto-all
924ea54 @bos Initial commit
authored
141
37f1da1 @bos Add -O2
authored
142 ghc-options: -O2 -Wall
924ea54 @bos Initial commit
authored
143
2de6eec @bos Add test support.
authored
144 test-suite tests
145 type: exitcode-stdio-1.0
146 hs-source-dirs: tests
147 main-is: Properties.hs
148
149 ghc-options:
150 -Wall -threaded -rtsopts
151
152 build-depends:
6da6d9f @bos Test round-tripping of compound types.
authored
153 QuickCheck,
2de6eec @bos Add test support.
authored
154 aeson,
155 attoparsec,
156 base,
dab66da @bos Try encoding/decoding maps.
authored
157 containers,
2de6eec @bos Add test support.
authored
158 bytestring,
83bcb74 @bos Add template-haskell dependency for tests
authored
159 template-haskell,
2de6eec @bos Add test support.
authored
160 test-framework,
6da6d9f @bos Test round-tripping of compound types.
authored
161 test-framework-quickcheck2,
162 text
2de6eec @bos Add test support.
authored
163
924ea54 @bos Initial commit
authored
164 source-repository head
165 type: git
a83da41 @bos Start working on release notes and expanded examples.
authored
166 location: git://github.com/bos/aeson.git
3568e5e @bos More benchmarkery: try out the json library.
authored
167
168 source-repository head
169 type: mercurial
a83da41 @bos Start working on release notes and expanded examples.
authored
170 location: https://bitbucket.org/bos/aeson
Something went wrong with that request. Please try again.