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 diffalways 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
waitForReplicationToFinishfails 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
nodeModulesfails 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
inHttpJwtAuthorizerPropshas changed. - apigatewayv2-authorizers:
HttpJwtAuthorizernow takes the
construct id and the target jwt issuer as part of its constructor. - apigatewayv2-authorizers:
HttpLambdaAuthorizernow takes
the construct id and the target lambda function handler as part of
its constructor. - apigatewayv2-authorizers: The default value for the prop
authorizerNameinHttpUserPoolAuthorizerPropshas changed. - apigatewayv2: The
HttpIntegrationandWebSocketIntegration
classes require an "id" parameter to be provided during its initialization. - apigatewayv2-integrations: The
LambdaWebSocketIntegrationis now
renamed toWebSocketLambdaIntegration. The new class accepts the
handler to the target lambda function directly in its constructor. - apigatewayv2-integrations:
HttpProxyIntegrationand
HttpProxyIntegrationPropsare now renamed toHttpUrlIntegration
andHttpUrlIntegrationPropsrespectively. The new class accepts the
target url directly in its constructor. - apigatewayv2-integrations:
LambdaProxyIntegrationand
LambdaProxyIntegrationPropsare now renamed to
HttpLambdaIntegrationandHttpLambdaIntegrationPropsrespectively.
The new class accepts the lambda function handler directly in its
constructor. - apigatewayv2-integrations:
HttpAlbIntegrationnow accepts the
ELB listener directly in its constructor. - apigatewayv2-integrations:
HttpNlbIntegrationnow accepts the
ELB listener directly in its constructor. - apigatewayv2-integrations:
HttpServiceDiscoveryIntegrationnow
accepts the service discovery Service directly in its constructor. - apigatewayv2-authorizers:
UserPoolAuthorizerPropsis now
renamed toHttpUserPoolAuthorizerProps. - apigatewayv2: The interface
IHttpRouteIntegrationis replaced by
the abstract classHttpRouteIntegration. - apigatewayv2: The interface
IWebSocketRouteIntegrationis now
replaced by the abstract classWebSocketRouteIntegration. - apigatewayv2: Previously, we allowed the usage of integration
classes to be used with routes defined in multipleHttpApiinstances
(orWebSocketApiinstances). This is now disallowed, and separate
instances must be created for each instance ofHttpApior
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)