[package]
edition = "2024"
rust-version = "1.88"
name = "parzen"
version = "0.2.0"
authors = [
"Thomas Santerre <opensource@moderately.ai>",
"Moderately AI Inc. <opensource@moderately.ai>",
]
build = false
exclude = [
".github/**",
"scripts/**",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance Tree-structured Parzen Estimator for Bayesian optimization"
homepage = "https://github.com/moderately-ai/parzen"
documentation = "https://docs.rs/parzen"
readme = "README.md"
keywords = [
"optimization",
"bayesian",
"tpe",
"hyperparameter",
"search",
]
categories = [
"algorithms",
"mathematics",
"science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/moderately-ai/parzen"
[package.metadata.docs.rs]
all-features = true
[features]
default = ["serde"]
serde = ["dep:serde"]
[lib]
name = "parzen"
path = "src/lib.rs"
[[test]]
name = "edge_cases"
path = "tests/edge_cases.rs"
[[test]]
name = "priors"
path = "tests/priors.rs"
[[test]]
name = "properties"
path = "tests/properties.rs"
[[test]]
name = "public_api"
path = "tests/public_api.rs"
[[test]]
name = "quality"
path = "tests/quality.rs"
[[bench]]
name = "suggestion"
path = "benches/suggestion.rs"
harness = false
[dependencies.hashbrown]
version = "=0.17.1"
[dependencies.libm]
version = "=0.2.16"
[dependencies.rand]
version = "=0.9.3"
[dependencies.rand_distr]
version = "=0.5.1"
[dependencies.serde]
version = "=1.0.228"
features = ["derive"]
optional = true
[dependencies.smallvec]
version = "=1.15.1"
[dev-dependencies.criterion]
version = "=0.8.2"
features = ["cargo_bench_support"]
default-features = false
[dev-dependencies.proptest]
version = "=1.11.0"
[dev-dependencies.serde_json]
version = "=1.0.149"
features = ["arbitrary_precision"]
[lints.clippy]
dbg_macro = "deny"
expect_used = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
panic = "allow"
print_stderr = "deny"
print_stdout = "deny"
unwrap_used = "allow"
[lints.clippy.all]
level = "deny"
priority = -1
[lints.clippy.cargo]
level = "allow"
priority = -1
[lints.clippy.nursery]
level = "allow"
priority = -1
[lints.clippy.pedantic]
level = "allow"
priority = -1
[lints.rust]
unsafe_code = "deny"
[profile.dev]
debug = "line-tables-only"
split-debuginfo = "unpacked"
[profile.dev.package."*"]
opt-level = 1