image4 0.5.0

A no_std-friendly library for parsing and generation of Image4 images written in pure Rust.
Documentation

image4-rs

Crate Documentation

A no_std-friendly library for parsing and generation of Image4 images written in pure Rust.

This library is currently in active development. The API is mostly complete, but some major changes are still expected.

Features

  • alloc: enables owned versions of reference types, alloc support in der and decoding of Image4 properties.
  • std: implements std::error::Error trait on provided errors, enables std support in the [der] crate.
  • payload: adds support for Image4 payloads (IM4P files), requires the property feature.
  • manifest: adds support for Image4 manifests (IM4M files), requires the property feature.
  • restore_info: adds support for Image4 restore info (IM4R blobs).
  • image: adds support for full Image4 images, requires payload, manifest and restore_info features.
  • serde: implements (de)serialization for Image4 property lists. Useful for translating payload properties and manifest bodies to other formats and vice versa. Disabled by default.
  • property: adds support for Image4 property lists (enables the property module). These are an implementation detail of the Image4 format and usually shouldn't be used directly.
  • pki: EXPERIMENTAL feature that enables manifest signing, requires manifest and alloc. Disabled by default.

All features except pki are enabled by default.

Minimum Supported Rust Version

This crate requires at least Rust 1.65. An MSRV change will be accompanied by a minor version bump

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.