[package]
edition = "2024"
name = "datapress-core"
version = "0.3.0"
authors = ["Jeroen <jeroenflvr@users.noreply.github.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Backend-agnostic core types, config, routing, and HTTP handlers for the datapress dataset server."
homepage = "https://github.com/jeroenflvr/fast-api"
documentation = "https://docs.datap-rs.org"
readme = "README.md"
keywords = [
"parquet",
"delta",
"duckdb",
"datafusion",
"http",
]
categories = [
"database",
"web-programming::http-server",
]
license = "MIT"
repository = "https://github.com/jeroenflvr/fast-api"
[features]
auth = [
"dep:jsonwebtoken",
"jsonwebtoken/aws_lc_rs",
"dep:reqwest",
"dep:arc-swap",
]
datafusion = [
"dep:arrow",
"dep:parquet",
"dep:datafusion",
]
docs = [
"dep:include_dir",
"dep:mime_guess",
]
duckdb = ["dep:duckdb"]
explorer = ["dep:askama"]
metrics = ["dep:actix-web-prom"]
swagger = [
"dep:utoipa",
"dep:utoipa-swagger-ui",
"dep:reqwest",
]
[lib]
name = "datapress_core"
path = "src/lib.rs"
[[test]]
name = "handlers"
path = "tests/handlers.rs"
[dependencies.actix-web]
version = "4.12.1"
features = [
"compress-gzip",
"compress-brotli",
"compress-zstd",
]
[dependencies.actix-web-prom]
version = "0.10"
optional = true
[dependencies.arc-swap]
version = "1.9.1"
optional = true
[dependencies.arrow]
version = "58"
optional = true
[dependencies.askama]
version = "0.12"
optional = true
[dependencies.async-trait]
version = "0.1"
[dependencies.bytes]
version = "1"
[dependencies.datafusion]
version = "53"
optional = true
[dependencies.duckdb]
version = "1.10503.0"
features = ["bundled"]
optional = true
[dependencies.futures-util]
version = "0.3"
[dependencies.glob]
version = "0.3"
[dependencies.include_dir]
version = "0.7"
optional = true
[dependencies.jsonwebtoken]
version = "10"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.mime_guess]
version = "2"
optional = true
[dependencies.parquet]
version = "58"
features = ["arrow"]
optional = true
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokio]
version = "1.52.3"
features = ["full"]
[dependencies.toml]
version = "1.1.2"
[dependencies.utoipa]
version = "5.5.0"
optional = true
[dependencies.utoipa-swagger-ui]
version = "9.0.2"
features = ["actix-web"]
optional = true
[dev-dependencies.actix-rt]
version = "2"
[dev-dependencies.arrow]
version = "58"