[workspace]
members = [".", "sdfrust-python"]
resolver = "2"
[package]
name = "sdfrust"
version = "0.5.0"
edition = "2024"
rust-version = "1.85"
authors = ["Hosein Fooladi"]
description = "A fast, pure-Rust parser for SDF, MOL2, and XYZ chemical structure files"
license = "MIT"
repository = "https://github.com/hfooladi/sdfrust"
readme = "README.md"
documentation = "https://docs.rs/sdfrust"
homepage = "https://github.com/hfooladi/sdfrust"
keywords = ["chemistry", "sdf", "mol2", "xyz", "cheminformatics"]
categories = ["science", "parser-implementations"]
exclude = [
"tests/",
"benches/",
".github/",
"sdfrust-python/",
"ROADMAP.md",
"BENCHMARK_RESULTS.md",
"CONTRIBUTORS.md",
"CLAUDE.md",
]
[dependencies]
thiserror = "2.0"
nalgebra = { version = "0.32", optional = true }
flate2 = { version = "1.0", optional = true }
[features]
default = []
geometry = ["nalgebra"]
gzip = ["flate2"]
[dev-dependencies]
tempfile = "3.14"
criterion = { version = "0.5", features = ["html_reports"] }
rand = "0.8"
[[bench]]
name = "sdf_parse_benchmark"
harness = false
[[bench]]
name = "mol2_parse_benchmark"
harness = false
[[bench]]
name = "roundtrip_benchmark"
harness = false