Features
- apigateway: step functions integration (#16827) (cb31547), closes #15081
- assertions: major improvements to the capture feature (#17713) (9a67ce7), closes #17009
- aws-s3-deployment: log retention option (#17779) (b60dc63)
- backup: enable WindowsVss Backup (#15934) (12fcb18), closes #14803 #14891
- cfnspec: cloudformation spec v49.0.0 (#17727) (7e0c9a3)
- cloudfront: Add support for response headers policy (#17359) (ea0acff), closes #17290
- cognito: user pool: adds custom sender (Email/SMS) lambda triggers (#17740) (7f45de4)
- core: add applyRemovalPolicy to IResource (#17746) (d64057f), closes #17728
- custom-resources: fixed Lambda function name (#17670) (5710fe5)
- docdb: implement audit and profiler logs (#17570) (4982aca), closes #17478
- ec2: add g5g instances (#17765) (1799f7e), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2
- ec2: add m5zn instances (#17757) (845be10), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2
- ec2: add m6a instances (#17764) (b06f120), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2
- ec2: add mac1 instance (#17677) (88a5204), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2 40aws-cdk/aws-ec2/lib/instance-types.ts#L573
- ec2: add r6i instances (#17663) (0138292), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2
- ec2: add vt1 instances (#17756) (245c059), closes /docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2
- ec2: explicit mapPublicIpOnLaunch configuration for public subnets (#17346) (a1685c6)
- ec2: extend BastionHostLinux to support CloudFormationInit (#17507) (c62377e)
- ecs-service-extensions: Auto scaling for Queue Extension (#17430) (df7b9b4)
- iam: support
fromGroupName()
for IAM groups (#17243) (29b379c) - lambda: function construct exposes configured timeout (#17594) (87fd60f)
- lambda-event-sources: sqs: support reportBatchItemFailures (#17733) (3623982), closes #17690
- rds: parameter group for replica instances (#17822) (b606a23), closes #17580
- s3: add GLACIER_IR storage class (#17829) (c291c44)
- s3: support Transfer Acceleration (#17636) (b432822), closes #12570
- secretsmanager: support secrets rotation in GovCloud (#17673) (a01678b), closes #14608
- stepfunctions-tasks: add 'Emr on Eks' tasks (#17103) (f2bf322), closes #15262 #15234
Bug Fixes
- aws-cdk:
cdk diff
always fails on diff (#17862) (6bb4a46), closes #4721 - aws-ec2: imported VPC subnets never recognized as PRIVATE_ISOLATED (#17496) (ba6a8ef)
- aws-elasticloadbalancingv2: Set stickiness.enabled unless target type is lambda (#17271) (168a98f), closes #17261
- cli: S3 asset uploads are rejected by commonly referenced encryption SCP (introduces bootstrap stack v9) (#17668) (8191f1f), closes #11265
- codepipeline: cannot trigger on all tags anymore in EcrSourceAction (#17270) (39fe11b), closes aws#13818 aws#13818
- codepipeline: cross-env pipeline cannot be created in
Stage
(#17730) (f17f29e), closes #17643 - core: bundling skipped with --exclusively option and stacks under stage (#17210) (cda6601), closes #12898 #15346
- docdb: secret rotation ignores excluded characters in password (#17609) (1fe2215), closes #17347 #17575
- dynamodb: add missing DynamoDB operations to enum (#17738) (f38e0ac)
- dynamodb: changing
waitForReplicationToFinish
fails deployment (#17842) (36b8fdb), closes #16983 - ecs-patterns: removeDefaultDesiredCount feature flag not expired properly (#17865) (7fb639a)
- lambda: recognizeVersionProps featureFlag not defaulting correctly (#17866) (f19fc39), closes #17810
- lambda-nodejs: bundling fails with a file dependency in
nodeModules
(#17851) (5737c33), closes #17830 - lambda-nodejs: bundling with
nodeModules
fails with paths containing spaces (#17632) (986f291), closes #17631 - pipelines: stack outputs used in stackSteps not recognized (#17311) (5e4a219), closes #17272
- stepfunctions: prefixes not appended to states in parallel branches (#17806) (a1da772), closes #17354
Alpha modules (2.1.0-alpha.0)
⚠ BREAKING CHANGES TO EXPERIMENTAL FEATURES
- apigatewayv2-authorizers: The default value for the prop
authorizerName
inHttpJwtAuthorizerProps
has changed. - apigatewayv2-authorizers:
HttpJwtAuthorizer
now takes the
construct id and the target jwt issuer as part of its constructor. - apigatewayv2-authorizers:
HttpLambdaAuthorizer
now takes
the construct id and the target lambda function handler as part of
its constructor. - apigatewayv2-authorizers: The default value for the prop
authorizerName
inHttpUserPoolAuthorizerProps
has changed. - apigatewayv2: The
HttpIntegration
andWebSocketIntegration
classes require an "id" parameter to be provided during its initialization. - apigatewayv2-integrations: The
LambdaWebSocketIntegration
is now
renamed toWebSocketLambdaIntegration
. The new class accepts the
handler to the target lambda function directly in its constructor. - apigatewayv2-integrations:
HttpProxyIntegration
and
HttpProxyIntegrationProps
are now renamed toHttpUrlIntegration
andHttpUrlIntegrationProps
respectively. The new class accepts the
target url directly in its constructor. - apigatewayv2-integrations:
LambdaProxyIntegration
and
LambdaProxyIntegrationProps
are now renamed to
HttpLambdaIntegration
andHttpLambdaIntegrationProps
respectively.
The new class accepts the lambda function handler directly in its
constructor. - apigatewayv2-integrations:
HttpAlbIntegration
now accepts the
ELB listener directly in its constructor. - apigatewayv2-integrations:
HttpNlbIntegration
now accepts the
ELB listener directly in its constructor. - apigatewayv2-integrations:
HttpServiceDiscoveryIntegration
now
accepts the service discovery Service directly in its constructor. - apigatewayv2-authorizers:
UserPoolAuthorizerProps
is now
renamed toHttpUserPoolAuthorizerProps
. - apigatewayv2: The interface
IHttpRouteIntegration
is replaced by
the abstract classHttpRouteIntegration
. - apigatewayv2: The interface
IWebSocketRouteIntegration
is now
replaced by the abstract classWebSocketRouteIntegration
. - apigatewayv2: Previously, we allowed the usage of integration
classes to be used with routes defined in multipleHttpApi
instances
(orWebSocketApi
instances). This is now disallowed, and separate
instances must be created for each instance ofHttpApi
or
WebSocketApi
.
Features
- iot: add Action to capture CloudWatch metrics (#17503) (ec4187c), closes /github.com/aws/aws-cdk/pull/16681#issuecomment-942233029
- neptune: add engine version 1.1.0.0 and instance types t4g, r6g (#17669) (83e669d)
- servicecatalog: Add TagOptions to a CloudformationProduct (#17672) (2d19e15)
Bug Fixes
- apigatewayv2: integration class does not render an integration resource (#17729) (3b5b97a), closes #13213
- apprunner: startCommand and environment are ignored in imageConfiguration (#16939) (d911c58), closes #16812
- appsync: add caching config to AppSync resolvers (#17815) (52b535b)
- appsync: remove 'id' suffix to union definition key (#17787) (86e7780), closes #17771
- assert: support multiline strings with
stringLike()
(#17692) (37596e6)