packages feed

fcm-client-0.2.0.0: fcm-client.cabal

cabal-version:       2.4
name:                fcm-client
version:             0.2.0.0
synopsis:            Admin API for Firebase Cloud Messaging
description:         This package provides data type model and functions to call FCM endpoints.
homepage:            https://github.com/holmusk/fcm-client#readme
license:             BSD-3-Clause
license-file:        LICENSE
author:              Andrey Kartashov, Holmusk
maintainer:          Holmusk <tech@holmusk.com>
copyright:           2016-2018 Andrey Kartashov, 2018-2019 Holmusk
category:            Library, JSON, FCM
build-type:          Simple
extra-doc-files:     README.md
                     CHANGELOG.md
tested-with:         GHC == 8.2.2
                     GHC == 8.4.4
                     GHC == 8.6.5

source-repository head
  type:     git
  location: https://github.com/holmusk/fcm-client

common common-options
  build-depends:       base >= 4.10.1.0 && < 4.13

  default-language:    Haskell2010
  ghc-options:         -Wall
                       -Wincomplete-uni-patterns
                       -Wincomplete-record-updates
                       -Wcompat
                       -Widentities
                       -Wredundant-constraints
                       -fhide-source-paths

library
  import:             common-options
  hs-source-dirs:     src
  exposed-modules:    FCMClient
                        FCMClient.JSON.Types
                        FCMClient.Types

  build-depends:      aeson
                    , aeson-casing
                    , bytestring ^>= 0.10
                    , containers
                    , data-default-class
                    , http-client
                    , http-conduit
                    , http-types
                    , lens
                    , scientific
                    , text ^>= 1.2
                    , time

executable fcm-client
  import:             common-options
  hs-source-dirs:     cli
  main-is:            Main.hs
  other-modules:      CliArgs

  build-depends:      aeson
                    , async
                    , data-default-class
                    , bytestring
                    , conduit
                    , conduit-extra
                    , fcm-client
                    , http-client
                    , http-types
                    , lens
                    , resourcet
                    , retry
                    , optparse-applicative
                    , stm-conduit
                    , text
                    , utf8-string

  ghc-options:        -Wall -fwarn-tabs -threaded -O2
  default-language:   Haskell2010

test-suite test
  import:             common-options
  type:               exitcode-stdio-1.0
  hs-source-dirs:     test
  main-is:            Spec.hs

  build-depends:      aeson
                    , containers
                    , data-default-class
                    , fcm-client
                    , HUnit
                    , lens
                    , QuickCheck
                    , test-framework
                    , test-framework-hunit
                    , test-framework-quickcheck2
                    , text

  ghc-options:        -fno-warn-orphans -fno-warn-missing-signatures