
NetDNS2 - PHP DNS Resolver and Updater
======================================

v2.0.5
------
* bugfix: fixed #169 - the Client.php was comparing the $qtype value to "AXFR" but should have been using the new ENUM value
* bugfix: fixed #170 - the Socket::read() function could end up in and endless loop when using TCP, and the remote end doesn't
  return any data at all.
* bugfix: fixed #171 - added a missing __isset() magic method to the RR object.

v2.0.4
------
* bugfix: fixed the phpdoc for the $_options passed to the Resolver, Notifier, & Updater constructors; the array format was incorrect.
* bugfix: fixed the blocking logic in Socket::read(); there were a couple reports of failures here that could only happen in a specific 
  case where only one initial byte of data is returned on TCP connections.
* bugfix: fixed #167 - the Mailbox object (used on SOA, RP) RR's didn't support a value without a "." in it (aka an @). While according 
  to RFC1035, this value should be an email address, it seems like DNS servers don't enforce this, so you can add a single value in 
  like "root" and it's accepted.
* bugfix: fixed #168 - the SHA1 DNSSEC Digest algorithm was configured as id 0, but should be 1.

v2.0.3
------
* bugfix: fixed #162; the type() was missing when creating a Data\Mailbox type in RR::__set().
* changed the default $_offset value for Data types to -1 instead of null; it achieves the same goal (an "unset state"), but resolves a 
  few PHPstan complaints.

v2.0.2
------
* Added support for Internationalized Domain Names (IDN)
* bugfix: fixed #160 - the Updater() and Notifier() class constructors were accidentially changed to require a response value; this was 
  changed back to default to null.
- bugfix: fixed #161 - there was a domain encoding issue related to TSIG signatures, when using key names or algorithms with periods in 
  them. This was part of a larger encoding logic issue.

v2.0.1
------
* bugfix: \NetDNS2\RR\PTR::ptrdname was set to private instead of protected #157
* bugfix: the IPv4 & IPv6 data objects were missing from the \NetDNS2\RR::set() function.
* bugfix: the Text data object was being referenced incorrectly with a lead \ in \NetDNS2\RR::set().

v2.0.0
------
IMPORTANT: this release is not backwards compatible with v1.x - see the README for more details on upgrading.

* Minimum PHP version was increased to 8.1; this version uses strong typing, ENUMs, and other modern PHP features.
* Complete code re-factor, converting to PSR-4 style autoloading, and namespace semantics.
* Added support for DNS over TLS (DoT).
* Added support for DNS over HTTPS (DoH).
* Added support for (almost) all EDNS(0) features (client subnet, cookies, TCP keepalives, etc.)
* Added Memcache & Redis support in the local cache object.
* Added the HTTPS, SVCB, DSYNC, and other resource records.
