From 6f997349c8ec21fd55f98c3bc3a39394fd425f6e Mon Sep 17 00:00:00 2001 From: zackees Date: Sun, 9 Aug 2026 17:21:01 -0700 Subject: [PATCH 1/2] fix(packages-fetch): add Send bound to download_file_with_progress callbacks The download_file_with_progress function takes a dyn FnMut callback, but without an explicit Send bound the async block in staged_install fails the Send check on MSRV 1.94.1. Add Send to all three internal signatures. Follow-up to PR 1293. Co-Authored-By: Claude --- crates/fbuild-packages-fetch/src/downloader.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/crates/fbuild-packages-fetch/src/downloader.rs b/crates/fbuild-packages-fetch/src/downloader.rs index cc9ad249..1e60ee9d 100644 --- a/crates/fbuild-packages-fetch/src/downloader.rs +++ b/crates/fbuild-packages-fetch/src/downloader.rs @@ -260,7 +260,7 @@ async fn get_with_retry_using(client: &reqwest::Client, url: &str) -> Result Result { download_file_with_progress_using(http::client(), url, dest_dir, on_progress).await?; let filename = url.rsplit('/').next().unwrap_or("download"); @@ -271,7 +271,7 @@ async fn download_file_with_progress_using( client: &reqwest::Client, url: &str, dest_dir: &Path, - on_progress: &mut dyn FnMut(&DownloadProgress), + on_progress: &mut (dyn FnMut(&DownloadProgress) + Send), ) -> Result<()> { download_file_with_progress_timed(client, url, dest_dir, on_progress, RetryTiming::PRODUCTION) .await @@ -283,7 +283,7 @@ async fn download_file_with_progress_timed( client: &reqwest::Client, url: &str, dest_dir: &Path, - on_progress: &mut dyn FnMut(&DownloadProgress), + on_progress: &mut (dyn FnMut(&DownloadProgress) + Send), timing: RetryTiming, ) -> Result<()> { let filename = url.rsplit('/').next().unwrap_or("download").to_string(); From 6a445f4e4df0e134cd01d8940ad83de66219b388 Mon Sep 17 00:00:00 2001 From: zackees Date: Sun, 9 Aug 2026 17:33:22 -0700 Subject: [PATCH 2/2] chore: trigger CI for Dylint