pqi-0.1.0.0: pqi.cabal
cabal-version: 3.0
name: pqi
version: 0.1.0.0
category: Database, PostgreSQL
synopsis: Driver-agnostic interface to the PostgreSQL libpq API
description:
@pqi@ reproduces the API surface of the [@postgresql-libpq@](https://hackage.haskell.org/package/postgresql-libpq) package, but
reifies the connection (and its results) as a plain record of closures
instead of a single concrete type tied to @libpq@. This lets callers
program against one interface and pick an adapter package to construct it:
* [@pqi-ffi@](https://hackage.haskell.org/package/pqi-ffi) — a thin adapter backed by the C @libpq@ library via
[@postgresql-libpq@](https://hackage.haskell.org/package/postgresql-libpq).
* [@pqi-native@](https://hackage.haskell.org/package/pqi-native) — a pure-Haskell adapter that speaks the PostgreSQL wire
protocol directly.
This package ships only the interface: the record types, and an 'Adapter' type for adapter packages to bundle their
connection-establishing functions under.
homepage: https://github.com/nikita-volkov/pqi
bug-reports: https://github.com/nikita-volkov/pqi/issues
author: Nikita Volkov <nikita.y.volkov@mail.ru>
maintainer: Nikita Volkov <nikita.y.volkov@mail.ru>
copyright: (c) 2026, Nikita Volkov
license: MIT
license-file: LICENSE
extra-doc-files:
CHANGELOG.md
LICENSE
README.md
source-repository head
type: git
location: https://github.com/nikita-volkov/pqi
common base
default-language: Haskell2010
default-extensions:
ApplicativeDo
BangPatterns
BinaryLiterals
BlockArguments
ConstraintKinds
DataKinds
DefaultSignatures
DeriveDataTypeable
DeriveFoldable
DeriveFunctor
DeriveTraversable
DerivingStrategies
DerivingVia
EmptyDataDecls
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
GeneralizedNewtypeDeriving
LambdaCase
LiberalTypeSynonyms
MagicHash
MultiParamTypeClasses
MultiWayIf
NamedFieldPuns
NoImplicitPrelude
NoMonomorphismRestriction
NumericUnderscores
OverloadedStrings
ParallelListComp
PatternGuards
QuasiQuotes
RankNTypes
RecordWildCards
ScopedTypeVariables
StandaloneDeriving
StrictData
TemplateHaskell
TupleSections
TypeApplications
TypeFamilies
TypeOperators
UnboxedTuples
ViewPatterns
common test
import: base
ghc-options:
-threaded
-with-rtsopts=-N
library
import: base
hs-source-dirs: src/library
exposed-modules:
Pqi
build-depends:
base >=4.11 && <5,
bytestring >=0.10 && <0.13,
text >=1.2 && <2.2,