intervention/image-symfony
Symfony integration for Intervention Image, providing a ready-to-use image manager service for resizing, cropping, and applying filters. Configure drivers and options once, then inject the manager anywhere to handle uploads and thumbnails with clean, expressive code.
Architecture fit
intervention/image-symfony remains a Symfony bundle, not a Laravel package. 4.0.0 does not change that. In a Laravel codebase the equivalent is intervention/image-laravel (which must be evaluated on its own release cadence against core v4), or a direct container binding of the core library. A TPM decision is required before any migration work: if the target stack is Laravel, this release is out of scope and the correct action is to track intervention/image-laravel's v4 support instead.intervention/image v4. 4.0.0 of the bundle is, by its own release note, a compatibility bump: the same bundle/DI-extension/config-tree glue retargeted at a new core major. Architecture fit is unchanged; the dependency underneath it is not.ImageManagerInterface from a container, and poor where teams expect framework-native helpers. 4.0.0 adds no such helpers.Integration feasibility
ext-gd or ext-imagick in every runtime — web, queue workers, CLI, CI.Technical risk
Image::make()), this is a second hop and the v3 notes no longer describe the current destination. Budget per-call-site review; do not assume the v2→v3 playbook transfers.Key questions
intervention/image v4? We need the breaking-change list, the minimum PHP version, and whether driver/encoder defaults moved. Without this, no estimate is credible — and the bundle's own release note does not supply it.intervention/image-laravel against core v4 instead.Stack fit
intervention/image-laravel — and confirm its core-v4 support status, since that package now has the same compatibility gap to close. Alternatively bind the core ImageManager in ~20 lines and own the version pin directly, which insulates you from every one of these wrapper majors.Migration path
ImageService façade, and a fixture-based test. Start on 4.0.0 — there is no reason to onboard onto a line that is now one major behind.Compatibility
intervention/image-symfony 4.x), and core major (intervention/image 4.x). Bundle and core majors move as a pair — record that as an invariant, not a convention.policy.xml. Still the most common "works locally" failure.Sequencing
Maintenance
Support
Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?