Cargo Features

[dependencies]
opendp = { version = "0.9.2", default-features = false, features = ["floating-point", "contrib", "honest-but-curious", "untrusted", "use-openssl", "test-plot", "ffi", "derive", "bindings-python", "bindings", "partials"] }
default = partials, use-openssl

These default features are set whenever opendp is added without default-features = false somewhere in the dependency tree.

floating-point untrusted?
contrib untrusted?

Affects opendp::interactive, transformations::quantile_score_candidates

honest-but-curious untrusted?

Affects ffi::opendp_transformations__make_identity

untrusted = contrib, floating-point, honest-but-curious
use-openssl default = openssl

Affects samplers::fill_bytes

test-plot = vega_lite_4

for plotting in unit tests

ffi bindings? = cbindgen, lazy_static

include extern "C" functions in cdylib

Affects opendp::ffi

derive bindings? partials = opendp_tooling, proc-macro2, syn

execute proc macros to insert proof links

Enables full of opendp_derive

bindings-python = bindings

deprecated

bindings bindings-python? = derive, ffi

generate language bindings

partials default = derive

generate "then_xxx" functions in Rust for "make_xxx" functions whose first two arguments are the metric space

Enables partials of opendp_derive

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

openssl use-openssl
opendp_tooling derive?
lazy_static ffi?
vega_lite_4 test-plot?

Enables vega_lite_4 ^0.6.0

syn build derive?

Enables syn ^1.0

proc-macro2 build derive?
cbindgen build ffi?

Enables cbindgen ^0.20.0