Skip to content

Commit c5a1ffe

Browse files
committed
release v7.0.8
1 parent 47c7dda commit c5a1ffe

File tree

19 files changed

+48
-29
lines changed

19 files changed

+48
-29
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [7.0.8] - 2025-10-07
9+
10+
### Added
11+
12+
- Added deprecation notice for S3 Object Lambda architecture usage
13+
814
## [7.0.7] - 2025-09-22
915

1016
### Security

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,17 @@ For more information and a detailed deployment guide, visit the [Dynamic Image T
2626

2727
# Architecture Diagram
2828

29-
Dynamic Image Transformation for Amazon CloudFront supports two architectures, one using an Amazon API Gateway REST API, and another using S3 Object Lambda. The Amazon API Gateway REST API architecture maintains the structure used in v6.3.3 and below of the Dynamic Image Transformation for Amazon CloudFront. The S3 Object Lambda architecture maintains very similar functionality, while also allowing for images larger than 6 MB to be returned. For more information, refer to the [Architecture Overview](https://docs.aws.amazon.com/solutions/latest/serverless-image-handler/architecture-overview.html) in the implementation guide.
29+
Dynamic Image Transformation for Amazon CloudFront supports two architectures, one using an Amazon API Gateway REST API, and another using S3 Object Lambda. The Amazon API Gateway REST API architecture maintains the structure used in v6.3.3 and below of the Dynamic Image Transformation for Amazon CloudFront. **The S3 Object Lambda architecture has been deprecated and will no longer be open to new customers starting on November 7, 2025. If you were not an existing user of S3 Object Lambda before November 7, 2025, select ‘No“ for EnableS3ObjectLambdaParameter. For more information, please visit https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html.** The S3 Object Lambda architecture maintains very similar functionality, while also allowing for images larger than 6 MB to be returned. For more information, refer to the [Architecture Overview](https://docs.aws.amazon.com/solutions/latest/serverless-image-handler/architecture-overview.html) in the implementation guide.
3030

3131
The AWS CloudFormation template deploys an Amazon CloudFront distribution, Amazon API Gateway REST API/S3 Object Lambda, and an AWS Lambda function. Amazon CloudFront provides a caching layer to reduce the cost of image processing and the latency of subsequent image delivery. The Amazon API Gateway/S3 Object Lambda provides endpoint resources and triggers the AWS Lambda function. The AWS Lambda function retrieves the image from the customer's Amazon Simple Storage Service (Amazon S3) bucket and uses Sharp to return a modified version of the image. Additionally, the solution generates a CloudFront domain name that provides cached access to the image handler API. There is limited use of CloudFront functions for consistency and cache hit rate purposes.
3232

3333
## Default Architecture
3434

3535
![Architecture Diagram (Default Architecture)](./default_architecture.png)
3636

37-
## S3 Object Lambda Architecture
37+
## S3 Object Lambda Architecture (DEPRECATED)
38+
39+
**⚠️ DEPRECATED: This architecture has been deprecated and should not be used for new deployments. Use the Default Architecture instead.**
3840

3941
![Architecture Diagram (S3 Object Lambda Architecture)](./object_lambda_architecture.png)
4042

VERSION.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7.0.7
1+
7.0.8

source/constructs/lib/serverless-image-stack.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,11 +167,22 @@ export class ServerlessImageHandlerStack extends Stack {
167167
const enableS3ObjectLambdaParameter = new CfnParameter(this, "EnableS3ObjectLambdaParameter", {
168168
type: "String",
169169
description:
170-
"Enable S3 Object Lambda to improve the maximum response size of image requests beyond 6 MB. If enabled, an S3 Object Lambda Access Point will replace the API Gateway proxying requests to your image handler function. **Important: Modifying this value after initial template deployment will delete the existing CloudFront Distribution and create a new one, providing a new domain name and clearing the cache**",
170+
"Deprecated: This option has been deprecated. Amazon S3 Object Lambda will no longer be open to new customers starting on November 7, 2025. If you were not an existing user of S3 Object Lambda before November 7, 2025, select 'No'. For more information, please visit https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html. **Important: Modifying this value after initial template deployment will delete the existing CloudFront Distribution and create a new one, providing a new domain name and clearing the cache**.",
171171
allowedValues: ["Yes", "No"],
172172
default: "No",
173173
});
174174

175+
176+
console.warn("\n" + "=".repeat(80));
177+
console.warn("⚠️ S3 Object Lambda Feature Deprecation Notice");
178+
console.warn("=".repeat(80));
179+
console.warn("The EnableS3ObjectLambdaParameter has been DEPRECATED.");
180+
console.warn("");
181+
console.warn("❌ For NEW deployments: Do NOT set EnableS3ObjectLambdaParameter=Yes");
182+
console.warn("✅ For EXISTING deployments: You can continue using this feature");
183+
console.warn("📋 Default value is 'No' - recommended for all new deployments");
184+
console.warn("=".repeat(80) + "\n");
185+
175186
const useExistingCloudFrontDistribution = new CfnParameter(this, "UseExistingCloudFrontDistributionParameter", {
176187
type: "String",
177188
description:
@@ -377,7 +388,7 @@ export class ServerlessImageHandlerStack extends Stack {
377388
],
378389
ParameterLabels: {
379390
[enableS3ObjectLambdaParameter.logicalId]: {
380-
default: "Enable S3 Object Lambda",
391+
default: "Enable S3 Object Lambda (DEPRECATED)",
381392
},
382393
[corsEnabledParameter.logicalId]: { default: "CORS Enabled" },
383394
[corsOriginParameter.logicalId]: { default: "CORS Origin" },

source/constructs/package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/constructs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "constructs",
3-
"version": "7.0.7",
3+
"version": "7.0.8",
44
"description": "Dynamic Image Transformation for Amazon CloudFront Constructs",
55
"license": "Apache-2.0",
66
"author": {

source/constructs/test/__snapshots__/constructs.test.ts.snap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ exports[`Dynamic Image Transformation for Amazon CloudFront Stack Snapshot 1`] =
287287
"default": "Enable Default Fallback Image",
288288
},
289289
"EnableS3ObjectLambdaParameter": {
290-
"default": "Enable S3 Object Lambda",
290+
"default": "Enable S3 Object Lambda (DEPRECATED)",
291291
},
292292
"EnableSignatureParameter": {
293293
"default": "Enable Signature",
@@ -522,7 +522,7 @@ exports[`Dynamic Image Transformation for Amazon CloudFront Stack Snapshot 1`] =
522522
"No",
523523
],
524524
"Default": "No",
525-
"Description": "Enable S3 Object Lambda to improve the maximum response size of image requests beyond 6 MB. If enabled, an S3 Object Lambda Access Point will replace the API Gateway proxying requests to your image handler function. **Important: Modifying this value after initial template deployment will delete the existing CloudFront Distribution and create a new one, providing a new domain name and clearing the cache**",
525+
"Description": "Deprecated: This option has been deprecated. Amazon S3 Object Lambda will no longer be open to new customers starting on November 7, 2025. If you were not an existing user of S3 Object Lambda before November 7, 2025, select 'No'. For more information, please visit https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html. **Important: Modifying this value after initial template deployment will delete the existing CloudFront Distribution and create a new one, providing a new domain name and clearing the cache**.",
526526
"Type": "String",
527527
},
528528
"EnableSignatureParameter": {

source/custom-resource/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/custom-resource/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "custom-resource",
3-
"version": "7.0.7",
3+
"version": "7.0.8",
44
"private": true,
55
"description": "Dynamic Image Transformation for Amazon CloudFront custom resource",
66
"license": "Apache-2.0",

source/demo-ui/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)