⚠ BREAKING CHANGES
- ** L1 resources are automatically generated from public CloudFormation Resource Schemas. They are built to closely reflect the real state of CloudFormation. Sometimes these updates can contain changes that are incompatible with previous types, but more accurately reflect reality. In this release we have changed:
aws-codebuild: AWS::CodeBuild::Project: Id attribute removed.
aws-dax: AWS::DAX::Cluster: Id attribute removed.
aws-ec2: AWS::EC2::ClientVpnTargetNetworkAssociation: Id attribute removed.
Features
- custom-resources: redact sensitive properties from custom resource handler logs (#39541) (939134e), closes #39210 #39210
- update L1 CloudFormation resource definitions (#39669) (229df6c)
- cloudwatch: support live data for
SingleValueWidgetin cloudwatch dashboards (#36919) (926e0a7), closes #36915 - cloudwatch: support the visible property on MathExpression and SearchExpression (#38774) (ba3b363), closes #38773 #19876 #19876
- core: context-scoped warning suppression via Validations.acknowledge (#38842) (4652456), closes #38812 #38836 #39621 #38836 #38836
- eks: add support for Kubernetes version 1.37 (#39501) (5aecf9d), closes #39425 #38441 #37065
- lambda: add authType to WebFunction endpoints (#39620) (616ccc9), closes #39434 #39434 #39210
- lambda: add Python 3.15 runtime (#39652) (f7c84a9)
- lambda: add WebFunction and NetworkConnector L2 constructs (#39210) (2674cec)
- update L1 CloudFormation resource definitions (#39491) (05fb8ae)
Bug Fixes
- aws-cdk-lib: bucketName.match is not a function (#39655) (42913b7)
- awslint: crashes with 'Maximum call stack size exceeded' on very large modules (#39499) (a7ea3ae), closes cdklabs/awscdk-service-spec#2637 awscdk-service-spec#2637 #2637
- bedrockagentcore: runtime metricTotalErrors to resolve to a proper metric (#39616) (bfe1e82)
- bedrockagentcore: scope the gateway default service role trust policy to its gateway (#39543) (a0c4200), closes #38780 #38781
- cloudwatch: default text widget backgrounds to transparent (#39566) (dc15709)
- core: custom rego rules make all validation slower (#39454) (d17ba0f)
- core: honor rounding for same-unit Size conversions (#39601) (479168e), closes #39600
- core: non-top level Stages are not validated (#39494) (e94b8a4)
- core: save some duplicate synthesis work (#39437) (5b92435)
- core: upgrade CloudFormation validation to latest version (#39441) (e7429db)
- ec2: warn when a VPC has no availability zones (#39338) (604817f), closes #32451
- eks: self-managed nodes on newer graviton instance types get an x86_64 ami (#39428) (8a8b12f), closes #39427
- eks: use AL2023 nodegroup in eks-cluster-handlers-vpc integ test (#39558) (94ce648)
- iam: inconsistent resource policy statements generated by Grant methods (#39498) (78efcfa)
- logs: include the log group ARN in grant and grantRead (#39559) (935c7c6), closes #39561
- s3-deployment: substitution string quoting is incorrect (#39542) (ded1025)
- security-guardian: stop flagging scoped intrinsic ARN lists in PassRole guard (#39513) (8e1aaf9)
Alpha modules (2.276.0-alpha.0)
⚠ BREAKING CHANGES
- redshift-alpha:
Tablenow interprets dots intableNameasschema.tableordatabase.schema.tablefor every table operation, as grants already did. Tables created with 2.262.0 or later from a dottedtableNameexist as one identifier (for example"analytics.orders"in the default schema); after upgrading, updates andRemovalPolicy.DESTROYdeletion addressanalytics.ordersinstead. Names with empty components now fail at synthesis, and renames cannot add, remove or change the qualifier.