From 5fc05048a456ce18fd9408ea985031865cf45550 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 4 May 2026 00:16:43 +0900 Subject: fix(resolver): rewrite self.version on materialized root aliases Mirror Composer's `AliasPackage::replaceSelfVersionDependencies`: a base package's `replace` / `provide` / `conflict` link whose constraint matches the base's own version (the resolved form of `self.version`) is duplicated on the alias at the alias's version. A root require like `a/aliased: dev-next as 4.1.0-RC2` paired with `replace: { foo: self.version }` previously left the alias with a `dev-next` constraint, so a transitive `foo ^4.0` requirement saw no numeric provider and the solver bailed. Co-Authored-By: Claude Opus 4.7 (1M context) --- crates/mozart/tests/installer.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/mozart') diff --git a/crates/mozart/tests/installer.rs b/crates/mozart/tests/installer.rs index b998793..968cdb1 100644 --- a/crates/mozart/tests/installer.rs +++ b/crates/mozart/tests/installer.rs @@ -253,7 +253,7 @@ installer_fixture!(alias_solver_problems2); installer_fixture!(alias_with_reference); installer_fixture!(aliased_priority); installer_fixture!(aliased_priority_conflicting); -installer_fixture!(aliases_with_require_dev, ignore); +installer_fixture!(aliases_with_require_dev); installer_fixture!(broken_deps_do_not_replace); installer_fixture!(circular_dependency); installer_fixture!(circular_dependency2); -- cgit v1.3.1