[package]
edition = "2024"
rust-version = "1.94"
name = "rivet-cli"
version = "0.12.0"
build = false
exclude = [
"dev/",
"USER_TEST_PLAN.md",
"tests/",
".github/",
"docs/gifs/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
default-run = "rivet"
description = "Rivet: PostgreSQL/MySQL/SQL Server → Parquet/CSV (local, S3, GCS, Azure). Crate name rivet-cli; binary rivet."
readme = "README.md"
license = "MIT"
repository = "https://github.com/panchenkoai/rivet"
[features]
default = ["jemalloc"]
dev-seed = []
jemalloc = ["tikv-jemallocator"]
[lib]
name = "rivet"
path = "src/lib.rs"
[[bin]]
name = "rivet"
path = "src/main.rs"
[[bin]]
name = "rivet-mcp"
path = "src/bin/rivet-mcp.rs"
[[bin]]
name = "seed"
path = "src/bin/seed/main.rs"
required-features = ["dev-seed"]
[[bench]]
name = "hot_paths"
path = "benches/hot_paths.rs"
harness = false
[[bench]]
name = "resource_aware"
path = "benches/resource_aware.rs"
harness = false
[dependencies.anyhow]
version = "1"
[dependencies.arrow]
version = "58"
features = ["canonical_extension_types"]
[dependencies.arrow-schema]
version = "58"
features = ["canonical_extension_types"]
[dependencies.atoi]
version = "3"
[dependencies.base64]
version = "0.22"
[dependencies.bigdecimal]
version = "0.4"
[dependencies.byteorder]
version = "1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.clap_complete]
version = "4"
[dependencies.console]
version = "0.16"
[dependencies.csv]
version = "1"
[dependencies.env_logger]
version = "0.11"
[dependencies.futures-util]
version = "0.3"
[dependencies.indicatif]
version = "0.18"
[dependencies.libc]
version = "0.2"
[dependencies.log]
version = "0.4"
[dependencies.md-5]
version = "0.11"
[dependencies.mysql]
version = "28"
features = [
"minimal",
"native-tls",
]
default-features = false
[dependencies.native-tls]
version = "0.2"
features = ["vendored"]
[dependencies.opendal]
version = "0.55"
features = [
"blocking",
"services-fs",
"services-s3",
"services-gcs",
"services-azblob",
]
[dependencies.parquet]
version = "58"
features = [
"arrow",
"zstd",
"lz4",
"flate2",
"arrow_canonical_extension_types",
]
[dependencies.postgres]
version = "0.19"
features = [
"with-chrono-0_4",
"with-serde_json-1",
"with-uuid-0_8",
]
[dependencies.postgres-native-tls]
version = "0.5"
[dependencies.postgres-types]
version = "0.2"
features = [
"with-chrono-0_4",
"with-serde_json-1",
"with-uuid-0_8",
]
[dependencies.rand]
version = "0.10"
[dependencies.reqsign]
version = "0.16"
[dependencies.reqwest]
version = "0.12"
features = [
"blocking",
"json",
"rustls-tls",
]
default-features = false
[dependencies.rusqlite]
version = "0.39"
features = ["bundled"]
[dependencies.schemars]
version = "1"
features = ["preserve_order"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_yaml_ng]
version = "0.10"
[dependencies.simdutf8]
version = "0.1"
[dependencies.tempfile]
version = "3"
[dependencies.tiberius]
version = "0.12"
features = [
"tds73",
"chrono",
"rustls",
]
default-features = false
[dependencies.tikv-jemallocator]
version = "0.7"
optional = true
[dependencies.tokio]
version = "1.50.0"
features = [
"rt-multi-thread",
"net",
"time",
]
[dependencies.tokio-util]
version = "0.7"
features = ["compat"]
[dependencies.uuid]
version = "0.8"
[dependencies.xxhash-rust]
version = "0.8.15"
features = ["xxh3"]
[dependencies.zeroize]
version = "1"
[dev-dependencies.bytes]
version = "1"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.csv]
version = "1"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.serde_yaml_ng]
version = "0.10"
[dev-dependencies.tiberius]
version = "0.12"
features = [
"tds73",
"chrono",
"rustls",
]
default-features = false
[dev-dependencies.tokio]
version = "1.50.0"
features = [
"rt-multi-thread",
"net",
"time",
]
[dev-dependencies.tokio-util]
version = "0.7"
features = ["compat"]
[target.'cfg(target_os = "macos")'.dependencies.mach2]
version = "0.6"
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
strip = true
[profile.release-min]
opt-level = "z"
debug = 0
panic = "abort"
overflow-checks = false
inherits = "release"