aboutsummaryrefslogtreecommitdiffhomepage
path: root/composer
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-04 00:13:04 +0900
committernsfisis <nsfisis@gmail.com>2026-05-04 00:13:04 +0900
commit16f8cf26db22c4fb1073b55d57d31110ea9773cc (patch)
tree6e6b5d02c3099160ca0c5c0616f7e86f79f2d1d4 /composer
parent837327901f28b229695c7cfd435a2c4f5fe2763d (diff)
downloadphp-mozart-16f8cf26db22c4fb1073b55d57d31110ea9773cc.tar.gz
php-mozart-16f8cf26db22c4fb1073b55d57d31110ea9773cc.tar.zst
php-mozart-16f8cf26db22c4fb1073b55d57d31110ea9773cc.zip
fix(update): run full resolve under --lock to surface alias changes
Drop the content-hash-only short-circuit for `--lock` and route the flag through the same updateMirrors flow Composer uses (`UpdateCommand::execute` line 219). Locked packages are pinned at their lock versions, but the resolver still runs and the installer still emits the operation trace — including MarkAliasInstalled lines for aliases the lock declares but installed.json hasn't recorded yet. Three follow-on fixes the new flow needs: - Re-attach `<lock-version> as <alias>` from `lock.aliases` when building the mirrors-mode require list, so the resolver's alias extractor materializes the alias entry. The bare `<version>` form is required because `==<version>` fails Composer's normalize. - Don't `continue` past Action::Skip in the install loop. Composer's Transaction::calculateOperations emits MarkAliasInstalled even when the target package is already at the right version, as long as the alias is missing from installed.json. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'composer')
0 files changed, 0 insertions, 0 deletions