Age | Commit message (Collapse) | Author |
|
|
|
|
|
- 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.
|
|
|
|
|
|
- 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.
|
|
|
|
|
|
|
|
- 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.
|
|
|
|
|
|
|
|
- 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.
|
|
|
|
|
|
- Make sure that we can parse inputs using the name-addr parser that
have an empty local part (a la '""@example.org').
|
|
|
|
|
|
- Add `AddrSpecOrOther` and `NameAddrOrOther`.
|
|
- Add variants of the AngleAddr and NameAddr productions that
recognize invalid email addresses.
|
|
- 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.
|
|
- 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.
|
|
- Closes #281
|
|
- Change the error handler for the tests to work with multi-byte
characters.
|
|
|
|
|
|
|
|
- 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.
|
|
- Also bump rfc2822 to 0.6.0. After all, we create tags for the
versions.
|
|
|
|
- An RFC 2882 mail name-addr parser.
|