packages feed

cql-io-2.0.0: cql-io.cabal

name:                 cql-io
version:              2.0.0
synopsis:             Cassandra CQL client.
license:              MPL-2.0
license-file:         LICENSE
author:               Toralf Wittner
maintainer:           Kyle Butt <kyle@iteratee.net>
copyright:            (C) 2014-2016 Toralf Wittner, 2025 Kyle Butt
homepage:             https://github.com/iteratee/cql-io
bug-reports:          https://github.com/iteratee/cql-io/issues
category:             Database
build-type:           Simple
cabal-version:        2.0
extra-doc-files:      README.md
                      CHANGELOG
                      AUTHORS

description:
    CQL Cassandra driver supporting native protocol versions 3 and 4.
    .
    This library uses the <http://hackage.haskell.org/package/cql cql> library
    which implements Cassandra's CQL protocol and complements it with the
    neccessary I/O operations. The feature-set includes:
    .
    * /Node discovery/. The driver discovers nodes automatically from a small
    set of bootstrap nodes.
    .
    * /Customisable load-balancing policies/. In addition to pre-built LB
    policies such as round-robin, users of this library can provide their
    own policies if desired. The policy API is rich enough to support token
    aware routing policies.
    .
    * /Support for connection streams/. Requests can be multiplexed over a
    few connections.
    .
    * /Customisable retry settings/. Support for default retry settings as well
    as local overrides per query.
    .
    * /Prepared queries/. Prepared queries are an optimisation which parse
    and prepare a query only once on Cassandra nodes but execute it many
    times with different concrete values.
    .
    * /TLS support/. Client to node communication can optionally use transport
    layer security (using HsOpenSSL).

source-repository head
    type:     git
    location: https://github.com/iteratee/cql-io

library
    default-language: Haskell2010
    hs-source-dirs:   src/api
    ghc-options:      -Wall -fwarn-tabs

    exposed-modules:
        Database.CQL.IO

    reexported-modules:
        Database.CQL.IO.Hexdump

    build-depends:
          base
        , cql-io-lib
        , cql

library cql-io-lib
    default-language: Haskell2010
    hs-source-dirs: src/lib
    ghc-options: -Wall -fwarn-tabs

    exposed-modules:
        Database.CQL.IO.Batch
        Database.CQL.IO.Client
        Database.CQL.IO.Cluster.Discovery
        Database.CQL.IO.Cluster.Host
        Database.CQL.IO.Cluster.Policies
        Database.CQL.IO.Connection
        Database.CQL.IO.Connection.Socket
        Database.CQL.IO.Connection.Settings
        Database.CQL.IO.Exception
        Database.CQL.IO.Hexdump
        Database.CQL.IO.Jobs
        Database.CQL.IO.Log
        Database.CQL.IO.Pool
        Database.CQL.IO.PrepQuery
        Database.CQL.IO.Protocol
        Database.CQL.IO.Replication
        Database.CQL.IO.Settings
        Database.CQL.IO.Signal
        Database.CQL.IO.Sync
        Database.CQL.IO.Tickets
        Database.CQL.IO.Timeouts

    build-depends:
          async                >= 2.2     && < 2.3
        , attoparsec           >= 0.14    && < 1
        , auto-update          >= 0.1     && < 0.3
        , base                 >= 4.9     && < 5
        , bluefin              >= 0.0.15  && < 0.18
        , bytestring           >= 0.10    && < 0.13
        , containers           >= 0.6.6   && < 0.9
        , cql                  >= 4.1     && < 4.2
        , crypton              >= 1.0     && < 1.1
        , data-default-class   >= 0.2     && < 0.3
        , exceptions           >= 0.4     && < 0.11
        , hashable             >= 1.2     && < 1.6
        , HsOpenSSL            >= 0.11    && < 0.12
        , iproute              >= 1.3     && < 1.8
        , lens                 >= 4.4     && < 5.4
        , mtl                  >= 2.1     && < 2.4
        , mwc-random           >= 0.13    && < 0.16
        , network              >= 2.4     && < 3.3
        , persist              >= 1.0     && < 1.1
        , random-shuffle       >= 0.0.4   && < 0.1
        , retry                >= 0.7     && < 0.10
        , semigroups           >= 0.15    && < 0.21
        , semver               >= 0.4.0.1 && < 1
        , stm                  >= 2.5.1   && < 2.6
        , text                 >= 0.11    && < 2.2
        , time                 >= 1.4     && < 1.16
        , transformers         >= 0.6.0.2 && < 0.7
        , unliftio-core        >= 0.1.1   && < 0.3
        , unordered-containers >= 0.2     && < 0.3
        , uuid                 >= 1.2.6   && < 1.4
        , vector               >= 0.10    && < 0.14

test-suite cql-io-tests
    type:               exitcode-stdio-1.0
    default-language:   Haskell2010
    main-is:            Main.hs
    hs-source-dirs:     src/test
    ghc-options:        -threaded -Wall -fwarn-tabs
    build-depends:
          base
        , QuickCheck
        , async
        , containers
        , cql
        , cql-io
        , cql-io-lib
        , formatting
        , Decimal
        , iproute
        , mtl
        , primes
        , raw-strings-qq
        , tasty            >= 0.11
        , tasty-hunit      >= 0.9
        , tasty-quickcheck >= 0.8
        , text
        , time
        , uuid

    other-modules:
        Test.Database.CQL.IO
        Test.Database.CQL.IO.Jobs
        Test.Database.CQL.IO.Replication