aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/create_project.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-24 01:00:48 +0900
committernsfisis <nsfisis@gmail.com>2026-02-24 01:00:48 +0900
commit64ed53cf184fb05cbfe9f0336bc8695ff0e800f8 (patch)
treecea8c1854c5c7bf0fcffcaf175f1bf188d9f8904 /crates/mozart/src/commands/create_project.rs
parentd9858fbd322ce20de84f44ce67ae11edf081578c (diff)
downloadphp-mozart-64ed53cf184fb05cbfe9f0336bc8695ff0e800f8.tar.gz
php-mozart-64ed53cf184fb05cbfe9f0336bc8695ff0e800f8.tar.zst
php-mozart-64ed53cf184fb05cbfe9f0336bc8695ff0e800f8.zip
fix(cache): enable dist archive caching for all commands
files_cache was Option<&Cache> and install_from_lock always passed None, so downloaded zip/tar archives were never cached. Make the parameter non-optional (&Cache) and wire it through every command that downloads dist archives (install, update, require, remove, create-project, archive). The Cache internally respects --no-cache via its enabled flag, so the Option wrapper was unnecessary. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart/src/commands/create_project.rs')
-rw-r--r--crates/mozart/src/commands/create_project.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/crates/mozart/src/commands/create_project.rs b/crates/mozart/src/commands/create_project.rs
index 63d8a1a..a137868 100644
--- a/crates/mozart/src/commands/create_project.rs
+++ b/crates/mozart/src/commands/create_project.rs
@@ -274,6 +274,7 @@ pub async fn execute(
let cache_config = mozart_registry::cache::build_cache_config(cli.no_cache);
let repo_cache = mozart_registry::cache::Cache::repo(&cache_config);
+ let files_cache = mozart_registry::cache::Cache::files(&cache_config);
let versions = packagist::fetch_package_versions(&package_name, &repo_cache).await?;
@@ -326,9 +327,13 @@ pub async fn execute(
format!("{package_name} ({concrete_version})"),
);
- let bytes =
- downloader::download_dist(&dist.url, dist.shasum.as_deref(), Some(&mut progress), None)
- .await?;
+ let bytes = downloader::download_dist(
+ &dist.url,
+ dist.shasum.as_deref(),
+ Some(&mut progress),
+ &files_cache,
+ )
+ .await?;
progress.finish();
@@ -509,6 +514,7 @@ pub async fn execute(
apcu_autoloader_prefix: None,
download_only: false,
prefer_source: args.prefer_source,
+ no_cache: cli.no_cache,
},
console,
)