vendor/iceberg-datafusion-arrow59/Cargo.toml
# iceberg-datafusion-arrow59 — the Iceberg DataFusion integration, which upstream
# MOVED out of apache/iceberg-rust on 2026-09-17 (#3228) into
# apache/datafusion-iceberg (crate `datafusion-iceberg`). Vendored from
# apache/datafusion-iceberg a2bc9427d0659591b5f8122b90fec710fe2f5de6
# (2026-10-01), which is on datafusion 55 (the arrow-59 line), built against
# `iceberg-arrow59` (apache/iceberg-rust main e9c22bf). Plus skade's patches
# (README.md). Rebased 2026-10-02 from the iceberg-rust v0.9.1-rc.3 copy.
#
# The library keeps the name skade's code already uses, `iceberg_datafusion`
# (upstream renamed it `iceberg_datafusion`); the vendored tests and doc
# examples are rewritten to match. Version 0.11.0 for the same reasons as
# `iceberg-arrow59`.
[package]
name = "iceberg-datafusion-arrow59"
version = "0.11.0"
edition = "2024"
description = "Apache Iceberg DataFusion integration (apache/datafusion-iceberg a2bc942, datafusion 55 / arrow 59) on iceberg-arrow59, plus skade's patches. Drop-in `iceberg_datafusion` library."
homepage = "https://datafusion.apache.org"
repository = "https://git.gunnar.rs/nordisk/skade"
readme = "README.md"
keywords = ["iceberg", "integrations", "datafusion"]
categories = ["database"]
license = "Apache-2.0"
# Keep the published tarball lean: bench/test fixtures stay out.
exclude = ["testdata/", "DEPENDENCIES.rust.tsv", "Cargo.toml.orig", "public-api.txt", ".nornir/", ".cargo_vcs_info.json"]
# `iceberg_datafusion`, the name skade's code already uses (upstream calls it
# `datafusion_iceberg`) — see the header.
[lib]
name = "iceberg_datafusion"
path = "src/lib.rs"
[dependencies]
async-trait = "0.1.89"
dashmap = "6"
datafusion = "55.0.0"
futures = "0.3"
iceberg = { package = "iceberg-arrow59", version = "0.11.0", path = "../iceberg-arrow59" }
parquet = "59.2"
tokio = { version = "1.47", features = ["sync", "rt-multi-thread"], default-features = false }
uuid = { version = "1.18", features = ["v7"] }
[dev-dependencies]
# iceberg-rust main 36eae29 moved `test_runtime` out of `iceberg::test_utils`.
iceberg_test_utils = { path = "../iceberg-test-utils", features = ["tests"] }
expect-test = "1"
parquet = "59.2"
tempfile = "3.18"
[lints.rust]
unused_qualifications = "deny"