packages feed

aeson-combinators-0.1.2.1: aeson-combinators.cabal

cabal-version:       >=1.10
name:                aeson-combinators
version:             0.1.2.1
synopsis:            Aeson combinators for dead simple JSON decoding
description:
    Low overhead value space `Decoder`
    on top of Aeson's Parser for combinator style decoding.

bug-reports:         https://github.com/turboMaCk/aeson-combinators/issues
license:             BSD3
license-file:        LICENSE
author:              Marek Fajkus <marek.faj@gmail.com>
maintainer:          Marek Fajkus <marek.faj@gmail.com>
copyright:           (c) 2020 Marek Fajkus
stability:           experimental
category:            Text, Web, JSON
build-type:          Simple
extra-source-files:  README.md
                   , CHANGELOG.md
homepage:            https://github.com/turboMaCk/aeson-combinators
tested-with:         GHC == 8.10.7
                   , GHC == 9.0.2
                   , GHC == 9.2.5
                   , GHC == 9.8.1
                   , GHCJS == 8.6.0.1

Flag doctest
  default: False
  manual: True

library
  exposed-modules:     Data.Aeson.Combinators.Decode
                     , Data.Aeson.Combinators.Encode
  other-modules:       Data.Aeson.Combinators.Compat
  -- other-extensions:
  build-depends:       base >= 4 && < 5
                     , bytestring
                     , text
                     , aeson
                     , scientific
                     , vector
                     , unordered-containers
                     , fail
                     , time
                     , time-compat
                     , uuid-types
                     , containers
                     , unordered-containers
                     , void
                     , scientific

  if impl(ghc >= 9.2.0)
      build-depends:
          attoparsec-aeson
  hs-source-dirs:      lib
  default-language:    Haskell2010
  hs-source-dirs:      lib

benchmark benchmark
    type:              exitcode-stdio-1.0
    main-is:           Main.hs
    hs-source-dirs:    benchmarks
    build-depends:     base
                     , aeson
                     , aeson-combinators
                     , bytestring
                     , criterion
                     , deepseq
                     , text
    ghc-options:       -Wall
    default-language:  Haskell2010

test-suite spec
    type:              exitcode-stdio-1.0
    hs-source-dirs:    test
    main-is:           Spec.hs
    other-modules:     JSONDecodeSpec
                     , JSONEncodeSpec
    build-depends:     base
                     , hspec
                     , aeson-combinators
                     , bytestring
                     , text
                     , aeson
                     , utf8-string
    ghc-options:       -Wall
    default-language:  Haskell2010

test-suite doctest
    default-language:   Haskell2010
    type:               exitcode-stdio-1.0
    main-is:            DocTest.hs
    default-extensions: OverloadedStrings

    if !flag(doctest)
        buildable: False
    else
        build-depends:    base
                        , doctest

source-repository head
  type:              git
  location:          https://github.com/turboMaCk/aeson-combinators.git