packages feed

hinagata-postgres-0.1.0.0: hinagata-postgres.cabal

cabal-version: 3.12
name: hinagata-postgres
version: 0.1.0.0
synopsis: Transactional PostgreSQL execution for Hinagata fixture plans
description: Private native libpq sessions for atomic SQL and CSV fixtures.
category: Testing
license: BSD-3-Clause
license-file: LICENSE
author: Nadeem Bitar
maintainer: nadeem@gmail.com
homepage: https://github.com/shinzui/hinagata
bug-reports: https://github.com/shinzui/hinagata/issues
extra-source-files: examples/tasty-adapter/README.md
extra-doc-files: CHANGELOG.md
data-files:
  sql/catalog-v1.sql
  sql/catalog-v2.sql
  sql/upgrade-v1-v2.sql
  test/stalled-postgres-peer.py

build-type: Simple

common common
  default-language: GHC2024
  default-extensions:
    DeriveAnyClass
    DuplicateRecordFields
    OverloadedLabels
    OverloadedStrings

  ghc-options: -Wall

library
  import: common
  hs-source-dirs: src
  exposed-modules:
    Hinagata.Postgres.Baseline
    Hinagata.Postgres.Cleanup
    Hinagata.Postgres.Error
    Hinagata.Postgres.Lease
    Hinagata.Postgres.Load
    Hinagata.Postgres.Manager
    Hinagata.Postgres.Ownership
    Hinagata.Postgres.Session

  other-modules:
    Hinagata.Postgres.Internal.Access
    Hinagata.Postgres.Internal.BaselineRef
    Hinagata.Postgres.Internal.Copy
    Hinagata.Postgres.Internal.Libpq
    Hinagata.Postgres.Internal.Load
    Hinagata.Postgres.Internal.Sql
    Paths_hinagata_postgres

  autogen-modules: Paths_hinagata_postgres
  build-depends:
    async >=2.2.6 && <2.3,
    base >=4.21 && <5,
    bytestring >=0.12 && <0.14,
    cryptohash-sha256 >=0.11.102.1 && <0.12,
    directory >=1.3 && <1.5,
    filepath >=1.5 && <1.7,
    hinagata-core ^>=0.1.0.0,
    postgresql-libpq >=0.11.0.0 && <0.12,
    text >=2.1 && <2.3,
    time >=1.14 && <1.16,
    unix >=2.8 && <2.10,

test-suite hinagata-postgres-test
  import: common
  type: exitcode-stdio-1.0
  hs-source-dirs:
    test
    examples/tasty-adapter

  main-is: Main.hs
  other-modules:
    Paths_hinagata_postgres
    TastyAdapter

  autogen-modules: Paths_hinagata_postgres
  ghc-options:
    -O0
    -threaded
    -rtsopts
    -with-rtsopts=-I0

  build-depends:
    base >=4.21 && <5,
    bytestring >=0.12 && <0.14,
    directory >=1.3 && <1.5,
    filepath >=1.5 && <1.7,
    hinagata-core ^>=0.1.0.0,
    hinagata-postgres ^>=0.1.0.0,
    postgresql-libpq >=0.11.0.0 && <0.12,
    process >=1.6.26.1 && <1.7,
    tasty >=1.5.4 && <1.6,
    tasty-hunit >=0.10.2 && <0.11,
    temporary >=1.3 && <1.4,
    text >=2.1 && <2.3,
    unix >=2.8 && <2.10,

benchmark hinagata-postgres-direct-load
  import: common
  type: exitcode-stdio-1.0
  hs-source-dirs: bench
  main-is: Main.hs
  ghc-options: -rtsopts
  build-depends:
    base >=4.21 && <5,
    bytestring >=0.12 && <0.14,
    directory >=1.3 && <1.5,
    filepath >=1.5 && <1.7,
    hinagata-core ^>=0.1.0.0,
    hinagata-postgres ^>=0.1.0.0,
    postgresql-libpq >=0.11.0.0 && <0.12,
    temporary >=1.3 && <1.4,
    text >=2.1 && <2.3,

benchmark hinagata-postgres-concurrent-leases
  import: common
  type: exitcode-stdio-1.0
  hs-source-dirs: bench
  main-is: Concurrency.hs
  ghc-options:
    -threaded
    -rtsopts

  build-depends:
    aeson >=2.2 && <2.3,
    async >=2.2 && <2.3,
    base >=4.21 && <5,
    bytestring >=0.12 && <0.14,
    hinagata-core ^>=0.1.0.0,
    hinagata-postgres ^>=0.1.0.0,
    postgresql-libpq >=0.11.0.0 && <0.12,
    text >=2.1 && <2.3,

source-repository head
  type: git
  location: https://github.com/shinzui/hinagata.git
  subdir: hinagata-postgres