# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.88.0"
name = "datafusion-datasource-parquet"
version = "54.0.0"
authors = ["Apache DataFusion <dev@datafusion.apache.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "datafusion-datasource-parquet"
homepage = "https://datafusion.apache.org"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/apache/datafusion"
resolver = "2"

[package.metadata.docs.rs]
all-features = true

[features]
parquet_encryption = [
    "parquet/encryption",
    "datafusion-common/parquet_encryption",
    "datafusion-execution/parquet_encryption",
]

[lib]
name = "datafusion_datasource_parquet"
path = "src/mod.rs"

[[bench]]
name = "parquet_nested_filter_pushdown"
path = "benches/parquet_nested_filter_pushdown.rs"
harness = false

[[bench]]
name = "parquet_struct_filter_pushdown"
path = "benches/parquet_struct_filter_pushdown.rs"
harness = false

[dependencies.arrow]
version = "58.3.0"
features = [
    "prettyprint",
    "chrono-tz",
]

[dependencies.async-trait]
version = "0.1.89"

[dependencies.bytes]
version = "1.11"

[dependencies.datafusion-common]
version = "54.0.0"
features = [
    "object_store",
    "parquet",
]
default-features = false

[dependencies.datafusion-common-runtime]
version = "54.0.0"

[dependencies.datafusion-datasource]
version = "54.0.0"
default-features = false

[dependencies.datafusion-execution]
version = "54.0.0"
default-features = false

[dependencies.datafusion-expr]
version = "54.0.0"
default-features = false

[dependencies.datafusion-functions]
version = "54.0.0"

[dependencies.datafusion-functions-aggregate-common]
version = "54.0.0"

[dependencies.datafusion-physical-expr]
version = "54.0.0"
default-features = false

[dependencies.datafusion-physical-expr-adapter]
version = "54.0.0"
default-features = false

[dependencies.datafusion-physical-expr-common]
version = "54.0.0"
default-features = false

[dependencies.datafusion-physical-plan]
version = "54.0.0"

[dependencies.datafusion-pruning]
version = "54.0.0"

[dependencies.datafusion-session]
version = "54.0.0"

[dependencies.futures]
version = "0.3"

[dependencies.itertools]
version = "0.14"

[dependencies.log]
version = "^0.4"

[dependencies.object_store]
version = "0.13.2"
default-features = false

[dependencies.parking_lot]
version = "0.12"

[dependencies.parquet]
version = "58.3.0"
features = [
    "arrow",
    "async",
    "object_store",
]
default-features = false

[dependencies.tokio]
version = "1.52"
features = [
    "macros",
    "rt",
    "sync",
]

[dev-dependencies.chrono]
version = "0.4.44"
default-features = false

[dev-dependencies.criterion]
version = "0.8"

[dev-dependencies.datafusion-functions]
version = "54.0.0"

[dev-dependencies.datafusion-functions-nested]
version = "54.0.0"
default-features = false

[dev-dependencies.tempfile]
version = "3"

[lints.clippy]
allow_attributes = "warn"
assigning_clones = "warn"
inefficient_to_string = "warn"
large_futures = "warn"
needless_pass_by_value = "warn"
or_fun_call = "warn"
uninlined_format_args = "warn"
unnecessary_lazy_evaluations = "warn"
used_underscore_binding = "warn"

[lints.rust]
unused_qualifications = "deny"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    'cfg(datafusion_coop, values("tokio", "tokio_fallback", "per_stream"))',
    "cfg(tarpaulin)",
    "cfg(tarpaulin_include)",
]
