SuperAPI AI 工具集

composer-upgrade

安全与审计

查看项目

更新于 10-16 03:41

技能介绍

用途:指导 PHP 项目使用 Composer 命令完成依赖升级,适合需要排查过期包、安全漏洞与版本阻塞的场景。

主要能力与流程:先运行 composer audit 检查安全问题(优先级最高),再用 composer outdated --format=json 找出过期包,优先处理同时存在 CVE 且过期的包。遇到升级阻塞时用 composer why-not vendor/package version 诊断,用 composer why vendor/package 追踪依赖来源,再执行 composer update vendor/package;若被阻塞,可把识别出的阻塞包一并加入更新命令。升级后测试,应用项目可用 composer bump 收紧约束,最后再次 composer audit 确认公告已解决。

常用命令:composer outdated --direct --format=json 仅看直接依赖;composer why-not php 8.2 查看阻塞 PHP 版本升级的包;composer update vendor/package --dry-run --no-interaction --no-ansi 先预览;composer require vendor/package:"^3.0" 更新主版本约束,风险升级可用双约束 "^2.5.0|^3.0" 测试后再锁定。

合并冲突:composer.lock 冲突时可用 python3 scripts/diff_lock.py --conflict 比较 HEAD 与 MERGE_HEAD 并生成 composer require / remove 命令,也支持比较分支或文件,如 python3 scripts/diff_lock.py main:composer.lock feature-branch:composer.lock。

限制:composer bump 不带 --dev-only 仅适用于应用,库项目使用会收窄约束影响下游;具体标志与策略见技能内 references 文档,资料未提供更多细节。