|
Packit |
9a2dfb |
name: aeson
|
|
Packit |
9a2dfb |
version: 1.2.3.0
|
|
Packit |
9a2dfb |
license: BSD3
|
|
Packit |
9a2dfb |
license-file: LICENSE
|
|
Packit |
9a2dfb |
category: Text, Web, JSON
|
|
Packit |
9a2dfb |
copyright: (c) 2011-2016 Bryan O'Sullivan
|
|
Packit |
9a2dfb |
(c) 2011 MailRank, Inc.
|
|
Packit |
9a2dfb |
author: Bryan O'Sullivan <bos@serpentine.com>
|
|
Packit |
9a2dfb |
maintainer: Adam Bergmark <adam@bergmark.nl>
|
|
Packit |
9a2dfb |
stability: experimental
|
|
Packit |
9a2dfb |
tested-with: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1
|
|
Packit |
9a2dfb |
synopsis: Fast JSON parsing and encoding
|
|
Packit |
9a2dfb |
cabal-version: >= 1.10
|
|
Packit |
9a2dfb |
homepage: https://github.com/bos/aeson
|
|
Packit |
9a2dfb |
bug-reports: https://github.com/bos/aeson/issues
|
|
Packit |
9a2dfb |
build-type: Simple
|
|
Packit |
9a2dfb |
description:
|
|
Packit |
9a2dfb |
A JSON parsing and encoding library optimized for ease of use
|
|
Packit |
9a2dfb |
and high performance.
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
To get started, see the documentation for the @Data.Aeson@ module
|
|
Packit |
9a2dfb |
below.
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
Parsing performance on a late 2013 MacBook Pro (2.6GHz Core i7),
|
|
Packit |
9a2dfb |
running 64-bit GHC 7.10.1, for mostly-English tweets from Twitter's
|
|
Packit |
9a2dfb |
JSON search API:
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
* 6.4 KB payloads, English: 7570 msg\/sec (47.6 MB\/sec)
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
* 14.6 KB payloads, Japanese: 3261 msg\/sec (46.6 MB\/sec)
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
Encoding performance on the same machine and data:
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
* 6.4 KB payloads, English: 22738 msg\/sec (142.9 MB\/sec)
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
* 14.6 KB payloads, Japanese: 15911 msg\/sec (227.4 MB\/sec)
|
|
Packit |
9a2dfb |
.
|
|
Packit |
9a2dfb |
(A note on naming: in Greek mythology, Aeson was the father of Jason.)
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
extra-source-files:
|
|
Packit |
9a2dfb |
*.yaml
|
|
Packit |
9a2dfb |
README.markdown
|
|
Packit |
9a2dfb |
benchmarks/*.cabal
|
|
Packit |
9a2dfb |
benchmarks/*.hs
|
|
Packit |
9a2dfb |
benchmarks/*.py
|
|
Packit |
9a2dfb |
benchmarks/Compare/*.hs
|
|
Packit |
9a2dfb |
benchmarks/Makefile
|
|
Packit |
9a2dfb |
benchmarks/Typed/*.hs
|
|
Packit |
9a2dfb |
benchmarks/json-data/*.json
|
|
Packit |
9a2dfb |
cbits/*.c
|
|
Packit |
9a2dfb |
changelog.md
|
|
Packit |
9a2dfb |
examples/*.cabal
|
|
Packit |
9a2dfb |
examples/*.hs
|
|
Packit |
9a2dfb |
examples/Twitter/*.hs
|
|
Packit |
9a2dfb |
ffi/Data/Aeson/Parser/*.hs
|
|
Packit |
9a2dfb |
include/*.h
|
|
Packit |
9a2dfb |
tests/JSONTestSuite/test_parsing/*.json
|
|
Packit |
9a2dfb |
tests/JSONTestSuite/test_transform/*.json
|
|
Packit |
9a2dfb |
pure/Data/Aeson/Parser/*.hs
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
flag developer
|
|
Packit |
9a2dfb |
description: operate in developer mode
|
|
Packit |
9a2dfb |
default: False
|
|
Packit |
9a2dfb |
manual: True
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
flag fast
|
|
Packit |
9a2dfb |
description: compile without optimizations
|
|
Packit |
9a2dfb |
default: False
|
|
Packit |
9a2dfb |
manual: True
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
flag bytestring-builder
|
|
Packit |
9a2dfb |
description: Depend on the bytestring-builder package for backwards compatibility.
|
|
Packit |
9a2dfb |
default: False
|
|
Packit |
9a2dfb |
manual: False
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
flag cffi
|
|
Packit |
9a2dfb |
description: Controls whether to include c-ffi bits or pure haskell. Default to False for security.
|
|
Packit |
9a2dfb |
default: False
|
|
Packit |
9a2dfb |
manual: True
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
library
|
|
Packit |
9a2dfb |
default-language: Haskell2010
|
|
Packit |
9a2dfb |
hs-source-dirs: . attoparsec-iso8601/
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
exposed-modules:
|
|
Packit |
9a2dfb |
Data.Aeson
|
|
Packit |
9a2dfb |
Data.Aeson.Encoding
|
|
Packit |
9a2dfb |
Data.Aeson.Parser
|
|
Packit |
9a2dfb |
Data.Aeson.Text
|
|
Packit |
9a2dfb |
Data.Aeson.Types
|
|
Packit |
9a2dfb |
Data.Aeson.TH
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
Data.Aeson.Encoding.Internal
|
|
Packit |
9a2dfb |
Data.Aeson.Internal
|
|
Packit |
9a2dfb |
Data.Aeson.Internal.Time
|
|
Packit |
9a2dfb |
Data.Aeson.Parser.Internal
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
-- Deprecated modules
|
|
Packit |
9a2dfb |
exposed-modules:
|
|
Packit |
9a2dfb |
Data.Aeson.Encode
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
other-modules:
|
|
Packit |
9a2dfb |
Data.Aeson.Compat
|
|
Packit |
9a2dfb |
Data.Aeson.Encoding.Builder
|
|
Packit |
9a2dfb |
Data.Aeson.Internal.Functions
|
|
Packit |
9a2dfb |
Data.Aeson.Parser.Unescape
|
|
Packit |
9a2dfb |
Data.Aeson.Parser.Time
|
|
Packit |
9a2dfb |
Data.Aeson.Types.FromJSON
|
|
Packit |
9a2dfb |
Data.Aeson.Types.Generic
|
|
Packit |
9a2dfb |
Data.Aeson.Types.ToJSON
|
|
Packit |
9a2dfb |
Data.Aeson.Types.Class
|
|
Packit |
9a2dfb |
Data.Aeson.Types.Internal
|
|
Packit |
9a2dfb |
Data.Attoparsec.Time
|
|
Packit |
9a2dfb |
Data.Attoparsec.Time.Internal
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
build-depends:
|
|
Packit |
9a2dfb |
attoparsec >= 0.13.0.1,
|
|
Packit |
9a2dfb |
base >= 4.5 && < 5,
|
|
Packit |
9a2dfb |
base-compat >= 0.9.1 && < 0.10,
|
|
Packit |
9a2dfb |
containers >= 0.4.2,
|
|
Packit |
9a2dfb |
deepseq >= 1.3 && < 1.5,
|
|
Packit |
9a2dfb |
dlist >= 0.6,
|
|
Packit |
9a2dfb |
ghc-prim >= 0.2,
|
|
Packit |
9a2dfb |
hashable >= 1.1.2.0,
|
|
Packit |
9a2dfb |
scientific >= 0.3.4.7 && < 0.4,
|
|
Packit |
9a2dfb |
tagged >=0.8.3 && <0.9,
|
|
Packit |
9a2dfb |
template-haskell >= 2.7,
|
|
Packit |
9a2dfb |
text >= 1.1.1.0,
|
|
Packit |
9a2dfb |
th-abstraction >= 0.2.2 && < 0.3,
|
|
Packit |
9a2dfb |
time >= 1.1.1.4,
|
|
Packit |
9a2dfb |
time-locale-compat >= 0.1.1 && < 0.2,
|
|
Packit |
9a2dfb |
unordered-containers >= 0.2.5.0 && < 0.3,
|
|
Packit |
9a2dfb |
uuid-types >= 1.0.3 && <1.1,
|
|
Packit |
9a2dfb |
vector >= 0.8
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if flag(bytestring-builder)
|
|
Packit |
9a2dfb |
build-depends: bytestring >= 0.9.2 && < 0.10.4,
|
|
Packit |
9a2dfb |
bytestring-builder >= 0.10.4 && < 1
|
|
Packit |
9a2dfb |
else
|
|
Packit |
9a2dfb |
build-depends: bytestring >= 0.10.4 && < 0.11
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if !impl(ghc >= 8.0)
|
|
Packit |
9a2dfb |
-- `Data.Semigroup` and `Control.Monad.Fail` and `Control.Monad.IO.Class` are available in base only since GHC 8.0 / base 4.9
|
|
Packit |
9a2dfb |
build-depends:
|
|
Packit |
9a2dfb |
semigroups >= 0.18.2 && < 0.19,
|
|
Packit |
9a2dfb |
transformers >= 0.2.2.0,
|
|
Packit |
9a2dfb |
transformers-compat >= 0.3,
|
|
Packit |
9a2dfb |
fail == 4.9.*
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if !impl(ghc >= 7.10)
|
|
Packit |
9a2dfb |
-- `Numeric.Natural` is available in base only since GHC 7.10 / base 4.8
|
|
Packit |
9a2dfb |
build-depends: nats >= 1 && < 1.2
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
ghc-options: -Wall
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if flag(developer)
|
|
Packit |
9a2dfb |
ghc-options: -Werror
|
|
Packit |
9a2dfb |
ghc-prof-options: -auto-all
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if flag(fast)
|
|
Packit |
9a2dfb |
ghc-options: -O0
|
|
Packit |
9a2dfb |
else
|
|
Packit |
9a2dfb |
ghc-options: -O2
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
include-dirs: include
|
|
Packit |
9a2dfb |
if impl(ghcjs) || !flag(cffi)
|
|
Packit |
9a2dfb |
hs-source-dirs: pure
|
|
Packit |
9a2dfb |
other-modules: Data.Aeson.Parser.UnescapePure
|
|
Packit |
9a2dfb |
else
|
|
Packit |
9a2dfb |
c-sources: cbits/unescape_string.c
|
|
Packit |
9a2dfb |
cpp-options: -DCFFI
|
|
Packit |
9a2dfb |
hs-source-dirs: ffi
|
|
Packit |
9a2dfb |
other-modules: Data.Aeson.Parser.UnescapeFFI
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
test-suite tests
|
|
Packit |
9a2dfb |
default-language: Haskell2010
|
|
Packit |
9a2dfb |
type: exitcode-stdio-1.0
|
|
Packit |
9a2dfb |
hs-source-dirs: tests ffi pure
|
|
Packit |
9a2dfb |
main-is: Tests.hs
|
|
Packit |
9a2dfb |
c-sources: cbits/unescape_string.c
|
|
Packit |
9a2dfb |
ghc-options: -Wall -threaded -rtsopts
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
other-modules:
|
|
Packit |
9a2dfb |
Data.Aeson.Parser.UnescapeFFI
|
|
Packit |
9a2dfb |
Data.Aeson.Parser.UnescapePure
|
|
Packit |
9a2dfb |
DataFamilies.Properties
|
|
Packit |
9a2dfb |
DataFamilies.Instances
|
|
Packit |
9a2dfb |
DataFamilies.Encoders
|
|
Packit |
9a2dfb |
DataFamilies.Types
|
|
Packit |
9a2dfb |
Encoders
|
|
Packit |
9a2dfb |
ErrorMessages
|
|
Packit |
9a2dfb |
Functions
|
|
Packit |
9a2dfb |
Instances
|
|
Packit |
9a2dfb |
Options
|
|
Packit |
9a2dfb |
Properties
|
|
Packit |
9a2dfb |
SerializationFormatSpec
|
|
Packit |
9a2dfb |
Types
|
|
Packit |
9a2dfb |
UnitTests
|
|
Packit |
9a2dfb |
UnitTests.NullaryConstructors
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
build-depends:
|
|
Packit |
9a2dfb |
HUnit,
|
|
Packit |
9a2dfb |
QuickCheck >= 2.10.0.1 && < 2.11,
|
|
Packit |
9a2dfb |
aeson,
|
|
Packit |
9a2dfb |
integer-logarithms >= 1 && <1.1,
|
|
Packit |
9a2dfb |
attoparsec,
|
|
Packit |
9a2dfb |
base,
|
|
Packit |
9a2dfb |
base-compat,
|
|
Packit |
9a2dfb |
base-orphans >= 0.5.3 && <0.7,
|
|
Packit |
9a2dfb |
base16-bytestring,
|
|
Packit |
9a2dfb |
containers,
|
|
Packit |
9a2dfb |
directory,
|
|
Packit |
9a2dfb |
dlist,
|
|
Packit |
9a2dfb |
filepath,
|
|
Packit |
9a2dfb |
generic-deriving >= 1.10 && < 1.12,
|
|
Packit |
9a2dfb |
ghc-prim >= 0.2,
|
|
Packit |
9a2dfb |
hashable >= 1.2.4.0,
|
|
Packit |
9a2dfb |
scientific,
|
|
Packit |
9a2dfb |
tagged,
|
|
Packit |
9a2dfb |
template-haskell,
|
|
Packit |
9a2dfb |
test-framework,
|
|
Packit |
9a2dfb |
test-framework-hunit,
|
|
Packit |
9a2dfb |
test-framework-quickcheck2,
|
|
Packit |
9a2dfb |
text,
|
|
Packit |
9a2dfb |
time,
|
|
Packit |
9a2dfb |
time-locale-compat,
|
|
Packit |
9a2dfb |
unordered-containers,
|
|
Packit |
9a2dfb |
uuid-types,
|
|
Packit |
9a2dfb |
vector,
|
|
Packit |
9a2dfb |
quickcheck-instances >= 0.3.16
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if flag(bytestring-builder)
|
|
Packit |
9a2dfb |
build-depends: bytestring >= 0.9 && < 0.10.4,
|
|
Packit |
9a2dfb |
bytestring-builder >= 0.10.4 && < 1
|
|
Packit |
9a2dfb |
else
|
|
Packit |
9a2dfb |
build-depends: bytestring >= 0.10.4
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if !impl(ghc >= 8.0)
|
|
Packit |
9a2dfb |
build-depends:
|
|
Packit |
9a2dfb |
semigroups >= 0.18.2 && < 0.19,
|
|
Packit |
9a2dfb |
transformers >= 0.2.2.0,
|
|
Packit |
9a2dfb |
transformers-compat >= 0.3
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if !impl(ghc >= 7.10)
|
|
Packit |
9a2dfb |
build-depends: nats >=1 && <1.2
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if impl(ghc >= 7.8)
|
|
Packit |
9a2dfb |
build-depends: hashable-time >= 0.2 && <0.3
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
if flag(fast)
|
|
Packit |
9a2dfb |
ghc-options: -fno-enable-rewrite-rules
|
|
Packit |
9a2dfb |
|
|
Packit |
9a2dfb |
source-repository head
|
|
Packit |
9a2dfb |
type: git
|
|
Packit |
9a2dfb |
location: git://github.com/bos/aeson.git
|