packages feed

selda-0.1.7.0: selda.cabal

name:                selda
version:             0.1.7.0
synopsis:            Type-safe, high-level EDSL for interacting with relational databases.
description:         This package provides an EDSL for writing portable, type-safe, high-level
                     database code. Its feature set includes querying and modifying databases,
                     automatic, in-process caching with consistency guarantees, and transaction
                     support.

                     See the package readme for a brief usage tutorial.
                     
                     To use this package you need at least one backend package, in addition to
                     this package. There are currently two different backend packages:
                     selda-sqlite and selda-postgresql.
homepage:            https://github.com/valderman/selda
license:             MIT
license-file:        LICENSE
author:              Anton Ekblad
maintainer:          anton@ekblad.cc
category:            Database
build-type:          Simple
extra-source-files:  ChangeLog.md
cabal-version:       >=1.10
tested-with:         GHC == 7.10.3, GHC == 8.0.2

extra-source-files:
  README.md

flag localcache
  default: True
  description:
    Enable process-local cache support. Even when supported, caching is turned
    off by default until enabled by the application.
    When unsupported, the relevant APIs are still available, but the cache will
    act as if every update is a no-op and every lookup a cache miss.

flag haste
  default: False
  description:
    Automatically set when installing for the Haste compiler.

source-repository head
  type:     git
  location: https://github.com/valderman/selda.git

library
  exposed-modules:
    Database.Selda
    Database.Selda.Backend
    Database.Selda.Generic
    Database.Selda.Unsafe
  other-modules:
    Database.Selda.Caching
    Database.Selda.Column
    Database.Selda.Compile
    Database.Selda.Exp
    Database.Selda.Frontend
    Database.Selda.Inner
    Database.Selda.Query
    Database.Selda.Query.Type
    Database.Selda.Selectors
    Database.Selda.SQL
    Database.Selda.SQL.Print
    Database.Selda.SqlType
    Database.Selda.Table
    Database.Selda.Table.Compile
    Database.Selda.Table.Foreign
    Database.Selda.Transform
    Database.Selda.Types
  other-extensions:
    OverloadedStrings
    GADTs
    CPP
    MultiParamTypeClasses
    UndecidableInstances
    ScopedTypeVariables
    RankNTypes
    TypeFamilies
    FlexibleInstances
    GeneralizedNewtypeDeriving
    FlexibleContexts
  build-depends:
      base       >=4.8 && <5
    , exceptions >=0.8 && <0.9
    , mtl        >=2.0 && <2.3
    , text       >=1.0 && <1.3
    , time       >=1.5 && <1.9
  if impl(ghc < 7.11)
    build-depends:
      transformers  >=0.4 && <0.6
  if !flag(haste) && flag(localcache)
    build-depends:
        hashable             >=1.1   && <1.3
      , psqueues             >=0.2   && <0.3
      , unordered-containers >=0.2.6 && <0.3
  else
    cpp-options:
      -DNO_LOCALCACHE
  hs-source-dirs:
    src
  default-language:
    Haskell2010
  ghc-options:
    -Wall