summaryrefslogtreecommitdiffstats
path: root/rfc2822
AgeCommit message (Collapse)Author
2019-10-30Update authors.Neal H. Walfield
2019-10-25Release 0.11.0.v0.11.0Justus Winter
2019-10-25rfc2822,openpgp: Move rfc2822 crate to be a private mod in openpgpNeal H. Walfield
- The rfc2822 crate doesn't implement all of RFC 2822. Moreover, it includes a number of extensions. This makes rfc2822 a misnomer. - RFC 2822 is actually obsoleted by RFC 5322. This means that if we ever add support for RFC 5322, it will be an even worse misnomer. - Move the whole crate into the openpgp crate. Note: we don't directly export the API; it is only used internally by packet::userid. - Closes #279.
2019-09-06Release 0.10.0.v0.10.0Justus Winter
2019-09-06Bump quickcheck to 0.9, rand to 0.7.Justus Winter
2019-08-26rfc2822: Optimize grammar.Justus Winter
- By providing a common symbol production, this patch reduces the size of the rust code generated by the current lalrpop by 496KiB, or 3.6%. The size of the compiled binary in release mode is reduced by 20KiB, and the time it takes to compile it is reduced by 5% in both release and debug mode.
2019-08-22Trim dependencies of crates 'rand' and 'quickcheck'.Justus Winter
2019-08-20rfc2822: Suppress noisy warnings from the tests.Justus Winter
2019-07-15Switch to Rust 2018.Justus Winter
2019-07-15Prepare for Rust 2018.Justus Winter
- This is the result of running `cargo fix --edition`, with some manual adjustments. - The vast majority of changes merely qualify module paths with 'crate::'. - Two instances of adding an anonymous pattern to a trait's function. - `async` is a keyword in Rust 2018, and hence it needs to be escaped (e.g. in the case of the net::r#async module). - The manual adjustments were needed due to various shortcomings of the analysis employed by `cargo fix`, e.g. unexpanded macros, procedural macros, lalrpop grammars.
2019-07-08Release 0.9.0.v0.9.0Justus Winter
2019-07-08rfc2822: Clarify what UTF-8 text meansNeal H. Walfield
2019-07-08rfc2822: Document that unquoted @s are accepted by display-nameNeal H. Walfield
2019-07-08rfc2822: Support unquoted @s in the display nameNeal H. Walfield
- Some OpenPGP implementations generate user ids that look like: foo@bar.com <foo@bar.com> foo@bar.com is not a valid display-name, because the '@' needs to be quoted. Support this variant anyway.
2019-06-14Release 0.8.0.v0.8.0Justus Winter
2019-06-06openpgp, rfc2822: Drop force-rerun hack.Justus Winter
2019-06-05rfc2822: Add more testsNeal H. Walfield
- Make sure that we can parse inputs using the name-addr parser that have an empty local part (a la '""@example.org').
2019-06-05rfc2822: Improve expect messageNeal H. Walfield
2019-05-31rfc2822: Provide a mechanism to escape display namesNeal H. Walfield
2019-05-28rfc2822: Export parses that recognize invalid email addressesNeal H. Walfield
- Add `AddrSpecOrOther` and `NameAddrOrOther`.
2019-05-28rfc2822: Add more variants that recognize invalid email addressesNeal H. Walfield
- Add variants of the AngleAddr and NameAddr productions that recognize invalid email addresses.
2019-05-28rfc2822: Add an extended addr-spec that handles invalid addressesNeal H. Walfield
- In the OpenPGP ecosystem, URIs are sometimes used in place of email addresses. This is the case with, for instance, monkey sphere, which generates User IDs of the form: "ssh://server.example.net". Similarly, pEp generates User IDs of the form: "Name <scheme://resource/path>". - Add support for parsing such User IDs by introducing an `addr-spec-or-other` production, which either returns a Component::Address, if it recognizes an email address, or a Component::InvalidAddress, if the text cannot be parsed as an email address.
2019-05-28rfc2822: Use a more appropriate error type for the lexer's errorNeal H. Walfield
- Currently, the lexer returns a failure::Error if there is an error. But, the lexer never returns any errors. - Instead, use an empty enum for errors.
2019-05-24Update to lalrpop 0.17Neal H. Walfield
- Closes #281
2019-05-17rfc2822: Fix debug output to work with multi-byte charactersNeal H. Walfield
- Change the error handler for the tests to work with multi-byte characters.
2019-05-10Release 0.7.0.v0.7.0Justus Winter
2019-04-30rfc2822: Improve documentationNeal H. Walfield
2019-04-30rfc2822: Improve commentsNeal H. Walfield
2019-04-29rfc2822: Use quickcheck. Fix edge cases.Neal H. Walfield
- Use quickcheck to test the parser. - To fix a number of edge cases that it uncovered, don't discard Component::WS, and compress them in components_merge more carefully intelligently. - Update the test vectors, and fix the edge cases.
2019-04-12Release 0.6.0.v0.6.0Justus Winter
- Also bump rfc2822 to 0.6.0. After all, we create tags for the versions.
2019-04-12buffered-reader, rfc2822: Use docs.rs for the documentation.Justus Winter
2019-04-12New crate sequoia-rfc2822.Neal H. Walfield
- An RFC 2882 mail name-addr parser.