From 755330e585bd32270191cfbcc1bf2d1300fbf101 Mon Sep 17 00:00:00 2001 From: YoursFunny Date: Sat, 8 Aug 2026 20:35:43 +0800 Subject: [PATCH] chore: clippy and rustfmt cleanup on new code --- crates/x-media/src/site/bsky/interface.rs | 10 +++++----- crates/x-media/src/site/mod.rs | 5 +---- crates/x-media/src/site/pixiv/api.rs | 12 +++--------- crates/x-media/src/site/twitter/auth.rs | 4 +++- crates/xmedia-bot/src/handlers.rs | 3 +-- crates/xmedia-bot/src/send.rs | 19 +++++++++++++------ 6 files changed, 26 insertions(+), 27 deletions(-) diff --git a/crates/x-media/src/site/bsky/interface.rs b/crates/x-media/src/site/bsky/interface.rs index 606d753..6105ac1 100644 --- a/crates/x-media/src/site/bsky/interface.rs +++ b/crates/x-media/src/site/bsky/interface.rs @@ -92,10 +92,10 @@ async fn resolve_bsky_video( .and_then(|(_, rest)| rest.split(|c: char| !c.is_ascii_digit()).next()) .and_then(|n| n.parse::().ok()) .unwrap_or(0); - if let Some(uri) = lines.next().filter(|u| !u.starts_with('#')) { - if bandwidth >= best.as_ref().map(|(b, _)| *b).unwrap_or(0) { - best = Some((bandwidth, uri.to_string())); - } + if let Some(uri) = lines.next().filter(|u| !u.starts_with('#')) + && bandwidth >= best.as_ref().map(|(b, _)| *b).unwrap_or(0) + { + best = Some((bandwidth, uri.to_string())); } } let Some((_, uri)) = best else { @@ -199,7 +199,7 @@ pub async fn fetch(handle: &str, rkey: &str) -> Result { }; } let text = response.text().await?; - Ok(Post::from_json(&text, rkey.to_string())?) + Post::from_json(&text, rkey.to_string()) } #[derive(Debug)] diff --git a/crates/x-media/src/site/mod.rs b/crates/x-media/src/site/mod.rs index 5eb733b..b8bed21 100644 --- a/crates/x-media/src/site/mod.rs +++ b/crates/x-media/src/site/mod.rs @@ -318,10 +318,7 @@ pub async fn media_size(url: &str) -> Result, FetchError> { /// download aborts with [`FetchError::TooLarge`] the moment the cap is /// crossed (or when a declared Content-Length already exceeds it). Keeps the /// bot from buffering arbitrarily large bodies into memory. -pub async fn download_media_limited( - url: &str, - max_bytes: u64, -) -> Result { +pub async fn download_media_limited(url: &str, max_bytes: u64) -> Result { let mut request = CLIENT.get(url); let lower = url.to_ascii_lowercase(); if lower.contains("pximg.net") { diff --git a/crates/x-media/src/site/pixiv/api.rs b/crates/x-media/src/site/pixiv/api.rs index a849d94..b47dae3 100644 --- a/crates/x-media/src/site/pixiv/api.rs +++ b/crates/x-media/src/site/pixiv/api.rs @@ -137,10 +137,7 @@ impl PixivAPI { .send() .await?; if !response.status().is_success() { - return Err(PixivError::Api(format!( - "status {}", - response.status() - ))); + return Err(PixivError::Api(format!("status {}", response.status()))); } let json: serde_json::Value = serde_json::from_str(&response.text().await?)?; if json.get("error").is_some() { @@ -193,10 +190,7 @@ impl PixivAPI { .send() .await?; if !response.status().is_success() { - return Err(PixivError::Api(format!( - "status {}", - response.status() - ))); + return Err(PixivError::Api(format!("status {}", response.status()))); } let json: serde_json::Value = serde_json::from_str(&response.text().await?)?; if json.get("error").is_some() { @@ -250,7 +244,7 @@ impl PixivAPI { // frames are uniformly jpg or png per artwork. let mut archive = zip::ZipArchive::new(Cursor::new(zip_bytes)) .map_err(|e| format!("unzip: {e}"))?; - if archive.len() == 0 { + if archive.is_empty() { return Err("empty frame zip".to_string()); } // Uniform jpg or png per artwork; sniff the first entry's diff --git a/crates/x-media/src/site/twitter/auth.rs b/crates/x-media/src/site/twitter/auth.rs index db6b89c..c8099e2 100644 --- a/crates/x-media/src/site/twitter/auth.rs +++ b/crates/x-media/src/site/twitter/auth.rs @@ -132,7 +132,9 @@ pub async fn fetch(id: &str) -> Result { log::warn!("twitter auth fetch {id}: HTTP {status}"); return match status.as_u16() { 404 | 410 => Err(FetchError::NotFound), - _ => Err(FetchError::Transient(format!("twitter auth status {status}"))), + _ => Err(FetchError::Transient(format!( + "twitter auth status {status}" + ))), }; } let text = response.text().await?; diff --git a/crates/xmedia-bot/src/handlers.rs b/crates/xmedia-bot/src/handlers.rs index f17d6c5..e18630f 100644 --- a/crates/xmedia-bot/src/handlers.rs +++ b/crates/xmedia-bot/src/handlers.rs @@ -24,8 +24,7 @@ type UrlJob = (Bot, Message, String); static URL_JOBS: LazyLock>>> = LazyLock::new(|| parking_lot::Mutex::new(None)); /// Set by main's shutdown sequence; workers stop pulling new jobs. -static URL_STOP: std::sync::atomic::AtomicBool = - std::sync::atomic::AtomicBool::new(false); +static URL_STOP: std::sync::atomic::AtomicBool = std::sync::atomic::AtomicBool::new(false); /// Worker count draining URL jobs; keeps the old 8-permit concurrency cap /// while bounding how many jobs can be queued at all. diff --git a/crates/xmedia-bot/src/send.rs b/crates/xmedia-bot/src/send.rs index 21c7b6a..acfe088 100644 --- a/crates/xmedia-bot/src/send.rs +++ b/crates/xmedia-bot/src/send.rs @@ -641,7 +641,12 @@ async fn send_batch_via_upload( .map_err(|message| FallbackError::Permanent { message })? } PhotoPrep::UseFallback => match item.fallback_url() { - Some(url) => match media_from_url(item, url, item_caption, item.thumbnail_url()) { + Some(url) => match media_from_url( + item, + url, + item_caption, + item.thumbnail_url(), + ) { Ok(media) => media, Err(message) => { return Err(FallbackError::Permanent { message }); @@ -664,12 +669,14 @@ async fn send_batch_via_upload( } } Err(FallbackError::MediaTooLarge) => match item.fallback_url() { - Some(url) => match media_from_url(item, url, item_caption, item.thumbnail_url()) { - Ok(media) => media, - Err(message) => { - return Err(FallbackError::Permanent { message }); + Some(url) => { + match media_from_url(item, url, item_caption, item.thumbnail_url()) { + Ok(media) => media, + Err(message) => { + return Err(FallbackError::Permanent { message }); + } } - }, + } None => { return Err(FallbackError::Permanent { message: "media too large".into(),