Cargo Features

[dependencies]
imap-codec = { version = "2.0.0-alpha.6", default-features = false, features = ["fuzz", "quirk", "quirk_crlf_relaxed", "quirk_id_empty_to_nil", "quirk_missing_text", "quirk_rectify_numbers", "quirk_excessive_space_quota_resource", "quirk_spaces_between_addresses", "quirk_trailing_space_status", "quirk_trailing_space_capability", "quirk_trailing_space_id", "quirk_trailing_space_search", "quirk_empty_continue_req", "quirk_body_fld_enc_nil_to_empty", "arbitrary", "arbitrary_simplified", "serde", "tag_generator", "starttls", "ext_condstore_qresync", "ext_id", "ext_login_referrals", "ext_mailbox_referrals", "ext_metadata", "ext_namespace", "ext_utf8"] }
default = quirk

The quirk feature is set by default whenever imap-codec is added without default-features = false somewhere in the dependency tree.

fuzz

Expose internal parsers for fuzzing

Affects core::fuzz_tag_imap, imap-codec::fuzz

quirk default = quirk_body_fld_enc_nil_to_empty, quirk_empty_continue_req, quirk_excessive…quota_resource, quirk_missing_text, quirk_rectify_numbers, quirk_spaces_between_addresses, quirk_trailing_space_capability, quirk_trailing_space_id, quirk_trailing_space_search, quirk_trailing_space_status

IMAP quirks

These features bypass interoperability issues to allow safe processing of *almost* correct message.

quirk_crlf_relaxed

Make \r in \r\n optional.

quirk_id_empty_to_nil

Encode A ID () as A ID NIL

quirk_missing_text quirk

Add missing text by adding [" "] "".

quirk_rectify_numbers quirk

Rectify (invalid) numbers.

quirk_excessive_space_quota_resource quirk

Accept excessive space in quota-resource

quirk_spaces_between_addresses quirk

Accept spaces between envelope addresses in FETCH data response.

quirk_trailing_space_status quirk

Accept a trailing space in STATUS data response.

quirk_trailing_space_capability quirk

Accept a trailing space in CAPABILITY data response.

quirk_trailing_space_id quirk

Accept a trailing space in ID data response.

Accept a trailing space in SEARCH data response.

quirk_empty_continue_req quirk

Accept continuation request commands without required space +\r\n

quirk_body_fld_enc_nil_to_empty quirk

Encode NIL body-fld-enc as empty string.

arbitrary

<Forward to imap-types>

Enables arbitrary of imap-types

arbitrary_simplified

Enables arbitrary_simplified of imap-types

serde

Enables serde of imap-types

tag_generator

Enables tag_generator of imap-types

starttls

IMAP

Enables starttls of imap-types

ext_condstore_qresync

Enables ext_condstore_qresync of imap-types

Affects extensions::condstore_qresync

ext_id

Enables ext_id of imap-types

Affects extensions::id

ext_login_referrals

Enables ext_login_referrals of imap-types

ext_mailbox_referrals

Enables ext_mailbox_referrals of imap-types

ext_metadata

Enables ext_metadata of imap-types

Affects extensions::metadata

ext_namespace

Enables ext_namespace of imap-types

Affects extensions::namespace

ext_utf8

Enables ext_utf8 of imap-types

Affects extensions::utf8

Features from optional dependencies

</Forward to imap-types>