packages feed

slack-web-0.3.0.0: slack-web.cabal

name: slack-web
version: 0.3.0.0

build-type: Simple
cabal-version: 1.20

license: MIT
license-file: LICENSE.md

copyright: 2017 Juan Pedro Villa Isaza
author: Juan Pedro Villa Isaza <jpvillaisaza@gmail.com>
maintainer: Juan Pedro Villa Isaza <jpvillaisaza@gmail.com>

homepage: https://github.com/jpvillaisaza/slack-web
bug-reports: https://github.com/jpvillaisaza/slack-web/issues

synopsis: Bindings for the Slack web API
description: Haskell bindings for the Slack web API.

category: Web

tested-with: GHC == 8.0.2

extra-source-files:
  CHANGELOG.md
  README.md


library
  hs-source-dirs:
      src
  exposed-modules:
      Web.Slack
      Web.Slack.Api
      Web.Slack.Auth
      Web.Slack.Chat
      Web.Slack.Common
      Web.Slack.Conversation
      Web.Slack.MessageParser
      Web.Slack.Types
      Web.Slack.User
      Web.Slack.Pager
  other-modules:
      Web.Slack.Util
  build-depends:
      aeson >= 1.0 && < 1.6
    , base >= 4.11 && < 4.15
    , scientific
    , containers
    , deepseq
    , unordered-containers
    , hashable
    , http-api-data >= 0.3 && < 0.5
    , http-client >= 0.5 && < 0.7
    , http-client-tls >= 0.3 && < 0.4
    , servant >= 0.12 && < 0.19
    , servant-client >= 0.12 && < 0.19
    , servant-client-core >= 0.12 && < 0.19
    , text >= 1.2 && < 1.3
    , transformers
    , mtl
    , time
    , errors
    , megaparsec >= 5.0 && < 10
  default-language:
      Haskell2010
  ghc-options:
      -Wall

-- the test suite doesn't depend on slack-web
-- but rather has the src as an extra source directory.
-- that allows us to refer to non exported modules from tests.
test-suite tests
  main-is:
      Spec.hs
  hs-source-dirs:
      tests
  type:
      exitcode-stdio-1.0
  other-modules:
      Web.Slack.PagerSpec
      Web.Slack.MessageParserSpec
      Web.Slack.ConversationSpec
  build-depends:
      base
    , slack-web
    , aeson
    , fakepull
    , hspec
    , text
    , time
    , QuickCheck
    , quickcheck-instances
  default-language:
    Haskell2010
  ghc-options:
       -Wall

flag cli
  description: Build a CLI client for testing.
  default:     False
  manual:      True

executable slack-web-cli
  if flag(cli)
    buildable: True
  else
    buildable: False
  hs-source-dirs: main
  main-is: cli.hs
  build-depends:
      base
    , slack-web
    , butcher
    , bytestring
    , monad-loops
    , mtl
    , pretty-simple
    , text
    , time
    , servant-client-core
  default-language:
      Haskell2010

source-repository head
  type: git
  location: https://github.com/jpvillaisaza/slack-web