[package]
name = "tdc_toolkit"
description = "Rust CLI and library, as well as Python bindings, for working with time-to-digital converters (TDCs) such as the PicoQuant MultiHarp 160."
version = "0.4.2"
license = "BSD-3-Clause"
repository = "https://github.com/moonshot-nagayama-pj/tdc_toolkit"
keywords = ["tdc", "multiharp", "physics", "quantum"]
categories = ["api-bindings", "command-line-utilities", "date-and-time", "science"]
links = "mhlib"
edition = "2024"
rust-version = "1.95"
exclude = [
".devcontainer",
".editorconfig",
".github",
".vscode",
"benches",
"sample_*",
]
[lib]
name = "tdc_toolkit"
crate-type = ["cdylib", "rlib"]
[dependencies]
anyhow = "1.0.99"
arrow = "56.0.0"
bitflags = "2.10.0"
chrono = "0.4.41"
clap = { version = "4.5.45", features = ["derive"] }
humantime = "2.2.0"
indicatif = "0.18.0"
parquet = "56.0.0"
pyo3 = { version = "0.26", features = ["anyhow"], optional = true }
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.143"
strum = "0.27.2"
strum_macros = "0.27.2"
[build-dependencies]
bindgen = "0.72.0"
[dev-dependencies]
criterion = "0.7.0"
yare = "3.0.0"
[[bench]]
name = "raw_stream_benchmark"
harness = false
[features]
multiharp = []
python = ["dep:pyo3"]
[lints.clippy]
all = "deny"
pedantic = "deny"
cargo = "deny"
missing_errors_doc = { level = "allow", priority = 1 }