[package]
edition = "2024"
name = "nuts-rs"
version = "0.18.2"
authors = [
"Adrian Seyboldt <adrian.seyboldt@gmail.com>",
"PyMC Developers <pymc.devs@gmail.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Sample from unnormalized densities using Hamiltonian MCMC"
readme = "README.md"
keywords = [
"statistics",
"bayes",
]
license = "MIT"
repository = "https://github.com/pymc-devs/nuts-rs"
[features]
arrow = [
"dep:arrow",
"dep:arrow-schema",
]
default = ["parallel"]
ndarray = ["dep:ndarray"]
parallel = ["dep:rayon"]
zarr = [
"dep:zarrs",
"dep:tokio",
]
[lib]
name = "nuts_rs"
path = "src/lib.rs"
[[example]]
name = "arrow_trace"
path = "examples/arrow_trace.rs"
required-features = ["arrow"]
[[example]]
name = "csv_trace"
path = "examples/csv_trace.rs"
[[example]]
name = "hashmap_storage"
path = "examples/hashmap_storage.rs"
[[example]]
name = "ndarray_storage"
path = "examples/ndarray_storage.rs"
required-features = ["ndarray"]
[[example]]
name = "zarr_async_trace"
path = "examples/zarr_async_trace.rs"
required-features = ["zarr"]
[[example]]
name = "zarr_trace"
path = "examples/zarr_trace.rs"
required-features = ["zarr"]
[[test]]
name = "sample_normal"
path = "tests/sample_normal.rs"
required-features = ["zarr"]
[[bench]]
name = "sample"
path = "benches/sample.rs"
harness = false
[dependencies.anyhow]
version = "1.0.72"
[dependencies.arrow]
version = "58.0.0"
optional = true
[dependencies.arrow-schema]
version = "58.0.0"
features = ["canonical_extension_types"]
optional = true
[dependencies.faer]
version = "0.24.0"
features = ["linalg"]
default-features = false
[dependencies.itertools]
version = "0.14.0"
[dependencies.ndarray]
version = "0.17.1"
optional = true
[dependencies.nuts-derive]
version = "0.2.0"
[dependencies.nuts-storable]
version = "0.3.0"
[dependencies.pulp]
version = "0.22.2"
[dependencies.rand]
version = "0.10.0"
features = ["chacha"]
[dependencies.rand_distr]
version = "0.6.0"
[dependencies.rayon]
version = "1.10.0"
optional = true
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.thiserror]
version = "2.0.3"
[dependencies.tokio]
version = "1.0"
features = [
"rt",
"sync",
"fs",
]
optional = true
[dependencies.zarrs]
version = "0.23.0"
features = [
"filesystem",
"gzip",
"sharding",
"async",
]
optional = true
[dev-dependencies.approx]
version = "0.5.1"
[dev-dependencies.criterion]
version = "0.8.0"
[dev-dependencies.equator]
version = "0.6.0"
[dev-dependencies.ndarray]
version = "0.17.1"
[dev-dependencies.nix]
version = "0.31.0"
features = ["sched"]
[dev-dependencies.object_store]
version = "0.13.0"
[dev-dependencies.pretty_assertions]
version = "1.4.0"
[dev-dependencies.proptest]
version = "1.6.0"
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.tempfile]
version = "3.0"
[dev-dependencies.tokio]
version = "1.0"
features = [
"rt",
"rt-multi-thread",
]
[dev-dependencies.zarrs_object_store]
version = "0.6.0"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.4"
features = ["wasm_js"]
[profile.bench]
opt-level = 2
lto = "fat"
codegen-units = 1
debug = 2