Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Dns Laravel Package

amphp/dns

Async DNS resolver for PHP built on Amp. Provides non-blocking hostname lookups, record queries, caching and timeouts with an event loop, ideal for high-concurrency applications and CLI tools needing fast, reliable DNS without blocking I/O.

View on GitHub
Deep Wiki
Context7
v2.4.0

What's Changed

Full Changelog: https://github.com/amphp/dns/compare/v2.3.0...v2.4.0

v2.3.0

What's Changed

Full Changelog: https://github.com/amphp/dns/compare/v2.2.0...v2.3.0

v1.2.4

What's Changed

New Contributors

Full Changelog: https://github.com/amphp/dns/compare/v1.2.3...v1.2.4

v2.2.0

What's Changed

New Contributors

Full Changelog: https://github.com/amphp/dns/compare/v2.1.2...v2.2.0

v2.1.2

What's Changed

  • Make implicit nullable types explicit to avoid deprecation notice in PHP 8.4.

Full Changelog: https://github.com/amphp/dns/compare/v2.1.1...v2.1.2

v2.1.1

What's Changed

New Contributors

Full Changelog: https://github.com/amphp/dns/compare/v2.1.0...v2.1.1

v2.1.0
  • Fixed name resolution when NDots > 1
  • Added Cancellation arguments to Amp\Dns\query() and Amp\Dns\resolve().

Full Changelog: https://github.com/amphp/dns/compare/v2.0.1...v2.1.0

v2.0.1

What's Changed

Full Changelog: https://github.com/amphp/dns/compare/v2.0.0...v2.0.1

v2.0.0

Stable release compatible with AMPHP v3 and fibers! 🎉

As with other libraries compatible with AMPHP v3, most cases of parameters or returns of Promise<ResolutionType> have been replaced with ResolutionType.

  • Renamed Resolver to DnsResolver
  • Renamed resolver() to dnsResolver()
  • Renamed Config to DnsConfig
  • Renamed ConfigLoader to DnsConfigLoader
  • Renamed UnixConfigLoader to UnixDnsConfigLoader
  • Renamed WindowsConfigLoader to WindowsDnsConfigLoader
  • Renamed Record to DnsRecord
  • Renamed NoRecordException to MissingDnsRecordException
  • Renamed TimeoutException to DnsTimeoutException
  • Renamed ConfigException to DnsConfigException
  • Added optional Cancellation parameter to DnsResolver methods
  • Fixed getting search domain from hostname
  • Fixed potential double resolution of a deferred if a DNS query timed out.
v2.0.0-beta.5
  • Fixed potential double resolution of a deferred if a DNS query timed out.
v2.0.0-beta.4
  • Added compatibility with Revolt v1.x
  • Added optional Cancellation parameter to Resolver methods
  • Renamed Config to DnsConfig
  • Renamed ConfigLoader to DnsConfigLoader
  • Renamed UnixConfigLoader to UnixDnsConfigLoader
  • Renamed WindowsConfigLoader to WindowsDnsConfigLoader
v2.0.0-beta.3
  • Fixed preference to IPv4 instead of relying on the first response from the DNS server. This restores the behavior of v1.x. Systems without IPv6 connectivity might have had problems with connections being attempted to IPv6 addresses.
v2.0.0-beta.2
  • Update to revolt/event-loop 0.2.x
  • Fix getting search domain from hostname
v2.0.0-beta.1
  • Removed promises in favor of fibers.
  • Compatibility with Amp v3 and Revolt.
v1.2.3
  • Improved error message if no response was received
v1.2.2
  • Fixed resolving domains with search list and ndots > 1 (#99)
v1.2.1
  • Fixed resolving dotless host names without search option, e.g. Docker containers (#93, #94)
v1.2.0
  • Added support for search list and ndots option
  • Added support for rotate option
  • Added support for LOCALDOMAIN and RES_OPTIONS environment variables
  • Increased default timeout from 3s to 5s and limit it to 30s

Thanks to @brzuchal for implementing these features.

v1.1.0
  • Support final dot in DNS names (#83)
  • Provide blocking fallback if config cannot be loaded (#86)
  • Fix empty resolution result on too many redirects (#87)
v0.9.15
  • Allow underscores in hostnames
  • Support final dot in DNS names (#83)
  • Fix empty resolution result on too many redirects (#87)
v1.0.0
  • Improved localhost handling in edge cases
  • Improved normalizeName() to allow underscores
  • Renamed BasicResolver to Rfc1035StubResolver
  • Renamed driver() to createDefaultResolver()
  • Removed ResolutionException, catch DnsException instead
  • Removed InvalidNameError
v0.9.14
  • Removed amphp/file and amphp/uri dependencies. Host file loading is now done with a synchronous read by default. We felt an asynchronous read was not necessary for what should be a local file that is (generally) read only once. Async reading can be restored if desired by extending HostLoader and overloading readFile().
  • Added functions isValidName() and normalizeName().
v0.9.13
  • Use ext-filter instead of error suppression (#73)
  • Improve error messages
v0.9.12
  • Fixed decoding of empty domain names (#53).
v0.9.11
  • Limit cache size by default to 256 cache entries (#65).
  • Allow amphp/file v0.3.x as dependency.
v0.9.10
  • Fixed cyclic reference within BasicResolver->gcWatcher (#68).
v0.9.9
  • Prevent UDP sockets from leaking and close sockets on timeouts.
v0.9.8
  • Fixed BasicResolver::resolve() always returning records without a TTL, due to querying the same domains five times instead of breaking a loop.
  • Added Record::getName().
  • Added examples.
v0.9.7
  • Fix issue with custom ConfigLoader instances passed to BasicResolver.
v0.9.6
  • Fix up previous attempt to not load the configuration concurrently.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport