Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Migrations Bundle Laravel Package

zenstruck/migrations-bundle

A Symfony bundle for managing database migrations. It provides commands and configuration to create, run, and track schema changes, helping keep your application's database structure in sync across environments.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Migration ergonomics in Symfony/Doctrine apps. This bundle wraps DoctrineMigrationsBundle so migrations run inside the application container and can therefore resolve services — e.g. calling a domain service, repository, hasher, or HTTP client during a migration rather than writing raw SQL. The product decision it informs is how data changes ship: as container-aware migrations in the app deploy, versus as standalone one-off scripts, queued jobs, or a separate migration runner.
  • Backfill strategy. It supports the choice to co-locate data backfills (re-encrypting PII, generating slugs, computing derived columns, seeding reference data) with schema changes instead of bolting on ad-hoc scripts — a meaningful simplification for small teams without a dedicated data/platform function.
  • Deploy topology. Container-aware migrations imply migrations execute within the same runtime/image as the app. That constrains decisions about zero-downtime/blue-green deploys and whether migrations belong in a separate pipeline step — worth knowing before committing to a deployment architecture.
  • Build vs. buy (the decisive one). The answer here is neither: the capability was absorbed upstream into Doctrine's own bundle, which is exactly why this package is deprecated. The PM decision is to consume first-party framework functionality and avoid third-party wrappers around core infrastructure.
  • Framework mismatch flag. Despite the "Laravel/PHP package" framing, this is a Symfony bundle for Doctrine. If the roadmap is Laravel, there is nothing to evaluate — Laravel's native migrations plus custom Artisan commands cover the same use case; the decision collapses to "use what we already have."

When to Consider This Package

  • Only for a legacy Symfony application pinned to an old doctrine/doctrine-migrations-bundle that genuinely lacks container access in migrations, with no appetite for a dependency bump. Even then, the package's own deprecation notice points you to the upstream replacement — so the honest recommendation is to upgrade Doctrine, not adopt this.
  • Adoption criteria (all required): Symfony + Doctrine stack; outdated Doctrine migrations bundle that cannot be upgraded; concrete need for service access inside migrations; acceptance of an unmaintained dependency.
  • Look elsewhere / do not adopt when:
    • The stack is Laravel or any non-Symfony framework — the package is simply not applicable.
    • The repository is archived and deprecated: no security patches, no support guarantees for current PHP 8.x or Symfony 5+/6+/7, no compatibility work with modern Doctrine.
    • 3 stars, 0 dependents — effectively no community, no ecosystem validation, and no signal that regressions will be caught.
    • Your organization requires maintained dependencies with a security-response process; archived packages will be flagged by SBOM/vulnerability scanning and block compliance gates.
    • You can use doctrine/doctrine-migrations-bundle directly, which you can.

How to Pitch It (Stakeholders)

  • For executives: This is a small, deprecated, archived Symfony utility that briefly let database migrations use application services. That functionality now ships in the upstream Doctrine bundle it wrapped. Recommendation: do not adopt. If we already depend on it, schedule removal in the next dependency-hygiene pass — low effort, no product-facing change.
  • For engineering: Swap to a current doctrine/doctrine-migrations-bundle and use its native container-aware migrations; no custom code required. Scope is a version bump plus a smoke test of the migration runner — days, not weeks.
  • For risk/security reviewers: Near-zero functional upside, non-zero supply-chain and maintenance risk. Archived status means no patches, no framework-version support, and a likely audit finding. Removing it is a cheap win that reduces risk surface and topline technical debt.
  • Roadmap placement: Do not list as a feature enabler. Treat it strictly as a technical-debt line item — and if the product is Laravel-based, close the evaluation entirely; it's the wrong ecosystem.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager