v2.0.0-rc9
qdm12/dnsv2.0.0-rc9Nov 5, 2025by qdm12
AI Summary
Release candidate focusing on stability, configuration fixes, and toolchain upgrades including Go 1.25.
Key Highlights
- Re-added plain upstream type
- Listening on non-53 ports now works
- Upgraded Go to version 1.25
- Improved IPv6 detection logic
New Features
- Plain upstream type support
- Round trip duration included in error messages
- Map filter optimized by IP version to reduce memory usage
Full Release Notes
## Features - Re-add "plain" upstream type (needed for debugging and Gluetun) - pkg/exchanger: add round trip duration to error message - pkg/middlewares/filter/mapfilter - map filter by IP version to reduce memory usage ## Fixes - Listening on another port than 53 now works - lowercase all question Name field to avoid any oddities - internal/dns: loop fixed to handle error before subsequent start completes (fixing whole program being stuck at starting steps) - do not modify system wide nameservers on Unix systems to avoid permission issues - internal/support/ipv6: - try both cloudflare and google in case one is not available (hum hum cloudflare) - detection failure logged as warning not error - pkg/blockbuilder: skip malformed hostnames instead of returning an error - pkg/middlewares/localdns: - only use DNS servers with a private IP address - lowercase all fqdns before checking for locality - pkg/middlewares/filter/mapfilter - blocked ip prefixes metric fixed - pkg/nameserver: get both private and public DNS servers on Windows ## Maintenance - pkg/dot: revert to use `tls.Client` and finer steps for more control - pkg/blockbuilder: optimized code scanning big files line by line - bump Go from 1.23 to 1.25 - upgrade linter to v2.4.0 - Dependencies - bump qdm12/goservices to 6bee97bd4978 in order to have the httpserver handler context cancelation feature - CI - bump actions/setup-go from v2 to v6 - use Go version from go.mod - bump Alpine from 3.20 to 3.22 - pull container images at build time from ghcr.io when possible - disable package comments requirement warning in dev container - upgrade dev container to v0.21 - Go upgraded from 1.23 to 1.25 - golangci-lint upgraded to v2.4.0 - Alpine upgraded from 3.20 to 3.22 - Disable package comment requirement by gopls' staticcheck - Pull container image from ghcr.io