fix: app cache and other issues (#5460)
* fixes * #[serde(untagged)] my BEHATED (still kinda broken) * remove unused hasContent ref * clean up code in fetch instance * ping 3 times for average latency * fix: pinging to be more accurate TCP_NODELAY — Set on the TCP stream right after connect, preventing Nagle's algorithm from buffering the small ping packet (could save up to ~40ms) Instant over Utc::now() — Switched to monotonic std::time::Instant for timing, which is more precise and designed for measuring elapsed time (still using chrono just for the ping magic value) * delete useFetch util and just use native fetch * rename worlds until functions for more clarity * fix lint * fix cache.rs logic * make backend ping use both impls * Add optional timeout to server ping * fix gallery appearing in nav with no items * remove EU countries and add EU option for server country * add uk to europe --------- Co-authored-by: aecsocket <aecsocket@tutanota.com>
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
use std::time::Duration;
|
||||
|
||||
use actix_web::{HttpRequest, post, web};
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
@@ -18,6 +20,7 @@ pub fn config(cfg: &mut utoipa_actix_web::service_config::ServiceConfig) {
|
||||
pub struct PingRequest {
|
||||
pub address: String,
|
||||
pub port: u16,
|
||||
pub timeout_ms: Option<u64>,
|
||||
}
|
||||
|
||||
#[utoipa::path]
|
||||
@@ -38,7 +41,8 @@ pub async fn ping_minecraft_java(
|
||||
)
|
||||
.await?;
|
||||
|
||||
server_ping::ping_server(&request.address, request.port)
|
||||
let timeout = request.timeout_ms.map(Duration::from_millis);
|
||||
server_ping::ping_server(&request.address, request.port, timeout)
|
||||
.await
|
||||
.wrap_request_err("failed to ping server")?;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user