aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/require.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-23 11:38:42 +0900
committernsfisis <nsfisis@gmail.com>2026-02-23 11:38:42 +0900
commit0080efea9386d46f65d1862fcb90eb44999d9761 (patch)
treee9f7e17b3f12ff9b09b3df0848fd55e91003cd23 /crates/mozart/src/commands/require.rs
parenteb1e21c059d83f0af9786e4d3cace80afe8456a2 (diff)
downloadphp-mozart-0080efea9386d46f65d1862fcb90eb44999d9761.tar.gz
php-mozart-0080efea9386d46f65d1862fcb90eb44999d9761.tar.zst
php-mozart-0080efea9386d46f65d1862fcb90eb44999d9761.zip
feat(vcs): add mozart-vcs crate for VCS repository support
Implement VCS driver/downloader infrastructure mirroring Composer's VCS subsystem. Includes drivers for GitHub, GitLab, Bitbucket, Forgejo, Git, Hg, and SVN with API-based metadata resolution, plus source downloaders for Git/Hg/SVN. Integrates into mozart-registry via vcs_bridge module to scan VCS repositories and feed discovered packages into the SAT resolver. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart/src/commands/require.rs')
-rw-r--r--crates/mozart/src/commands/require.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/crates/mozart/src/commands/require.rs b/crates/mozart/src/commands/require.rs
index 4ea739d..15b5f1c 100644
--- a/crates/mozart/src/commands/require.rs
+++ b/crates/mozart/src/commands/require.rs
@@ -656,6 +656,7 @@ pub async fn execute(
ignore_platform_req_list: args.ignore_platform_req.clone(),
repo_cache: None,
temporary_constraints: HashMap::new(),
+ repositories: raw.repositories.clone(),
};
// Print header messages
@@ -870,6 +871,7 @@ pub async fn execute(
|| config_apcu,
apcu_autoloader_prefix: args.apcu_autoloader_prefix.clone(),
download_only: false,
+ prefer_source: args.prefer_source,
},
)
.await?;
@@ -1028,6 +1030,7 @@ mod tests {
ignore_platform_req_list: vec![],
repo_cache: None,
temporary_constraints: HashMap::new(),
+ repositories: vec![],
};
let resolved = resolver::resolve(&request)
@@ -1081,6 +1084,7 @@ mod tests {
ignore_platform_req_list: vec![],
repo_cache: None,
temporary_constraints: HashMap::new(),
+ repositories: vec![],
};
let resolved = resolver::resolve(&request)