7 releases (breaking)
0.7.0 | Jul 7, 2023 |
---|---|
0.6.0 | Jun 15, 2023 |
0.5.0 | May 31, 2023 |
0.4.0 | May 23, 2023 |
0.1.0 | May 9, 2023 |
#1174 in Encoding
Used in image4-util
145KB
3K
SLoC
image4-rs
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 inder
and decoding of Image4 properties.std
: implementsstd::error::Error
trait on provided errors, enablesstd
support in theder
crate.payload
: adds support for Image4 payloads (IM4P files), requires theproperty
feature.manifest
: adds support for Image4 manifests (IM4M files), requires theproperty
feature.restore_info
: adds support for Image4 restore info (IM4R blobs).image
: adds support for full Image4 images, requirespayload
,manifest
andrestore_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 theproperty
module). These are an implementation detail of the Image4 format and usually shouldn't be used directly.signature
: Enables integration with thesignature
crate inmanifest
module, requiresmanifest
feature. Disabled by default.x509-cert
: Enables integration with thex509-cert
crate inmanifest
module, requiresmanifest
andalloc
features. Disabled 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
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
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.
Dependencies
~0.6–1.4MB
~30K SLoC