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

name:                jwt
version:             0.8.1
synopsis:            JSON Web Token (JWT) decoding and encoding
license:             MIT
license-file:        LICENSE
author:              Brian McKenna
maintainer:          brian@brianmckenna.org
homepage:            https://bitbucket.org/ssaasen/haskell-jwt
bug-reports:         https://bitbucket.org/ssaasen/haskell-jwt/issues
category:            Web
build-type:          Simple
cabal-version:       >=1.16
description:

    JSON Web Token (JWT) is a compact URL-safe means of representing claims to be transferred between two parties.
    .
    To get started, see the documentation for the "Web.JWT" module.

extra-source-files:
    CHANGELOG.md
    README.md
    stack.yaml
    tests/jwt.secret.1

source-repository head
    type: git
    location: https://ssaasen@bitbucket.org/ssaasen/haskell-jwt.git

library
  exposed-modules:     Web.JWT
  other-modules:       Data.Text.Extended, Data.ByteString.Extended
  build-depends:       base >= 4.6 && < 5
                     , cryptonite               >= 0.6
                     , memory                   >= 0.8
                     , bytestring               >= 0.10
                     , text                     >= 0.11
                     , aeson                    >= 0.7
                     , containers               >= 0.5
                     , unordered-containers     >= 0.2
                     , scientific               >= 0.2
                     , http-types               >= 0.8
                     , time                     >= 1.1
                     , vector                   >= 0.7.1
                     , semigroups               >= 0.15.4
                     , network-uri
                     , x509
                     , x509-store

  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options:        -Wall
                      --Werror
                      -fno-warn-unused-do-bind
                      -fno-warn-orphans
                      -fno-warn-name-shadowing

test-suite testsuite
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  main-is:             TestRunner.hs
  -- Make sure the tests are listed here so that they will be part of the source distribution
  other-modules:       Web.JWT
                     , Web.JWTInteropTests
                     , Web.JWTTests
                     , Web.JWTTestsCompat
                     , Data.Text.Extended
                     , Data.Text.ExtendedTests
                     , Data.ByteString.Extended
                     , Data.ByteString.ExtendedTests
  hs-source-dirs:      tests/src, src
  build-depends:       base < 5 && >= 4.4
                     , tasty >= 0.7
                     , tasty-th >= 0.1
                     , tasty-hunit >= 0.4
                     , tasty-quickcheck >= 0.3
                     , lens-aeson
                     , lens
                     , HUnit
                     , QuickCheck >= 2.4.0.1
                     , cryptonite
                     , memory
                     , bytestring               >= 0.10
                     , text                     >= 0.11
                     , aeson
                     , scientific               >= 0.2
                     , containers
                     , unordered-containers
                     , http-types
                     , time                     >= 1.1
                     , vector                   >= 0.7.1
                     , semigroups               >= 0.15.4
                     , network-uri
                     , x509
                     , x509-store

  cpp-options: -DTEST

test-suite doctests
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  main-is:             doctests.hs
  ghc-options:         -threaded
  build-depends:       base < 5 && >= 4.4
                     , jwt
                     , doctest     >= 0.9.11