completely wipe out hickory

This commit is contained in:
Julian Chang 2026-08-24 02:42:18 +07:00
parent 148e665250
commit e659ee122a
No known key found for this signature in database
4 changed files with 3 additions and 151 deletions

127
Cargo.lock generated
View file

@ -1481,21 +1481,6 @@ dependencies = [
"cfg-if",
]
[[package]]
name = "critical-section"
version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b"
[[package]]
name = "crossbeam-channel"
version = "0.5.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d85363c37faeca707aef026efa9f3b34d077bce547e48f770770625c6013679e"
dependencies = [
"crossbeam-utils",
]
[[package]]
name = "crossbeam-deque"
version = "0.8.7"
@ -1872,18 +1857,6 @@ version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099"
[[package]]
name = "enum-as-inner"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc"
dependencies = [
"heck",
"proc-macro2",
"quote",
"syn 2.0.117",
]
[[package]]
name = "enumflags2"
version = "0.7.12"
@ -2825,52 +2798,6 @@ version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
[[package]]
name = "hickory-proto"
version = "0.25.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8a6fe56c0038198998a6f217ca4e7ef3a5e51f46163bd6dd60b5c71ca6c6502"
dependencies = [
"async-trait",
"cfg-if",
"data-encoding",
"enum-as-inner",
"futures-channel",
"futures-io",
"futures-util",
"idna",
"ipnet",
"once_cell",
"rand 0.9.5",
"ring",
"thiserror 2.0.18",
"tinyvec",
"tokio",
"tracing",
"url",
]
[[package]]
name = "hickory-resolver"
version = "0.25.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc62a9a99b0bfb44d2ab95a7208ac952d31060efc16241c87eaf36406fecf87a"
dependencies = [
"cfg-if",
"futures-util",
"hickory-proto",
"ipconfig",
"moka",
"once_cell",
"parking_lot",
"rand 0.9.5",
"resolv-conf",
"smallvec",
"thiserror 2.0.18",
"tokio",
"tracing",
]
[[package]]
name = "hkdf"
version = "0.13.0"
@ -3326,19 +3253,6 @@ dependencies = [
"libc",
]
[[package]]
name = "ipconfig"
version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4d40460c0ce33d6ce4b0630ad68ff63d6661961c48b6dba35e5a4d81cfb48222"
dependencies = [
"socket2 0.6.5",
"widestring",
"windows-registry",
"windows-result 0.4.1",
"windows-sys 0.61.2",
]
[[package]]
name = "ipnet"
version = "2.12.1"
@ -3813,23 +3727,6 @@ dependencies = [
"windows-sys 0.61.2",
]
[[package]]
name = "moka"
version = "0.12.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "957228ad12042ee839f93c8f257b62b4c0ab5eaae1d4fa60de53b27c9d7c5046"
dependencies = [
"crossbeam-channel",
"crossbeam-epoch",
"crossbeam-utils",
"equivalent",
"parking_lot",
"portable-atomic",
"smallvec",
"tagptr",
"uuid 1.23.1",
]
[[package]]
name = "moxcms"
version = "0.8.1"
@ -4509,10 +4406,6 @@ name = "once_cell"
version = "1.21.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
dependencies = [
"critical-section",
"portable-atomic",
]
[[package]]
name = "oneclient_app"
@ -5683,7 +5576,6 @@ dependencies = [
"futures-core",
"futures-util",
"h2",
"hickory-resolver",
"http 1.5.0",
"http-body",
"http-body-util",
@ -5694,7 +5586,6 @@ dependencies = [
"log",
"mime",
"mime_guess",
"once_cell",
"percent-encoding",
"pin-project-lite",
"quinn",
@ -5736,12 +5627,6 @@ dependencies = [
"web-sys",
]
[[package]]
name = "resolv-conf"
version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e061d1b48cb8d38042de4ae0a7a6401009d6143dc80d2e2d6f31f0bdd6470c7"
[[package]]
name = "rfd"
version = "0.17.2"
@ -6863,12 +6748,6 @@ dependencies = [
"libc",
]
[[package]]
name = "tagptr"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417"
[[package]]
name = "tar"
version = "0.4.46"
@ -7898,12 +7777,6 @@ version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "998767ef88740d1f5b0682a9c53c24431453923962269c2db68ee43788c5a40d"
[[package]]
name = "widestring"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471"
[[package]]
name = "winapi"
version = "0.3.9"

View file

@ -87,8 +87,6 @@ reqwest = {version = "=0.13.3", default-features = false, features = [
"gzip",
"brotli",
"form",
"hickory-dns", # Without this reqwest sees only the HTTP_PROXY/HTTPS_PROXY env vars, and # ignores the proxy configured in Windows Internet Options or macOS network # preferences — which is how school and workplace networks are set up. Those
# users could reach every service in a browser but not from here.
"system-proxy",
]}
reqwest-websocket = {version = "=0.6.0"}

View file

@ -115,18 +115,7 @@ impl RequestClient {
env!("CARGO_PKG_HOMEPAGE")
));
// Hickory must be explicitly off on Windows it reads UDP into a fixed
// buffer and Windows fails oversized datagrams with WSAEMSGSIZE (10040)
// instead of truncating breaking sign-in for large DNS replies
#[cfg(target_os = "windows")]
{
builder = builder.no_hickory_dns();
}
#[cfg(not(target_os = "windows"))]
{
builder = builder.hickory_dns(true);
}
builder = builder.no_hickory_dns();
let client = builder.build()?;

View file

@ -90,8 +90,7 @@ pub fn start(auth: Arc<oneclient_auth::AuthService>) {
}
fn build_client() -> Result<reqwest::Client, reqwest::Error> {
#[cfg_attr(not(target_os = "windows"), allow(unused_mut))]
let mut builder = reqwest::Client::builder()
let builder = reqwest::Client::builder()
.tcp_keepalive(Some(Duration::from_secs(15)))
.connect_timeout(Duration::from_secs(10))
// reqwest-websocket only supports Http <1.1
@ -103,14 +102,7 @@ fn build_client() -> Result<reqwest::Client, reqwest::Error> {
env!("CARGO_PKG_HOMEPAGE")
));
// Same WSAEMSGSIZE problem as the main client see `oneclient_net::service`
// `hickory-dns` is enabled workspace-wide so opt out explicitly
#[cfg(target_os = "windows")]
{
builder = builder.no_hickory_dns();
}
builder.build()
builder.no_hickory_dns().build()
}
fn base_url() -> &'static str {