[package] name = "imap-codec" description = "Rock-solid and complete codec for IMAP" keywords = ["email", "imap", "codec", "parser"] categories = ["email", "parser-implementations", "encoding", "network-programming"] version = "2.0.0-alpha.5" authors = ["Damian Poddebniak "] repository = "https://github.com/duesee/imap-codec" license = "MIT OR Apache-2.0" edition = "2021" exclude = [ ".github", ] [features] default = ["quirk"] # Expose internal parsers for fuzzing fuzz = [] # IMAP quirks # # These features bypass interoperability issues to allow safe processing of *almost* correct message. quirk = [ #"quirk_crlf_relaxed", #"quirk_id_empty_to_nil", "quirk_missing_text", "quirk_rectify_numbers", "quirk_trailing_space", "quirk_spaces_between_addresses", ] # Make `\r` in `\r\n` optional. quirk_crlf_relaxed = [] # Encode `A ID ()` as `A ID NIL` quirk_id_empty_to_nil = [] # Add missing `text` by adding [" "] "". quirk_missing_text = [] # Rectify (invalid) numbers. quirk_rectify_numbers = [] # Accept spaces between envelope addresses in `FETCH` data response. quirk_spaces_between_addresses = [] # Accept a trailing space in `STATUS` data response. quirk_trailing_space = [] # arbitrary = ["imap-types/arbitrary"] arbitrary_simplified = ["imap-types/arbitrary_simplified"] serde = ["imap-types/serde"] tag_generator = ["imap-types/tag_generator"] # IMAP starttls = ["imap-types/starttls"] ext_condstore_qresync = ["imap-types/ext_condstore_qresync"] ext_id = ["imap-types/ext_id"] ext_login_referrals = ["imap-types/ext_login_referrals"] ext_mailbox_referrals = ["imap-types/ext_mailbox_referrals"] ext_metadata = ["imap-types/ext_metadata"] # [dependencies] abnf-core = "0.6.0" base64 = { version = "0.22", default-features = false, features = ["alloc"] } chrono = { version = "0.4", default-features = false, features = ["alloc"] } imap-types = { version = "2.0.0-alpha.4", path = "../imap-types", default-features = false } nom = { version = "7", default-features = false } log = { version = "0.4.22", default-features = false } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"]