Breaking changes
- Added new
LimitExceededvariant toMessageBuilder'sPushError. (#349) - Changed the
ResolverandSearchNamestraits of the stub resolver to use lifetimes for associated types. This makes it easier to keep the stub resolver behind an arc or other smart pointer. (#596)
New
- Added
rdata::dnssec::Timestamp::to_system_timeto help sorting timestamps. (#548) - Added support for the
TLSA,OPENPGPKEY,SSHFP, andIPSECKEYrecord types and added presentation format support for theSVCB/HTTPSrecord types. (#569) - Added support for the
CAArecord type. (#434 by @weilence) - Added
FreezeBuilderto the message compressors. (#601 by @rossmacarthur) - Added support for the
RPrecord type. (#620) - Added a position counter to the zonefile parser, available via
Zonefile::current_offset. (#642)
Improvements
- Excluded
mokadependency from theresolvfeature, reducing the number of dependencies and compile time significantly. (#575 by @WhyNotHugo) - Made various methods in
RelativeNameinto const fns. (#576 by @WhyNotHugo)
Bug fixes
- When parsing a Bind-style public key file, allow an optional TTL field. (#593)
XfrMiddlewareServiceshould always support at least one concurrent XFR. (#599)- Fixed generating an ED448 keypair. (#608)
Unstable features
unstable-crypto-signunstable-server-transport- Return an error response when a
Servicereturns aServiceError. (#390) - Implemented
std::error::ErrorforServiceError. (#570 by @rossmacarthur) - Be more lenient when timing out connections while they are in a transaction. (#399)
- Removed defaults for type arguments to prevent intermediate types that impl the trait from not allowing the defaults to be overridden. (#484)
- Added commonly required bounds to the
Servicetrait rather than leaving them to the impl. (#484) - Removed unnecessary
?Sizedbound onimpl Service for U where U: Deref. (#484)
- Return an error response when a
unstable-sign- keyset improvements (#551)
- Store the algorithm and key tag of a key to be able to reject duplicate key tags and accidental algorithm rolls.
- Store whether a key is considered available for a key roll. Rolls with new keys that are not available are rejected.
- Added two alternative key rolls for KSK and ZSK key rolls.
- Added an algorithm roll.
- Added more operations on UnixTime.
- Added more actions
- Allow loading public keys only. (#594)
- Added support for decoupled keys. (#594)
RecordsIter::newhas been replaced withRecordsIter::new_from_owned. There is a newRecordsIter::new_from_refsthat takes a&[&Record]]. This breaks existing uses of `RecordsIter? and related types. (#614)
- keyset improvements (#551)
unstable-xfr- Various fixes and improvements. (#507)
Other changes