1aim / DELETE-THIS-mail-types

Encoding/Decoding (roughly read Generating/Parsing) of mails in rust, including limited unicode support
0 stars 0 forks source link

Split up `mail-codec` in multiple crates #25

Closed rustonaut closed 6 years ago

rustonaut commented 7 years ago

Possible approach:

Note: all encoding specific parts are behind a default active feature, this can be tricky wrt. the header map

rustonaut commented 7 years ago

also make following parts it's own crates:

rustonaut commented 7 years ago

utils::vec1 and codec::{quoted_printable, quoted_string, base64, idna, ?mime?} basically only provide glue for "external" thinks (and sometimes define them them self).

Move them to extern, create crates for all which define there stuff them self, just leaving the glue behind.

rustonaut commented 6 years ago

done. new layout is:

*mail-codec-composition <- [mail-codec, mail-codec-headers, mail-codec-core]
*mail-codec <- [mail-codec-headers, mail-codec-core]
mail-codec-headers <- [mail-codec-core]
mail-codec-core <- []

Consumers should either mainly depend on mail-codec or on mail-codec-composition. Through reexport most parts of mail-codec-* dependencies are made available in the mail-codec crate.

as well as following newly created "external" dependencies: lut, vec1, soft-ascii-string, total-order-multi-map