[package]
name = "polars-arrow"
version = { workspace = true }
authors = [
"Jorge C. Leitao <jorgecarleitao@gmail.com>",
"Apache Arrow <dev@arrow.apache.org>",
"Ritchie Vink <ritchie46@gmail.com>",
]
edition = { workspace = true }
homepage = { workspace = true }
license = "MIT AND Apache-2.0"
repository = { workspace = true }
description = "Minimal implementation of the Arrow specification forked from arrow2"
[dependencies]
atoi = { workspace = true, optional = true }
bytemuck = { workspace = true, features = ["must_cast"] }
chrono = { workspace = true }
chrono-tz = { workspace = true, optional = true }
dyn-clone = { version = "1" }
either = { workspace = true }
hashbrown = { workspace = true }
num-traits = { workspace = true }
parking_lot = { workspace = true }
polars-error = { workspace = true }
polars-schema = { workspace = true }
polars-utils = { workspace = true }
serde = { workspace = true, optional = true }
simdutf8 = { workspace = true }
ethnum = { workspace = true }
atoi_simd = { workspace = true, optional = true }
fast-float = { workspace = true, optional = true }
itoa = { workspace = true, optional = true }
itoap = { workspace = true, optional = true }
ryu = { workspace = true, optional = true }
regex = { workspace = true, optional = true }
regex-syntax = { version = "0.8", optional = true }
streaming-iterator = { workspace = true }
indexmap = { workspace = true, optional = true }
arrow-format = { workspace = true, optional = true, features = ["ipc"] }
hex = { workspace = true, optional = true }
lz4 = { version = "1.24", optional = true }
zstd = { workspace = true, optional = true }
futures = { workspace = true, optional = true }
avro-schema = { workspace = true, optional = true }
strength_reduce = { workspace = true, optional = true }
multiversion = { workspace = true, optional = true }
ahash = { workspace = true }
async-stream = { version = "0.3", optional = true }
tokio = { workspace = true, optional = true, features = ["io-util"] }
strum_macros = { workspace = true }
[dev-dependencies]
criterion = "0.5"
crossbeam-channel = { workspace = true }
doc-comment = "0.3"
flate2 = { workspace = true, default-features = true }
proptest = { version = "1", default-features = false, features = ["std"] }
rand = { workspace = true }
sample-arrow2 = "0.17"
sample-std = "0.2"
sample-test = "0.2"
tokio = { workspace = true, features = ["macros", "rt", "fs", "io-util"] }
tokio-util = { workspace = true, features = ["compat"] }
[build-dependencies]
version_check = { workspace = true }
[target.wasm32-unknown-unknown.dependencies]
getrandom = { version = "0.2", features = ["js"] }
[features]
default = []
full = [
"io_ipc",
"io_flight",
"io_ipc_compression",
"io_avro",
"io_avro_compression",
"io_avro_async",
"regex-syntax",
"compute",
"serde",
"chrono-tz",
]
io_ipc = ["arrow-format", "polars-error/arrow-format"]
io_ipc_compression = ["lz4", "zstd", "io_ipc"]
io_flight = ["io_ipc", "arrow-format/flight-data", "async-stream", "futures", "tokio"]
io_avro = ["avro-schema", "polars-error/avro-schema"]
io_avro_compression = [
"avro-schema/compression",
]
io_avro_async = ["avro-schema/async"]
compute_aggregate = ["multiversion"]
compute_arithmetics_decimal = ["strength_reduce"]
compute_arithmetics = ["strength_reduce", "compute_arithmetics_decimal"]
compute_bitwise = []
compute_boolean = []
compute_boolean_kleene = []
compute_cast = ["compute_take", "ryu", "atoi_simd", "itoa", "fast-float"]
compute_comparison = ["compute_take", "compute_boolean"]
compute_hash = ["multiversion"]
compute_take = []
compute_temporal = []
compute = [
"compute_aggregate",
"compute_arithmetics",
"compute_bitwise",
"compute_boolean",
"compute_boolean_kleene",
"compute_cast",
"compute_comparison",
"compute_hash",
"compute_take",
"compute_temporal",
]
serde = ["dep:serde", "polars-schema/serde", "polars-utils/serde"]
simd = []
timezones = [
"chrono-tz",
]
dtype-array = []
dtype-decimal = ["atoi", "itoap"]
bigidx = ["polars-utils/bigidx"]
nightly = []
performant = []
strings = []
temporal = []
[package.metadata.docs.rs]
features = ["full"]
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.cargo-all-features]
allowlist = ["compute", "compute_sort", "compute_hash", "compute_nullif"]