name:                cborg-json
version:             0.2.6.0
synopsis:            A library for encoding JSON as CBOR
description:         This package implements the bijection between JSON and
                     CBOR defined in the CBOR specification, RFC 7049.
homepage:            https://github.com/well-typed/cborg
license:             BSD3
license-file:        LICENSE.txt
author:              Duncan Coutts
maintainer:          ben@smart-cactus.org
bug-reports:         https://github.com/well-typed/cborg/issues
copyright:           2015-2017 Duncan Coutts,
                     2015-2017 Well-Typed LLP,
                     2015 IRIS Connect Ltd
category:            Codec
build-type:          Simple
extra-source-files:  ChangeLog.md
cabal-version:       >=1.10
tested-with:
  GHC == 8.4.4,
  GHC == 8.6.5,
  GHC == 8.8.3,
  GHC == 8.10.7,
  GHC == 9.0.1,
  GHC == 9.2.2,
  GHC == 9.4.2,
  GHC == 9.6.1

library
  exposed-modules:     Codec.CBOR.JSON
  ghc-options:         -Wall
  build-depends:
    base                 >=4.11 && < 4.20,
    aeson                >=0.7  && <2.3,
    aeson-pretty         >=0.8  && <0.9,
    base64-bytestring    >=1.0  && <1.3,
    unordered-containers >=0.2  && <0.3,
    scientific           >=0.3  && <0.4,
    text                 >=1.1  && <2.2,
    vector               >=0.10 && <0.14,

    cborg ==0.2.*

  hs-source-dirs:      src
  default-language:    Haskell2010

  if impl(ghc >= 8.0)
    ghc-options: -Wcompat -Wnoncanonical-monad-instances



benchmark bench
  type:              exitcode-stdio-1.0
  hs-source-dirs:    bench
  main-is:           Main.hs

  default-language:  Haskell2010
  ghc-options:
    -Wall -rtsopts -fno-cse -fno-ignore-asserts -fno-warn-orphans -O2

  other-modules:

  build-depends:
    base       >= 4.11    && < 4.20,
    bytestring >= 0.10.4  && < 0.13,
    criterion  >= 1.0     && < 1.7,
    deepseq    >= 1.0     && < 1.6,
    zlib       >= 0.5     && < 0.7,
    directory,
    process,
    aeson,

    cborg,
    cborg-json


test-suite tests
  type:              exitcode-stdio-1.0
  hs-source-dirs:    tests
  main-is:           Main.hs

  default-language:  Haskell2010
  ghc-options:
    -Wall -fno-warn-orphans
    -threaded -rtsopts "-with-rtsopts=-N2"

  other-modules:

  build-depends:
    base                    >= 4.7     && < 4.20,
    base-orphans,
    base16-bytestring       >= 1.0     && < 1.1,
    bytestring              >= 0.10.4  && < 0.13,
    cborg,
    cborg-json,
    aeson                   >= 0.7     && < 2.3,
    QuickCheck              >= 2.9     && < 2.15,
    tasty                   >= 0.11    && < 1.6,
    tasty-hunit             >= 0.9     && < 0.11,
    text                    >= 1.1     && < 2.2
  if !impl(ghc >= 8.0)
    build-depends:
      fail                    >= 4.9.0.0 && < 4.10