packages feed

data-effects-0.4.1.0: data-effects.cabal

cabal-version:      3.0
name:               data-effects
version:            0.4.1.0

-- A short (one-line) description of the package.
synopsis: A basic framework for effect systems based on effects represented by GADTs.

-- A longer description of the package.
description:
    A basic framework for a Haskell effect system library based on GADTs-based effect representations
    with a style that separates first-order effects and higher-order effects.

    This library set was created by being separated from
    the [Heftia](https://hackage.haskell.org/package/heftia) extensible effects library.

-- 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
category: Control, Effect

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.1.0
    subdir: data-effects

library
    import: warnings

    exposed-modules:
        Data.Effect.Reader
        Data.Effect.Writer
        Data.Effect.State
        Data.Effect.Except
        Data.Effect.Accum
        Data.Effect.Select
        Data.Effect.NonDet
        Data.Effect.Coroutine
        Data.Effect.Input
        Data.Effect.Output
        Data.Effect.Fix
        Data.Effect.Fail
        Data.Effect.Fresh
        Data.Effect.Concurrent.Parallel
        Data.Effect.Concurrent.Timer
        Data.Effect.Unlift
        Data.Effect.Provider
        Data.Effect.CC
        Data.Effect.Shift
        Data.Effect.KVStore
        Data.Effect.Log

    reexported-modules:
        Data.Effect,
        Data.Effect.TH,
        Data.Effect.Tag,
        Data.Effect.HFunctor,
        Data.Effect.HFunctor.HCont,
        Data.Effect.HFunctor.TH,
        Data.Effect.OpenUnion,
        Control.Effect,
        Control.Effect.Interpret,
        Control.Effect.Transform,

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

    -- LANGUAGE extensions used by modules in this package.
    -- other-extensions:
    build-depends:
        base                        >= 4.16.4 && < 4.22,
        data-effects-core           ^>= 0.4,
        data-effects-th             ^>= 0.4,
        these                       ^>= 1.2,
        data-default                >= 0.7.1 && < 0.9,
        text                        >= 2.0 && < 2.2,
        lens                        >= 5.2.3 && < 5.4,
        time                        >= 1.11.1 && < 1.15,
        infinite-list               ^>= 0.1.1,
        unliftio                    ^>= 0.2,
        containers > 0.6.5 && < 0.9,
        co-log-core ^>= 0.3.2,
        unbounded-delays ^>= 0.1.1,
        time >= 1.11.1 && < 1.15,

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

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

test-suite test
    import: warnings

    main-is: Driver.hs
    hs-source-dirs: test
    build-depends:
        data-effects,
        base,
        tasty                         >= 1.4 && < 1.6,
        tasty-hunit                   ^>= 0.10,

    type: exitcode-stdio-1.0

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

    default-language: GHC2021

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