v2.0.0-rc9
kaifcodec/user-scannerv2.0.0-rc9Nov 5, 2025by qdm12
AI Summary
This release focuses on stability improvements, including fixing port listening (non-53), optimizing memory usage in filters, and updating the Go and Alpine environments. It also reinstates the 'plain' upstream type.
Key Highlights
- Listening on ports other than 53 now works correctly.
- Re-added 'plain' upstream type for debugging and Gluetun.
- Private DNS servers prioritized for local resolution middleware.
- Go upgraded from 1.23 to 1.25 and Alpine from 3.20 to 3.22.
- Map filter optimized to filter by IP version.
New Features
- Round trip duration added to error messages in pkg/exchanger.
- pkg/middlewares/filter/mapfilter optimized for IP version filtering.
- pkg/middlewares/localdns now only uses DNS servers with private IP addresses.
- pkg/nameserver now detects both private and public DNS servers on Windows.
- Blockbuilder skips malformed hostnames instead of returning an error.
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