packages feed

waargonaut-0.5.2.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.5.2.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==8.0.2
                   , GHC==8.2.2
                   , GHC==8.4.4
                   , GHC==8.6.2

custom-setup
  setup-depends:       base >= 4.9 && <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.Encode.Types

                     , Waargonaut.Decode
                     , Waargonaut.Decode.Traversal

                     , Waargonaut.Encode

                     , Waargonaut.Generic
                     , Waargonaut.Test
                     , Waargonaut.Prettier

                     , Waargonaut

  ghc-options:         -Wall

  -- Other library packages from which modules are imported.
  build-depends:       base                >= 4.9     && < 4.13
                     , lens                >= 4.15    && < 4.18
                     , mtl                 >= 2.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     && < 2.4
                     , hoist-error         >= 0.2     && < 0.3
                     , containers          >= 0.5.6   && < 0.7
                     , witherable          >= 0.2     && < 0.4
                     , generics-sop        >= 0.4     && < 0.5
                     , mmorph              >= 1.1     && < 1.2
                     , transformers        >= 0.4     && < 0.6
                     , bifunctors          >= 5       && < 5.6
                     , contravariant       >= 1.4     && < 1.6
                     , 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.5   && < 0.9
                     , semigroupoids       >= 5.2.2   && < 5.4
                     , natural             >= 0.3     && < 0.4

  -- 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.9  && < 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

                     , Laws
                     , Utils
                     , Encoder
                     , Encoder.Laws
                     , Decoder
                     , Decoder.Laws
                     , Json

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

  build-depends:       base                   >= 4.9    && < 4.13
                     , tasty                  >= 0.11   && < 1.3
                     , tasty-hunit            >= 0.10   && < 0.11
                     , tasty-expected-failure >= 0.11   && < 0.12
                     , hedgehog               >= 0.6    && < 0.7
                     , hedgehog-fn            >= 0.6    && < 0.7
                     , tasty-hedgehog         >= 0.2    && < 0.3
                     , lens                   >= 4.15   && < 4.18
                     , 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.4    && < 0.5
                     , attoparsec             >= 0.13   && < 0.15
                     , scientific             >= 0.3    && < 0.4
                     , tagged                 >= 0.8.5  && < 0.9
                     , mtl                    >= 2.2.2  && < 2.3
                     , semigroupoids          >= 5.2.2  && < 5.6
                     , containers             >= 0.5.6  && < 0.7
                     , natural                >= 0.3    && < 0.4
                     , contravariant          >= 1.4    && < 1.6

                     , waargonaut

  ghc-options:         -Wall

  default-language:    Haskell2010