From 5adc4e467f01865ba2d4f519334ee1b0496b8ebf Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 22 May 2026 23:14:27 +0900 Subject: refactor(promise): change functions returning PromiseInterface to async fn --- crates/shirabe/src/downloader/download_manager.rs | 25 +++++++++++------------ 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'crates/shirabe/src/downloader/download_manager.rs') diff --git a/crates/shirabe/src/downloader/download_manager.rs b/crates/shirabe/src/downloader/download_manager.rs index e81a6bb..3100e29 100644 --- a/crates/shirabe/src/downloader/download_manager.rs +++ b/crates/shirabe/src/downloader/download_manager.rs @@ -4,7 +4,6 @@ use crate::io::io_interface; use anyhow::Result; use indexmap::IndexMap; use shirabe_external_packages::composer::pcre::Preg; -use shirabe_external_packages::react::promise::PromiseInterface; use shirabe_php_shim::{ InvalidArgumentException, LogicException, PhpMixed, RuntimeException, array_keys, array_reverse, array_shift, dirname, get_class, implode, in_array, preg_quote, rtrim, sprintf, @@ -195,12 +194,12 @@ impl DownloadManager { /// /// @throws \InvalidArgumentException if package have no urls to download from /// @throws \RuntimeException - pub fn download( + pub async fn download( &self, package: &dyn PackageInterface, target_dir: &str, prev_package: Option<&dyn PackageInterface>, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); self.filesystem .borrow_mut() @@ -291,13 +290,13 @@ impl DownloadManager { /// @param string $targetDir target dir /// @param PackageInterface|null $prevPackage previous package instance in case of updates /// @phpstan-return PromiseInterface - pub fn prepare( + pub async fn prepare( &self, r#type: &str, package: &dyn PackageInterface, target_dir: &str, prev_package: Option<&dyn PackageInterface>, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); if let Some(downloader) = self.get_downloader_for_package(package)? { return downloader.prepare(r#type, package, &target_dir, prev_package); @@ -314,11 +313,11 @@ impl DownloadManager { /// /// @throws \InvalidArgumentException if package have no urls to download from /// @throws \RuntimeException - pub fn install( + pub async fn install( &self, package: &dyn PackageInterface, target_dir: &str, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); if let Some(downloader) = self.get_downloader_for_package(package)? { return downloader.install2(package, &target_dir); @@ -335,12 +334,12 @@ impl DownloadManager { /// @phpstan-return PromiseInterface /// /// @throws \InvalidArgumentException if initial package is not installed - pub fn update( + pub async fn update( &self, initial: &dyn PackageInterface, target: &dyn PackageInterface, target_dir: &str, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); let downloader = self.get_downloader_for_package(target)?; let initial_downloader = self.get_downloader_for_package(initial)?; @@ -403,11 +402,11 @@ impl DownloadManager { /// @param PackageInterface $package package instance /// @param string $targetDir target dir /// @phpstan-return PromiseInterface - pub fn remove( + pub async fn remove( &self, package: &dyn PackageInterface, target_dir: &str, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); if let Some(downloader) = self.get_downloader_for_package(package)? { return downloader.remove2(package, &target_dir); @@ -423,13 +422,13 @@ impl DownloadManager { /// @param string $targetDir target dir /// @param PackageInterface|null $prevPackage previous package instance in case of updates /// @phpstan-return PromiseInterface - pub fn cleanup( + pub async fn cleanup( &self, r#type: &str, package: &dyn PackageInterface, target_dir: &str, prev_package: Option<&dyn PackageInterface>, - ) -> Result> { + ) -> Result> { let target_dir = self.normalize_target_dir(target_dir); if let Some(downloader) = self.get_downloader_for_package(package)? { return downloader.cleanup(r#type, package, &target_dir, prev_package); -- cgit v1.3.1