summaryrefslogtreecommitdiff
path: root/http-client.cabal
blob: 0b8cf3643ba54990a3067987aa3a04390fef3aac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
name:                http-client
version:             0.7.3
synopsis:            An HTTP client engine
description:         Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/http-client>.
homepage:            https://github.com/snoyberg/http-client
license:             MIT
license-file:        LICENSE
author:              Michael Snoyman
maintainer:          michael@snoyman.com
category:            Network
build-type:          Simple
extra-source-files:  README.md ChangeLog.md
cabal-version:       >=1.10

flag network-uri
   description: Get Network.URI from the network-uri package
   default: True

library
  hs-source-dirs:      ., publicsuffixlist
  exposed-modules:     Network.HTTP.Client
                       Network.HTTP.Client.MultipartFormData
                       Network.HTTP.Client.Internal
  other-modules:       Network.HTTP.Client.Body
                       Network.HTTP.Client.Connection
                       Network.HTTP.Client.Cookies
                       Network.HTTP.Client.Core
                       Network.HTTP.Client.Headers
                       Network.HTTP.Client.Manager
                       Network.HTTP.Client.Request
                       Network.HTTP.Client.Response
                       Network.HTTP.Client.Types
                       Network.HTTP.Client.Util
                       Network.HTTP.Proxy
                       Network.PublicSuffixList.Lookup
                       Network.PublicSuffixList.Types
                       Network.PublicSuffixList.Serialize
                       Network.PublicSuffixList.DataStructure
                       Data.KeyedPool
  build-depends:       base              >= 4.10   && < 5
                     , bytestring        >= 0.10
                     , text              >= 0.11
                     , http-types        >= 0.8
                     , blaze-builder     >= 0.3
                     , time              >= 1.2
                     , network           >= 2.4
                     , streaming-commons >= 0.1.0.2 && < 0.3
                     , containers        >= 0.5
                     , transformers
                     , deepseq           >= 1.3    && <1.5
                     , case-insensitive  >= 1.0
                     , memory            >= 0.7
                     , cookie
                     , exceptions        >= 0.4
                     , array
                     , random
                     , filepath
                     , mime-types
                     , ghc-prim
                     , stm               >= 2.3
  if flag(network-uri)
    build-depends: network >= 2.6, network-uri >= 2.6
  else
    build-depends: network < 2.6

  if !impl(ghc>=8.0)
    build-depends: semigroups >= 0.16.1

  -- See build failure at https://travis-ci.org/snoyberg/http-client/jobs/359573631
  if impl(ghc < 7.10)
    -- Disable building with GHC before 8.0.2.
    -- Due to a cabal bug, do not use buildable: False,
    -- but instead give it an impossible constraint.
    -- See: https://github.com/haskell-infra/hackage-trustees/issues/165
    build-depends: unsupported-ghc-version > 1 && < 1


  if os(mingw32)
    build-depends: Win32, safe

  default-language:    Haskell2010

test-suite spec
  main-is:             Spec.hs
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  default-language:    Haskell2010
  other-modules:       Network.HTTP.ClientSpec
  build-depends:       base
                     , http-client
                     , hspec
                     , monad-control
                     , bytestring
                     , text
                     , http-types
                     , blaze-builder
                     , time
                     , network
                     , containers
                     , transformers
                     , deepseq
                     , case-insensitive
                     , zlib
                     , async
                     , streaming-commons >= 0.1.1


test-suite spec-nonet
  main-is:             Spec.hs
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test-nonet
  default-language:    Haskell2010
  ghc-options:         -threaded
  if os(windows)
    cpp-options:       -DWINDOWS
  other-modules:       Network.HTTP.ClientSpec
                       Network.HTTP.Client.ResponseSpec
                       Network.HTTP.Client.BodySpec
                       Network.HTTP.Client.HeadersSpec
                       Network.HTTP.Client.RequestSpec
                       Network.HTTP.Client.RequestBodySpec
                       Network.HTTP.Client.CookieSpec
  build-depends:       base
                     , http-client
                     , hspec
                     , monad-control
                     , bytestring
                     , cookie
                     , text
                     , http-types
                     , blaze-builder
                     , time
                     , network
                     , network-uri
                     , containers
                     , transformers
                     , deepseq
                     , case-insensitive
                     , zlib
                     , async
                     , streaming-commons >= 0.1.1
                     , directory