Cargo Features

[dependencies]
rivven-connect = { version = "0.0.22", default-features = false, features = ["postgres", "mysql", "sqlserver", "tls", "http", "rdbc", "rdbc-postgres", "rdbc-mysql", "rdbc-sqlserver", "rdbc-full", "kafka", "kafka-msk", "mqtt", "sqs", "pubsub", "cloud-storage", "s3", "gcs", "azure", "parquet", "snowflake", "bigquery", "redshift", "databricks", "clickhouse", "qdrant", "pinecone", "s3-vectors", "llm-openai", "llm-bedrock", "llm-full", "iceberg", "delta-lake", "delta-lake-s3", "delta-lake-gcs", "delta-lake-azure", "queue-full", "full", "storage-full", "warehouse-full", "vectordb-full", "llm", "lakehouse-full"] }
default = full

The full feature is set by default whenever rivven-connect is added without default-features = false somewhere in the dependency tree.

postgres full = tokio-postgres

Enables rustls, rustls-pemfile, tokio-postgres-rustls, and webpki-roots ^0.26

rustls:

Redshift TLS (optional)

and postgres of rivven-cdc

Internal crates

Affects cdc::postgres, snapshot::SnapshotExecutor, snapshot::SnapshotExecutorConfig, snapshot::IncrementalSnapshotExecutorConfig, snapshot::IncrementalSnapshotExecutor, snapshot::SignalSnapshotConfig, snapshot::SignalSnapshotProcessor, snapshot::CdcSnapshotOrchestratorConfig, snapshot::CdcSnapshotOrchestrator, snapshot::combine_snapshot_and_stream

mysql full

Enables mysql of rivven-cdc

Affects cdc::mysql

sqlserver full

Enables sqlserver of rivven-cdc

Affects cdc::sqlserver

tls full

Enables tls of rivven-client

http full

HTTP connector with signing support

Enables hmac ^0.12, rand ^0.8, and sha2 ^0.10

hmac:

HTTP webhook signing (optional)

Affects connectors::http

rdbc rdbc-mysql? rdbc-postgres? rdbc-sqlserver?

RDBC connectors (query-based source/sink using rivven-rdbc)

Enables rivven-rdbc

Affects connectors::rdbc

rdbc-postgres rdbc-full? = rdbc

Enables postgres of rivven-rdbc

rivven-rdbc:

Database backends

rdbc-mysql rdbc-full? = rdbc

Enables mysql of rivven-rdbc

rdbc-sqlserver rdbc-full? = rdbc

Enables sqlserver of rivven-rdbc

rdbc-full full = rdbc-mysql, rdbc-postgres, rdbc-sqlserver
kafka kafka-msk? queue-full?

Queue connectors (message queues)
Kafka source/sink (pure Rust, consumer groups, transactions)

Enables krafka ^0.2

Apache Kafka (pure Rust, async-native client - optional)
Features: consumer groups, transactions, SASL, OAUTHBEARER, MSK IAM, batching, compression

Affects queue::kafka

kafka-msk = kafka

AWS MSK IAM authentication for Kafka

Enables aws-msk of krafka ^0.2

mqtt queue-full?

MQTT source (pure Rust client)

Enables rumqttc ^0.24

MQTT client (pure Rust - optional)

Affects queue::mqtt

sqs queue-full?

AWS SQS source (real AWS SDK)

Enables aws-config and aws-sdk-sqs

aws-sdk-sqs:

AWS SDK (optional - for SQS, Redshift only; S3 uses object_store)

Affects queue::sqs

pubsub queue-full?

Google Pub/Sub (real GCP SDK)

Enables gcloud-googleapis, gcloud-pubsub, and tokio-util

cloud-storage azure? gcs? s3?

Storage connectors - unified via object_store crate

Enables cloud-storage of rivven-cdc and object_store ^0.11

Unified object storage (optional - replaces individual cloud SDKs)

Affects storage::unified

s3 storage-full? = cloud-storage

Enables aws of object_store ^0.11, s3 of rivven-cdc

gcs storage-full? = cloud-storage

Enables gcp of object_store ^0.11, gcs of rivven-cdc

azure storage-full? = cloud-storage

Enables azure of object_store ^0.11 and rivven-cdc

parquet delta-lake? iceberg? storage-full?

Enables arrow ^57, arrow-array ^57, arrow-json ^57, arrow-schema ^57, and parquet ^57

parquet:

Apache Parquet - use version 57 to match iceberg crate's internal dependencies

Affects format::parquet

snowflake warehouse-full?

Warehouse connectors (data warehouse sinks)

Enables jsonwebtoken ^9, metrics, rand ^0.8, rsa, and sha2 ^0.10

jsonwebtoken:

Snowflake (optional)

Affects warehouse::snowflake, snowflake::SnowflakeSink

bigquery warehouse-full?

Enables gcp-bigquery-client ^0.25

Note: aws-sdk-redshift and aws-credential-types are reserved for future IAM auth Current Redshift impl uses PostgreSQL wire protocol with password auth
Google Cloud (optional - for BigQuery, Pub/Sub; GCS uses object_store)

Affects warehouse::bigquery

redshift warehouse-full?

Enables rustls, tokio-postgres-rustls, and webpki-roots ^0.26

Affects warehouse::redshift

databricks warehouse-full?

Enables databricks-zerobus-ingest-sdk ^0.5 and metrics

databricks-zerobus-ingest-sdk:

Databricks Zerobus (optional)

Affects warehouse::databricks

clickhouse warehouse-full?

Enables clickhouse ^0.14 and metrics

clickhouse:

ClickHouse (optional — official pure Rust client, HTTP + RowBinary)

Affects warehouse::clickhouse

qdrant vectordb-full?

Vector database connectors

Enables metrics and qdrant-client

qdrant-client:

Qdrant (optional — official gRPC-based vector search client)

Affects vectordb::qdrant

pinecone vectordb-full?

Enables metrics and tonic ^0.13

tonic:

gRPC (optional — Pinecone vectordb connector; uses rustls, no OpenSSL)

Affects vectordb::pinecone, vectordb::pinecone_client

s3-vectors vectordb-full?

Enables aws-config, aws-sdk-s3vectors, aws-smithy-types, and metrics

aws-sdk-s3vectors:

Amazon S3 Vectors (optional — purpose-built vector storage with native similarity search)

Affects vectordb::s3_vectors

llm-openai llm-full?

LLM connectors (chat + embedding transforms)

Enables metrics, openai of rivven-llm

Affects connectors::llm

llm-bedrock llm-full?

Enables metrics, bedrock of rivven-llm

Affects connectors::llm

llm-full full llm? = llm-bedrock, llm-openai
iceberg lakehouse-full? = parquet

Lakehouse connectors (open table formats)

Enables iceberg ^0.8 and iceberg-catalog-rest ^0.8

iceberg:

Apache Iceberg (optional)

Affects lakehouse::iceberg

delta-lake delta-lake-azure? delta-lake-gcs? delta-lake-s3? lakehouse-full? = parquet

Enables deltalake ^0.30

Delta Lake (optional)

Affects lakehouse::delta

delta-lake-s3 = delta-lake

Enables s3 of deltalake ^0.30

delta-lake-gcs = delta-lake

Enables gcs of deltalake ^0.30

delta-lake-azure = delta-lake

Enables azure of deltalake ^0.30

queue-full full = kafka, mqtt, pubsub, sqs

Feature bundles

full default = http, lakehouse-full, llm-full, mysql, postgres, queue-full, rdbc-full, sqlserver, storage-full, tls, vectordb-full, warehouse-full
storage-full full = azure, gcs, parquet, s3
warehouse-full full = bigquery, clickhouse, databricks, redshift, snowflake
vectordb-full full = pinecone, qdrant, s3-vectors
llm = llm-full
lakehouse-full full = delta-lake, iceberg

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

tokio-postgres postgres?