From bd6d0186d2c01a3e1d6324ad5a0bcdd71de53098 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 23 May 2026 15:45:33 +0900 Subject: refactor(promise): drop \React\Promise Co-Authored-By: Claude Opus 4.7 (1M context) --- .../src/package/archiver/archive_manager.rs | 30 ++++++++++++++-------- 1 file changed, 20 insertions(+), 10 deletions(-) (limited to 'crates/shirabe/src/package/archiver') diff --git a/crates/shirabe/src/package/archiver/archive_manager.rs b/crates/shirabe/src/package/archiver/archive_manager.rs index 390efc4..e198a03 100644 --- a/crates/shirabe/src/package/archiver/archive_manager.rs +++ b/crates/shirabe/src/package/archiver/archive_manager.rs @@ -164,16 +164,26 @@ impl ArchiveManager { filesystem.ensure_directory_exists(&source_path)?; let download_result = (|| -> anyhow::Result<()> { - let promise = - self.download_manager - .borrow() - .download(package, &source_path, None)?; - SyncHelper::r#await(&self.r#loop, Some(promise))?; - let promise = self - .download_manager - .borrow() - .install(package, &source_path)?; - SyncHelper::r#await(&self.r#loop, Some(promise))?; + SyncHelper::r#await( + &self.r#loop, + Some(Box::pin(async { + self.download_manager + .borrow() + .download(package, &source_path, None) + .await + .map(|_| ()) + })), + )?; + SyncHelper::r#await( + &self.r#loop, + Some(Box::pin(async { + self.download_manager + .borrow() + .install(package, &source_path) + .await + .map(|_| ()) + })), + )?; Ok(()) })(); -- cgit v1.3.1