NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #405 most downloaded on Packagist
Manipulate images with an expressive API
Last release 8 days ago
30 Sep 2026
Ships fairly regularly
a new release about every 6 weeks
Nearly every release is documented
notes for 55 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
98 releases · first in 2017
Convert palette images to truecolor before encoding avif with gd by @AlexisSerneels in #333
Full Changelog: 3.9.6...3.9.7
Full Changelog: https://github.com/spatie/image/compare/3.9.6...3.9.7
One column per quarter.
Bump actions/checkout from 6 to 7 by @dependabot [bot] in #329
Full Changelog: 3.9.5...3.9.6
Full Changelog: https://github.com/spatie/image/compare/3.9.5...3.9.6
Bump ramsey/composer-install from 3 to 4 by @dependabot [bot] in #323
Full Changelog: 3.9.4...3.9.5
Full Changelog: https://github.com/spatie/image/compare/3.9.4...3.9.5
Fix unhandled EXIF orientations in GD driver by @GarethSomers in #322
The GD driver now correctly handles all 8 EXIF orientations (including flipped variants), matching the existing Imagick driver behavior.
Fix VipsDriver format() being ignored when saving to a path with a different extension
format() being ignored when saving to a path with a different extensionFull Changelog: 3.9.2...3.9.3
Fix VipsDriver save() without path and format() being ignored
The VipsDriver was missing originalPath tracking and format fallback
logic that GdDriver and ImagickDriver both have. This caused save()
without a path to fail with "Unsupported format 'unknown'" and
format() calls to be ignored when determining the output format.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Co-authored-by: Claude Opus 4.6 noreply@anthropic.com
Bump dependabot/fetch-metadata from 2.4.0 to 2.5.0 by @dependabot [bot] in #318
Full Changelog: 3.9.0...3.9.1
Full Changelog: https://github.com/spatie/image/compare/3.9.0...3.9.1
Add support for Vips by @freekmurze in #286
Full Changelog: https://github.com/spatie/image/compare/3.8.7...3.9.0
Bump stefanzweifel/git-auto-commit-action from 6 to 7 by @dependabot [bot] in #308
Full Changelog: 3.8.6...3.8.7
Full Changelog: https://github.com/spatie/image/compare/3.8.6...3.8.7
Bump aglipanci/laravel-pint-action from 2.5 to 2.6 by @dependabot [bot] in #302
Full Changelog: 3.8.5...3.8.6
Full Changelog: https://github.com/spatie/image/compare/3.8.5...3.8.6
Fix tests by @timvandijck in #299
Full Changelog: 3.8.4...3.8.5
Full Changelog: https://github.com/spatie/image/compare/3.8.4...3.8.5
Bump dependabot/fetch-metadata from 2.3.0 to 2.4.0 by @dependabot in https://github.com/spatie/image/pull/297
Full Changelog: https://github.com/spatie/image/compare/3.8.3...3.8.4
refactor: simplify loadFile by replacing fopen/fread with file_get_contents by @Ayoub-Mabrouk in https://github.com/spatie/image/pull/296
Full Changelog: https://github.com/spatie/image/compare/3.8.2...3.8.3
refactor: simplify resizeWidth method by @Ayoub-Mabrouk in https://github.com/spatie/image/pull/292
Full Changelog: https://github.com/spatie/image/compare/3.8.1...3.8.2
Bump dependabot/fetch-metadata from 2.2.0 to 2.3.0 by @dependabot in https://github.com/spatie/image/pull/287
Full Changelog: https://github.com/spatie/image/compare/3.8.0...3.8.1
Add -90 rotation degree by @hbakouane in https://github.com/spatie/image/pull/285
Full Changelog: https://github.com/spatie/image/compare/3.7.5...3.8.0
PHP 8.4 tests by @erikn69 in https://github.com/spatie/image/pull/277
Full Changelog: https://github.com/spatie/image/compare/3.7.4...3.7.5
Fix broken link by @Synchro in https://github.com/spatie/image/pull/272
Full Changelog: https://github.com/spatie/image/compare/3.7.3...3.7.4
Update Image.php to fix $prefixWithFormat by @tanshiqi in https://github.com/spatie/image/pull/269
Full Changelog: https://github.com/spatie/image/compare/3.7.2...3.7.3
fix: Apply image format when saving file in ImagickDriver by @nicoverbruggen in https://github.com/spatie/image/pull/268
Full Changelog: https://github.com/spatie/image/compare/3.7.1...3.7.2
fix: GdDriver resizeCanvas save alpha channel; by @olexoliinyk0 in https://github.com/spatie/image/pull/266
Full Changelog: https://github.com/spatie/image/compare/3.7.0...3.7.1
Bump dependabot/fetch-metadata from 2.1.0 to 2.2.0 by @dependabot in https://github.com/spatie/image/pull/263
Full Changelog: https://github.com/spatie/image/compare/3.6.4...3.7.0
Implement Fit::FillMax by @timvandijck in https://github.com/spatie/image/pull/258
Full Changelog: https://github.com/spatie/image/compare/3.6.3...3.6.4
Full Changelog: https://github.com/spatie/image/compare/3.6.2...3.6.3
Full Changelog: https://github.com/spatie/image/compare/3.6.2...3.6.3
Update overview.md by @schmeits in https://github.com/spatie/image/pull/253
Full Changelog: https://github.com/spatie/image/compare/3.6.1...3.6.2
Ability to resize canvas when keeping fill background a certain color by @OzanKurt in https://github.com/spatie/image/pull/249
Full Changelog: https://github.com/spatie/image/compare/3.6.0...3.6.1
Bump dependabot/fetch-metadata from 1.6.0 to 2.0.0 by @dependabot in https://github.com/spatie/image/pull/244
Full Changelog: https://github.com/spatie/image/compare/3.5.0...3.6.0
Fix saving jfif image by @clementbirkle in https://github.com/spatie/image/pull/248
Full Changelog: https://github.com/spatie/image/compare/3.4.2...3.5.0
Bump aglipanci/laravel-pint-action from 2.3.1 to 2.4 by @dependabot in https://github.com/spatie/image/pull/246
Full Changelog: https://github.com/spatie/image/compare/3.4.0...3.4.2
Bump aglipanci/laravel-pint-action from 2.3.1 to 2.4 by @dependabot in https://github.com/spatie/image/pull/246
Full Changelog: https://github.com/spatie/image/compare/3.4.0...3.4.1
Bump ramsey/composer-install from 2 to 3 by @dependabot in https://github.com/spatie/image/pull/241
Full Changelog: https://github.com/spatie/image/compare/3.3.8...3.4.0
Allow lossless saving of Webp with the GD driver by @fabio-ivona in https://github.com/spatie/image/pull/240
Full Changelog: https://github.com/spatie/image/compare/3.3.7...3.3.8
Fix for Fit::Max not behaving as described in the documentation by @RaBic in https://github.com/spatie/image/pull/239
Full Changelog: https://github.com/spatie/image/compare/3.3.6...3.3.7
Bugfix for cases where setting a quality did nothing https://github.com/spatie/image/pull/237
Full Changelog: https://github.com/spatie/image/compare/3.3.5...3.3.6
Update adding-a-watermark.md by @yoeriboven in https://github.com/spatie/image/pull/235
Full Changelog: https://github.com/spatie/image/compare/3.3.4...3.3.5
Crop issue fixes by @timvandijck in https://github.com/spatie/image/pull/230
Full Changelog: https://github.com/spatie/image/compare/3.3.3...3.3.4
Bump aglipanci/laravel-pint-action from 2.3.0 to 2.3.1 by @dependabot in https://github.com/spatie/image/pull/224
Full Changelog: https://github.com/spatie/image/compare/3.3.2...3.3.3
move ext requirement to dev by @ariaieboy in https://github.com/spatie/image/pull/222
Full Changelog: https://github.com/spatie/image/compare/3.3.1...3.3.2
update GD driver by @ariaieboy in https://github.com/spatie/image/pull/221
Full Changelog: https://github.com/spatie/image/compare/3.3.0...3.3.1
- add watermark method
Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/spatie/image/pull/210
OptimizerChain::setTimeout() to the image optimization tests and docs by @golubev in https://github.com/spatie/image/pull/208Full Changelog: https://github.com/spatie/image/compare/3.1.0...3.2.0
add Avif Support by @ariaieboy in https://github.com/spatie/image/pull/207
Full Changelog: https://github.com/spatie/image/compare/3.0.0...3.1.0
@erikn69 made their first contribution in https://github.com/spatie/image/pull/197
Full Changelog: https://github.com/spatie/image/compare/2.2.7...3.0.0
- bump requirements
Bump dependabot/fetch-metadata from 1.3.5 to 1.3.6 by @dependabot in https://github.com/spatie/image/pull/185
Full Changelog: https://github.com/spatie/image/compare/2.2.5...2.2.6
Refactor tests to pest by @AyoobMH in https://github.com/spatie/image/pull/176
Full Changelog: https://github.com/spatie/image/compare/2.2.4...2.2.5
Add zero orientation support ignoring EXIF by @danielcastrobalbi in https://github.com/spatie/image/pull/171
Full Changelog: https://github.com/spatie/image/compare/2.2.3...2.2.4
Nothing published for this version
- add TIFF support
Nothing published for this version
- add avif support
Make codebase more strict with type hinting
- Bump league/glide to v2 #134
Nothing published for this version
Nothing published for this version
Nothing published for this version
Allow spatie/temporary-directory v2
- Bump league/glide to 2.0 #123
change condition to delete $conversionResultDirectory
- adds zoom option to focalCrop
Your coding agent can read these notes before it upgrades. Set up the MCP server →