Cargo Features

[dependencies]
image4 = { version = "0.7.0", default-features = false, features = ["std", "alloc", "payload", "manifest", "restore_info", "property", "image", "signature", "serde", "x509-cert"] }
default = alloc, image, manifest, payload, property, restore_info, std

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

std default = alloc

Enables std of der, optional serde, and optional signature

serde:

Provide impls for common standard library types like Vec<T> and HashMap<K, V>.
Requires a dependency on the Rust standard library.

alloc default signature? std

Enables alloc of der and optional serde

serde:

Provide impls for types in the Rust core allocation and collections library including String, Box<T>, Vec<T>, and Cow<T>. This is a subset of std but may be enabled without depending on all of std.

payload default image = property

Affects image4::payload, util::decode_opt_field, util::decode_opt_context_specific_field, util::decode_and_check_magic

manifest default image signature? = property

Affects image4::manifest, util::decode_and_check_magic

restore_info default image

Affects image4::restore_info, util::decode_and_check_magic

property default manifest payload

Affects image4::property, util::shift_error_position

image default = manifest, payload, restore_info

Affects image4::image, util::encoded_opt_context_specific_field_len, util::encode_opt_context_specific_field

signature = alloc, manifest

Enables signature

serde = serde_bytes

Enables serde

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.

x509-cert implicit feature
serde_bytes serde?