Skip to main content

Crate taceo_oprf

Crate taceo_oprf 

Source
Expand description

§TACEO:OPRF Umbrella Crate

taceo-oprf bundles all TACEO:OPRF sub-crates into a single crate so you can include only the features you need, without importing each crate separately.

§Modules

  • [client] – high-level OPRF client functionality (requires the client feature).
  • core – core OPRF primitives and cryptography (requires the core feature).
  • [dev_client] – developer-focused client utilities for testing and mocking (requires the dev-client feature, implies client).
  • [service] – OPRF service nodes, background tasks, and orchestration (requires the service feature).
  • [types] – shared types and structs across OPRF crates (requires the types feature).
  • [anvil] – test helpers for deploying the OPRF contracts to a local Anvil devnet (requires the anvil feature; not included in full).

§Features

Each module is optional. Enable only the modules you need to reduce compile time and dependencies.

[dependencies]
taceo-oprf = { version = "0.7.1", features = ["client", "core"] }

The feature full enables all modules with their transitive deps (except the test feature anvil).

§Transitive sub-crate features

The umbrella forwards each sub-crate feature as its own flag so consumers can opt in or out without importing the individual crates. All of these use the weak-dependency syntax (dep?/feature) and therefore do not activate the parent crate on their own — the corresponding crate-selection feature (core, service, types) must also be enabled.

Umbrella featureForwarded toNotes
postgresoprf-service/postgresOn by default via full
chainoprf-types/chainOn by default via full

The anvil feature is not forwarded from a sub-crate; it enables the [anvil] module directly and pulls in alloy, eyre, and serde_json. It is opt-in only and, unlike the modules above, is not enabled by full.