packages feed

fluent-effectful-1.0.0: fluent-effectful.cabal

cabal-version: 3.0
name: fluent-effectful
version: 1.0.0
category: Language
synopsis: Fluent effect for Effectful
description:
  Adaptation of the @<https://hackage.haskell.org/package/fluent fluent>@ library for the @<https://hackage.haskell.org/package/effectful effectful>@ ecosystem.

license: EUPL-1.2
author: IDA
maintainer: IDA
homepage: https://digital-autonomy.institute
bug-reports: https://issues.digital-autonomy.institute
build-type: Simple
extra-doc-files:
  CHANGELOG.md

common common
  default-language: Haskell2010
  ghc-options:
    -Weverything
    -Wno-unsafe
    -Wno-all-missed-specialisations
    -Wno-missing-export-lists
    -Wno-missing-import-lists
    -Wno-missing-kind-signatures
    -Wno-missing-poly-kind-signatures
    -Wno-missing-role-annotations
    -Wno-missing-safe-haskell-mode
    -Wno-name-shadowing

  default-extensions:
    ApplicativeDo
    BlockArguments
    DataKinds
    DefaultSignatures
    DeriveAnyClass
    DeriveGeneric
    DerivingStrategies
    DerivingVia
    ExplicitNamespaces
    FlexibleContexts
    FlexibleInstances
    GADTs
    ImportQualifiedPost
    LambdaCase
    NoImplicitPrelude
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings
    RankNTypes
    RecordWildCards
    RecursiveDo
    ScopedTypeVariables
    TemplateHaskell
    TypeApplications
    TypeFamilies
    TypeOperators
    ViewPatterns

  build-depends:
    base >=4.10 && <5,
    effectful >=2.6 && <2.8,
    text >=2.1 && <2.2,

library
  import: common
  hs-source-dirs: src
  exposed-modules:
    Effectful.Fluent.Multi
    Effectful.Fluent.Single

  build-depends:
    fluent >=1.0 && <1.1,
    unordered-containers >=0.2 && <0.3,

test-suite test
  import: common
  type: exitcode-stdio-1.0
  ghc-options: -threaded
  hs-source-dirs: test
  main-is: Main.hs
  build-tool-depends: hspec-effectful-discover:hspec-effectful-discover
  build-depends:
    fluent-effectful,
    fluent-icu >=1.0 && <1.1,
    hspec-effectful >=1.0 && <1.2,

  other-modules:
    Effectful.Fluent.MultiSpec
    Effectful.Fluent.SingleSpec
    Util