mirror of
https://github.com/circuithub/rel8.git
synced 2024-09-12 00:07:34 +03:00
86 lines
3.5 KiB
Plaintext
86 lines
3.5 KiB
Plaintext
name: rel8
|
|
version: 0.1.0.0
|
|
synopsis: A type-safe, expressive and concise API for querying relational databases
|
|
license: BSD3
|
|
license-file: LICENSE
|
|
author: Ollie Charles
|
|
maintainer: ollie@ocharles.org.uk
|
|
-- copyright:
|
|
category: Database
|
|
build-type: Simple
|
|
extra-source-files: ChangeLog.md
|
|
cabal-version: >=1.10
|
|
Tested-With: GHC == 8.0.2
|
|
description:
|
|
Welcome to Rel8! Rel8 is an API built on top of the fantastic Opaleye library to
|
|
provide an easy and type-safe way to interact with relational databases.
|
|
.
|
|
The main objectives of Rel8 are:
|
|
.
|
|
* Conciseness: Users using Rel8 should not need to write boiler-plate code. By
|
|
using expressive types, we can provide sufficient information for the compiler
|
|
to infer code whenever possible.
|
|
.
|
|
* Inferrable: Despite using a lot of type level magic, it should never be a
|
|
requirement that the user must provide a type signature to allow a program to compile.
|
|
.
|
|
* Compatible: Rel8 tries to use the existing Opaleye API as much as possible.
|
|
.
|
|
If you're new to Rel8, you're encouraged to check out the documentation over at
|
|
<https://rel8.readthedocs.io/en/latest/ Read The Docs>, where a comprehensive
|
|
<https://rel8.readthedocs.io/en/latest/tutorial.html Getting Started> guide is provided, along with a comparison with traditional
|
|
Opaleye code.
|
|
|
|
library
|
|
exposed-modules: Rel8
|
|
Rel8.IO
|
|
Rel8.Internal
|
|
Rel8.Text
|
|
Control.Monad.Rel8
|
|
other-modules: Rel8.Internal.Aggregate
|
|
Rel8.Internal.DBType
|
|
Rel8.Internal.Expr
|
|
Rel8.Internal.Operators
|
|
Rel8.Internal.Order
|
|
Rel8.Internal.Orphans
|
|
Rel8.Internal.Table
|
|
Rel8.Internal.Types
|
|
other-extensions: Arrows, ConstraintKinds, DataKinds, DefaultSignatures, DeriveGeneric, FlexibleContexts, FlexibleInstances, FunctionalDependencies, KindSignatures, PolyKinds, ScopedTypeVariables, TypeFamilies, TypeOperators, UndecidableInstances, RankNTypes
|
|
build-depends: aeson
|
|
, base >=4.9 && <4.15
|
|
, bytestring
|
|
, case-insensitive
|
|
, contravariant
|
|
, exceptions
|
|
, free
|
|
, mtl
|
|
, one-liner >=1.0 && < 1.1
|
|
, opaleye >= 0.6.0.0 && < 0.8
|
|
, postgresql-simple
|
|
, profunctors >=5.2 && <5.4
|
|
, resourcet >= 1.2
|
|
, scientific
|
|
, monad-control >= 1.0.1.0 && < 1.1
|
|
, streaming >=0.1 && <0.3
|
|
, streaming-postgresql-simple
|
|
, tagged >=0.8 && <0.9
|
|
, text
|
|
, these
|
|
, time
|
|
, transformers
|
|
, unliftio >= 0.2.7.0 && < 0.3
|
|
, uuid
|
|
, vector
|
|
, lens
|
|
, adjunctions
|
|
-- hs-source-dirs:
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -fwarn-redundant-constraints -fwarn-incomplete-uni-patterns
|
|
|
|
|
|
test-suite example
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: doc
|
|
main-is: Example.hs
|
|
build-depends: base, rel8
|