filemanager 0.1.4

Unified file abstraction for local and cloud files with caching options and support for multiple formats.
Documentation
[package]
name = "filemanager"
version = "0.1.4"
edition = "2021"
description = "Unified file abstraction for local and cloud files with caching options and support for multiple formats."
license = "Apache-2.0"

[dependencies]
thiserror = { workspace = true }
memmap2 = { workspace = true }
tempfile = { workspace = true }
object_store = {  workspace = true, optional = true, features = [
    "aws",
    "azure",
    "gcp",
    "http",
] }
futures = { workspace = true, optional = true }
tokio = { workspace = true, optional = true, features = ["rt-multi-thread"] }
url = { workspace = true, optional = true }
parquet = { workspace = true, default-features = true, optional = true }
arrow = { workspace = true, default-features = true, optional = true }
rusqlite = { workspace = true, optional = true, features = ["bundled"] }
serde = { workspace = true, optional = true, features = ["derive"] }
serde_json = { workspace = true, optional = true }
serde_arrow = { workspace = true, default-features = true, optional = true, features = ["arrow-57"] }

[features]
default = ["json", "parquet", "sql", "cloud"]
cloud = ["dep:object_store", "dep:url", "async"]
json = ["dep:serde_json", "dep:serde"]
parquet = ["dep:parquet", "dep:arrow", "dep:serde_arrow", "dep:serde"]
sql = ["dep:rusqlite", "dep:serde", "dep:serde_json"]
async = ["dep:tokio", "dep:futures"]

[dev-dependencies]
tempfile = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }

[lints]
workspace = true