-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Fix panic message for removed features #3642
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev-next
Are you sure you want to change the base?
Conversation
We mistakenly believed that `libresolv`'s `search` function worked correctly in NetworkExtension, but it seems only `getaddrinfo` does. This commit changes the behavior of the `local` DNS server in NetworkExtension to prefer DHCP, falling back to `getaddrinfo` if DHCP servers are unavailable. It's worth noting that `prefer_go` does not disable DHCP since it respects Dial Fields, but `getaddrinfo` does the opposite. The new behavior only applies to NetworkExtension, not to all scenarios (primarily command-line binaries) as it did previously. In addition, this commit also improves the DHCP DNS server to use the same robust query logic as `local`.
We do not have the `com.apple.developer.networking.multicast` entitlement and are unable to obtain it for non-technical reasons.
Log start/close operations with timing information for debugging.
Adds `chrome` as a new certificate store option alongside `mozilla`. Both stores filter out China-based CA certificates.
Signed-off-by: CatMe0w <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR improves the panic message shown when a deprecated feature is used after its scheduled removal date. Instead of displaying an internal identifier like "invalid deprecated note: bad-match-source", the code now shows a user-friendly message that includes the feature description, deprecation timeline, and migration link.
Key change:
- Modified the panic message in
Impending()to useMessageWithLink()for better user experience
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
b58d0a0 to
4e73574
Compare
When a deprecated feature is used after its scheduled removal, sing-box used to panic with an internal name (e.g.
invalid deprecated note: bad-match-source), which confused end users.This change makes the panic message match the deprecation notice style, so users immediately know what to change.
Full log, using sing-box version 1.12.13: