trust-dns v0.21.0 Release Notes

  • โž• Added

    • ๐Ÿ“œ (client) Parse DS records (@kmkaplan) #1635
    • ๐Ÿ”ง (fuzz) Added fuzzing configuration (@saethlin) #1626
    • ๐Ÿ”€ (resolver) Add resolver.clear_cache() sync and async (dns2utf8) #1611
    • (proto) Add CDS/CDNSKEY records from RFC7344 (frelon) #1595
    • ๐Ÿ”ง (resolver) Configuration of outbound bind address for resolver (@surban) #1586
    • (proto) Add CSYNC record from RFC7477 (@frelon) #1583
    • (proto) trust_dns_proto::rr::Record now serializable (@mvforell) #1536
    • (client) new zone_transfer method for AXFR and IXFR use cases, client only (@trinity-1686a) #1478
    • ๐Ÿ”ง (client) Flag for use_edns configuration on AsyncClient (@astro) #1492
    • ๐Ÿ‘ (client) support for TSIG authentication (@trinity-1686a) #1459

    ๐Ÿ”„ Changed

    • 0๏ธโƒฃ (util) openssl is no longer default enabled in trust-dns-utils, bins marked as required as necessary #1644
    • ๐Ÿ—„ (proto) deprecate outdated dnssec algorithms #1640
    • ๐Ÿ’ฅ (resolver) BREAKING removed DnsRequestOptions parameter from AsyncResolver::lookup, this is derived from ResolverOpts
    • (server) pass RequestInfo into Authority on search #1620
    • (proto) SSHFP: Ed448 is assigned algorithm 6 in RFC 8709 #1604
    • (resolver) Do not retry the same name server on a negative response (@peterthejohnston) #1589
    • (all) with-backtrace feature renamed to backtrace (@pinkisemils) #1577
    • (resolver) TCP for truncated message responses, but not for other failures on responses (switch for old behavior try_tcp_on_error) ( @peterthejohnston) #1562
    • (server) Multiple queries in a message will always result in a FormError now #1554
    • (server) ServerFuture and other Catalog related API changes #1554
    • 0๏ธโƒฃ (server) By default, the server will now only log a single log line based for a given request (debug will be needed for more details) #1554
    • ๐ŸŒฒ (server) ResponseHandler now must return a ResponseInfo to allow for more consistent logging #1554
    • (resolver) Correct behavior around trust_nx_responses (@peterthejohnston) #1556
    • (server) ResponseHandler trait is now async_trait, requires all impls to be annotated with #[async_trait] #1550
    • ๐Ÿ”€ (server) Authority impls required to be internally modifiable and Send + Sync #1550
    • (server) Most Authority methods changes to async fn rather than returning custom Future impls #1550
    • (server) Authority trait is now async_trait, requires all impls to be annotated with #[async_trait] #1550
    • (proto) Header now stores ResponseCode instead of just u8 #1537
    • ๐Ÿ“š (client) improved async client example documentation (@ErwanDL) #1539
    • (resolver) on REFUSED (and other negative) response(s), fall back to other nameservers (@peterthejohnston) #1513 #1526
    • 0๏ธโƒฃ (client) the feature dnssec is no longer enabled by default, use dnssec-ring or dnssec-openssl #1506
    • ๐Ÿšš (server) dnssec functions of Authority moved into DnsSecAuthority #1506
    • (all) Most public enum types are now marked #[non_exaustive] #1426
    • (resolver) DnsRequestOptions and ResolverOpts now #[non_exaustive] #1426
    • (proto) all I/O Streams now use BufDnsStreamHandle rather than generic DnsStreamHandle #1433
    • (proto) DnsResponse response now contains only a single Response #1433
    • (proto) Name::append_name and Name::append_domain now properly fallible when name is too long #1448
    • (resolver) special handling of the onion. TLD added to static resolution with negative responses (@trinity-1686a) #1479
    • ๐Ÿ‘ (proto) internal Futures converted to Streams to support multiple responses, e.g. AXFR (@trinity-1686a) #1478
    • (proto) renamed Signer to SigSigner to differentiate from TSigner #1498

    โœ‚ Removed

    • ๐Ÿšš (all) removed structopt dependency #1644
    • ๐Ÿšš (all) removed chrono dependency #1569
    • ๐Ÿšš (client) Remove AsyncClientConnect and AsyncSecureClientConnect (future impls) in favor of async constructors (@ErwanDL) #1541
    • ๐Ÿšš (proto) removed RecordType::DNSSEC and moved all variants of DNSSECRecordType into RecordType #1506
    • ๐Ÿšš (proto) removed BufStreamHandle and StreamHandle #1433
    • (response) disabled mdns to work on a new solution #1433

    ๐Ÿ›  Fixed

    • (proto) fix CAA .to_string() crash and format (@hartshorne) #1631
    • (proto) fix DoubleEndedIterator impl for Name #1639
    • ๐Ÿ‘ฏ (client) Fix AsyncClient::clone always setting use_edns (@ecton) #1598
    • (resolver) Use stream connections if datagram connections are not available (@pinkisemils) #1592
    • ๐Ÿš€ (server) Release resources when a server future is dropped (@pinkisemils) #1587
    • (proto) Panic when name exceeds maximal domain name length during display #1447