packages feed

beam-duckdb-0.3.1.0: beam-duckdb.cabal

cabal-version:      3.0
name:               beam-duckdb
version:            0.3.1.0
synopsis:           DuckDB backend for Beam
description:        Beam driver for DuckDB, an analytics-focused open-source in-process database.
license:            MIT
license-file:       LICENSE
author:             Laurent P. René de Cotret
maintainer:         laurent.decotret@outlook.com
copyright:          (c) Laurent P. René de Cotret
category:           Database
bug-reports:        https://github.com/haskell-beam/beam/issues
build-type:         Simple
extra-doc-files:    README.md
                    CHANGELOG.md
extra-source-files: tests/data/*.py
                    tests/data/*.parquet
                    tests/data/*.csv
                    tests/data/lineitem_iceberg/data/*.parquet
                    tests/data/lineitem_iceberg/metadata/*.avro
                    tests/data/lineitem_iceberg/metadata/*.json
                    tests/data/lineitem_iceberg/metadata/version-hint.text

source-repository head
  type: git
  location: https://github.com/haskell-beam/beam.git
  subdir: beam-duckdb

common common
    default-language: Haskell2010
    ghc-options: -Wall
                 -Wcompat
                 -Widentities
                 -Wincomplete-uni-patterns
                 -Wincomplete-record-updates
                 -Wredundant-constraints
                 -fhide-source-paths
                 -Wpartial-fields
                 -Wunused-packages
library
    import:           common
    exposed-modules:  Database.Beam.DuckDB
                      Database.Beam.DuckDB.Migrate
    other-modules:    Database.Beam.DuckDB.Backend
                      Database.Beam.DuckDB.Connection
                      Database.Beam.DuckDB.Syntax
                      Database.Beam.DuckDB.Syntax.Builder
                      Database.Beam.DuckDB.Syntax.Extensions
                      Database.Beam.DuckDB.Syntax.Extensions.Copy
                      Database.Beam.DuckDB.Syntax.Extensions.DataSource
                      Database.Beam.DuckDB.Syntax.Extensions.InsertOnConflict
    build-depends:    aeson >=1.0 && <2.3
                    , base >=4.11 && <5
                    , beam-core >=0.11.1 && <0.12
                    , beam-migrate ^>=0.6
                    , bytestring >=0.10 && <0.13
                    -- Version 0.1.5.0 contained a broken change (RowParser constructor not exposed)
                    -- which was reverted in version 0.1.5.1
                    , duckdb-simple (>=0.1.2 && <0.1.5) || (>=0.1.5.1 && <0.1.6)
                    , dlist >=0.8 && <1.1
                    , free >=4.12 && <5.3
                    , hashable >=1.1 && <1.6
                    , scientific ^>=0.3
                    , text >=1.0 && <2.2
                    , time >=1.6 && <1.17
                    , transformers >=0.3 && <0.7
                    , uuid-types ^>=1.0
    hs-source-dirs:   src

test-suite beam-duckdb-test
    import:           common
    other-modules:    Database.Beam.DuckDB.Test.Extensions
                      Database.Beam.DuckDB.Test.Extensions.Copy
                      Database.Beam.DuckDB.Test.Extensions.DataSource
                      Database.Beam.DuckDB.Test.Extensions.InsertOnConflict
                      Database.Beam.DuckDB.Test.Extensions.Returning
                      Database.Beam.DuckDB.Test.Migrate
                      Database.Beam.DuckDB.Test.Query
    type:             exitcode-stdio-1.0
    hs-source-dirs:   tests
    main-is:          Main.hs
    build-depends:    base >=4.11 && <5
                    , beam-core
                    , beam-duckdb
                    , beam-migrate
                    , bytestring
                    , duckdb-simple
                    , hedgehog
                    , tasty
                    , tasty-hedgehog
                    , tasty-hunit
                    , temporary
                    , text
                    , time
                    , uuid-types