packages feed

effable-0.3.1.1: effable.cabal

cabal-version: 3.0

name:           effable
version:        0.3.1.1
stability:      experimental
category:       Data
synopsis:       A data structure for emission plans
homepage:       https://github.com/carlwr/effable#readme
bug-reports:    https://github.com/carlwr/effable/issues
author:         Carl W
maintainer:     Carl W
copyright:      Carl W
license:        MIT
license-file:   LICENSE
build-type:     Simple
tested-with:
    GHC == 9.14.1
    GHC == 9.12.2
    GHC == 9.10.2
    GHC == 9.8.4
    GHC == 9.6.7
    GHC == 9.4.8
extra-doc-files:
    README.md
description:
    A pure, composable representation of planned emissions into an effectful context, supporting deferred wrapping and conditional inclusion.

source-repository head
  type: git
  location: https://github.com/carlwr/effable

flag doctest
  description: enable doctests
  default: False
  manual: True

flag isDev
  description: development conveniences
  default: False
  manual: True

common defaults
  ghc-options:
      -Wall
      -Wcompat
      -Widentities
      -Wincomplete-record-updates
      -Wincomplete-uni-patterns
      -Wredundant-constraints
      -Wno-type-defaults
      -Wno-partial-type-signatures
      -Wnoncanonical-monad-instances
      -Wpartial-fields
      -Winvalid-haddock
      -Wredundant-bang-patterns
      -Wredundant-strictness-flags
  if impl(ghc >= 9.8)
    ghc-options:
      -Winconsistent-flags
  if flag(isDev)
    ghc-options:
      -fwrite-ide-info
      -freverse-errors
      -fshow-hole-matches-of-hole-fits
      -fhide-source-paths
      -dsuppress-module-prefixes
  default-language: GHC2021
  default-extensions:
      PartialTypeSignatures
      UnicodeSyntax
      LambdaCase
      RecordWildCards
      ViewPatterns
      MultiWayIf
  build-depends:
    , base >= 4.17 && < 5

library
  import:
    , defaults
  hs-source-dirs:  src
  autogen-modules: Paths_effable
  other-modules:   Paths_effable
  exposed-modules: Data.Effable

test-suite doctest
  import:
    , defaults
  -- no solution for 9.14 due to doctest-parallell
  -- (forcing with --alow-newer causes compilation error)
  if !flag(doctest) || impl(ghc >= 9.14)
      buildable: False
  hs-source-dirs:  test/doctests
  type:            exitcode-stdio-1.0
  main-is:         doctests.hs
  ghc-options:
      -threaded
  build-depends:
    , effable
    , doctest-parallel >= 0.3 && < 1.0