Image Optimize Changelog.
Link 1.6.56 · 2024.10.21
Link Changed ·
fixed -
- Don't add image variants if no variant creator for them exists (#410)
- Don't apply background placeholder CSS to images that may be transparent like SVGs or GIFs (#410)
Link 1.6.55 · 2024.06.19
fixed - 2024.06.19
- Fixed an issue where
srcsetMaxWidth()
could return incorrect results (#407) - Fixed an issue where the data-uri for inline SVG styles were incorrect in some browsers because the spaces were not URL-encoded (#408)
Link 1.6.54 · 2024.05.09
fixed - 2024.05.09
- Fixed an issue where the
.imgTag()
and.pictureTag()
would output and invalidstyle
attribute for lazy loaded images (#400)
Link 1.6.53 · 2024.04.04
added - 2024.04.04
- Added the ability to pass in a config array to
.imgTag()
,.pictureTag()
and.linkPreloadTag()
changed - 2024.04.04
- Changed
.loading()
→.loadingStrategy()
,.artDirection()
→addSourceFrom()
Link 1.6.52 · 2024.04.02
added - 2024.04.02
- Added a
--queue
option to theimage-optimize/optimize/create
console command if you want to defer the image generation to be run via queue job, rather than immediately via the console command - Add
phpstan
andecs
code linting - Add
code-analysis.yaml
GitHub action - Add
.imgTag()
to theOptimizedImage
model, which generates a complete<img>
tag from theOptimizedImage
- Add
.pictureTag()
to theOptimizedImage
model, which generates a complete<picture>
tag from theOptimizedImage
- Add
.linkPreloadTag()
to theOptimizedImage
model, which generates a complete<link rel="preload">
tag from theOptimizedImage
- Add
craft.imageOptimize.renderLazySizesJs()
to render the LazySizes JavaScript for lazy loading images - Add
craft.imageOptimize.renderLazySizesFallbackJs()
to render the LazySizes JavaScript with a support script that uses LazySizes as a fallback for browsers that don't support theloading
property
changed - 2024.04.02
- Added PDF to the Ignore Files field settings (#364)
- Updated docs to use node 20 & a new sitemap plugin
- Switch over to Vite
^5.0.0
& Node^20.0.0
for the buildchain - PHPstan code cleanup
- ECS code cleanup
Link 1.6.51 · 2023.05.19
changed - 2023.05.19
- Automate release generation via GitHub action
- Add versioning to the docs
fixed - 2023.05.19
- Remove the old Craft generated transform that's still sitting in the temp directory (#380)
Link 1.6.50 · 2023.02.09
changed - 2023.02.09
- Use dynamic docker container name & port for the
buildchain
- Update the
buildchain
to use Vite^4.0.0
- Updated docs to use VitePress
^1.0.0-alpha.29
- Refactored the docs buildchain to use a dynamic docker container setup
Link 1.6.49 · 2022.11.17
changed - 2022.11.17
- Fixed HMR in local dev with explicit alias that resolves to the actual directory
Link 1.6.48 · 2022.07.17
changed - 2022.07.17
- Add
allow-plugins
tocomposer.json
to allow CI tests to work
fixed - 2022.07.17
- Fixed an issue where transforms don't get deleted on remote volumes if the format was set to
auto
(#341) - Normalize for lowercase file extensions and normalize
jpeg
->jpg
everywhere
Link 1.6.47 · 2022.07.08
fixed - 2022.07.08
- If there's no transform requested, return
null
so other plugins have a crack at it (#349)
Link 1.6.46 · 2022.06.29
fixed - 2022.06.29
- Fixed an issue that could throw an exception when double-clicking on an asset, due to an incorrect asset bundle path
Link 1.6.45 · 2022.06.28
changed - 2022.06.28
- If there's no transform requested, and we're not using some external service for image transforms, return
null
so other plugins have a crack at it
fixed - 2022.06.28
- Removed empty
type
on registered script tags, which would prevent them loading via the Vite dev server - Fix syntax errors in
OptimizedImagesField.js
- Fixed an issue that could cause JavaScript errors for newly created OptimizedImages fields, and in slideouts (#344)
Link 1.6.44 · 2022.03.24
fixed - 2022.03.24
- Fixed a regression due to a PR that could cause image variants to not be regenerated after resaving them
Link 1.6.43 · 2022.03.14
fixed - 2022.03.14
- Fixed an issue where an exception could be thrown when running the
craft resave/assets
console command (#78)
Link 1.6.42 · 2022.02.23
added - 2022.02.23
- Added in GQL implementation for
srcsetMinWidth
,srcsetMaxWidth
,srcsetMinWidthWebp
&srcsetMaxWidthWebp
.Updated the documentation to show how these are used (#315)
changed - 2022.02.23
- Only update variants for an existing asset if the image has been manipulated (#314)
fixed - 2022.02.23
- Use the new Imgix purge API endpoint properly (#4)
- Fixed an issue where corrupted images could result in the Imgix transformer throwing an exception (#3) (#306)
Link 1.6.41 · 2022.01.17
fixed - 2022.01.17
- Fixed an issue that could cause the JavaScript to not execute properly, causing the Settings to not appearcorrectly (#310)
Link 1.6.40 · 2022.01.12
added - 2022.01.12
- Add
.gitattributes
&CODEOWNERS
- Add linting to build
- Add compression of assets
- Add bundle visualizer
Link 1.6.39 · 2022.01.04
changed - 2022.01.04
- Updated the buildchain to use Node 16
- Changed buildchain to Vite from webpack 5
- Create variants via queue when an asset is moved in Craft
^3.7.1
Link 1.6.38 · 2021.11.18
fixed - 2021.11.18
- Fixed the display of WebP images in FireFox, Safari, and other browsers that support WebP, but not from Canvas byimproving the WebP support detection method (#301)
- Fixed the SVGO optimizer by ensuring that image processors without
commandOptions
have the resulting commandproperly padded with a space (#300) - Fixed an issue with the Sharp transform method where transforms could fail if the file extension was notlowercase (#4)
Link 1.6.37 · 2021.11.11
fixed - 2021.11.11
- Fixed an issue where image placeholders would create images in incorrectly large sizes if certain EXIF data waspresent, and
preserveExifData
was set totrue
inconfig/general.php
, resulting in a db error when trying to savethe encoded image in the field data (#296)
Link 1.6.36 · 2021.09.07
fixed - 2021.09.07
- Fixed an issue where the wrong Imgix API was being used for purgingimages (#273)
Link 1.6.35 · 2021.07.14
fixed - 2021.07.14
- Special-case for Craft 3.7 or later, with the addition of a suffix to the Field content columnname (https://github.com/craftcms/cms/issues/6922) (https://github.com/nystudio107/craft-imageoptimize/issues/289)
Link 1.6.34 · 2021.06.10
changed - 2021.06.10
- Switched documentation system to VitePress
- When an asset is replaced, force the recreation of thevariants (https://github.com/nystudio107/craft-imageoptimize/issues/283)
fixed - 2021.06.10
- Fixed an issue where uppercase file suffixes would cause webp image variants to not becreated (https://github.com/nystudio107/craft-imageoptimize/issues/277)
- If
image/svg
is being ignored, addimage/svg+xml
to the mime types to ignore as well - Now store the image sub-folders by name, since the UID can be different perenvironment (https://github.com/nystudio107/craft-imageoptimize/issues/282)
Link 1.6.33 · 2021.04.23
added - 2021.04.23
- Added a setting to control the amount an image needs to be scaled down for automatic sharpening to beapplied (https://github.com/nystudio107/craft-imageoptimize/issues/263)
- Added an option to cap the placeholder silhouette SVG size to32Kb (https://github.com/nystudio107/craft-imageoptimize/issues/270)
Link 1.6.32 · 2021.04.15
fixed - 2021.04.15
- If there are too many sub-folders in an Asset volume, don't display them, return an emptyarray (https://github.com/nystudio107/craft-imageoptimize/issues/203)
Link 1.6.31 · 2021.04.06
added - 2021.04.06
- Added
make update
to update NPM packages - Added
make update-clean
to completely removenode_modules/
, then update NPM packages
changed - 2021.04.06
- Use Tailwind CSS
^2.1.0
with JIT
fixed - 2021.04.06
- Fixed broken link to lower quality retina images article
Link 1.6.30 · 2021.04.03
added - 2021.04.03
- Added some additional CLI command logging that shows the savings from optimization
changed - 2021.04.03
- Don't record or display errors that are a result of assets that are not images
- Don't display image transform errors twice
Link 1.6.29 · 2021.03.31
fixed - 2021.03.31
- Fixed a regression that caused the field settings to not work properly for adding/removing variantblocks (https://github.com/nystudio107/craft-imageoptimize/issues/268)
Link 1.6.28 · 2021.03.28
changed - 2021.03.28
- Updated to latest docs dependencies
fixed - 2021.03.28
- Fixed missing Composer dependency
nystudio107/craft-plugin-manifest
Link 1.6.27 · 2021.03.28
changed - 2021.03.28
- Move settings from the
composer.json
“extra” to the plugin main class - Move the manifest service registration to the constructor
- Require
nystudio107/craft-imageoptimize-imgix
version^1.2.1
fixed - 2021.03.28
- Return
null
if no transform needs to be done, so other plugins can hook in
Link 1.6.26 · 2021.02.26
fixed - 2021.02.26
- Fixed a regression that caused the image sizes to show up as
???
in the Asset Detail view
Link 1.6.25 · 2021.02.23
changed - 2021.02.23
- Updated to use
craft-imageoptimize-imgix
version^1.2.0
fixed - 2021.02.23
- Always display sticky errors
Link 1.6.24 · 2020.02.13
added - 2020.02.13
- Added error logging for
curl
errors
changed - 2020.02.13
- Attempt to display optimized image variants even if the image curl fails
- Remove the use of
curl
to obtain the remote image sizes, replacing it with frontend JS
Link 1.6.23 · 2020.02.13
fixed - 2020.02.13
- Fixed parse errors with PHP < 7.3
Link 1.6.22 · 2020.02.10
added - 2020.02.10
- Added a
stickyErrors
property to the OptimizedImages model, so we can post-facto display if something went wrongduring image generation on the frontend to users - Implemented
useFieldset
for Craft 3.6
fixed - 2020.02.10
- Fixed deprecation errors in Craft CMS 3.5 or later
- Fixed an issue where aspect ratios could be improperly rounded, causing a division by zero error
Link 1.6.21 · 2020.12.31
added - 2020.12.31
- Added a ImageOptimize Info Utility that allows you to see the ImageOptimize settings even in environmentswhere
allowAdminChanges
isfalse
- Added a try/catch block to Imagine calls to handle errors more gracefully
changed - 2020.12.31
- Split out vendors & commons chunks
- Switch from using
->each()
to usingcraft\db\Paginator
to paginate asset query results, to address out of memoryissues on massive queries - ImageOptimize now requires Craft CMS 3.1.19 or later
Link 1.6.20 · 2020.12.08
changed - 2020.12.08
- Lowercase written instances of "Imgix"
- Added additional logging for image placeholder and color extraction
- Moved the CSS/JS buildchain over to webpack 5
- Updated to latest npm deps
Link 1.6.19 · 2020.10.07
fixed - 2020.10.07
- Fixed improperly generated
webp
URL for Imgix
Link 1.6.18 · 2020.09.28
changed - 2020.09.28
- If an Optimized Images field is edited, only re-save the transforms for that specific field
- Allow an optional
--field
to be passed into thephp craft image-optimize/optimize/create
console command to onlycreate image variants associated with a specific Optimized Images field - Allow an optional
--force
flag to be passed into thephp craft image-optimize/optimize/create
console command forforce image variant creation
Link 1.6.17 · 2020.09.18
changed - 2020.09.18
- Sped up image optimization on multi-site setups by not spawning a new optimizing images job if the element is merelypropagating to other sites
fixed - 2020.09.18
- Fixes issue when using
asset.getUrl({ })
with Imgix, whereformat
would be coerced to the image's extensionformat, when it should have been left asnull
.
Link 1.6.16 · 2020.08.31
changed - 2020.08.31
- Cleaned up the field styling to make it look correct on Craft CMS > 3.5.0
- Default to
false
if$variant['useAspectRatio']
is somehow null
Link 1.6.15 · 2020.08.25
added - 2020.08.25
- Added support for Redis queue jobs
- If an Optimized Images field isn't set to create variants for the sub-folder that an Asset is in, it'll display N/A
changed - 2020.08.25
- Cleaned up the field formatting for Craft CMS 3.5 CSS layout changes
fixed - 2020.08.25
- Fixed an issue with
.webp
URLs not working for URLs with ports in them - Make missing webp variants display better
- Fixed an issue where images that were in sub-folders of sub-folders didn't have image variants created for them, ifonly specific volume sub-folders were chosen for optimization
Link 1.6.14 · 2020.06.08
fixed - 2020.06.08
- Ensure image quality is set to
null
as “Auto” setting of image quality
Link 1.6.13 · 2020.04.16
fixed - 2020.04.16
- Fixed Asset Bundle namespace case
Link 1.6.12 · 2020.03.21
added - 2020.03.21
- Added the
create-asset
console command for regenerating the responsive image variants for a single Asset ID
changed - 2020.03.21
- Generated image URLs that have no file format extension are now properly displayed in the GUI (an issue mostly withserverless Sharp)
Link 1.6.11 · 2020.02.12
changed - 2020.02.12
- Sanity check the inputs before normalizaing the file format
Link 1.6.10 · 2020.02.11
changed - 2020.02.11
- Normalize the file format to lowercase before transforming
Link 1.6.9 · 2020.02.06
changed - 2020.02.06
- Properly documented how the data in the
imageTransformTypeSettings
config is stored
fixed - 2020.02.06
- Fixed an issue where an SVG sent in to an image transform handler as a thumbnail request without specifying anotherformat to convert to
Link 1.6.8 · 2020.01.27
fixed - 2020.01.27
- Fixed an issue where an SVG sent in to image transform handler without specifying another format to convert to
- Fixed an issue where
MTIME
or other query string params could be listed as part of the image format
Link 1.6.7 · 2020.01.08
added - 2020.01.08
- Added the ability to retrieve the dominant color palette as RGB values, making things like gradients easier to do
- ImageOptimize will now send back an Imgix or other transform method URL for
asset.getUrl()
with no transform applied
Link 1.6.6 · 2019.11.19
added - 2019.11.19
- Added a Preferences item to control whether allow limiting the creation of Optimized Image Variants for images bysub-folders
Link 1.6.5 · 2019.11.13
added - 2019.11.13
- Added the ability to choose the sub-folders in an asset volume in which Optimized Image Variants will be created
changed - 2019.11.13
- Parse volumes sub-folders as environment variables
Link 1.6.4 · 2019.10.31
changed - 2019.10.31
- If an image is an animated
.gif
file, never change the file format
Link 1.6.3 · 2019.10.24
changed - 2019.10.24
- Force update to
"nystudio107/craft-imageoptimize-imgix": "^1.1.1"
- Fixed aspect ratio for CP thumbnail images
- Default
createPlaceholderSilhouettes
tofalse
so people need to enable this setting if they want to use them (theycan be on the larger side)
Link 1.6.2 · 2019.09.25
changed - 2019.09.25
- Added support for native GraphQL in Craft 3.3
Link 1.6.1 · 2019.08.13
changed - 2019.08.13
- Added more robust sanity checking if an invalid URL or path is being passed into
ImageTransform::appendExtension()
Link 1.6.0 · 2019.07.05
added - 2019.07.05
- Added support for Sharp via AWS Serverless Image Handleras a Transform Method
changed - 2019.07.05
- Fixed an issue where ImageOptimize was not handling assets it didn't know how to transform property, resulting ingeneric thumbnails if you used the Embedded Assets plugin
- Updated
ImageTransformInterface
to remove the deprecated$params
Link 1.5.7 · 2019.06.13
added - 2019.06.13
- Added a
lightness
calculation based on a weighted average of the extracted dominant color palette to give you anidea of the image's overall lightness
changed - 2019.06.13
- Don't force the format for fallback images
- Rebuilt assets to fix npm vulnerabilities
Link 1.5.6 · 2019.05.21
changed - 2019.05.21
- Fixed an issue where newly added Image Variant blocks had incorrect ids on the Retina checkboxes
- Updated build system
Link 1.5.5 · 2019.04.22
changed - 2019.04.22
- Updated Twig namespacing to be compliant with deprecated class aliases in 2.7.x
Link 1.5.4 · 2019.02.22
changed - 2019.02.22
- Fixed an issue where focal points weren't always respected for Imgix
Link 1.5.3 · 2019.02.07
changed - 2019.02.07
- Fixed an issue where
.env
vars were not actually parsed
Link 1.5.2 · 2019.02.07
changed - 2019.02.07
- If you're using Craft 3.1, ImageOptimize will useCraft environmental variables forsecrets
Link 1.5.1 · 2018.12.28
changed - 2018.12.28
- Refactored the Imgix and Thumbor Image Transforms out to external packages
Link 1.5.0 · 2018.12.27
changed - 2018.12.27
- Refactored out the
ImageTransform
interface to use Yii2's DI to allow them to be stand-alone components - Respond to
Assets::EVENT_GET_ASSET_THUMB_URL
for direct thumbnail generation from third party image transformservices
Link 1.4.45 · 2018.11.28
changed - 2018.11.28
- Call
App::maxPowerCaptain()
whenever a queue is manually run (both via web and console request) - Minor Thumbor fixes
Link 1.4.44 · 2018.11.18
changed - 2018.11.18
- Default format and quality to null so they can be omitted if you're generating transforms via Twig
- Fix an issue with Imgix with images that have no focal point set
Link 1.4.43 · 2018.11.05
changed - 2018.11.05
- Fix Thumbor focal point order
- Fix a regression that broke images in sub-folders for Imgix
- Retooled the JavaScript build system to be more compatible with edge case server setups
Link 1.4.42 · 2018.10.15
added - 2018.10.15
- Added the ability to have OptimizedImages fields ignore
SVG
and/orGIF
files - Added support Thumbor resizing service
Link 1.4.41 · 2018.10.11
changed - 2018.10.11
- Fixed an issue where volumes with sub-folders such as Amazon S3 or Google Cloud didn't generate the correct URLs
- Fixed the build process so it will no longer look for
devServer
on installs - Added a link to the variant does not exist to aid in diagnosing what is wrong
- Changed the signature of
::getWebPUrl()
to send in all of the transform params
Link 1.4.40 · 2018.10.05
added - 2018.10.05
- Add Super Table conditional for field
changed - 2018.10.05
- Updated build process
Link 1.4.39 · 2018.09.25
changed - 2018.09.25
- Added a try/catch around ColorThief, to catch errors thrown due to empty/transparent images
- Fix a regression that could cause Optimized Images to not be generated correctly
- Modernized package.json and webpack build
Link 1.4.38 · 2018.08.20
changed - 2018.08.20
- Fixed an incompatibility with the Spoon plugin by removing
matrix-field
class from field type settings - Fixed an erroneous 2:2 aspect ratio in the default settings
- Moved to a modern webpack build config for the Control Panel
- Added install confetti
Link 1.4.37 · 2018.08.09
changed - 2018.08.09
- Reverted an errant commit that removed a fix for propagating field data in multi-site environments
- Ensure that
.webp
variants have fully qualified absolute URLs
Link 1.4.36 · 2018.08.06
added - 2018.08.06
- Added the ability to access each image variant's height
changed - 2018.08.06
- Update to the latest version of the Imgix PHP library
Link 1.4.35 · 2018.07.12
changed - 2018.07.12
- Catch all exceptions that happen during
ResaveOptimizedImages()
job so that execution can continue
Link 1.4.34 · 2018.07.12
changed - 2018.07.12
- Smarter appending of variant creator suffixes, to handle URLs that have query strings
Link 1.4.33 · 2018.05.24
changed - 2018.05.24
- Handle JPEGs coming in as both
jpg
&jpeg
for the detected file format - Remove vestigal
empty()
checks
Link 1.4.32 · 2018.05.09
added - 2018.05.09
- Improved CraftQL support by allowing parameter passing to
src
andsrcUrls
Link 1.4.31 · 2018.04.22
added - 2018.04.22
- Added CraftQL support
Link 1.4.30 · 2018.04.09
added - 2018.04.09
- Added additional profiling information
Link 1.4.29 · 2018.04.06
added - 2018.04.06
- Added profiling to the image variant creation
changed - 2018.04.06
- Vastly increase the speed with which the transforms are created when done via Twig templating code
- Increased the speed of the variant creation in general
Link 1.4.28 · 2018.04.02
changed - 2018.04.02
- Switched over to using the Unsharp Mask (
usm
) filter for auto-sharpening Imgix images
Link 1.4.27 · 2018.04.02
changed - 2018.04.02
- Removed unused composer dependencies
Link 1.4.26 · 2018.03.31
changed - 2018.03.31
- Fixed a typo with
$generatePlacholders
that would cause saving images to fail
Link 1.4.25 · 2018.03.30
changed - 2018.03.30
- Fixed a typo in the
config.php
settings, changedgeneratePlacholders
->generatePlaceholders
- Made the reduced quality of retina images if
lowerQualityRetinaImageVariants
is enabled less aggressive
Link 1.4.24 · 2018.03.19
changed - 2018.03.19
- Fixed an issue with propagating field data in multi-site environments
- Scrutinizer code cleanup / refactoring
- If
.webp
support isn't configured, we don't display the images for thewebp
variants - If images are being generated via template (not recommended) disable running the image optimizers and variant creatorsby default
added - 2018.03.19
- Added
craft.imageOptimize.serverSupportsWebP()
function to determine whether the server is capable ofcreating.webp
variants - Added validation rules for
imgixSecurityToken
so the value can be saved in the model
Link 1.4.23 · 2018.03.03
changed - 2018.03.03
- The lengthy generation of placeholders should really be off by default when doing them via Twig now
- Asset move operations now cause Optimized Image Variants to be re-saved via a non-blocking queue job
Link 1.4.22 · 2018.03.02
changed - 2018.03.02
- Using Image Optimize via Twig should have less of a performance hit now, since all placeholder image/color palettegeneration is disabled
- Fixed deprecation errors from Craft CMS 3 RC13
Link 1.4.21 · 2018.02.27
changed - 2018.02.27
- Show a warning if people try to add an OptimizedImages field in a Matrix block
Link 1.4.20 · 2018.02.27
added - 2018.02.27
- Allow for CLI processing of specific Asset Volumes via
image-optimize/optimize/create volumehandle
- Added
automaticallyResaveImageVariants
toconfig.php
to allow disabling of the automatic re-saving of ImageVariants for people who want to do it manually via the CLI - Added a
.srcWebp()
method for OptimizedImages - Added an optional
width
parameter that can be passed into.src()
and.srcWebp()
- Added support for mostly deprecated
1x
,2x
, etc. srcsets by passing an optionaltrue
parameterto.srcsetWidth(XXX, true)
and.srcsetWidthWebp(XXX, true)
changed - 2018.02.27
- Fix more deprecation errors from Craft CMS 3 RC 12
Link 1.4.19 · 2018.02.23
changed - 2018.02.23
- Fix deprecation errors from Craft CMS 3 RC 12 (which were causing slowdowns)
Link 1.4.18 · 2018.02.19
added - 2018.02.19
- Fix a division by 0 error with some custom Craft transforms when using Imgix as a transform method
Link 1.4.17 · 2018.02.16
added - 2018.02.16
- Added lightswitch controls to the OptimizedImages field that let you control what is displayed
changed - 2018.02.16
- Ensure we handle all of the potential
$transform
types passed intoEVENT_GET_ASSET_URL
- Both
createColorPalette
andcreatePlaceholderSilhouettes
are now off by default whenusingcraft.imageOptimize.createOptimizedImages()
via Twig, but can be overridden
Link 1.4.16 · 2018.02.15
added - 2018.02.15
- Added support for optional security token used to sign image URLs fromImgix
- Added
image-optimize/optimize/create
andimage-optimize/optimize/clear
console commands for command line OptimizedImage Variant creation
changed - 2018.02.15
- Display the non-webp version of an image when it exists, but the browser doesn't support displaying
.webp
- Handles error conditions with
filesize
better
Link 1.4.15 · 2018.02.14
changed - 2018.02.14
- Resave all asset volumes after the settings are changed (not just the Transform Method)
- Save the Optimized Image Variants via an async queue when possible
- Detect
gd
installation viafunction_exists
instead ofextension_loaded
- Handle protocol-relative siteUrls better
Link 1.4.14 · 2018.02.09
changed - 2018.02.09
- Fixed an issue where certain settings could not be saved via the Control Panel
- Check to ensure that
GD
is installed before attempting to generate silhouette placeholders - Show a warning on the Settings page if
GD
is not installed
Link 1.4.13 · 2018.02.05
changed - 2018.02.05
- Removed Edit Image button, since Craft CMS 3 now includes one in the Asset preview
Link 1.4.12 · 2018.02.01
changed - 2018.02.01
- Removed the
api-key
parameter from Imgix image transform URLs
Link 1.4.11 · 2018.01.30
changed - 2018.01.30
- Renamed the composer package name to
craft-imageoptimize
- Fixed a regression that broke protocol-relative siteUrls
Link 1.4.10 · 2018.01.26
added - 2018.01.26
- Shows an error if an OptimizedImages field is added to anything other than an Asset's layout
- Added a warning if a config setting is being overridden by the
config.php
- Added a number of config settings to the Control Panel GUI
changed - 2018.01.26
UrlHelper::urlWithProtocol
->UrlHelper::urlWithScheme
for Craft CMS 3 RC7 compatibility- Fixed an issue where you could delete the last Image Variant in the field settings, even though the option wasdisabled
- Handle the display of Optimized Image Variant names better when coming from Imgix
Link 1.4.9 · 2018.01.20
added - 2018.01.20
- Added an Edit Image button to the Optimized Images field view
changed - 2018.01.20
- Fixed
getWebPUrl()
for the Imgix image transform driver - Fixed an issue where image uploads/changes would fail if you had an invalid ornon-existent
activeImageVariantCreators
set - Fixed an issue with protocol-relative siteUrls
Link 1.4.8 · 2018.01.11
changed - 2018.01.11
- Fixed a flaw in the default aspect ratios
- Fixed Focal Point resaving issue
- Resaving Optimized Image Variants after making field changes should be quicker now
Link 1.4.7 · 2017.12.29
changed - 2017.12.29
- Fixed a regression that would cause issues with PHP 7.0 (but not later versions of PHP)
Link 1.4.6 · 2017.12.27
changed - 2017.12.27
- Handle the case of no Optimize Image Variants being created due to upscaling by just returning the original image
- Made the documentation on the OptimizedImages Field more clear, in that it needs to be added to an Asset Volume'slayout
Link 1.4.5 · 2017.12.22
added - 2017.12.22
- Added
.getMaxSrcsetWidth()
to work around issues with<img srcset>
choosing sizes larger than are available - Added a max size of 30K for generated silhouette SVGs, at which point it returns a simple SVG box
changed - 2017.12.22
- Better exception handling
Link 1.4.4 · 2017.12.19
added - 2017.12.19
- Image variant creators now clean up after themselves when an Asset transform is deleted
changed - 2017.12.19
- ImageOptimize now requires at least Craft CMS 3 RC3 or later
Link 1.4.3 · 2017.12.19
added - 2017.12.19
- Image transforms that are scaled down >= 50% are now auto-sharpened (controllable via the
autoSharpenScaledImages
setting inconfig.php
) - It's now possible to set the default aspect ratios in the
config.php
changed - 2017.12.19
- No longer possible delete the last Optimized Image variant
- At least one Optimized Image variant will always be present
Link 1.4.2 · 2017.12.15
changed - 2017.12.15
- Fixed an issue where
.webp
variants would not be created
Link 1.4.1 · 2017.12.13
changed - 2017.12.13
- Re-create the Responsive Image Variants when an Asset is replaced
- Handle cache busting for the Responsive Image Variants by appending an
?mtime=
string to the URL - Better display of image variants when no variants are created
- No longer throws errors if you don't have the an image variant creator installed
- Wrap URLs and data returned to templates with
Template::raw()
so they won't be HTML entity encoded by default
Link 1.4.0 · 2017.12.12
added - 2017.12.12
- Added
craft.imageOptimize.createOptimizedImages
to allow for the dynamic creation of Optimized Image variants - Added
craft.imageOptimize.placeholderBox
to create a transparent SVG placeholder box of an arbitrary size and color - Automatically reduce the quality of retina images (controllable via the
lowerQualityRetinaImageVariants
settinginconfig.php
) - Don't create Optimized Image Variants if it means the original image would be up-scaled (controllable viathe
allowUpScaledImageVariants
setting inconfig.php
) - Purge URLs for assets that are deleted from services like Imgix
changed - 2017.12.12
- Fixed an issue where deleted Optimized Image Variant blocks would cause an error once saved
- Changed the default
optipng
compression to-o3
so the compression time is more reasonable - Updated README.md to reflect the new features
Link 1.3.6 · 2017.12.10
changed - 2017.12.10
- Fixed an error with Imgix transforms
Link 1.3.5 · 2017.12.06
changed - 2017.12.06
- Switched from
file_exists()
tois_file()
for detecting image processor and variant commands - Fixed an issue with Optimized Image Variant generation on certain setups
- The OptimizedImages field now displays protocol-relative images properly
- Added better debug logging
- Updated to require craftcms/cms
^3.0.0-RC1
Link 1.3.4 · 2017.12.03
changed - 2017.12.03
- Fixed an issue where selecting image variants would result in the wrong aspect ratio
- Changed the default image variant widths
Link 1.3.3 · 2017.11.30
added - 2017.11.30
- Auto-purge remote Imgix image URLs when assets are changed
changed - 2017.11.30
- Fixed an issue with newly uploaded assets that have an OptimizedImages field in their Volume Layout
Link 1.3.2 · 2017.11.14
added - 2017.11.14
- Added media query srcset sizes for precise control over the output sizes
Link 1.3.1 · 2017.11.13
added - 2017.11.13
- Added the display of the dominant color palette and the lazy load placeholder images to the Field
- Optimize the placeholder images regardless of user settings
- Fixed an issue where newly uploaded assets would not resave on the AJAX request
- Added portrait & landscape responsive image variant presets
Link 1.3.0 · 2017.11.10
changed - 2017.11.10
- Added support for globally replacing native Craft transforms with a service like Imgix, with zero template changes
- Added a Welcome page after installing ImageOptimize
- Performance improvements when generating the placeholders
Link 1.2.10 · 2017.11.04
changed - 2017.11.04
- Fixed broken OptimizedImages Field settings
- Fixed
optipng
path inconfig.php
- Implemented an abstract
ImageTransform
class & interface
Link 1.2.9 · 2017.11.03
added - 2017.11.03
- Added support for using Imgix to create the responsive image transforms
changed - 2017.11.03
- Switched over to using
ResaveElements
queue to handle newly uploaded Assets - Implemented optimized SVG data URIs, which can shave 15% off of the size of the SVG size
Link 1.2.8 · 2017.10.19
changed - 2017.10.19
- More paranoid sanity checking of the
activeImageProcessors
andactiveImageVariantCreators
config.php
settings
added - 2017.10.19
- Added the ability to control when image variants are created via
generateTransformsBeforePageLoad
config.php
setting - Added a
createColorPalette
inconfig.php
to control dominant color palette creation - Added a
createPlaceholderSilhouettes
inconfig.php
to control silhouette placeholder image creation
Link 1.2.7 · 2017.10.18
added - 2017.10.18
- Added the ability to make inline SVG silhouette images as placeholder images for lazing loading
Link 1.2.6 · 2017.10.16
changed - 2017.10.16
- Moved the default variants to the
config.php
and Settings model, so they can be overridden
added - 2017.10.16
- Added the variant setting Enforce Aspect Ratio to allow for images with no fixed aspect ratio
Link 1.2.5 · 2017.10.11
added - 2017.10.11
- Added the ability to automatically set the placeholder color to the image's dominant color
- Added the ability to extract the 5 dominant colors from an image
Link 1.2.4 · 2017.10.10
added - 2017.10.10
- Added automatic generation of Instagram-style low resolution placeholder images for lazing loading
Link 1.2.3 · 2017.09.16
added - 2017.09.16
- Added support for 2x and 3x retina images
- Added a
.src()
method to get the default responsive variant
changed - 2017.09.16
- Updated the README.md to be more descriptive
Link 1.2.2 · 2017.09.11
changed - 2017.09.11
- Responsive Image Variants now default to
jpg
as a file format, for client-proofing purposes - Fixed an issue where re-arranging to adding/deleting Responsive Image Variants could cause issues
- Fixed an issue with non-manipulatable images like
PDF
Link 1.2.1 · 2017.09.10
changed - 2017.09.10
- Fixed an issue that could leave stale image variants around
- Ensure that the optimized image variants are re-created if the image is edited
- Added logging to show the savings for image variants
- Fixed the way the Settings page is rendered
- Updated
README.md
Link 1.2.0 · 2017.09.08
added - 2017.09.08
- Added
OptimzedImages
Field - Updated
README.md
Link 1.1.0 · 2017.08.07
added - 2017.08.07
- Added support for automatic
webp
image variant creation
Link 1.0.10 · 2017.08.06
changed - 2017.08.06
- Fixed support for the
mozjpeg
image processor
Link 1.0.9 · 2017.07.15
changed - 2017.07.15
- Craft 3 beta 20 compatibility
Link 1.0.8 · 2017.04.20
changed - 2017.04.20
- Fixed the packagist.org package name to coincide with the plugin renaming
- Added debug
trace
logging in the event handler - Updated
README.md
Link 1.0.7 · 2017.04.10
changed - 2017.04.10
- Renamed the plugin from
ImageOptim
toImageOptimize
- Added
.webp
support
Link 1.0.6 · 2017.04.08
changed - 2017.04.08
- Added
createSettingsModel()
to the main plugin class
Link 1.0.5 · 2017.03.24
changed - 2017.03.24
hasSettings
->hasCpSettings
for Craft 3 beta 8 compatibility- Added Craft 3 beta 8 compatible settings
- Modified config service calls for Craft 3 beta 8
Link 1.0.4 · 2017.03.12
added - 2017.03.12
- Added code inspection typehinting for the plugin & services
changed - 2017.03.12
- Removed unused
resources/img
Link 1.0.3 · 2017.03.12
added - 2017.03.12
- Added support for
gif
images viagifsicle
- Added
craft/cms
as a composer dependency
changed - 2017.03.12
- Code refactor/cleanup
Link 1.0.2 · 2017.03.11
added - 2017.03.11
- Added logging of the savings for each image optimization if
devMode
is on
Link 1.0.1 · 2017.03.11
added - 2017.03.11
- Added
mikehaertl/php-shellcommand
as a dependency incomposer.json
changed - 2017.03.11
- Updated
README.md
with more information
Link 1.0.0 · 2017.03.11
added - 2017.03.11
- Initial release