You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The default features are always enabled unless specifically disabled. The default feature enables the feature safe_api.
Example:
[dependencies.orion]
version = "*"# Replace * with the most recent version
safe_api
This feature enables the optional dependencies on getrandom and ct-codecs. getrandom is the dependency that allows for secure generation of keys, nonces, and other types that require cryptographically strong randomness. ct-codecs is used for the high-level API only, whereas getrandom also enables hazardous-level functionality.
All functionality that is enabled through the two aforementioned dependencies must be enabled through safe_api. In other words, you cannot specify the getrandom feature (a different feature for each dependency is automatically generated) to make the T::generate() APIs are available for newtypes.
The safe_api feature requires access to std.
Example: Same as default.
serde
This enables (de)serialization of select types by enabling the optional serde dependency. The dependency itself uses Rust alloc module, because it requires heap-allocations.
The serde feature is expected to be enabled with either Orion's alloc or safe_api/default features.
Example:
[dependencies.orion]
version = "*"# Replace * with the most recent versionfeatures = ["serde"]
[dependencies.orion]
version = "*"# Replace * with the most recent versiondefault-features = falsefeatures = ["alloc", "serde"]
alloc
The alloc feature is defined for APIs that require heap-allocations but without the use of std. The feature enables the use of Argon2i in hazardous, where the user has access to a heap-allocator but not std.
It is assumed that if alloc is enabled, safe_api is not.
Example:
[dependencies.orion]
version = "*"# Replace * with the most recent versiondefault-features = falsefeatures = ["alloc"]
no_std
Orion is defined as no_std as long as safe_api is not enabled. When no additional features have been enabled and the default is disabled (as shown in the example below), Orion performs no heap allocations.
Example:
[dependencies.orion]
version = "*"# Replace * with the most recent versiondefault-features = false