packages feed

text-encode-0.1.0.0: text-encode.cabal

cabal-version:      3.0
name:               text-encode
version:            0.1.0.0
homepage:           https://github.com/friedbrice/text-encode#readme
bug-reports:        https://github.com/friedbrice/text-encode/issues
author:             Daniel Brice
maintainer:         danielbrice@gmail.com
copyright:          Copyright Daniel Brice
license:            BSD-3-Clause
license-file:       LICENSE
build-type:         Simple
category:           Serialization
synopsis:
  Classes and newtypes for deriving uniform textual encodings.

description:
  Classes and newtypes for deriving uniform textual encodings.
  See the Text.Encode module documentation for details and usage examples.

extra-source-files: README.md
tested-with:
  GHC ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4 || ==9.10.2

source-repository head
  type:     git
  location: https://github.com/friedbrice/text-encode

common dialect
  ghc-options:        -Wall
  build-depends:      base >=4.16 && <5
  default-language:   Haskell2010
  default-extensions:
    AllowAmbiguousTypes
    DataKinds
    DerivingVia
    FlexibleContexts
    FlexibleInstances
    ImportQualifiedPost
    KindSignatures
    MultiParamTypeClasses
    ScopedTypeVariables
    TupleSections
    TypeApplications
    UndecidableInstances

common opts-dist
  ghc-options: -O2

common opts-dev
  ghc-options:        -O0 -Wwarn
  default-extensions:
    InstanceSigs
    PartialTypeSignatures

common deps-lib
  build-depends:
    , bytestring  >=0.11 && <0.13
    , casing      >=0.1  && <0.2
    , text        >=1.2  && <2.2

common deps-aeson
  build-depends:
    , aeson       >=2.0  && <2.3
    , bytestring  >=0.11 && <0.13
    , text        >=1.2  && <2.2

common deps-cassava
  build-depends:
    , bytestring  >=0.11 && <0.13
    , cassava     >=0.5  && <0.6
    , text        >=1.2  && <2.2

common deps-http-api-data
  build-depends:
    , bytestring     >=0.11 && <0.13
    , http-api-data  >=0.4  && <0.7
    , http-types     >=0.12 && <0.13
    , text           >=1.2  && <2.2

common deps-persistent
  build-depends:
    , persistent  >=2.13 && <2.18
    , text        >=1.2  && <2.2

common deps-postgresql-simple
  build-depends:
    , postgresql-simple  >=0.6 && <0.8
    , text               >=1.2 && <2.2

common deps-sqlite-simple
  build-depends:
    , sqlite-simple  >=0.4 && <0.5
    , text           >=1.2 && <2.2

common deps-dev

library
  import:          dialect
  import:          opts-dist
  import:          deps-lib
  hs-source-dirs:  src/text-encode

  -- cabal-fmt: expand src/text-encode
  exposed-modules:
    Text.Encode
    Text.Encode.Casing

library text-encode-aeson
  import:          dialect
  import:          opts-dist
  import:          deps-aeson
  visibility:      public
  ghc-options:     -Wno-orphans
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-aeson

  -- cabal-fmt: expand src/text-encode-aeson
  exposed-modules: Text.Encode.Aeson

library text-encode-cassava
  import:          dialect
  import:          opts-dist
  import:          deps-cassava
  visibility:      public
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-cassava

  -- cabal-fmt: expand src/text-encode-cassava
  exposed-modules: Text.Encode.Cassava

library text-encode-http-api-data
  import:          dialect
  import:          opts-dist
  import:          deps-http-api-data
  visibility:      public
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-http-api-data

  -- cabal-fmt: expand src/text-encode-http-api-data
  exposed-modules: Text.Encode.HttpApiData

library text-encode-persistent
  import:          dialect
  import:          opts-dist
  import:          deps-persistent
  visibility:      public
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-persistent

  -- cabal-fmt: expand src/text-encode-persistent
  exposed-modules: Text.Encode.Persistent

library text-encode-postgresql-simple
  import:          dialect
  import:          opts-dist
  import:          deps-postgresql-simple
  visibility:      public
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-postgresql-simple

  -- cabal-fmt: expand src/text-encode-postgresql-simple
  exposed-modules: Text.Encode.PostgresqlSimple

library text-encode-sqlite-simple
  import:          dialect
  import:          opts-dist
  import:          deps-sqlite-simple
  visibility:      public
  ghc-options:     -Wno-orphans
  build-depends:   text-encode
  hs-source-dirs:  src/text-encode-sqlite-simple

  -- cabal-fmt: expand src/text-encode-sqlite-simple
  exposed-modules: Text.Encode.SqliteSimple

test-suite dev
  import:         dialect
  import:         opts-dev
  import:         deps-lib
  import:         deps-aeson
  import:         deps-cassava
  import:         deps-http-api-data
  import:         deps-persistent
  import:         deps-postgresql-simple
  import:         deps-sqlite-simple
  import:         deps-dev
  type:           exitcode-stdio-1.0
  ghc-options:    -Wno-orphans
  main-is:        Main.hs
  hs-source-dirs:
    src/text-encode src/text-encode-aeson src/text-encode-cassava
    src/text-encode-http-api-data src/text-encode-persistent
    src/text-encode-postgresql-simple src/text-encode-sqlite-simple
    src/dev src/dev-main

  -- cabal-fmt: expand src/text-encode
  -- cabal-fmt: expand src/text-encode-aeson
  -- cabal-fmt: expand src/text-encode-cassava
  -- cabal-fmt: expand src/text-encode-http-api-data
  -- cabal-fmt: expand src/text-encode-persistent
  -- cabal-fmt: expand src/text-encode-postgresql-simple
  -- cabal-fmt: expand src/text-encode-sqlite-simple
  -- cabal-fmt: expand src/dev
  other-modules:
    DevMain
    Text.Encode
    Text.Encode.Aeson
    Text.Encode.Casing
    Text.Encode.Cassava
    Text.Encode.HttpApiData
    Text.Encode.Persistent
    Text.Encode.PostgresqlSimple
    Text.Encode.SqliteSimple