Blob Blame History Raw
name:            persistent
version:         2.13.3.0
x-revision: 1
license:         MIT
license-file:    LICENSE
author:          Michael Snoyman <michael@snoyman.com>
maintainer:      Michael Snoyman <michael@snoyman.com>, Greg Weber <greg@gregweber.info>
synopsis:        Type-safe, multi-backend data serialization.
description:     Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/persistent>.
category:        Database, Yesod
stability:       Stable
cabal-version:   >= 1.10
build-type:      Simple
homepage:        http://www.yesodweb.com/book/persistent
bug-reports:     https://github.com/yesodweb/persistent/issues
extra-source-files: ChangeLog.md README.md

library
    build-depends: mtl <2.3

    build-depends:   
        base                     >= 4.11.1.0     && < 5
      , aeson                    >= 1.0 && < 2.1
      , attoparsec
      , base64-bytestring
      , blaze-html               >= 0.9
      , bytestring               >= 0.10
      , conduit                  >= 1.2.12
      , containers               >= 0.5
      , fast-logger              >= 2.4
      , http-api-data            >= 0.3
      , lift-type                >= 0.1.0.0 && < 0.2.0.0
      , monad-logger             >= 0.3.28
      , mtl
      , path-pieces              >= 0.2
      , resource-pool            >= 0.2.3
      , resourcet                >= 1.1.10
      , scientific
      , silently
      , template-haskell         >= 2.13 && < 2.18
      , text                     >= 1.2
      , th-lift-instances        >= 0.1.14    && < 0.2
      , time                     >= 1.6
      , transformers             >= 0.5
      , unliftio
      , unliftio-core
      , unordered-containers
      , vault
      , vector

    default-extensions: 
        FlexibleContexts
      , MultiParamTypeClasses
      , OverloadedStrings
      , TypeFamilies

    exposed-modules: 
        Database.Persist
        Database.Persist.Types
        Database.Persist.Names
        Database.Persist.PersistValue
        Database.Persist.EntityDef
        Database.Persist.EntityDef.Internal
        Database.Persist.FieldDef
        Database.Persist.FieldDef.Internal
        Database.Persist.ImplicitIdDef
        Database.Persist.ImplicitIdDef.Internal
        Database.Persist.TH

        Database.Persist.Quasi
        Database.Persist.Quasi.Internal

        Database.Persist.Sql
        Database.Persist.Sql.Migration
        Database.Persist.Sql.Types.Internal
        Database.Persist.Sql.Util

        Database.Persist.SqlBackend
        Database.Persist.SqlBackend.StatementCache
        Database.Persist.SqlBackend.SqlPoolHooks
        Database.Persist.SqlBackend.Internal
        Database.Persist.SqlBackend.Internal.InsertSqlResult
        Database.Persist.SqlBackend.Internal.IsolationLevel
        Database.Persist.SqlBackend.Internal.SqlPoolHooks
        Database.Persist.SqlBackend.Internal.Statement
        Database.Persist.SqlBackend.Internal.StatementCache
        Database.Persist.SqlBackend.Internal.MkSqlBackend

        Database.Persist.Class
        Database.Persist.Class.DeleteCascade
        Database.Persist.Class.PersistEntity
        Database.Persist.Class.PersistQuery
        Database.Persist.Class.PersistUnique
        Database.Persist.Class.PersistConfig
        Database.Persist.Class.PersistField
        Database.Persist.Class.PersistStore

    other-modules:   
        Database.Persist.Types.Base

        Database.Persist.Sql.Internal
        Database.Persist.Sql.Types
        Database.Persist.Sql.Raw
        Database.Persist.Sql.Run
        Database.Persist.Sql.Class
        Database.Persist.Sql.Orphan.PersistQuery
        Database.Persist.Sql.Orphan.PersistStore
        Database.Persist.Sql.Orphan.PersistUnique

    -- These modules only make sense for compilers with access to DerivingVia
    if impl(ghc >= 8.6.1)
        exposed-modules: 
            Database.Persist.Compatible
        other-modules: 
            Database.Persist.Compatible.Types
            Database.Persist.Compatible.TH

    ghc-options:     -Wall
    default-language: Haskell2010

test-suite test
    type:          exitcode-stdio-1.0
    main-is:       main.hs

    build-depends:   
        base >= 4.9 && < 5
      , aeson
      , attoparsec
      , base64-bytestring
      , blaze-html
      , bytestring
      , conduit
      , containers
      , fast-logger
      , hspec         >= 2.4
      , http-api-data
      , monad-logger
      , mtl
      , path-pieces
      , persistent
      , QuickCheck
      , quickcheck-instances     >= 0.3
      , resource-pool
      , resourcet
      , scientific
      , shakespeare
      , silently
      , template-haskell         >= 2.4
      , text
      , th-lift-instances
      , time
      , transformers
      , unliftio
      , unliftio-core
      , unordered-containers
      , vector

    hs-source-dirs:
        test/

    ghc-options: -Wall

    default-extensions: FlexibleContexts
                      , MultiParamTypeClasses
                      , OverloadedStrings
                      , TypeFamilies

    other-modules:   
        Database.Persist.ClassSpec
        Database.Persist.PersistValueSpec
        Database.Persist.QuasiSpec
        Database.Persist.TH.DiscoverEntitiesSpec
        Database.Persist.TH.EmbedSpec
        Database.Persist.TH.ForeignRefSpec
        Database.Persist.TH.PersistWith.Model
        Database.Persist.TH.PersistWith.Model2
        Database.Persist.TH.PersistWithSpec
        Database.Persist.TH.CommentSpec
        Database.Persist.TH.ImplicitIdColSpec
        Database.Persist.TH.JsonEncodingSpec
        Database.Persist.TH.KindEntitiesSpec
        Database.Persist.TH.KindEntitiesSpecImports
        Database.Persist.TH.MigrationOnlySpec
        Database.Persist.TH.MaybeFieldDefsSpec
        Database.Persist.TH.MultiBlockSpec
        Database.Persist.TH.MultiBlockSpec.Model
        Database.Persist.TH.OverloadedLabelSpec
        Database.Persist.TH.SharedPrimaryKeyImportedSpec
        Database.Persist.TH.SharedPrimaryKeySpec
        Database.Persist.THSpec
        Database.Persist.TH.ToFromPersistValuesSpec
        TemplateTestImports
    default-language: Haskell2010

source-repository head
  type:     git
  location: git://github.com/yesodweb/persistent.git

benchmark persistent-th-bench
    ghc-options:      -O2
    type:             exitcode-stdio-1.0
    main-is:          Main.hs
    hs-source-dirs:   bench
    build-depends:    base
                    , persistent
                    , criterion
                    , deepseq >= 1.4
                    , file-embed
                    , text
                    , template-haskell
    other-modules:    Models
    default-language: Haskell2010