aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/packagist.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-02-21 12:31:06 +0900
committernsfisis <nsfisis@gmail.com>2026-02-21 12:31:06 +0900
commit18761d9b67a09c0148ae606da10db0d1266932f9 (patch)
treec38c1a4f0c2b05abbb50c5a686c5b925c2672b34 /crates/mozart/src/packagist.rs
parenta70d703f1dea24a1c2ee189f85ab98ff77f89ff3 (diff)
downloadphp-mozart-18761d9b67a09c0148ae606da10db0d1266932f9.tar.gz
php-mozart-18761d9b67a09c0148ae606da10db0d1266932f9.tar.zst
php-mozart-18761d9b67a09c0148ae606da10db0d1266932f9.zip
feat(resolver): integrate pubgrub dependency resolver
Add dependency resolution module using pubgrub v0.3.0 to convert Composer-style constraints into range-based version solving. Includes ComposerVersion type with stability ordering, MozartProvider implementing DependencyProvider, platform package handling, stability filtering, and conflict support via complement ranges. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart/src/packagist.rs')
-rw-r--r--crates/mozart/src/packagist.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/crates/mozart/src/packagist.rs b/crates/mozart/src/packagist.rs
index 912ec60..7246ee6 100644
--- a/crates/mozart/src/packagist.rs
+++ b/crates/mozart/src/packagist.rs
@@ -24,6 +24,12 @@ pub struct PackagistVersion {
pub version_normalized: String,
#[serde(default)]
pub require: BTreeMap<String, String>,
+ #[serde(default)]
+ pub replace: BTreeMap<String, String>,
+ #[serde(default)]
+ pub provide: BTreeMap<String, String>,
+ #[serde(default)]
+ pub conflict: BTreeMap<String, String>,
pub dist: Option<PackagistDist>,
pub source: Option<PackagistSource>,
}