cabal-version: >= 2.0
name:           hreq-core
version:        0.1.0.0
synopsis:       Core functionality for Hreq Http client library
description:    Core functionality for Hreq. A type dependent highlevel HTTP client library inspired by servant-client.
category:       Network, Web
homepage:       https://github.com/epicallan/hreq/blob/master/README.md
bug-reports:    https://github.com/epicallan/hreq.git/issues
author:         Lukwago Allan <epicallan.al@gmail>
maintainer:     Lukwago Allan <epicallan.al@gmail>
copyright:      2019 Lukwago Allan
license:        MIT
license-file:   LICENSE.md
extra-doc-files: CHANGELOG.md, README.md
tested-with:
   GHC  ==8.2.2
    ||  ==8.4.4
    ||  ==8.6.5
    ||  ==8.8.1
build-type: Custom

source-repository head
  type: git
  location: https://github.com/epicallan/hreq.git

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

library
  exposed-modules:
      Hreq.Core.Client
    , Hreq.Core.API
    , Hreq.Core.API.Internal
    , Hreq.Core.API.MediaType
    , Hreq.Core.API.Request
    , Hreq.Core.API.Response
    , Hreq.Core.API.TypeLevel
    , Hreq.Core.API.Streaming
    , Hreq.Core.API.Verb
    , Hreq.Core.Client.BaseUrl
    , Hreq.Core.Client.BasicAuth
    , Hreq.Core.Client.Internal
    , Hreq.Core.Client.HasRequest
    , Hreq.Core.Client.HasResponse
    , Hreq.Core.Client.ClientError
    , Hreq.Core.Client.Request
    , Hreq.Core.Client.Response
    , Hreq.Core.Client.RunClient
    , Data.Hlist
    , Data.Singletons

  default-extensions: LambdaCase DeriveGeneric FlexibleInstances FlexibleContexts ScopedTypeVariables TypeApplications TypeOperators MultiParamTypeClasses RecordWildCards TypeApplications TypeFamilies OverloadedStrings GADTs GeneralizedNewtypeDeriving FunctionalDependencies ConstraintKinds RankNTypes PolyKinds DataKinds KindSignatures ViewPatterns UndecidableInstances StrictData
  build-depends:
    base                 >= 4.10.1 && < 5,
    base-compat          >= 0.10.5 && < 0.13,
    aeson                >= 1.4.5 && < 1.5,
    attoparsec           >= 0.13.2.2 && < 0.14,
    bytestring           >= 0.10.8 && < 0.11,
    containers           >= 0.5.7.1 && < 0.7,
    exceptions           >= 0.10.0 && < 0.11,
    http-api-data        >= 0.4.1 && < 0.5,
    http-media           >= 0.8.0 && < 0.9,
    http-types           >= 0.12.3 && < 0.13,
    mtl                  >= 2.2.2 && < 3.0,
    text                 >= 1.2.4 && < 1.3,
    string-conversions   >= 0.4.0 && < 0.5
  ghc-options:
    -Wall
    -Wincomplete-uni-patterns
    -Wincomplete-record-updates
    -Wcompat
    -Widentities
    -Wredundant-constraints
    -fhide-source-paths
    -freverse-errors
    -Wpartial-fields

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

test-suite doctests
  type:             exitcode-stdio-1.0
  main-is:          DocTests.hs
  build-depends:
      base       >= 4.10.1 && < 5
    , doctest    >=0.15 && < 0.17
    , hreq-core

  ghc-options:      -Wall -threaded
  hs-source-dirs:   test
  default-language: Haskell2010