packages feed

http-io-streams-0.1.1.0: http-io-streams.cabal

cabal-version:       2.2
name:                http-io-streams
version:             0.1.1.0

synopsis:            HTTP client based on io-streams
description:
  An HTTP client, using the Snap Framework's [io-streams](https://hackage.haskell.org/package/io-streams) library to
  handle the streaming IO. The @http-io-streams@ API designed for ease of use when querying web services and dealing with the result as streaming I/O.
  .
  The library is exported in a single module; see "Network.Http.Client"
  for full documentation.
  .
  __NOTE__: This is a fork of [http-streams](http://hackage.haskell.org/package/http-streams)
  with a lighter dependency footprint which focuses on core HTTP
  functionality and as a consequence doesn't include out-of-the-box
  support for handling JSON data. If you need support for handling JSON
  web-services, you should use the original @http-streams@ package instead of
  this package.

license:             BSD-3-Clause
license-file:        LICENCE
author:              Andrew Cowie <andrew@operationaldynamics.com>
maintainer:          Herbert Valerio Riedel <hvr@gnu.org>
copyright:           © 2012-2018 Operational Dynamics Consulting, Pty Ltd and Others
category:            Web, IO-Streams
bug-reports:         https://github.com/hvr/http-io-streams/issues
extra-source-files:  CHANGELOG.md

source-repository    head
  type:              git
  location:          https://github.com/hvr/http-io-streams.git

flag brotli
  manual:  True
  default: True
  description: Build with support for <http://brotli.org Brotli> (<https://tools.ietf.org/html/rfc7932 RFC7932>) compression algorithm for <https://en.wikipedia.org/wiki/HTTP_compression HTTP compression>.

common settings
  build-depends:
    , base                 >= 4.5 && < 4.14
    , blaze-builder       ^>= 0.4.1.0
    , bytestring          ^>= 0.10.0.0
    , case-insensitive    ^>= 1.2.0.11
    , containers          ^>= 0.5.0.0 || ^>= 0.6.0.1

  default-language:  Haskell2010

  ghc-options:
    -Wall
    -fno-warn-missing-signatures
    -fno-warn-unused-binds
    -fno-warn-unused-do-bind
    -funbox-strict-fields

library
  import: settings

  -- http-streams
  if flag(brotli)
    build-depends:
      brotli-streams      ^>= 0.0.0.0

  build-depends:
    , HsOpenSSL           ^>= 0.11.2
    , attoparsec          ^>= 0.13.2.2
    , directory           ^>= 1.2.0.1 || ^>= 1.3.0.0
    , io-streams          ^>= 1.5.0.1
    , network             ^>= 2.6.0.0 || ^>= 2.7.0.0 || ^>= 2.8.0.0 || ^>= 3.0.0.0 || ^>= 3.1.0.0
    , network-uri         ^>= 2.6.0.0
    , openssl-streams     ^>= 1.2.1.3
    , text                ^>= 1.2.3.0
    , transformers        ^>= 0.3.0.0 || ^>= 0.4.2.0 || ^>= 0.5.2.0

  hs-source-dirs: http-streams/lib
  exposed-modules:
    Network.Http.Client
  other-modules:
    Network.Http.Connection
    Network.Http.ResponseParser
    Network.Http.Utilities
    Network.Http.Inconvenience

  -- http-common

  build-depends:
    , base64-bytestring   ^>= 1.0.0.1
    , mtl                 ^>= 2.2.2

  hs-source-dirs: http-common/lib
  other-modules:
    Network.Http.Types
    Network.Http.RequestBuilder,
    Network.Http.Internal