libnyanpasu/clash-nyanpasu · error
all mirrors are too slow
Error message
all mirrors are too slow
What it means
mirror_speed_test benchmarks INTERNAL_MIRRORS against the manifest URL and, after picking the fastest result, bails when the best measured speed minus 1.0 is below 0.0001 — i.e. every mirror's measured speed is at the ~1.0 floor, meaning no mirror responded usefully. The cached mirror selection is left untouched (or unset), so subsequent manifest fetches have no viable mirror.
Source
Thrown at backend/tauri/src/core/updater/mod.rs:209
let mirrors = crate::utils::candy::INTERNAL_MIRRORS;
let path = "https://github.com/libnyanpasu/clash-nyanpasu/raw/main/manifest/version.json";
let client = crate::utils::candy::get_reqwest_client()?;
let results = client.mirror_speed_test(mirrors, path).await?;
let (fastest_mirror, speed) = results.first().ok_or(anyhow!("no mirrors found"))?;
if speed - 1.0 < 0.0001 {
anyhow::bail!("all mirrors are too slow");
}
tracing::debug!("fastest mirror: {}, speed: {}", fastest_mirror, speed);View on GitHub (pinned to f7dbce2997)
Solutions
- Check overall network connectivity; all mirrors failing usually means the machine is offline or behind a blocking proxy/firewall.
- Retry later — mirror outages (e.g. GitHub raw blocked or CDN issues) are often temporary.
- Configure a working proxy/VPN so the internal mirrors become reachable.
- Clear the cached mirror timestamp to force a fresh speed test once connectivity is restored.
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at backend/tauri/src/core/updater/mod.rs:209 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of libnyanpasu/clash-nyanpasu@f7dbce2997 (2026-09-08).
Data as JSON: /api/errors/6c0f099a07b793a2.
Report an issue: GitHub.