packages feed

microaeson-0.1.0.3: microaeson.cabal

cabal-version:       2.0
name:                microaeson
version:             0.1.0.3

synopsis:            A tiny JSON library with light dependency footprint
license:             GPL-3
license-file:        LICENSE
author:              Herbert Valerio Riedel
maintainer:          Andreas Abel
category:            Text, Web, JSON
build-type:          Simple
description: {

@microaeson@ aims to provide a [RFC 8259](https://tools.ietf.org/html/rfc8259) compliant JavaScript Object Notation (JSON) implementation.

The [microaeson](https://hackage.haskell.org/package/microaeson) package provides a smaller subset of the [aeson](https://hackage.haskell.org/package/aeson) API with less dependencies and a simpler implementation.
.
The API is designed in such a way to allow to easily convert client code written against @microaeson@'s API to use the full [aeson](https://hackage.haskell.org/package/aeson) API.

}

tested-with:
  GHC == 9.14.1
  GHC == 9.12.2
  GHC == 9.10.2
  GHC == 9.8.4
  GHC == 9.6.7
  GHC == 9.4.8
  GHC == 9.2.8
  GHC == 9.0.2
  GHC == 8.10.7
  GHC == 8.8.4
  GHC == 8.6.5
  GHC == 8.4.4
  GHC == 8.2.2
  GHC == 8.0.2

extra-doc-files:
  CHANGELOG.md
  README.md

source-repository head
  type:              git
  location:          https://github.com/haskell-hvr/microaeson.git

library
  default-language:  Haskell2010
  other-extensions:  CPP
                     DeriveDataTypeable
                     DeriveGeneric
                     FlexibleInstances
                     GeneralizedNewtypeDeriving
                     MagicHash
                     OverloadedStrings

  hs-source-dirs:    src

  exposed-modules:   Data.Aeson.Micro
  other-modules:     Data.Aeson.Micro.Parser
                     Data.Aeson.Micro.Scanner

  build-depends:     array      ^>= 0.5.1.1
                   , base        >= 4.9.0.0  && < 5
                   , bytestring  >= 0.10.8.0 && < 0.13
                   , containers  >= 0.5.7.1  && < 1
                   , deepseq     >= 1.4.2.0  && < 1.6
                   , text        >= 1.2.2.2 && < 1.3 || >= 2.0 && < 3

  build-tool-depends: alex:alex  >= 3.2.0

  ghc-options:
      -Wall
      -Wcompat
      -Wnoncanonical-monad-instances

  if impl(ghc < 8.8)
    ghc-options:
      -Wnoncanonical-monadfail-instances

test-suite microaeson
  default-language:  Haskell2010

  hs-source-dirs:    src-tests
  main-is:           tests.hs

  type:              exitcode-stdio-1.0

  -- internal dependency
  build-depends:     microaeson

  -- constraints inherited via lib:microaeson component
  build-depends:     base
                   , containers

  -- dependencies requiring constraints
  build-depends:     aeson                 >= 2.0.3.0 && < 2.3
                   , quickcheck-instances ^>= 0.3.16
                   , tasty                 >= 1.0.1.1 && < 1.6
                   , tasty-quickcheck      >= 0.10    && < 1
                   , vector               ^>= 0.12.0.1
                                       || ^>= 0.13.0.0


  ghc-options:
      -Wall
      -Wcompat
      -Wnoncanonical-monad-instances

  if impl(ghc < 8.8)
    ghc-options:
      -Wnoncanonical-monadfail-instances