All Versions
60
Latest Version
Avg Release Cycle
64 days
Latest Release
1472 days ago

Changelog History
Page 3

  • v0.19.0 Changes

    January 16, 2020

    0.19.0

    ๐Ÿ”„ Changes

    • (resolver) AsyncResolver abstract over RuntimeProvider (@chunyingw) #975
    • 0๏ธโƒฃ (resolver) TokioAsyncResolver implementation now has default methods that have a default Handle::current set TokioAsyncResolver::tokio

    โž• Added

    • โœ… (resolver) testing module for generic tests across generic async runtime impls (@chunyingw) #979
    • ๐Ÿ— (proto) support for building into WASM (@moshevds) #987 #990 #991

    โœ‚ Removed

    • (all) failure is no longer used for error types, std::Error impls only
  • v0.18.1 Changes

    January 05, 2020

    0.18.1

    ๐Ÿ›  Fixes

    • (server) Fix issue when MX or other records collect additionals based of ., root, targets #980
  • v0.18.0 Changes

    ๐Ÿ”„ Changes

    • ๐Ÿš€ (all) CHANGELOG.md is now merged from the Resolver crate and the top-level. All notes from the Resolver CHANGELOG were merged into this changelog, with the format ## {version} (Resolver) and the existing notes from the top-level are formatted as ## {version} (Client/Server. This should make notes on releases easier. Going forward the scope of changes across crates will be captured as - ({crate}) {note} where all is used for across the board updates.
    • ๐Ÿš€ (all) After the 0.18 release, all crates will be versioned uniformally, and released at the same time, this will resolve some issues around consistency with releases. The final Resolver release before this was 0.12.
    • ๐Ÿ’ฅ breaking Generally, any interface that took a 0.1 Future, now returns or consumes a std::future::Future
    • ๐Ÿ’ฅ breaking (client) rebranded from trust-dns to trust-dns-client
    • ๐Ÿ’ฅ breaking (named) moved from trust-dns-server to trust-dns, in bin/**
    • ๐Ÿ’ฅ breaking (all) all internals updated to std::future and async/await (requires Rust 1.39 minimum)
    • ๐Ÿ’ฅ breaking (client) AsyncClient now returns a connect future which resolves to the client and it's background.
    • ๐Ÿ’ฅ breaking (resolver) AsyncResolver::new changed to AsyncResolver::connect, requires awaiting the returned future
    • (client) ClientFuture renamed to AsyncClient
    • ๐Ÿ‘€ (resolver) AsyncResolver now requires a ConnectionProvider type parameter, see TokioAsyncResolver as a predefined type without it
    • (resolver) Now returns a connect future to connect the start all background tasks
    • (proto, resolver) renamed the tokio-compat feature to tokio-runtime
    • ๐Ÿ‘ (all) added cargo-make Makefile.toml to support all automation in Github workflow
    • (proto) renamed SecureDnsHandle to DnssecDnsHandle
    • ๐Ÿ”€ (client) renamed SecureSyncClient to SyncDnssecClient
    • Abstractions around Tokio for generic Executors #960 (@chunyingw)
    • Enable early data on tokio-rustls #911 (@daareiza)

    ๐Ÿ›  Fixes

    • ๐Ÿšš (proto) Removed deadlock from UDPSocket stream impl
    • โœ… (named) made tests a little more resilient to port stealing
    • (proto) Unknown ResponseCodes will no longer cause a panic

    โœ‚ Removed

    • (client) client::BasicClientHandle, ClientFuture no longer requires Background or the separate Handle, this can generally be replaced with just ClientFuture itself in most use cases.
    • ๐Ÿ’ฅ breaking (resolver) Background type removed
    • ๐Ÿ‘€ (resolver) removed deprecated AsyncResolver::lookup_service, see AsyncResolver::lookup_srv
    • (client) removed all deprecated reexports from trust_dns_proto
    • ๐Ÿšš (proto) removed unused xfer::BasicDnsHandle, xfer::MessageStreamHandle
    • ๐Ÿšš (resolver) removed all unused custom LookupFuture types SrvLookupFuture, ReverseLookupFuture, Ipv4LookupFuture, Ipv6LookupFuture, MxLookupFuture, TxtLookupFuture, SoaLookupFuture, NsLookupFuture
    • ๐Ÿšš (resolver) removed Background, BackgroundLookup, and BackgroundLookupIp
    • (resolver|client) DoH no longer sends User-Agent header #962 (@quininer)

    โž• Added

    • โœ… (proto) proto now has a testing feature to allow dependencies that might want access to some of the testing harnesses. #936 (@chunyingw)
  • v0.17.0 Changes

    โž• Added

    • (all) Licenses copied into all crates #832 (@divinerapier)
    • UdpSocket for compatibility with Tokio, when not using non-Tokio executors #824 (@chunyingw)
    • Connect for Tcp connection compatibility with Tokio, when not using non-Tokio executors #794 (@chunyingw)

    ๐Ÿ”„ Changes

    • ๐Ÿ’ฅ breaking (client) TcpClientConnect requires generic stream param #794 (@chunyingw)
    • ๐Ÿ’ฅ breaking (client) UdpClientStream requires generic socket param #824 (@chunyingw)
    • ๐Ÿ’ฅ breaking (proto) UdpStream and UdpClientStream requires generic socket #824 (@chunyingw)
    • ๐Ÿ’ฅ breaking (proto) TcpStream and TcpClientStream require generic stream param #794 (@chunyingw)
    • Algorithm::from_u8 is now infallible #800 (@zackangelo)
    • Algorithm::hash_len now returns Option #800 (@zackangelo)

    โœ‚ Removed

    • byteorder dep dropped in favor of std implementations #844 (@lukaslueg)
  • v0.16.1 Changes

    • disables the socket2/reuseport feature except when mdns is enabled
  • v0.16.0 Changes

    ๐Ÿ›  Fixed

    • โฑ (proto) UDP Sockets not being properly closed in timeout scenarios #635
    • (server) CNAME resolutions #720
    • (server) NSEC evaluation for NODATA and NXDOMAIN responses #697
    • โšก๏ธ (server) Call add_update_auth_key in named.rs #683 (@Darkspirit)

    โž• Added

    • ๐Ÿ‘ (proto) support for the OPENPGPKEY and SSHFP record types #646 #647
    • ๐Ÿ‘ (server/client) support ECDSA signing with ring #688 (@Darkspirit)
    • 0๏ธโƒฃ (server) forwarding support in server with trust-dns-resolver (default feature) #674
    • (server) Authority trait for generic Authorities (File, Sqlite, Forwarder) #674
    • (server) ANAME resolutions #720
    • (server) Additional section processing for ANAME, CNAME, MX, NS, and SRV #720
    • (server) Added endpoint name config to DoH and DoT TLS endpoint #714
    • ๐Ÿ‘ (proto) NAPTR record data (no additional record processing support) #731
    • ๐Ÿ‘ (server) Added support for wildcard lookups, i.e. *.example.com in zone files

    ๐Ÿ”„ Changed

    • ๐Ÿ’ฅ breaking (proto) UdpClientStream and UdpClientConnection refactored to associate UDP sockets to single requests #635
    • ๐Ÿ’ฅ breaking (server) configuration for sqlite dynamic update different, see dnssec_with_update.toml for example #622
    • ๐Ÿ’ฅ breaking (util)/dnskey_to_pem has been renamed to bind_dnskey_to_pem for clarity #622
    • ๐Ÿ’ฅ breaking (proto) Record::from_rdata no longer requires RecordType parameter #674
    • ๐Ÿ’ฅ breaking (server) AuthLookup inner types simplified #674
    • ๐Ÿ’ฅ breaking (server) RequestHandler now requires associated type for Future results of lookups #674
    • ๐Ÿ’ฅ breaking (server) ResponseHandler now requires Clone and 'static #674
    • ๐Ÿ’ฅ breaking (server) Catalog::lookup takes ownership of MessageRequest and returns a LookupFuture #674
    • ๐Ÿ’ฅ breaking (server) MessageRequest and Queries no longer carrying lifetime parameters #674
  • v0.15.0 Changes

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix two separate integer overflows from subtractions #585 (@oherrala)
    • ๐Ÿ“œ strictly enforce name and label lengths during label parsing #584
    • enforce that only prior labels are used in label expansion, decompression #578 (@oherrala)
    • CAA now properly performs case-insensitive compares #587 (@oherrala)
    • ๐Ÿ“œ overhauled rdata parsers with Restrict type to reduce potential of overflowing operations #586

    โž• Added

    • ๐Ÿ”‹ feature dns-over-rustls to trust-dns-server (server) and trust-dns (client)
    • feature dns-over-https-rustls experimental #557
    • โœ… new configuration options for tls, see server/tests/named_test_configs/dns_over_tls_rustls_and_openssl.toml
    • ๐Ÿ†• new utility for querying root key-signing-keys, util/get-root-ksks
    • โšก๏ธ updated root trust-anchor to include new 20326 RSA root ksk

    ๐Ÿ”„ Changed

    • Make trust_dns_server::server::ResponseHandler Send #593 (sticnarf)
    • Wrap types in Restrict and force validation before usage from streams #586
    • ๐Ÿ’ฅ breaking Overhauled all ClientFuture implementations to align with new DnsExchange and DnsMultiplexer components in proto.
    • ๐Ÿ’ฅ breaking ClientFuture after construction, now returns a "background" ClientFuture and a "foreground" BasicClientHandle
    • ๐Ÿ’ฅ breaking Client has more type parameters, these match with the same types returned by the *ClientConnection constructors
    • ๐Ÿ’ฅ breaking all default features, removed: "dns-over-openssl", "dnssec-openssl". Use --features=dns-over-openssl,dnssec-openssl to enable
    • ๐Ÿ’ฅ breaking named configuration now has AXFR disabled by default.
    • ๐Ÿ’ฅ breaking Migrated from error_chain to Failure #474 (@silwol)
    • ๐Ÿ”‹ feature tls renamed to dns-over-openssl
    • โฌ†๏ธ upgraded native-tls and tokio-tls to 0.2
    • โฌ†๏ธ upgraded rusqlite to 0.15
  • v0.14.0 Changes

    ๐Ÿ”„ Changed

    • โšก๏ธ Updated trust-dns-proto to 0.3, which brings in better Name and Label impls
    • โšก๏ธ rusqlite updated to 0.13 #331 (@oherrala)
    • Many serialization improvements #317
    • โฌ†๏ธ Use tokio-timer (part of tokio upgrade) @justinlatimer #411
    • Backtrace now optional @briansmith #416
    • โฌ†๏ธ Use tokio-tcp (part of tokio upgrade) @Keruspe #426
    • โฌ†๏ธ Use tokio-udp (part of tokio upgrade) @Keruspe #426
    • โฌ†๏ธ Upgrade to tokio-executor (tokio upgrade) @Keruspe and @justinlatimer #438
    • ๐Ÿ”€ Send (Sync where applicable) enforced on all DnsHandle::send and other interfaces #460
    • ClientHandle api return Send @ariwaranosai #465

    โž• Added

    • ๐Ÿ‘€ Name and Label now support idna, punycode, see Name::from_str
    • trust_dns::rr::ZoneUsage for detecting restrictions on Names and their associated zones

    ๐Ÿ›  Fixed

    • ๐Ÿ“œ octal escapes fixed in Name parsing #330
    • NULL record type incorrectly valued at 0 to proper 10 #329 (@jannic)
    • BinEncoder panic on record sets of extreme sizes #352
    • Panic when oneshot channel receiver goes away #356
    • Hung server on UDP due to bad data #407

    โœ‚ Removed

    • usage of tokio-core::Core @Keruspe #446
  • v0.13.0 Changes

    โž• Added

    • Trust-DNS Proto crate to separate server management from base operations #222
    • Trust-DNS Util crate for dnssec management tools (@briansmith)
    • โœ… Integration tests for Server to validate all supported DNSSec key types
    • ๐Ÿ’ฅ breaking Common features dnssec-ring, dnssec-openssl, and dnssec across all crates (replaces openssl and ring features)
    • Clarified tls feature with tls-openssl, and tls in server (in preparation for tls-rustls)
    • ๐Ÿ‘Œ Support for rfc6844, CAA record type #234
    • ๐Ÿ‘Œ Support for rfc6698, TLSA record type #285
    • ๐Ÿ‘ท Clippy validation in CI #288 (@little-dude)

    ๐Ÿ”„ Changed

    • DNSKEY is now self-signed
    • Internal API changes to client calling into proto for actual implementations
    • Large refactoring of internal APIs to more cleanly support *ring* and OpenSSL features (@briansmith)
    • ClientHandle::send moved to trust_dns_proto::DnsHandle::send (internal API)
    • Many interfaces moved from client::ClientStreamHandle to trust_dns_proto::DnsStreamHandle
    • Message::sign has been renamed and change to the more general method Message::finalize
    • Some io::Errors have been converted to trust_dns_proto::ProtoError
    • ๐Ÿ”€ SyncClient and SecureSyncClient are now Send + Sync #245
    • Unknown RecordTypes and RDatas will no longer error #294

    ๐Ÿ›  Fixed

    • Server: signing issues when loading from persistence
    • 0๏ธโƒฃ Server: When SupportedAlgorithms (rfc6975) not supplied default to returning all signatures #215
    • Proto: u16::from(DNSClass) now enforces OPT is greater than/or 512 per spec #303
    • ๐Ÿ‘Œ Improve usage of Rand for message ids and port assignment #291 & #292
    • NxDomain and empty NoData responses to be compliant #286 (lots of help from @Darkspirit)

    โœ‚ Removed

    • โœ‚ Removed the NativeTls and OpenSSL ClientConnection variants, use the Rustls impls or the tokio based TlsClientStream instead. This was required for SyncClient being Send + Sync
    • Server: no longer auto-generate keys on startup #218
    • ๐Ÿšš All deprecated APIs removed from -proto #262
    • ๐Ÿ‘€ Server: removed deprecated RSA config loading options, see reference test cargo.tomls #276 (@briansmith)
  • v0.12.0 Changes

    ๐Ÿ›  Fixed

    • Server was not properly signing zone after fresh start

    โž• Added

    • RSA and ECDSA validation with ring for DNSSec, removes dependency on openssl (@briansmith)
    • lookup to ClientHandle, simpler form with Query
    • query to Query for ease of Query creation

    ๐Ÿ”„ Changed

    • Large celanup of signing and verification paths in DNSSec (@briansmith)
    • ๐Ÿ’ฅ breaking changed TrustAnchor::insert_trust_anchor to more safely consume PublicKey rather than Vec<u8>