From 8871b923fa3df1935c263db155cb8bc3d59705cd Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 10 May 2026 23:58:26 +0900 Subject: refactor(downloader): turn DownloadManager into downloader registry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reshape DownloadManager from a hard-coded VCS match into a registry of DownloaderInterface instances keyed by source type, mirroring Composer's DownloadManager — with prefer-source/dist preferences, an IO handle, and a files cache. ArchiveManager now resolves dist sources through a shared DownloadManager instead of calling download_dist directly, and Composer::require / try_load take an IO so it flows through the factory wiring. --- crates/mozart/src/commands/status.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'crates/mozart/src/commands/status.rs') diff --git a/crates/mozart/src/commands/status.rs b/crates/mozart/src/commands/status.rs index d538138..cb33223 100644 --- a/crates/mozart/src/commands/status.rs +++ b/crates/mozart/src/commands/status.rs @@ -17,11 +17,11 @@ pub async fn execute( io: std::sync::Arc>>, ) -> anyhow::Result<()> { // init repos - let composer = Composer::require(cli.working_dir()?)?; + let composer = Composer::require(io.clone(), cli.working_dir()?)?; let installed_repo = composer.repository_manager().local_repository(); - let dm = composer.download_manager(); + let dm = composer.download_manager().lock().await; let im = composer.installation_manager(); let mut errors = Vec::new(); -- cgit v1.3.1