narrow 0.15.1

An implementation of Apache Arrow
Documentation
[workspace.package]
version = "0.15.1"
authors = ["Matthijs Brobbel <m1brobbel@gmail.com>"]
edition = "2024"
rust-version = "1.85.1"
description = "An implementation of Apache Arrow"
readme = "README.md"
repository = "https://github.com/mbrobbel/narrow"
documentation = "http://docs.rs/narrow/"
license = "Apache-2.0 OR MIT"
keywords = ["Arrow"]
categories = ["data-structures"]

[workspace]
members = ["narrow-derive"]

[package]
name = "narrow"
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
description.workspace = true
readme.workspace = true
repository.workspace = true
documentation.workspace = true
license.workspace = true
keywords.workspace = true
categories.workspace = true

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

[features]
default = []
arrow-rs = [
    "dep:arrow-array",
    "dep:arrow-buffer",
    "dep:arrow-schema",
    "narrow-derive?/arrow-rs",
]
chrono = ["dep:chrono"]
derive = ["dep:narrow-derive"]
map = ["derive"]
uuid = ["dep:uuid", "arrow-schema?/canonical_extension_types"]

[dependencies]
arrow-array = { version = "57.0.0", default-features = false, optional = true }
arrow-buffer = { version = "57.0.0", default-features = false, optional = true }
arrow-schema = { version = "57.0.0", default-features = false, optional = true }
chrono = { version = "0.4.42", default-features = false, optional = true }
narrow-derive = { path = "narrow-derive", version = "0.15.1", optional = true }
uuid = { version = "1.18.1", default-features = false, optional = true }

[dev-dependencies]
arrow-cast = { version = "57.0.0", default-features = false, features = [
    "prettyprint",
] }
bytes = "1.10.1"
chrono = { version = "0.4.42", default-features = false, features = ["now"] }
criterion = { version = "0.7.0", default-features = false, features = [
    "html_reports",
] }
rand = { version = "0.9.2", default-features = false, features = ["small_rng"] }
rustversion = { version = "1.0.22", default-features = false }
parquet = { version = "57.0.0", default-features = false, features = ["arrow"] }
uuid = { version = "1.18.1", default-features = false }
num-traits = { version = "0.2.19" }

[profile.bench]
lto = true
codegen-units = 1

[[bench]]
name = "narrow"
harness = false
required-features = ["arrow-rs"]

[[example]]
name = "basic"
required-features = ["derive"]

[[example]]
name = "parquet"
required-features = ["arrow-rs", "chrono", "derive", "map", "uuid"]

[[example]]
name = "tpch_lineitem"
required-features = ["arrow-rs", "chrono", "derive"]