All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Version 6.0.0 does not support upgrading from previous versions due to the update that uses the AWS CDK to generate the AWS CloudFormation template.
- Crop feature in Thumbor URLs: #202
- TypeScript typings: #293
- Reduction effort support: #289
- Allow custom requests for keys without file extensions: #273
- Unexpected behavior after adding support for images without extension: #307
- Quality filter does not work with format filter (thumbor): #266
- Auto WebP activated,
Content-Type: image/webp
returned, but still it's JPG encoded: #305 inferImageType
doesn't support binary/octet-stream but not application/octet-stream: #306- SmartCrop boundary exceeded: #263
- Custom rewrite does not work without file extensions: #268
- Secrets manager cost issue: #291
inferImageType
is slow: #303- If the file name contain
()
,the API will return 404,NoSuchKey,The specified key does not exist: #299 fit-in
segment in URL path generates 404: #281overlayWith
top/left return int after percent conversion: #276
- Support for ap-east-1 and me-south-1 regions: #192, #228, #232
- Unit tests for custom-resource:
100%
coverage - Cloudfront cache policy and origin request policy: #229
- Circular cropping feature: #214, #216
- Unit tests for image-handler:
100%
coverage - Support for files without extension on thumbor requests: #169, #188
- Inappropriate content detection feature: #243
- Unit tests for image-request:
100%
coverage
- Graceful failure when no faces are detected using smartCrop and fail on resizing before smartCrop: #132, #133
- Broken SVG returned if no edits specified and Auto-WebP enabled: #247
- Removed "--recursive" from README.md: #255
- fixed issue with failure on resize if width or height is float: #254
- Constructs test template for constructs unit test:
100%
coverage
- Image URL Signature: When image URL signature is enabled, all URLs including existing URLs should have
signature
query parameter.
- Image URL signature: #111, #203, #221, #227
- AWS Lambda
413
error handling. When the response payload is bigger than 6MB, it throwsTooLargeImageException
: #35, #97, #193, #204 - Default fallback image: #137
- Unit tests for custom resource:
100%
coverage - Add
SVG
support. When any edits are used, the output would be automaticallyPNG
unless the output format is specified: #31, #234 - Custom headers: #182
- Enabling ALB Support : #201
- Thumbor paths broken if they include "-" and "100x100": #208
- Rewrite doesn't seem to be working: #121
- Correct EXIF: #197, #220, #235, #236, #240
- Sub folder support in Thumbor
watermark
filter: #231
- AWS CDK and AWS Solutions Constructs version (from 1.57.0 to 1.64.1)
- sharp base version (from 0.25.4 to 0.26.1)
- Refactors the custom resource Lambda source code
- Migrate unit tests to use
jest
- Move all
aws-sdk
inImageHandler
Lambda function toindex.js
for the best practice - Enhance the default error message not to show empty JSON: #206
- Remove
manifest-generator
- AWS CDK and AWS Solutions Constructs to create AWS CloudFormation template
- Auto WebP does not work properly: #195, #200, #205
- A bug where base64 encoding containing slash: #194
- Thumbor issues:
- Note that duplicated features has been merged gracefully.
- AWS CloudFormation template:
serverless-image-handler.template
- sharp base version (from 0.23.4 to 0.25.4)
- Remove
Promise
to return sinceasync
functions return promises: #189 - Unit test statement coverage improvement:
image-handler.js
:79.05%
to100%
image-request.js
:93.58%
to100%
thumbor-mapping.js
:99.29%
to100%
overall
:91.55%
to100%
- Honor outputFormat Parameter from the pull request #117
- Support serving images under s3 subdirectories, Fix to make /fit-in/ work; Fix for VipsJpeg: Invalid SOS error plus several other critical fixes from the pull request #130
- Allow regex in SOURCE_BUCKETS for environment variable from the pull request #138
- Fix build script on other platforms from the pull request #139
- Add Cache-Control response header from the pull request #151
- Add AUTO_WEBP option to automatically serve WebP if the client supports it from the pull request #152
- Use HTTP 404 & forward Cache-Control, Content-Type, Expires, and Last-Modified headers from S3 from the pull request #158
- fix: DeprecationWarning: Buffer() is deprecated from the pull request #174
- Add hex color support for Thumbor
filters:background_color
andfilters:fill
#154 - Add format and watermark support for Thumbor #109, #131, #109
- Note that duplicated features has been merged gracefully.
- sharp base version (from 0.23.3 to 0.23.4)
- Image handler Amazon CloudFront distribution
DefaultCacheBehavior.ForwardedValues.Header
to["Origin", "Accept"]
for WebP - Image resize process change for
filters:no_upscale()
handling bywithoutEnlargement
edit key #144
- Add and fix Cache-control, Content-Type, Expires, and Last-Modified headers to response: #103, #107, #120
- Fix Amazon S3 bucket subfolder issue: #106, #112, #119, #123, #167, #175
- Fix HTTP status code for missing images from 500 to 404: #159
- Fix European character in filename issue: #149
- Fix image scaling issue for filename containing 'x' character: #163, #176
- Fix regular expression issue: #114, #121, #125
- Fix not working quality parameter: #129
- CHANGELOG file
- Access logging to API Gateway
- Lambda functions runtime to nodejs12.x
- sharp version (from 0.21.3 to 0.23.3)
- Image handler function to use Composite API (https://sharp.pixelplumbing.com/en/stable/api-composite/)
- License to Apache-2.0
- Reference to deprecated sharp function (overlayWith)
- Capability to resize images proportionally if width or height is set to 0 (sharp v0.23.1 and later check that the width and height - if present - are positive integers)