slack-web-1.6.0.0: slack-web.cabal
cabal-version: 2.2
name: slack-web
version: 1.6.0.0
build-type: Simple
license: MIT
license-file: LICENSE.md
copyright: 2017 Juan Pedro Villa Isaza, 2022 Mercury Technologies, Inc
author: Juan Pedro Villa Isaza <jpvillaisaza@gmail.com>, Jade Lovelace <jadel@mercury.com>, Dennis Hennen <dennis@mercury.com>
maintainer: Jade Lovelace <jadel@mercury.com>
homepage: https://github.com/MercuryTechnologies/slack-web
bug-reports: https://github.com/MercuryTechnologies/slack-web/issues
synopsis: Bindings for the Slack web API
description: Haskell bindings for the Slack web API.
extra-source-files:
tests/golden/SlackWebhookEvent/*.json
tests/golden/SlackWebhookEvent/*.golden
tests/golden/Conversation/*.json
tests/golden/Conversation/*.golden
tests/golden/UsersConversationsResponse/*.json
tests/golden/UsersConversationsResponse/*.golden
tests/golden/UpdateRsp/*.json
tests/golden/UpdateRsp/*.golden
tests/golden/BlockKitBuilderMessage/*.golden.json
tests/golden/FileObject/*.json
tests/golden/FileObject/*.golden
category: Web
tested-with: GHC == 8.10.7 || ==9.2.4 || == 9.4.2
extra-source-files:
CHANGELOG.md
README.md
common build-opts
ghc-options:
-Weverything
-- missing-exported-signatures turns off the more strict -Wmissing-signatures. See https://ghc.haskell.org/trac/ghc/ticket/14794#ticket
-Wno-missing-exported-signatures
-- Requires explicit export lists for every module, a pain for large modules
-Wno-missing-export-lists
-- Requires explicit imports of _every_ function (e.g. '$'); too strict
-Wno-missing-import-lists
-- When GHC can't specialize a polymorphic function. No big deal and requires fixing underlying libraries to solve.
-Wno-missed-specialisations
-- See missed-specialisations
-Wno-all-missed-specialisations
-- Don't use Safe Haskell warnings
-Wno-unsafe
-- Warning for polymorphic local bindings. Don't think this is an issue
-Wno-missing-local-signatures
-- Don't warn if the monomorphism restriction is used
-Wno-monomorphism-restriction
-- Cabal isn’t setting this currently (introduced in GHC 8.10)
-Wno-missing-safe-haskell-mode
-- Cabal’s generate Path_*.hs doesn’t do this (fixed in https://github.com/haskell/cabal/pull/7352)
-Wno-prepositive-qualified-module
-- Some tooling gives this error
-Wno-unused-packages
-- Warns on every single data declaration
-Wno-missing-kind-signatures
default-extensions:
AllowAmbiguousTypes
ApplicativeDo
BlockArguments
DataKinds
DeriveAnyClass
DeriveFoldable
DeriveFunctor
DeriveGeneric
DeriveTraversable
DerivingVia
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
ImportQualifiedPost
InstanceSigs
LambdaCase
MonoLocalBinds
MultiWayIf
NamedFieldPuns
NumericUnderscores
NoImplicitPrelude
OverloadedStrings
PatternSynonyms
PolyKinds
RankNTypes
RecordWildCards
RecursiveDo
ScopedTypeVariables
StandaloneDeriving
StandaloneKindSignatures
TypeApplications
TypeFamilies
ViewPatterns
library
import: build-opts
hs-source-dirs:
src
exposed-modules:
Web.Slack
Web.Slack.Api
Web.Slack.Auth
Web.Slack.Chat
Web.Slack.Classy
Web.Slack.Common
Web.Slack.Conversation
Web.Slack.Files.Types
Web.Slack.Internal
Web.Slack.MessageParser
Web.Slack.Pager
Web.Slack.Pager.Types
Web.Slack.Types
Web.Slack.User
Web.Slack.UsersConversations
Web.Slack.Experimental.Blocks
Web.Slack.Experimental.Blocks.Types
Web.Slack.Experimental.Events.Types
Web.Slack.Experimental.RequestVerification
other-modules:
Web.Slack.Util
Web.Slack.Prelude
Web.Slack.AesonUtils
build-depends:
aeson >= 2.0 && < 2.2
, base >= 4.11 && < 4.18
, base16-bytestring
, bytestring
, classy-prelude
, containers
, cryptonite
, data-default-class
, deepseq
, either
, errors
, hashable
, http-api-data >= 0.3 && < 0.6
, http-client >= 0.5 && < 0.8
, http-client-tls >= 0.3 && < 0.4
, megaparsec >= 5.0 && < 10
, mono-traversable
, mtl
, refined
, scientific
, servant >= 0.16 && < 0.20
, servant-client >= 0.16 && < 0.20
, servant-client-core >= 0.16 && < 0.20
, string-conversions
, string-variants >= 0.1.0.1
, text (>= 1.2 && < 1.3) || (>= 2.0 && < 2.1)
, time
, transformers
, unordered-containers
, vector
default-language:
Haskell2010
ghc-options:
-Wall
test-suite tests
import: build-opts
main-is:
Spec.hs
hs-source-dirs:
tests
type:
exitcode-stdio-1.0
other-modules:
JSONGolden
Web.Slack.PagerSpec
Web.Slack.MessageParserSpec
Web.Slack.ConversationSpec
Web.Slack.ChatSpec
Web.Slack.Files.TypesSpec
Web.Slack.UsersConversationsSpec
Web.Slack.Experimental.RequestVerificationSpec
Web.Slack.Experimental.Events.TypesSpec
Web.Slack.Experimental.BlocksSpec
TestImport
build-tool-depends:
hspec-discover:hspec-discover >=2.6.0 && <2.11
build-depends:
base
, QuickCheck
, aeson
, aeson-pretty
, bytestring
, classy-prelude
, fakepull
, hspec
, hspec-core
, hspec-golden
, mtl
, pretty-simple ^>= 4.1
, quickcheck-instances
, slack-web
, string-conversions
, string-variants
, template-haskell
, text
, th-compat
, time
default-language:
Haskell2010
ghc-options:
-Wall
flag cli
description: Build a CLI client for testing.
default: False
manual: True
executable slack-web-cli
import: build-opts
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 ^>= 4.1
, text
, time
, servant-client-core
default-language:
Haskell2010
source-repository head
type: git
location: https://github.com/MercuryTechnologies/slack-web