summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2018-09-07Tidy parse_param_contentThomas Hurst
2018-09-07Convert try! to ?Thomas Hurst
2018-09-07Tidy is_boundary()Thomas Hurst
2018-09-07Tidy MailHeader::get_keyThomas Hurst
2018-09-05Use i64::from(x) over x as i64Thomas Hurst
clippy:cast_lossless
2018-09-05Use if let Ok() over single-armed match { .. }Thomas Hurst
clippy:single_match
2018-09-05Use while let Some(..) over loop { match { .. }}Thomas Hurst
This looks like it should be a map().collect(), but do the smaller change first. clippy:while_let_on_iterator
2018-09-05map(|x| Some(x)) -> map(Some)Thomas Hurst
clippy:redundant_closure
2018-09-05Use foo[] instead of .get().unwrap()Thomas Hurst
clippy:get_unwrap
2018-09-05Use unwrap_or_else() and unwrap_or_default()Thomas Hurst
This is particularly good for fallbacks which allocate, like String::new() and "bla".to_string(). len() is mostly to shut up clippy. clippy:or_fun_call
2018-09-05Use Struct { foo } over Struct { foo: foo }Thomas Hurst
clippy:redundant_field_names
2018-09-05Use a char rather than a &str for single-char find()Thomas Hurst
clippy:single_char_pattern
2018-09-05Use foo += bar over foo = foo + barThomas Hurst
clippy:assign_op_pattern
2018-09-04Fix #26: Incorrect unwrap() guard in is_boundary()Thomas Hurst
Guarding line.chars().nth(n) by enforcing n <= line.len() is incorrect, because len() operates in bytes, not Unicode characters. Drop the guard and make use of nth()'s Option to conditionally check the character if it's within bounds. Add a test to prevent regressions.
2018-05-23Fix indentationKartikaya Gupta
2018-05-23parse_mail: Handle missing terminating boundaries in multipart emails.Darius Jahandarie
Instead of erroring when there is no terminating boundary, assume the end of the part is the end of the email.
2018-04-18MailHeader::get_value: do not add space if special char parsedRomain Porte
2018-04-03Update quoted_printable and base64 dependenciesKartikaya Gupta
2017-10-14Add missing function docKartikaya Gupta
2017-10-14Don't expose the function to convert disposition typeKartikaya Gupta
2017-10-14Update documentation and doc-tests for new content-disposition changesKartikaya Gupta
2017-10-12rustfmtYoung Wu
2017-10-12Store all params of Content-Type into BTreeMap<String, String>Young Wu
2017-10-12Add Content-Disposition to mailYoung Wu
2016-12-26rustfmtKartikaya Gupta
2016-12-26add `get_body_raw`Wu Young
2016-12-23add name field to ParsedContentTypeWu Young
2016-12-04Followup to 9f8013c2 (fix for issue #7) - deal with empty messagesKartikaya Gupta
2016-12-04Fix for issue #7 - deal with lack of headersKartikaya Gupta
2016-12-04Less allocation by using case insensitive string comparisonJos van den Oever
2016-12-04Rename test and check for body as wellKartikaya Gupta
2016-12-03Fix panic when the mail body is missingJos van den Oever
2016-11-11Drop the redundant get_*_ci methods from MailHeaderMapBruce Guenter
2016-11-11Make MailHeaderMap perform case-insensitive searchesBruce Guenter
The trait MailHeaderMap has two methods for searching headers, normal and case-insensitive. This documentation says: > According to the spec the mail headers are supposed to be > case-sensitive, but in real-world scenarios that's not always the > case. Actually, the spec says nothing that headers supposed to case-sensitive, and historical precedent is to be case-insensitive. Certainly, all the mail processing software I am familiar with (Thunderbird, qmail, ezmlm, and mutt) treat headers as case insensitive. RFC 822 section 3.4.7 says: > When matching any other syntactic unit, case is to be ignored. For > example, the field-names "From", "FROM", "from", and even "FroM" are > semantically equal and should all be treated identically. While RFC 2822 did drop that section (and RFC 5322 didn't restore it), others interpret other parts to indicate case insensitivity. https://stackoverflow.com/a/6143644 > RFC 5322 does actually specify this, but it is very indirect. https://www.gnu.org/software/emacs/manual/html_node/emacs/Mail-Headers.html > Upper and lower case are equivalent in field names. https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.processors.email.ExtractEmailHeaders/index.html > NOTE the header key is case insensitive This change makes all header searches case insensitive.
2016-10-02rustfmtKartikaya Gupta
2016-10-02Update main examples to include a dateparse usageKartikaya Gupta
2016-10-02Add dateparse documentationKartikaya Gupta
2016-10-02Add list of textual timezones from RFC 822Kartikaya Gupta
2016-10-02Expose the dateparse module from mailparseKartikaya Gupta
2016-10-02Fix dateparse to not overflow on larger timezonesKartikaya Gupta
2016-09-27Update dateparse to convert to epoch timestampsKartikaya Gupta
2016-09-25Add initial dateparse codeKartikaya Gupta
2016-06-22Add case-insensitive accessors for headersKartikaya Gupta
2016-06-22Handle case where an encoded-word has trailing whitespace inside the encodingKartikaya Gupta
2016-06-22Recognize encoded words in more placesKartikaya Gupta
2016-06-22Accept lowercase transfer-codings for the encoded-wordKartikaya Gupta
2016-06-22Allow quoted-printable header words to be wrapped in quotesKartikaya Gupta
2016-06-18rustfmtKartikaya Gupta
2016-06-18Make formatting a little prettier using concatKartikaya Gupta
2016-06-18Add rustdoc to the source codeKartikaya Gupta