packages feed

data-effects-th-0.4.0.1: data-effects-th.cabal

cabal-version:      3.0
name:               data-effects-th
version:            0.4.0.1

-- A short (one-line) description of the package.
synopsis: Template Haskell utilities for the data-effects library.

-- A longer description of the package.
description:
    TemplateHaskell functions for deriving effect invocation
    functions, [HFunctor](https://hackage.haskell.org/package/data-effects-core-0.1.0.0/docs/Data-Effect-HFunctor.html#t:HFunctor)
    instances, and more from the definition of effects
    with [data-effects](https://hackage.haskell.org/package/data-effects)-based GADT representations.

-- A URL where users can report bugs.
bug-reports: https://github.com/sayo-hs/data-effects

-- The license under which the package is released.
license:            MPL-2.0
license-file:       LICENSE
author:             Sayo contributors <ymdfield@outlook.jp>
maintainer:         ymdfield <ymdfield@outlook.jp>

-- A copyright notice.
copyright:
    2023-2025 Sayo contributors,
    2020 Michael Szvetits,
    2010-2011 Patrick Bahr

category: Control, Effect, Template Haskell

extra-doc-files:
    ChangeLog.md
    NOTICE
    README.md

tested-with: GHC == {9.2.8, 9.4.8, 9.6.7, 9.8.4, 9.10.1, 9.12.2}

common warnings
    ghc-options: -Wall -Wredundant-constraints

source-repository head
    type: git
    location: https://github.com/sayo-hs/data-effects
    tag: v0.4.0
    subdir: data-effects-th

library
    import: warnings

    exposed-modules:
        Data.Effect.HFunctor.TH
        Data.Effect.HFunctor.TH.Internal
        Data.Effect.TH.Internal
        Data.Effect.TH

    -- Modules included in this executable, other than Main.
    -- other-modules:

    -- LANGUAGE extensions used by modules in this package.
    -- other-extensions:
    build-depends:
        base                    >= 4.16.4 && < 4.22,
        data-effects-core       ^>= 0.4,
        template-haskell        >= 2.18 && < 2.24,
        th-abstraction          >= 0.6 && < 0.8,
        lens                    >= 5.2.3 && < 5.4,
        mtl                     >= 2.3 && < 2.4,
        extra                   >= 1.7.14 && < 1.9,
        containers              >= 0.6.5 && < 0.8,
        either                  ^>= 5.0.2,
        text                    >= 2.0 && < 2.2,
        data-default            >= 0.7.1 && < 0.9,
        infinite-list           ^>= 0.1.1,
        formatting              ^>= 7.2.0,

    hs-source-dirs:   src
    ghc-options:      -Wall
    default-language: GHC2021

    default-extensions:
        LambdaCase,
        DerivingStrategies,
        DataKinds,
        TypeFamilies,
        BlockArguments,
        FunctionalDependencies,
        RecordWildCards,
        DefaultSignatures,
        PatternSynonyms


test-suite Example
    import: warnings

    other-modules:
        Example

    main-is: Driver.hs
    hs-source-dirs: Example
    build-depends:
        data-effects-th,
        base,
        data-effects-core,
        tasty       >= 1.4 && < 1.6,
        tasty-hunit ^>= 0.10,
        data-default,
        infinite-list,

    type: exitcode-stdio-1.0

    build-tool-depends:
        tasty-discover:tasty-discover

    default-language: GHC2021
    ghc-options:      -Wall

    default-extensions:
        LambdaCase,
        DerivingStrategies,
        DataKinds,
        TypeFamilies,
        BlockArguments,
        FunctionalDependencies,
        RecordWildCards,
        DefaultSignatures