packages feed

waargonaut-0.2.0.2: waargonaut.cabal

-- Initial waargonaut.cabal generated by cabal init.  For further
-- documentation, see http://haskell.org/cabal/users-guide/

-- The name of the package.
name:                waargonaut

-- The package version.  See the Haskell package versioning policy (PVP)
-- for standards guiding when and how versions should be incremented.
-- https://wiki.haskell.org/Package_versioning_policy
-- PVP summary:      +-+------- breaking API changes
--                   | | +----- non-breaking API additions
--                   | | | +--- code changes with no API change
version:             0.2.0.2

-- A short (one-line) description of the package.
synopsis:            JSON wrangling

-- A longer description of the package.
description:         Flexible, precise, and efficient JSON decoding/encoding library.

-- The license under which the package is released.
license:             BSD3

-- The file containing the license text.
license-file:        LICENCE

-- The package author(s).
author:              QFPL @ Data61

-- An email address to which users can send suggestions, bug reports, and
-- patches.
maintainer:          oᴉ˙ldɟb@uɐǝs

-- A copyright notice.
copyright:           Copyright (C) 2018 Commonwealth Scientific and Industrial Research Organisation (CSIRO)

category:            Parser, Web, JSON

build-type:          Custom

-- Extra files to be distributed with the package, such as examples or a
-- README.
extra-source-files:  changelog.md
                   , README.md
                   , test/json-data/numbers.json
                   , test/json-data/test1.json
                   , test/json-data/test2.json
                   , test/json-data/test3.json
                   , test/json-data/test4.json
                   , test/json-data/test5.json
                   , test/json-data/test6.json
                   , test/json-data/test7.json

homepage:            https://github.com/qfpl/waargonaut
bug-reports:         https://github.com/qfpl/waargonaut/issues

-- Constraint on the version of Cabal needed to build this package.
cabal-version:       >=1.10

tested-with:         GHC==7.10.3
                   , GHC==8.0.2
                   , GHC==8.2.2
                   , GHC==8.4.3
                   , GHC==8.6.1

custom-setup
  setup-depends:       base >= 4 && <5
                     , cabal-doctest >= 1 && <1.1
                     , Cabal

source-repository    head
  type:              git
  location:          git@github.com/qfpl/waargonaut.git

library
  -- Modules included in this executable, other than Main.
  exposed-modules:     Waargonaut.Types.Whitespace
                     , Waargonaut.Types.CommaSep
                     , Waargonaut.Types.JChar
                     , Waargonaut.Types.JArray
                     , Waargonaut.Types.JObject
                     , Waargonaut.Types.JString
                     , Waargonaut.Types.JNumber
                     , Waargonaut.Types.Json
                     , Waargonaut.Types

                     , Waargonaut.Decode.Internal
                     , Waargonaut.Decode.ZipperMove
                     , Waargonaut.Decode.Error
                     , Waargonaut.Decode.Types

                     , Waargonaut.Decode
                     , Waargonaut.Decode.Traversal

                     , Waargonaut.Encode

                     , Waargonaut.Generic

                     , Waargonaut

  ghc-options:         -Wall

  -- Other library packages from which modules are imported.
  build-depends:       base                >= 4.7     && < 4.13
                     , lens                >= 4.15    && < 5
                     , mtl                 >= 2.2.2   && < 3
                     , text                >= 1.2     && < 1.3
                     , bytestring          >= 0.10.6  && < 0.11
                     , parsers             >= 0.12    && < 0.13
                     , digit               >= 0.7     && < 0.8
                     , semigroups          >= 0.8.4   && < 0.19
                     , scientific          >= 0.3     && < 0.4
                     , distributive        >= 0.5     && < 0.7
                     , nats                >= 1       && <1.2
                     , zippers             >= 0.2     && < 0.3
                     , vector              >= 0.12    && < 0.13
                     , errors              >= 2.2     && < 3
                     , hoist-error         >= 0.2     && < 0.3
                     , containers          >= 0.5.6   && < 0.7
                     , witherable          >= 0.2     && < 0.3
                     , generics-sop        >= 0.3.2   && < 0.4
                     , mmorph              >= 1.1     && < 2
                     , transformers        >= 0.4     && < 0.6
                     , bifunctors          >= 5       && < 6
                     , contravariant       >= 1.4     && < 2
                     , wl-pprint-annotated >= 0.1     && < 0.2
                     , hw-json             >= 0.9.0.1 && < 0.10
                     , hw-prim             >= 0.6     && < 0.7
                     , hw-balancedparens   >= 0.2     && < 0.3
                     , hw-rankselect       >= 0.10    && < 0.13
                     , hw-bits             >= 0.7     && < 0.8
                     , tagged              >= 0.8.6   && < 0.9

  -- Directories containing source files.
  hs-source-dirs:      src

  -- Base language which the package is written in.
  default-language:    Haskell2010

test-suite doctests
  type:                exitcode-stdio-1.0
  main-is:             Doctests.hs
  default-language:    Haskell2010
  hs-source-dirs:      test

  build-depends:       base             >= 4.7  && < 4.13
                     , hedgehog         >= 0.6  && < 0.7
                     , text             >= 1.2  && < 1.3
                     , digit            >= 0.7  && < 0.8
                     , attoparsec       >= 0.13 && < 0.15
                     , doctest          >= 0.9.7
                     , filepath         >= 1.3
                     , directory        >= 1.1
                     , template-haskell >= 2.8

                     , waargonaut

  ghc-options:         -Wall -threaded

test-suite waarg-tests
   other-modules:      Types.Common
                     , Types.CommaSep
                     , Types.JChar , Types.JNumber
                     , Types.JString
                     , Types.Json
                     , Types.Whitespace

                     , Utils
                     , Encoder
                     , Decoder

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

  build-depends:       base                   >= 4.7    && < 4.13
                     , tasty                  >= 0.11   && < 2
                     , tasty-hunit            >= 0.10   && < 0.11
                     , tasty-expected-failure >= 0.11   && < 0.12
                     , hedgehog               >= 0.6    && < 0.7
                     , tasty-hedgehog         >= 0.2    && < 0.3
                     , lens                   >= 4.15   && < 5
                     , distributive           >= 0.5    && < 0.7
                     , bytestring             >= 0.10.6 && < 0.11
                     , digit                  >= 0.7    && < 0.8
                     , text                   >= 1.2    && < 1.3
                     , semigroups             >= 0.8.4  && < 0.19
                     , zippers                >= 0.2    && < 0.3
                     , vector                 >= 0.12   && < 0.13
                     , generics-sop           >= 0.3.2  && < 0.4
                     , attoparsec             >= 0.13   && < 0.15
                     , scientific             >= 0.3    && < 0.4
                     , tagged                 >= 0.8.6  && < 0.9
 

                     , waargonaut

  ghc-options:         -Wall

  default-language:    Haskell2010