Cargo Features

coap-message-utils has no features set by default.

[dependencies]
coap-message-utils = { version = "0.3.8", features = ["error_unprocessed_coap_option", "error_request_body_error_position", "error_max_age", "error_title", "defmt_0_3"] }
error_unprocessed_coap_option

Feature flags

Details of the Error struct

Without these, the [Error] struct is just a code u8.

Allow storing the RFC9290 "Unprocessed CoAP option" problem detail in Bad Option errors, and emit it in CBOR payloads. If this feature is not enabled, any such detail provided in errors is silently not emitted.

error_request_body_error_position

Allow storing the RFC9290 "Request Body Error Position" problem detail in Bad Request errors, and emit it in CBOR payloads. If this feature is not enabled, any such detail provided in errors is silently not emitted.

error_max_age

Store a Max-Age of the error. The method [Error::with_max_age()] is only available when this feature is enabled.

error_title

Store and render the title of the error (for use as a diagnostic payload or as RFC9290 "Title" problem detail). If this feature is not enabled, any such detail provided in errors is silently not emitted.

The detail is also stored under certain debugging conditions (currently associated with debug_assert, but the condition may change) for the mere benefit of enhancing the Debug implementation's usability.

When other details are present (so that RFC9290 format is used), the title is only shown if the underlying message provides promotion to a MutableWritableMessage (as is the case with many implementations), otherwise it is omitted for lack of an unbounded buffer to render the message in.

defmt_0_3

Derive defmt::Format 0.3 for Error

Enables defmt