fsi/doctrine-extensions-bundle
FSi DoctrineExtensionsBundle integrates Gedmo/DoctrineExtensions into Symfony, providing configuration and service registration for ORM extensions like Timestampable, Sluggable, Tree, Translatable, SoftDeleteable, and Blameable with minimal setup.
Architecture fit
fsi/doctrine-extensions-bundle is a Symfony bundle, not a Laravel package. It ships a Bundle subclass, a DependencyInjection\Extension, a Configuration tree, and compiler passes — none of which Laravel's container/service-provider model consumes.fsi/doctrine-extensions library (FSi's fork of the Gedmo DoctrineExtensions family: Tree/NestedSet, Timestampable, Blameable, SoftDeleteable, Loggable, Sluggable, Translatable, Sortable).Integration feasibility
composer require, register in bundles.php/config/bundles.php, add a fsi_doctrine_extensions: block, done.doctrine/orm 3.x compatibility. ORM 3 removed the annotation metadata driver in favor of attributes, and several Gedmo-lineage extensions changed their listener signatures — a 2021-vintage bundle is very likely to pin doctrine/orm ^2.x and symfony/framework-bundle ^4.4|^5.0, which would act as a hard upgrade blocker for the whole application.Technical risk
getContainerExtension() typing, Extension::load() return types, ContainerBuilder deprecations in 5.3/6.0). An unmaintained bundle is a recurring source of "works on 5.4, fatal on 6.4" incidents.fsi/doctrine-extensions, which is itself a fork of gedmo/doctrine-extensions. You inherit two layers of divergence from the upstream project most of the ecosystem actually uses.Key questions
stof/doctrine-extensions-bundle (~1.7k stars, actively maintained, same underlying Gedmo library)? Is there a specific FSi extension not present upstream, or is this incidental legacy?Stack fit
doctrine/orm 2.x. Anything newer requires verification before it can be planned into a roadmap.Migration path
SoftDeletes trait + global scopes (SoftDeleteable), Eloquent created_at/updated_at (Timestampable), spatie/laravel-activitylog (Loggable), kalnoy/nestedset (Tree), model observers (Blameable), spatie/laravel-sluggable (Sluggable). This is a mapping exercise, not a code migration, and it eliminates the bundle entirely.stof/doctrine-extensions-bundle plus gedmo/doctrine-extensions, unless an FSi-specific extension is load-bearing. The config keys are similar enough that the change is mostly a config rename and a subscriber re-registration.src/, relax composer constraints, add return types, and adopt it as first-party code.Compatibility
symfony/framework-bundle constraint; whether fsi/doctrine-extensions itself supports PHP 8.1+.Sequencing
Maintenance
Support
Configuration.php.Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?