twobitreader 0.2.2

Fast 2bit file reader
Documentation
[package]
name = "twobitreader"
version = "0.2.2"
edition = "2024"
authors = ["Andrew Delong <andrew.delong@gmail.com>"]
readme = "README.md"
description = "Fast 2bit file reader"
repository = "https://github.com/andrewdelong/twobitreader-rust"
license = "MIT OR Apache-2.0"
keywords = ["2bit", "twobit", "bioinformatics", "dna", "genome"]
categories = ["science"]
exclude = ["tests/", "benches/", "doc/", "*.code-workspace", ".*", "BENCH.md"]

[features]
python = ["dep:pyo3", "dep:scopeguard"]

[dependencies]
byteorder = "1"
memmap2 = "0"
seq-macro = "0"
pyo3 = { version = "0", optional = true }
scopeguard = { version = "1", optional = true}

# Apple targets need fcntl(F_RDADVISE) to prefetch file ranges; madvise does not work there.
[target.'cfg(target_vendor = "apple")'.dependencies]
libc = "0"

# Windows targets need PrefetchVirtualMemory to prefetch file ranges.
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0", features = ["Win32_System_Memory", "Win32_System_Threading"] }

[dev-dependencies]
flate2 = "1"
itertools = ">=0.13, <1.0"
rayon = "1"

# Cold benchmarks use fcntl(F_NOCACHE) to write an uncached copy of the 2bit file.
[target.'cfg(target_vendor = "apple")'.dev-dependencies]
libc = "0"

[[bench]]
name = "bench_twobitreader"
harness = false

[package.metadata.docs.rs]
rustdoc-args = ["--extend-css", "custom.css"]