packages feed

db-pipe-0.1.0.1: db-pipe.cabal

cabal-version:      3.0
name:               db-pipe
version:            0.1.0.1
synopsis:           A pipe-like wrapper around sqlite-simple
description:
    @db-pipe@ wraps @sqlite-simple@ in a small monadic pipe
    abstraction: a long-lived environment (@DBPipeEnv@) owns a
    connection, a transaction handle, and a couple of STM channels,
    and individual queries run inside a @DBPipeM@ monad that batches
    @select@, @update@, @insert@, and @ddl@ statements into explicit
    transactional blocks (@transactional@, @transactional_@,
    @commitAll@). Originally written by Dmitry Zuykov ("voidlizard")
    for the @hbs2@ project; this Hackage release is published from
    <https://github.com/NCrashed/db-pipe> so downstream projects can
    depend on it without vendoring.
license:            BSD-3-Clause
license-file:       LICENSE
author:             Dmitry Zuykov
maintainer:         Anton Gushcha <ncrashed@gmail.com>
copyright:          (c) Dmitry Zuykov 2023, (c) Anton Gushcha 2026
category:           Database
build-type:         Simple
tested-with:        GHC == 9.6.6
extra-doc-files:    CHANGELOG.md
                    README.md
homepage:           https://github.com/NCrashed/db-pipe
bug-reports:        https://github.com/NCrashed/db-pipe/issues

source-repository head
  type:     git
  location: https://github.com/NCrashed/db-pipe.git

common common-properties
  ghc-options: -Wall

  default-language:   GHC2021

  default-extensions:
                       ApplicativeDo
                     , BangPatterns
                     , BlockArguments
                     , ConstraintKinds
                     , DataKinds
                     , DeriveDataTypeable
                     , DeriveGeneric
                     , DerivingStrategies
                     , DerivingVia
                     , ExtendedDefaultRules
                     , FlexibleContexts
                     , FlexibleInstances
                     , GADTs
                     , GeneralizedNewtypeDeriving
                     , ImportQualifiedPost
                     , LambdaCase
                     , MultiParamTypeClasses
                     , OverloadedStrings
                     , OverloadedLabels
                     , QuasiQuotes
                     , RankNTypes
                     , RecordWildCards
                     , RecursiveDo
                     , ScopedTypeVariables
                     , StandaloneDeriving
                     , TupleSections
                     , TypeApplications
                     , TypeFamilies
                     , TypeOperators

library
    import:           common-properties
    exposed-modules:
      DBPipe.SQLite
      DBPipe.SQLite.Types
      DBPipe.SQLite.Generic

    build-depends:    base                     >= 4.17     && < 5
                    , clock                    >= 0.8      && < 0.9
                    , interpolatedstring-perl6 >= 1.0      && < 1.1
                    , mtl                      >= 2.3      && < 2.4
                    , stm                      >= 2.5      && < 2.6
                    , sqlite-simple            >= 0.4.18   && < 0.5
                    , text                     >= 2.0      && < 2.2
                    , unliftio                 >= 0.2.24   && < 0.3

    hs-source-dirs:   lib