mvrhov/phinx-bundle
Symfony bundle that integrates Phinx database migrations into your app, letting you configure Phinx and run migration commands through Symfony’s console. Useful for managing schema changes across environments with a familiar, versioned migration workflow.
mvrhov/phinx-bundle is effectively a signal to schedule an audit of that service's migration path, not a feature decision. It should appear on the "legacy risk register," not the product roadmap.artisan migrate, schema builder, doctrine/dbal for column changes) already cover this ground with active maintenance. This package should be explicitly ruled out of any Laravel RFC.Only consider it if all of the following are true:
Look elsewhere — decisively — when:
php artisan make:migration / migrate. No third-party bundle is warranted; there is no integration gap to fill.robmorgan/phinx directly (it's a standalone CLI — no framework glue required) or the actively maintained community fork, and invoke it from a Composer script or CI step.Recommendation: do not adopt. Treat as replace-on-touch for any existing service; block for new work.
For executives: We evaluated mvrhov/phinx-bundle, an MIT-licensed integration that connects the Phinx migration tool to Symfony applications. It is not a fit. The last release was December 2017, it has 6 GitHub stars and zero dependent packages, and it targets a Symfony/PHP generation we no longer run. Adopting it would create a single-maintainer dependency with no security response path — a liability, not a capability. Recommendation: no adoption, no spend. This is a zero-cost decision.
For engineering: The integration it provides is trivial — registering Phinx as a console command and wiring a bit of DI config. If a service genuinely needs Phinx, run the standalone robmorgan/phinx CLI from CI or a Composer script; that removes the bundle, the Symfony-version coupling, and the abandoned-maintainer risk in one step. For any Laravel service, this is a non-conversation: native migrations are the maintained, documented, team-familiar default. Use this finding as a trigger to inventory any service currently depending on it and schedule replacement during the next PHP/framework upgrade cycle.
How can I help you explore Laravel packages today?