⚠ BREAKING CHANGES
- core: template file names in
cdk.out
for new projects created bycdk init
will usestack.artifactId
instead of the physical stack name to enable multiple stacks to use the same name. In most cases the artifact ID is the same as the stack name. To enable this fix for old projects, add the context key@aws-cdk/core:enableStackNameDuplicates: true
in yourcdk.json
file.
Features
- apigateway: publish api endpoint through an export name #3662 (#4849) (652a8f5)
- aws-ecr: add onImageScanCompleted() support (#4819) (5bdd9bb), closes #4818
- aws-eks: support aws/aws-node-termination-handler as the default spot draining handler (#4931) (f4a41d1)
- aws-events: Adds EventBus resources (#4609) (bbec8c5)
- cfnspec: update CloudFormation spec to 7.3.0 (#4838) (ed904cb)
- cli: add @types/node to typescript init templates (#4947) (efde8e9), closes #3839 #4462 #3840
- cli: cdk version command (#4720) (3459982)
- cli: docker image asset scanning by default (#4874) (87421c9)
- cli: dotnet init templates come with Roslyn Analyzers (#4765) (fbd007e)
- cloudwatch: allow overriding of metric graph rendering (#4571) (3643130)
- core: add resource type and properties for all CfnResource constructs to tree.json (#4894) (4037155), closes #4562
- core: cdk init --generate-only (#4826) (9cc1e52)
- custom-resources: allow specifying role for AwsCustomResource (#4909) (98fb888), closes #4906
- custom-resources: implement IGrantable for AwsCustomResource (#4790) (b840784), closes #4710
- ec2: allow using existing security groups with interface VPC endpoints (#4908) (bda28e8), closes #4589 #2699 #3446
- ec2: support NAT instances, AMI lookups (#4898) (dca9a24), closes #4876
- ecs: add cloudMapNamespace as a property of cloudMapOptions (#4890) (06caf4f)
- feature flags rfc (#4925) (db50ab0)
- custom-resources: provider framework (#4572) (f9eec04)
- ecs-patterns: add listener port as a property for network/application load balanced services (#4825) (20b8e5d), closes #4793
- elbv2: add redirect action of ALB's listener (#4606) (c770d3c), closes #4546
- events: support event bus for rule (#4839) (f5858ba)
- s3: onCloudTrailWriteObject matches all update events (#4723) (46d9885), closes #4634
- sns: support cross-region subscription on imported topics (#4917) (3dd194d), closes #3842
- stepfunctions: add
EvaluateExpression
task (#4602) (6dba637) - vpc: allow Vpc.fromLookup() to discover asymmetric subnets (#4544) (2ccb745), closes #3407
Bug Fixes
- apigateway: allow multiple api keys to the same usage plan (#4903) (142bd0e), closes #4860
- assets: support exceptions to exclude patterns (#4473) (b7b4336)
- cloudfront: aliasConfiguration fallback identifier conflict (#4760) (4d16f79)
- cloudfront: revert certificate region verification (#4734) (de0eb47)
- core: cannot use the same stack name for multiple stacks (under feature flag) (#4895) (658f100), closes #4412
- dockerfile: add yarn (#4844) (2f8d06a)
- dynamodb: Fix AutoScaling role ARN (#4854) (fc054e9)
- dynamodb-global: cannot deploy global tables due to unresolved resource dependencies (45f0e02), closes #4676
- ecs-patterns: handle desired task count being set to 0 (#4722) (c31ca27)
- eks: pass
--use-max-pods
to bootstrap options when false (#4753) (22fe0ce) - elbv2: update region/account map of elbv2 (#4738) (5d98e7f)
- init: 'cdk init' doesn't leave .d.ts files (#4841) (10b5b3c)
- init: remove automatic JSII Roslyn analyzer dependency (#4835) (5029f0e)
- init/csharp: correct cdk.json 'app' command (#4778) (d89504f)
- ssm: malformed ARNs for parameters with physical names that use path notation (#4842) (43f276a)
In addition to the above, several bugs in the Python, .NET and Java release of the CDK have been addressed.