[package]
edition = "2021"
rust-version = "1.88.0"
name = "datafusion-server"
version = "0.20.11"
authors = ["Sasaki, Naoki <nsasaki@sal.co.jp>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Web server library for session-based queries using Arrow and other large datasets as data sources."
homepage = "https://github.com/sal-openlab/datafusion-server"
readme = "README.md"
keywords = [
"http",
"sql",
"arrow",
"flight",
"datafusion",
]
license = "MIT"
repository = "https://github.com/sal-openlab/datafusion-server.git"
[features]
avro = ["datafusion/avro"]
deltalake = ["delta_kernel"]
flight = [
"arrow-flight",
"tonic",
]
mysql = ["sqlx/mysql"]
plugin = [
"dep:pyo3",
"pyarrow",
]
postgres = [
"sqlx/postgres",
"sqlx/uuid",
]
pyarrow = ["arrow/pyarrow"]
telemetry = [
"metrics",
"metrics-exporter-prometheus",
"sysinfo",
]
webdav = ["object_store/http"]
[lib]
name = "datafusion_server"
path = "src/lib.rs"
[dependencies.anyhow]
version = "1.0.100"
[dependencies.arrow]
version = "57.1.0"
[dependencies.arrow-flight]
version = "57.1.0"
optional = true
[dependencies.async-trait]
version = "0.1.89"
[dependencies.axum]
version = "0.8.8"
features = ["multipart"]
[dependencies.axum-extra]
version = "0.12.5"
features = ["typed-header"]
[dependencies.bytes]
version = "1.11.1"
[dependencies.chrono]
version = "0.4.43"
features = [
"std",
"clock",
]
default-features = false
[dependencies.config]
version = "0.15.19"
[dependencies.datafusion]
version = "52.1.0"
[dependencies.delta_kernel]
version = "0.19.2"
features = [
"default-engine-rustls",
"arrow-57",
]
optional = true
[dependencies.futures]
version = "0.3.31"
[dependencies.futures-util]
version = "0.3.31"
features = ["alloc"]
default-features = false
[dependencies.http-body]
version = "1.0.1"
[dependencies.hyper]
version = "1.8.1"
features = ["full"]
[dependencies.itertools]
version = "0.14.0"
[dependencies.jsonpath-rust]
version = "1.0.4"
[dependencies.log]
version = "0.4.29"
features = ["std"]
[dependencies.metrics]
version = "0.24.3"
optional = true
default-features = false
[dependencies.metrics-exporter-prometheus]
version = "0.18.1"
optional = true
default-features = false
[dependencies.mime]
version = "0.3.17"
[dependencies.num-traits]
version = "0.2.19"
[dependencies.object_store]
version = "0.12.5"
features = [
"aws",
"gcp",
"azure",
]
[dependencies.once_cell]
version = "1.21.3"
[dependencies.pyo3]
version = "0.26.0"
optional = true
[dependencies.reqwest]
version = "0.13.1"
features = [
"rustls",
"cookies",
"json",
"stream",
]
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_derive]
version = "1.0.228"
[dependencies.serde_json]
version = "1.0.149"
features = ["preserve_order"]
[dependencies.simple_logger]
version = "5.1.0"
features = ["timestamps"]
[dependencies.sqlx]
version = "0.8.6"
features = [
"runtime-tokio",
"runtime-tokio-rustls",
"any",
"chrono",
"rust_decimal",
]
optional = true
default-features = false
[dependencies.sysinfo]
version = "0.37.2"
optional = true
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio]
version = "1.49.0"
features = ["full"]
[dependencies.tonic]
version = "0.14.3"
optional = true
[dependencies.tower]
version = "0.5.3"
[dependencies.tower-http]
version = "0.6.8"
features = ["cors"]
[dependencies.url]
version = "2.5.8"