packages feed

kindly-functors-0.2.0.0: kindly-functors.cabal

cabal-version:   3.4
name:            kindly-functors
category:        Control, Categories
version:         0.2.0.0
synopsis:        A category polymorphic `Functor` typeclass
description:     A category polymorphic `Functor` typeclass.
homepage:        https://www.github.com/solomon-b/kindly-functors
license:         MIT
license-file:    LICENSE
author:          Solomon Bothwell
maintainer:      ssbothwell@gmail.com
-- copyright:
build-type:      Simple
extra-doc-files: CHANGELOG.md
                 README.md
                 .gitignore
tested-with:     GHC == 9.0.2,
                 GHC == 9.2.8,
                 GHC == 9.4.8,
                 GHC == 9.6.7,
                 GHC == 9.8.4,
                 GHC == 9.10.3,
                 GHC == 9.12.4,

source-repository head
    type:     git
    location: https://github.com/solomon-b/kindly-functors.git

--------------------------------------------------------------------------------

common warnings
    ghc-options: -Wall

--------------------------------------------------------------------------------

common common-extensions
  default-extensions:
    ConstraintKinds
    DataKinds
    DerivingVia
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    GADTs
    GeneralizedNewtypeDeriving
    ImportQualifiedPost
    InstanceSigs
    LambdaCase
    MultiParamTypeClasses
    NoImplicitPrelude
    PolyKinds
    QuantifiedConstraints
    RankNTypes
    RecordWildCards
    ScopedTypeVariables
    StandaloneDeriving
    StandaloneKindSignatures
    TypeApplications
    TypeFamilies
    TypeOperators
    UndecidableInstances

--------------------------------------------------------------------------------

library
    import:           common-extensions, warnings
    exposed-modules:
      Kindly
      Kindly.Class
      Kindly.Bifunctor
      Kindly.Functor
      Kindly.Rank2
      Kindly.Trifunctor
    build-depends:
      base >= 4 && < 5,
      bifunctors                    >= 5.6 && < 5.7,
      containers                    >= 0.6 && < 0.9,
      kind-generics                 >= 0.5 && < 0.6,
      kind-generics-th              >= 0.2.3 && < 0.3,
      mtl                           >= 2.2.2 && < 2.4,
      profunctors                   >= 5.6.2 && < 5.7,
      semigroupoids                 >= 6.0.0 && < 6.1,
      tagged                        >= 0.8 && < 0.9,
      these                         >= 1.2 && < 1.3,
      transformers                  >= 0.5.6 && < 0.7,
      witherable                    >= 0.4.2 && < 0.6,
    hs-source-dirs:   src
    default-language: Haskell2010

--------------------------------------------------------------------------------

library laws
    import:           common-extensions, warnings
    visibility:       public
    hs-source-dirs:   laws
    exposed-modules:
      Kindly.Functor.Laws
      Kindly.Rank2.Laws
    build-depends:
      base >= 4 && < 5,
      kindly-functors,
      semigroupoids                 >= 6.0.0 && < 6.1,
      hedgehog                      >= 1.4 && < 1.6,
      hedgehog-classes              >= 0.2 && < 0.3,
    default-language: Haskell2010

--------------------------------------------------------------------------------

test-suite kindly-functors-test
    import:           warnings
    default-language: Haskell2010
    other-modules:    GenericSpec
                      LawsSpec
                      Rank2LawsSpec
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Main.hs
    build-depends:
        base >= 4 && < 5,
        bifunctors                    >= 5.6 && < 5.7,
        containers                    >= 0.6 && < 0.9,
        hspec,
        hedgehog                      >= 1.4 && < 1.6,
        hedgehog-classes              >= 0.2 && < 0.3,
        kind-generics                 >= 0.5 && < 0.6,
        kind-generics-th              >= 0.2.3 && < 0.3,
        kindly-functors,
        kindly-functors:laws,
        profunctors                   >= 5.6.2 && < 5.7,
        semigroupoids                 >= 6.0.0 && < 6.1,
        tagged                        >= 0.8 && < 0.9,
        these                         >= 1.2 && < 1.3,
        transformers                  >= 0.5.6 && < 0.7