packages feed

exigo-schema-0.2.0.2: exigo-schema.cabal

cabal-version: 1.12

name:           exigo-schema
version:        0.2.0.2
category:       Database
synopsis:       database schema for exigo marking/assessment tools
description:    Please see the README on GitHub at <https://github.com/phlummox/exigo-schema#readme>
homepage:       https://github.com/phlummox/exigo-schema#readme
bug-reports:    https://github.com/phlummox/exigo-schema/issues
author:         phlummox
maintainer:     exigo-schema@phlummox.dev
copyright:      2020 phlummox
license:        BSD2
license-file:   LICENSE
build-type:     Simple
extra-source-files:
    README.md
    ChangeLog.md
    stack-lts-13.yaml
    config/exigo.persistentmodels
    .travis.yml
-- builds & tests successfully as far back as stack lts-7/ghc-8.0
tested-with:         GHC == 8.0.1
                     GHC == 8.2.2
                     GHC == 8.6.5

source-repository head
  type: git
  location: https://github.com/phlummox/exigo-schema

library
  exposed-modules:
      Exigo.Types
      Exigo.Persistent.TH
      Exigo.Persistent.TH.Internal
      Exigo.Persistent.Schema
  hs-source-dirs:
      src
  build-depends:
      base >=4.9 && <5
    , aeson
    , binary
    , bytestring
    , persistent
    , persistent-template
    , template-haskell
    , text
    , th-lift-instances
  default-language: Haskell2010
  ghc-options:
      -Wall
      -fwarn-tabs
  if impl(ghc >= 8.0)
    ghc-options:        -Wredundant-constraints
                        -Wno-type-defaults
                        -Wcompat
                        -Widentities
                        -Wincomplete-record-updates
                        -Wincomplete-uni-patterns
                        -Wno-name-shadowing
                        -Wextra
  if impl(ghc >= 8.2)
    ghc-options:        -fhide-source-paths
  if impl(ghc >= 8.4)
    ghc-options:        -Wmissing-export-lists
                        -Wpartial-fields
  if impl(ghc >= 8.8)
    ghc-options:        -Wmissing-deriving-strategies

  -- could add: -fenable-th-splice-warnings

test-suite exigo-schema-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:      base
                    , exigo-schema
                    , aeson
                    , bytestring
                    , directory
                    , esqueleto
                    , exceptions
                    , hint
                    , hspec
                    , hspec-core
                    , interpolate
                    , monad-logger
                    , mtl
                    , persistent
                    , persistent-sqlite
                    , persistent-template
                    -- , process
                    -- ^^ used for debugging
                    , quickcheck-text
                    , QuickCheck
                    , resourcet
                    , temporary
                    , template-haskell
                    , text
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  if impl(ghc >= 8.0)
    ghc-options:        -Wredundant-constraints
                        -Wno-type-defaults
                        -Wcompat
                        -Widentities
                        -Wincomplete-record-updates
                        -Wincomplete-uni-patterns
                        -Wno-name-shadowing
                        -Wextra
  if impl(ghc >= 8.2)
    ghc-options:        -fhide-source-paths
  if impl(ghc >= 8.4)
    ghc-options:        -Wmissing-export-lists
                        -Wpartial-fields
  if impl(ghc >= 8.8)
    ghc-options:        -Wmissing-deriving-strategies
  default-language:    Haskell2010