packages feed

freckle-app-1.18.2.0: freckle-app.cabal

cabal-version:      1.18
name:               freckle-app
version:            1.18.2.0
license:            MIT
license-file:       LICENSE
maintainer:         Freckle Education
homepage:           https://github.com/freckle/freckle-app#readme
bug-reports:        https://github.com/freckle/freckle-app/issues
synopsis:           Haskell application toolkit used at Freckle
description:        Please see README.md
category:           Utils
build-type:         Simple
extra-source-files: package.yaml
extra-doc-files:
    README.md
    CHANGELOG.md

source-repository head
    type:     git
    location: https://github.com/freckle/freckle-app

library
    exposed-modules:
        Freckle.App
        Freckle.App.Async
        Freckle.App.Bugsnag
        Freckle.App.Bugsnag.HttpException
        Freckle.App.Bugsnag.MetaData
        Freckle.App.Bugsnag.SqlError
        Freckle.App.Csv
        Freckle.App.Database
        Freckle.App.Dotenv
        Freckle.App.Ecs
        Freckle.App.Env
        Freckle.App.Exception
        Freckle.App.Exception.MonadThrow
        Freckle.App.Exception.MonadUnliftIO
        Freckle.App.Exception.Types
        Freckle.App.Faktory.ProducerPool
        Freckle.App.Ghci
        Freckle.App.GlobalCache
        Freckle.App.Http
        Freckle.App.Http.Cache
        Freckle.App.Http.Cache.Gzip
        Freckle.App.Http.Cache.Memcached
        Freckle.App.Http.Cache.State
        Freckle.App.Http.Header
        Freckle.App.Http.Paginate
        Freckle.App.Http.Retry
        Freckle.App.Json.Empty
        Freckle.App.Kafka
        Freckle.App.Kafka.Consumer
        Freckle.App.Kafka.Producer
        Freckle.App.Memcached
        Freckle.App.Memcached.CacheKey
        Freckle.App.Memcached.CacheTTL
        Freckle.App.Memcached.Client
        Freckle.App.Memcached.MD5
        Freckle.App.Memcached.Servers
        Freckle.App.OpenTelemetry
        Freckle.App.OpenTelemetry.Context
        Freckle.App.OpenTelemetry.Http
        Freckle.App.OpenTelemetry.ThreadContext
        Freckle.App.Prelude
        Freckle.App.Random
        Freckle.App.Scientist
        Freckle.App.Stats
        Freckle.App.Stats.Rts
        Freckle.App.Test
        Freckle.App.Test.DocTest
        Freckle.App.Test.Hspec.Runner
        Freckle.App.Test.Http
        Freckle.App.Test.Http.MatchRequest
        Freckle.App.Test.Properties.JSON
        Freckle.App.Test.Properties.PathPiece
        Freckle.App.Test.Properties.PersistValue
        Freckle.App.Test.Yesod
        Freckle.App.Wai
        Freckle.App.Yesod
        Freckle.App.Yesod.Routes
        Network.Wai.Middleware.Cors
        Network.Wai.Middleware.Stats
        Yesod.Core.Lens

    hs-source-dirs:     library
    other-modules:      Paths_freckle_app
    default-language:   GHC2021
    default-extensions:
        DataKinds DeriveAnyClass DerivingVia DerivingStrategies GADTs
        LambdaCase NoImplicitPrelude NoMonomorphismRestriction
        OverloadedStrings RecordWildCards TypeFamilies

    ghc-options:
        -fignore-optim-changes -fwrite-ide-info -Weverything
        -Wno-all-missed-specialisations -Wno-missing-exported-signatures
        -Wno-missing-import-lists -Wno-missing-kind-signatures
        -Wno-missing-local-signatures -Wno-missing-safe-haskell-mode
        -Wno-monomorphism-restriction -Wno-prepositive-qualified-module
        -Wno-safe -Wno-unsafe

    build-depends:
        Blammo >=2.0.0.0,
        Blammo-wai >=0.0.0.0,
        Glob >=0.10.2,
        MonadRandom >=0.5.3,
        QuickCheck >=2.14.3,
        aeson >=2.0.3.0,
        annotated-exception >=0.2.0.4,
        autodocodec >=0.2.0.3,
        autodocodec-openapi3 >=0.2.1.1,
        base >=4.16.4.0 && <5,
        bcp47 >=0.2.0.6,
        bugsnag >=1.1.0.0,
        bytestring >=0.11.4.0,
        case-insensitive >=1.2.1.0,
        cassava >=0.5.3.0,
        conduit >=1.3.5,
        conduit-extra >=1.3.6,
        containers >=0.6.5.1,
        cookie >=0.4.6,
        datadog >=0.3.0.0,
        directory >=1.3.6.2,
        doctest >=0.20.1,
        dotenv >=0.10.0.0,
        ekg-core >=0.1.1.7,
        envparse >=0.5.0,
        errors >=2.3.0,
        exceptions >=0.10.4,
        extra >=1.7.13,
        faktory >=1.1.2.4,
        filepath >=1.4.2.2,
        hashable >=1.4.2.0,
        hs-opentelemetry-api >=0.1.0.0,
        hs-opentelemetry-instrumentation-persistent >=0.1.0.0,
        hs-opentelemetry-instrumentation-wai >=0.1.0.0,
        hs-opentelemetry-sdk >=0.0.3.6,
        hspec >=2.8.1,
        hspec-core >=2.8.1,
        hspec-expectations-lifted >=0.10.0,
        hspec-junit-formatter >=1.1.1.0,
        http-client >=0.7.13.1,
        http-conduit >=2.3.5,
        http-link-header >=1.2.1,
        http-types >=0.12.3,
        hw-kafka-client >=5.0.0,
        immortal >=0.3,
        lens >=5.1.1,
        memcache >=0.3.0.1,
        monad-control >=1.0.3.1,
        monad-logger >=0.3.40,
        monad-logger-aeson >=0.4.0.4,
        monad-validate >=1.3.0.0,
        mtl >=2.2.2,
        network-uri >=2.6.4.2,
        nonempty-containers >=0.3.4.4,
        openapi3 >=3.2.3,
        path-pieces >=0.2.1,
        persistent >=2.13.3.5,
        persistent-postgresql >=2.13.5.2,
        postgresql-simple >=0.6.4,
        primitive >=0.7.3.0,
        pureMD5 >=2.1.4,
        resource-pool >=0.4.0.0,
        resourcet >=1.2.6,
        retry >=0.8.1.0,
        safe >=0.3.19,
        scientist >=0.0.0.0,
        semigroupoids >=5.3.7,
        serialise >=0.2.6.0,
        template-haskell >=2.18.0.0,
        text >=1.2.5.0,
        time >=1.11.1.1,
        transformers >=0.5.6.2,
        transformers-base >=0.4.6,
        typed-process >=0.2.11.0,
        unliftio >=0.2.25.0,
        unordered-containers >=0.2.19.1,
        vector >=0.12.3.1,
        wai >=3.2.3,
        wai-extra >=3.1.13.0,
        yaml >=0.11.11.1,
        yesod-core >=1.6.24.2,
        yesod-test >=1.6.15

    if impl(ghc >=9.8)
        ghc-options:
            -Wno-missing-role-annotations -Wno-missing-poly-kind-signatures

test-suite doctest
    type:               exitcode-stdio-1.0
    main-is:            Main.hs
    hs-source-dirs:     doctest
    other-modules:      Paths_freckle_app
    default-language:   GHC2021
    default-extensions:
        DataKinds DeriveAnyClass DerivingVia DerivingStrategies GADTs
        LambdaCase NoImplicitPrelude NoMonomorphismRestriction
        OverloadedStrings RecordWildCards TypeFamilies

    ghc-options:
        -fignore-optim-changes -fwrite-ide-info -Weverything
        -Wno-all-missed-specialisations -Wno-missing-exported-signatures
        -Wno-missing-import-lists -Wno-missing-kind-signatures
        -Wno-missing-local-signatures -Wno-missing-safe-haskell-mode
        -Wno-monomorphism-restriction -Wno-prepositive-qualified-module
        -Wno-safe -Wno-unsafe

    build-depends:
        base >=4.16.4.0 && <5,
        freckle-app

    if impl(ghc >=9.8)
        ghc-options:
            -Wno-missing-role-annotations -Wno-missing-poly-kind-signatures

test-suite spec
    type:               exitcode-stdio-1.0
    main-is:            Main.hs
    hs-source-dirs:     tests
    other-modules:
        Freckle.App.AsyncSpec
        Freckle.App.Bugsnag.MetaDataSpec
        Freckle.App.BugsnagSpec
        Freckle.App.CsvSpec
        Freckle.App.Http.CacheSpec
        Freckle.App.HttpSpec
        Freckle.App.Memcached.ServersSpec
        Freckle.App.MemcachedSpec
        Freckle.App.OpenTelemetry.ContextSpec
        Freckle.App.Test.Http.MatchRequestSpec
        Freckle.App.Test.Properties.JSONSpec
        Freckle.App.Test.Properties.PathPieceSpec
        Freckle.App.Test.Properties.PersistValueSpec
        Freckle.App.WaiSpec
        Spec
        Paths_freckle_app

    default-language:   GHC2021
    default-extensions:
        DataKinds DeriveAnyClass DerivingVia DerivingStrategies GADTs
        LambdaCase NoImplicitPrelude NoMonomorphismRestriction
        OverloadedStrings RecordWildCards TypeFamilies

    ghc-options:
        -fignore-optim-changes -fwrite-ide-info -Weverything
        -Wno-all-missed-specialisations -Wno-missing-exported-signatures
        -Wno-missing-import-lists -Wno-missing-kind-signatures
        -Wno-missing-local-signatures -Wno-missing-safe-haskell-mode
        -Wno-monomorphism-restriction -Wno-prepositive-qualified-module
        -Wno-safe -Wno-unsafe -threaded -rtsopts -with-rtsopts=-N

    build-depends:
        Blammo >=2.0.0.0,
        QuickCheck >=2.14.3,
        aeson >=2.0.3.0,
        async >=2.2.4,
        base >=4.16.4.0 && <5,
        bugsnag >=1.1.0.0,
        bytestring >=0.11.4.0,
        cassava >=0.5.3.0,
        conduit >=1.3.5,
        errors >=2.3.0,
        freckle-app,
        hs-opentelemetry-api >=0.1.0.0,
        hspec >=2.10.10,
        hspec-expectations-json >=1.0.0.7,
        hspec-expectations-lifted >=0.10.0,
        http-types >=0.12.3,
        lens >=5.1.1,
        lens-aeson >=1.2.2,
        memcache >=0.3.0.1,
        monad-validate >=1.3.0.0,
        mtl >=2.2.2,
        nonempty-containers >=0.3.4.4,
        postgresql-simple >=0.6.4,
        text >=1.2.5.0,
        time >=1.11.1.1,
        unordered-containers >=0.2.19.1,
        vector >=0.12.3.1,
        wai >=3.2.3,
        wai-extra >=3.1.13.0,
        zlib >=0.6.3.0

    if impl(ghc >=9.8)
        ghc-options:
            -Wno-missing-role-annotations -Wno-missing-poly-kind-signatures