pomelo-data 0.12.2

Native I/O layer: reads CSV, gzip CSV, and Parquet price and fundamental files into yuzu-core panels.
Documentation
[package]
name = "pomelo-data"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
readme = "README.md"
rust-version.workspace = true
description = "Native I/O layer: reads CSV, gzip CSV, and Parquet price and fundamental files into yuzu-core panels."
keywords = ["backtesting", "finance", "market-data", "parquet", "trading"]
categories = ["finance"]

[dependencies]
yuzu-core = { path = "../yuzu-core", version = "0.12.2" }
ndarray.workspace = true
flate2.workspace = true
rayon.workspace = true
# Optional: Apache Parquet reading (pulls the arrow stack). Off by default so the
# published lib and default builds stay lean (CSV/gzip need no extra deps). MSRV
# 1.85 for parquet 59+, within the workspace's 1.86.
parquet = { version = "59", default-features = false, features = ["arrow", "snap", "zstd", "lz4"], optional = true }
arrow-array = { version = "59", default-features = false, optional = true }
arrow-cast = { version = "59", default-features = false, optional = true }
arrow-schema = { version = "59", default-features = false, optional = true }
bytes = { version = "1", optional = true }

[features]
# Parquet is on by default so reading `.parquet` inputs works out of the box.
# Consumers that only need CSV/gzip and want to avoid the arrow stack can opt out
# with `default-features = false`.
default = ["parquet"]
# Read Apache Parquet price/fundamental/panel files in addition to CSV & gzip CSV.
parquet = ["dep:parquet", "dep:arrow-array", "dep:arrow-cast", "dep:arrow-schema", "dep:bytes"]