PHP Domain Parser v6.1.0 Release Notes

Release Date: 2021-06-19 // 4 months ago
  • โž• Added

    • TimeToLive::until
    • TimeToLive::fromDurationString

    ๐Ÿ›  Fixed

    • .gitattributes files to be filter out.
    • TimeToLive marked as internal
    • Host::toUnicode method MUST never throw exceptions on conversion according to RFC3490.
    • ๐Ÿ‘ป UnableToResolveDomain typo in the exception message

    ๐Ÿ—„ Deprecated

    • TimeToLive::fromDateTimeInterface use TimeToLive::fromNow
    • TimeToLive::fromScalar use TimeToLive::convert

    โœ‚ Removed

    • None

Previous changes from v6.0.0

  • โž• Added

    • โž• Adding proper Interfaces
    • โž• Added Domain::clear to easily initialize an empty domain object
    • โž• Added Domain::slice to easily slice a domain object
    • โž• Added ResolvedDomain object to normalize Resolver results.
    • โž• Added Suffix object to replace the PublicSuffix object from v5.
    • Public Suffix List and IANA Top Level Domain List are fully decoupled
    • โž• Added Idna, IDN support has been completely revamped
    • โž• Added internal Stream class, to improve path/stream resolution
    • 0๏ธโƒฃ Resolver uses by default UTS#46 IDNA2008 algorithm to convert domain names
    • Storage capability is now optional and can be based on PHP-FIG related interfaces to improve interoperability
    • Pdp\TopLevelDomains::getIANADomain which throws on syntax error and if no effective TLD is found (behave like Pdp\TopLevelDomains::resolve in v5).

    ๐Ÿ›  Fixed

    • The Pdp\Domain class not longer directly exposes Effective TLD status.
    • Effective TLD resolver (Pdp\Rules::resolve and Pdp\TopLevelDomains::resolve) no longer accept IDNA options.
    • Rules::getICANNDomain, Rules::getPrivateDomain will throw even if a PublicSuffix is found but does not belong to the correct PSL section.
    • Pdp\TopLevelDomains::resolve acts like Pdp\Rules::resolve and only throw on TypeError

    ๐Ÿ—„ Deprecated

    • None

    โœ‚ Removed

    • __toString and __debugInfo usage
    • ๐Ÿ‘Œ Support for PHP7.4-
    • โšก๏ธ Composer script for automatic updates of the remote databases
    • โšก๏ธ CLI command bin/update-psl
    • ๐Ÿ“ฆ Pdp\Cache, Pdp\CacheException: The package PSR-16 Cache implementation using the underlying filesystem.
    • ๐Ÿ“ฆ Pdp\HttpClient, Pdp\CurlHttpClient and Pdp\HttpClientException: The package Http Client.
    • ๐Ÿ“ฆ Pdp\Installer, Pdp\Manager: The package source manager and installer
    • ๐Ÿ“ฆ Pdp\Logger, The package logger implementation
    • ๐Ÿ—„ Pdp\Rules::ALL_DOMAINS constant deprecated in version 5.3
    • ๐Ÿ—„ Pdp\Domain::getDomain deprecated in version 5.3
    • Pdp\Domain::resolve
    • Pdp\Domain::getPublicSuffix replaced by Pdp\ResolvedDomain::suffix
    • Pdp\Domain::getRegistrableDomain replaced by Pdp\ResolvedDomain::registrableDomain
    • Pdp\Domain::getSubDomain replaced by Pdp\ResolvedDomain::subDomain
    • Pdp\Domain::withPublicSuffix replaced by Pdp\ResolvedDomain::withSuffix
    • Pdp\Domain::getLabel replaced by Pdp\Domain::label
    • Pdp\Domain::isTransitionalDifferent replaced by Pdp\IdnaInfo::isTransitionalDifferent
    • Pdp\PublicSuffix replaced by Pdp\Suffix
    • Accessing suffix information from the Pdp\Domain object is no longer possible you need to do it from Pdp\Suffix
    • Pdp\TopLevelDomains::contains without replacement
    • Internal Converter classes (implementation details are no longer exposed).