[package]
name = "hyperfile"
version = "0.2.0"
edition = "2024"
rust-version = "1.85"
description = "A file-like interface abstraction layer provides random read and write capabilities for S3"
authors = ["Dai Yiyang"]
license = "Apache-2.0"
categories = ["asynchronous", "filesystem", "data-structures"]
keywords = ["file", "object-storage", "s3"]
homepage = "https://github.com/hyperfile/hyperfile"
repository = "https://github.com/hyperfile/hyperfile"
[dependencies]
log = "0.4.26"
env_logger = "0.11.6"
serde = { version = "1.0.218", features = ["derive"] }
tokio = { version = "1", features = ["full"] }
libc = "0.2.170"
chrono = "0.4.39"
bytes = "1.10.0"
lru = "0.14.0"
rand = { version = "0.9.0", optional = true }
rangemap = { version = "1.5.1", optional = true }
aws-config = { version = "1.5.17", features = ["behavior-version-latest"] }
aws-sdk-s3 = "1.77.0"
futures = "0.3.31"
ulid = "1.2.1"
foyer = "0.19.2"
serde_json = "1.0.145"
btree-ondisk = { version = "0.16.0", default-features = false, features = ["tokio-runtime"] }
hyperfile-reactor = { version = "0.2.0", optional = true }
[dev-dependencies]
rand = "0.9.0"
md5 = "0.7.0"
crc64fast = "1.1.0"
human_bytes = "0.4.3"
[features]
default = ["reactor", "meta_loader_batch"]
meta_loader_batch = []
wal = []
concurrent-segment-build = []
range-lock = ["dep:rangemap"]
reactor = ["dep:hyperfile-reactor", "btree-ondisk/arc", "btree-ondisk/value-check", "btree-ondisk/mt" ]
blocking = ["btree-ondisk/rc"]
bench = ["dep:rand"]