hpbxxtr / composer-upgrade-interactive
Interactive TUI for selectively upgrading Composer dependencies (yarn upgrade-interactive for PHP)
Package info
github.com/hpbxxtr/composer-upgrade-interactive
Type:composer-plugin
pkg:composer/hpbxxtr/composer-upgrade-interactive
Requires
- php: ^8.3
- composer-plugin-api: ^2.0
- laravel/prompts: 0.3.23
Requires (Dev)
- brnshkr/config: dev-php83
- composer/composer: 2.10.2
- friendsofphp/php-cs-fixer: 3.95.21
- kubawerlos/php-cs-fixer-custom-fixers: 3.37.2
- mockery/mockery: 1.6.15
- pestphp/pest: 4.7.8
- pestphp/pest-plugin-arch: 4.0.2
- phpstan/extension-installer: 1.4.3
- phpstan/phpstan: 2.2.9
- phpstan/phpstan-deprecation-rules: 2.0.5
- phpstan/phpstan-doctrine: 2.0.28
- phpstan/phpstan-phpunit: 2.0.18
- phpstan/phpstan-strict-rules: 2.0.12
- phpstan/phpstan-symfony: 2.0.20
- phpstan/phpstan-webmozart-assert: 2.0.0
- rector/rector: 2.6.1
- symfony/finder: 7.4.17
- symplify/phpstan-rules: 14.10.0
- ticketswap/phpstan-error-formatter: 1.3.0
- tomasvotruba/type-coverage: 2.2.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-04 03:45:17 UTC
README
An interactive TUI for selectively upgrading Composer dependencies
yarn upgrade-interactive for PHP!
โจ Features
- Patch / minor / major columns per package โ choose exactly how far to upgrade each one
- Full version picker โ press
von any cell to browse all available stable versions in an inline multi-column list and pin an exact release - Live compatibility checking โ conflicting versions are marked with
!as you navigate; the footer explains which dependency chain is broken and whether it originates from the current upgrade selection or from an already-installed package - Minimum release age โ gate out releases published minutes ago, project-wide or per run
- require and require-dev sections rendered separately
- Abandoned package warnings with replacement suggestions
- Comparison and release URLs in the footer for whichever bump type or version is focused (GitHub, GitLab, Packagist)
- Full keyboard navigation โ arrow keys, vim (
hjkl), and Emacs (Ctrl+P/N/B/F) bindings
๐ Requirements
- PHP 8.3+
- Composer 2.x
๐ฆ Installation
composer global require hpbxxtr/composer-upgrade-interactive
Or as a project dev dependency:
composer require --dev hpbxxtr/composer-upgrade-interactive
Trust prompt โ Composer will ask you to allow the plugin to execute code. Answer
yto enable it:Do you trust "hpbxxtr/composer-upgrade-interactive" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [y,n,d,?] y
๐ Usage
composer h:ui
Aliases: composer hpbxxtr:upgrade-interactive ยท composer upgrade-interactive
Navigate to a package, move across the patch/minor/major columns with the arrow keys, press space to select the latest version for that bump level, or press v to open an inline picker and choose any specific stable release. Press enter to confirm and apply.
๐ Documentation
Full docs live at hpbxxtr.github.io/composer-upgrade-interactive:
- Installation ยท Usage
- Minimum release age โ cooldown before a fresh release may be selected
- Key bindings โ normal mode, version picker, age input
- How it works โ resolution, conflict detection, apply
- CLI reference ยท Configuration reference
The site is built with VitePress from docs/ and deployed to GitHub Pages on release. To preview it locally:
make docs-dev
๐ License
MIT โ see LICENSE.

