mirror of
https://github.com/NLnetLabs/domain.git
synced 2026-09-27 12:14:55 +02:00
- Remove defaults from trait generic type parameters (i.e. TraitName<TypeParameter = ...>) to prevent intermediate types that impl the trait from not themselves allowing the default type parameter to be overridden. - Move common bounds up from implementers of the Service trait to the Service trait itself. This both reduces boilerplate and reduces the chances of a type having stricter bounds on the struct and fns (such as fn new()) than its Service trait impl, making it hard to find the cause of a bounds mismatch. - Align bounds on all middleware struct blocks to match the bounds on the Service trait impls to catch mismatched bounds earlier. - Remove unnecessary ?Sized bound on impl Service for U where U: Deref. - Remove unnecessary default type specifications. - Add run: cargo test --doc to test doc explicitly. - Set the default shell to bash. --------- Co-authored-by: Philip Homburg <philip@nlnetlabs.nl>