aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/main.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-03 22:11:09 +0900
committernsfisis <nsfisis@gmail.com>2026-05-03 22:11:09 +0900
commit6d036ca5b0e6cb21e5b12a02d544a27e33a97a14 (patch)
tree7bb13b6db63a6c1ef75b1bb90345b30a52758ca8 /crates/mozart/src/main.rs
parent38706a6f0ceb773d473c4f5ddebf49e8e5ae46dc (diff)
downloadphp-mozart-6d036ca5b0e6cb21e5b12a02d544a27e33a97a14.tar.gz
php-mozart-6d036ca5b0e6cb21e5b12a02d544a27e33a97a14.tar.zst
php-mozart-6d036ca5b0e6cb21e5b12a02d544a27e33a97a14.zip
fix(update): unlock replacer when --with-deps walks a replaced require
`expand_with_(direct|all)_dependencies` only looked up dependencies by their literal name in the lock. When a transitive require pointed at a virtual / replaced name (e.g. `replaced/pkg1`) and the lock owned it through another package's `replace` map (e.g. `dep/pkg1` replaces `replaced/pkg1`), the replacer never entered the unlock set. The partial-update resolver then left it pinned at its lock version and silently kept the user on the old release. Mirror Composer's replace branch in `PoolBuilder::loadPackage`: build a `replaced → replacers` index over the lock and route every dep walked during expansion through it before recursing.
Diffstat (limited to 'crates/mozart/src/main.rs')
0 files changed, 0 insertions, 0 deletions