Age | Commit message (Collapse) | Author |
|
It is customary in Rust to implement the Default trait for types that
can have a new method that takes no arguments. However, that's not
always wanted.
I've marked all the structures that have a new without arguments but
don't implement Default, so that if we get more of them, clippy will
warn.
Found by clippy lint new_without_default:
https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default
|
|
|
|
- See #627.
|
|
|
|
- All packets should be considered equal if the serialized OpenPGP
form is equal, modulo framing (i.e. CTB type, packet length
encoding, partial body chunking).
- In cases this may lead to surprising outcomes, discuss this in the
documentation, and provide additional equality predicates.
- Fixes #92.
|
|
- Packet bodies can now be either unprocessed (e.g. compressed,
encrypted), processed (e.g. uncompressed, decrypted), or
structured (e.g. parsed into packets).
- Make the container types deref to Container, and container deref
to packet bodies.
- This cleanly avoids the confusion when serializing containers: We
can serialize compressed data packets with either body, but we can
only serialize encryption containers with unprocessed bodies.
- Fixes #187.
|
|
|
|
- We explicitly exclude the common fields.
- See #92.
|
|
- This was only implemented for the container types because
previously, the container logic was implemented in Common. That
is no longer the case and explicit forwarders for the Container
type are added.
|
|
- Compute a digest over the streamed data and use it to implement
equality.
- Fixes #93.
|
|
- If a container was streamed, we can no longer compare it to other
packets. Keep track of that, and use it in Container::PartialEq.
- See #93.
|
|
- Vec::with_capacity(0) is guaranteed not to allocate, and the
Option encodes no other information. This simplifies code a lot.
|
|
- This allows us to implement PartialEq and related traits more
selectively. See #93.
|
|
- 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.
|
|
- See #228.
|
|
- See #173.
|
|
- Rename functions that consume their receiver but are called
.to_...() to .into_...().
- For the packet types, simply drop the conversion function in favor
of using the From trait.
- Fixes #160.
|
|
|
|
- Move the modules containing the packet types to the
openpgp::packet module, aligning the layout of the files with the
exposed API.
|