aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/tests
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-03 12:02:08 +0900
committernsfisis <nsfisis@gmail.com>2026-05-03 12:02:08 +0900
commited77ff97d6c137ef58f0464b7a9b08bc2b875bd2 (patch)
tree63322190bfb1de4ea0b425c31a568fa4fe58a211 /crates/mozart/tests
parentae1aa6540761e54a76b8f7984cf93cd3a0d011d0 (diff)
downloadphp-mozart-ed77ff97d6c137ef58f0464b7a9b08bc2b875bd2.tar.gz
php-mozart-ed77ff97d6c137ef58f0464b7a9b08bc2b875bd2.tar.zst
php-mozart-ed77ff97d6c137ef58f0464b7a9b08bc2b875bd2.zip
fix(install): keep one cycle survivor as root for install ordering
Mozart's install-order topological sort marked every package required by any other as non-root, so cycle members all fell out of the root set and the cycle fallback emitted them in input (alphabetical) order. Composer instead walks the sorted result map and removes each package's required providers as it goes, skipping outer packages already removed — leaving the highest-sort-key cycle member as a root and giving DFS a deterministic entry point. Mirror that. Unblocks the prefer_lowest_branches installer fixture. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart/tests')
-rw-r--r--crates/mozart/tests/installer.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/crates/mozart/tests/installer.rs b/crates/mozart/tests/installer.rs
index 3daaf1e..a0eaab0 100644
--- a/crates/mozart/tests/installer.rs
+++ b/crates/mozart/tests/installer.rs
@@ -308,7 +308,7 @@ installer_fixture!(partial_update_with_symlinked_path_repos);
installer_fixture!(partial_update_without_lock);
installer_fixture!(platform_ext_solver_problems);
installer_fixture!(plugins_are_installed_first);
-installer_fixture!(prefer_lowest_branches, ignore);
+installer_fixture!(prefer_lowest_branches);
installer_fixture!(problems_reduce_versions);
installer_fixture!(provider_can_coexist_with_other_version_of_provided);
installer_fixture!(provider_conflicts, ignore);