Skip to content

Commit 622be9b

Browse files
authored
Merge branch 'main' into oidc
2 parents c135487 + cf61814 commit 622be9b

File tree

323 files changed

+25395
-21142
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

323 files changed

+25395
-21142
lines changed

CHANGELOG.v2.alpha.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [2.236.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.235.1-alpha.0...v2.236.0-alpha.0) (2026-01-23)
6+
7+
8+
### Features
9+
10+
* **bedrock-agentcore-alpha:** added episodic memory strategy ([#36591](https://github.com/aws/aws-cdk/issues/36591)) ([21dcfc6](https://github.com/aws/aws-cdk/commit/21dcfc6807a3876e2275bdac6f1e4f7564a66100))
11+
* **bedrock-agentcore-alpha:** added gateway interceptors ([#36604](https://github.com/aws/aws-cdk/issues/36604)) ([ba8aa48](https://github.com/aws/aws-cdk/commit/ba8aa48a33b1e008194d6b6b13d10c41019f56b4))
12+
* **bedrock-agentcore-alpha:** make physical name properties optional for AgentCore resources ([#36354](https://github.com/aws/aws-cdk/issues/36354)) ([5137d81](https://github.com/aws/aws-cdk/commit/5137d811a92eb63f52d2bfa0713a660f5476839e)), closes [#36341](https://github.com/aws/aws-cdk/issues/36341)
13+
* **mixins-preview:** expose `BucketPolicyStatementsMixin` publicly ([#36771](https://github.com/aws/aws-cdk/issues/36771)) ([458156d](https://github.com/aws/aws-cdk/commit/458156dd43ced89c893687415d7c2a2fce141653))
14+
* **sagemaker:** add containerStartupHealthCheckTimeoutInSeconds support for EndpointConfig ([#35626](https://github.com/aws/aws-cdk/issues/35626)) ([47d707a](https://github.com/aws/aws-cdk/commit/47d707aac809fda8ec5302bf927380e8060d380a)), closes [#35566](https://github.com/aws/aws-cdk/issues/35566)
15+
16+
### Bug Fixes
17+
18+
* **eks-v2-alpha:** ensure kubectl provider access entry is depended upon by downstream resources ([#36734](https://github.com/aws/aws-cdk/issues/36734)) ([e104f45](https://github.com/aws/aws-cdk/commit/e104f45654177e87e2fb46510f77d02fcf20c499)), closes [#34898](https://github.com/aws/aws-cdk/issues/34898) [#34897](https://github.com/aws/aws-cdk/issues/34897)
19+
520
## [2.235.1-alpha.0](https://github.com/aws/aws-cdk/compare/v2.235.0-alpha.0...v2.235.1-alpha.0) (2026-01-19)
621

722
## [2.235.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.234.1-alpha.0...v2.235.0-alpha.0) (2026-01-15)

CHANGELOG.v2.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,26 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [2.236.0](https://github.com/aws/aws-cdk/compare/v2.235.1...v2.236.0) (2026-01-23)
6+
7+
8+
### Features
9+
10+
* update L1 CloudFormation resource definitions ([#36721](https://github.com/aws/aws-cdk/issues/36721)) ([7a4a443](https://github.com/aws/aws-cdk/commit/7a4a44329d7b71a12ba566885aa5fd730c0c2475))
11+
* **ecs:** add capacityOptionType (Spot support) to ManagedInstancesCapacityProvider L2 construct ([#36497](https://github.com/aws/aws-cdk/issues/36497)) ([e8ad85b](https://github.com/aws/aws-cdk/commit/e8ad85b3122e8c84e19adf0ffdfd71d79ba090f9)), closes [#35648](https://github.com/aws/aws-cdk/issues/35648)
12+
* **ecs:** add built-in Linear and Canary deployments ([#35981](https://github.com/aws/aws-cdk/issues/35981)) ([67ac5e7](https://github.com/aws/aws-cdk/commit/67ac5e7685e6eb8993e49aa010e43d8002998498)), closes [#35986](https://github.com/aws/aws-cdk/issues/35986) [#35987](https://github.com/aws/aws-cdk/issues/35987)
13+
* **logs:** add support for deletion protection configuration ([#36583](https://github.com/aws/aws-cdk/issues/36583)) ([c4d1389](https://github.com/aws/aws-cdk/commit/c4d13895339ef44ffc4cd6f86d80014a8d33a3f6)), closes [#36554](https://github.com/aws/aws-cdk/issues/36554) [#36554](https://github.com/aws/aws-cdk/issues/36554)
14+
15+
16+
### Bug Fixes
17+
18+
* **apigatewayv2:** use custom domain name instead of regional domain name when importing domain name via fromDomainNameAttributes ([#36710](https://github.com/aws/aws-cdk/issues/36710)) ([fe6eb0b](https://github.com/aws/aws-cdk/commit/fe6eb0b9130953d5ff35bd05b643253f9b6c3247))
19+
* **batch:** undeprecate useOptimalInstanceClasses property ([#36353](https://github.com/aws/aws-cdk/issues/36353)) ([3485d53](https://github.com/aws/aws-cdk/commit/3485d5399b6cfebc3461247643d4866242311152)), closes [#36291](https://github.com/aws/aws-cdk/issues/36291) [#36291](https://github.com/aws/aws-cdk/issues/36291)
20+
* **core:** resources allocate unnecessary string tokens upon instantiation ([#36692](https://github.com/aws/aws-cdk/issues/36692)) ([59d4928](https://github.com/aws/aws-cdk/commit/59d49286f656a5341e907d298f30decbc8959bcf))
21+
* **core:** tree.json unintentionally includes telemetry metadata ([#36748](https://github.com/aws/aws-cdk/issues/36748)) ([87fd86b](https://github.com/aws/aws-cdk/commit/87fd86be736b24ab18ea2ee7a2c96b724a67c903))
22+
* **scheduler:** scheduleName returns undefined when imported from ARN ([#36400](https://github.com/aws/aws-cdk/issues/36400)) ([752bd9b](https://github.com/aws/aws-cdk/commit/752bd9b7c31d027be6918cd7c8ebddb4b3d29e77)), closes [#36361](https://github.com/aws/aws-cdk/issues/36361)
23+
* recent change to IAlarmAction breaks too many implementors ([#36695](https://github.com/aws/aws-cdk/issues/36695)) ([0c5b0db](https://github.com/aws/aws-cdk/commit/0c5b0dbb08bd1bc965067e1fbe7b2ec7e82e697b))
24+
525
## [2.235.1](https://github.com/aws/aws-cdk/compare/v2.235.0...v2.235.1) (2026-01-19)
626

727

CONTRIBUTING.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -988,37 +988,37 @@ finalized, will be added to the AWS CDK with a specific suffix: `BetaX`. APIs
988988
with the preview suffix will never be removed, instead they will be deprecated
989989
and replaced by either the stable version (without the suffix), or by a newer
990990
preview version. For example, assume we add the method
991-
`grantAwesomePowerBeta1`:
991+
`addSecondaryResourceBeta1()` to a class:
992992

993993
```ts
994994
/**
995-
* This method grants awesome powers
995+
* This method adds a secondary resource to the main one
996996
*/
997-
grantAwesomePowerBeta1();
997+
addSecondaryResourceBeta1(res: SomeResource);
998998
```
999999

10001000
Times goes by, we get feedback that this method will actually be much better
1001-
if it accepts a `Principal`. Since adding a required property is a breaking
1002-
change, we will add `grantAwesomePowerBeta2()` and deprecate
1003-
`grantAwesomePowerBeta1`:
1001+
if it accepts an additional required `options` parameter. Since adding a required
1002+
parameter to a method is a breaking change, we will add `addSecondaryResourceBeta2()`
1003+
and deprecate `addSecondaryResourceBeta1`:
10041004

10051005
```ts
10061006
/**
1007-
* This method grants awesome powers to the given principal
1007+
* This method adds a secondary resource, with more options
10081008
*
10091009
* @param grantee The principal to grant powers to
10101010
*/
1011-
grantAwesomePowerBeta2(grantee: iam.IGrantable)
1011+
addSecondaryResourceBeta2(res: SomeResource, options: SecondaryResourceOptions);
10121012

10131013
/**
1014-
* This method grants awesome powers
1015-
* @deprecated use grantAwesomePowerBeta2
1014+
* This method adds a secondary resource to the main one
1015+
* @deprecated use addSecondaryResourceBeta1
10161016
*/
1017-
grantAwesomePowerBeta1()
1017+
addSecondaryResourceBeta1(res: SomeResource);
10181018
```
10191019

10201020
When we decide it's time to graduate the API, the latest preview version will
1021-
be deprecated and the final version - `grantAwesomePower` will be added.
1021+
be deprecated and the final version - `addSecondaryResource` will be added.
10221022

10231023
## Documentation
10241024

allowed-breaking-changes.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4142,3 +4142,12 @@ changed-type:aws-cdk-lib.aws_ses.EventDestination.bus
41424142
# CloudFormation has always required SecurityGroups for ManagedInstancesCapacityProvider.
41434143
# Making it required in TypeScript catches the error at compile time instead of deploy time.
41444144
strengthened:aws-cdk-lib.aws_ecs.ManagedInstancesCapacityProviderProps
4145+
4146+
# IEncryptedResource was too strongly typed for practical use.
4147+
# We need to weaken it and align with other traits.
4148+
# See: https://github.com/aws/aws-cdk/pull/36787
4149+
incompatible-argument:aws-cdk-lib.aws_iam.GrantableResources.isEncryptedResource
4150+
base-types:aws-cdk-lib.aws_iam.IEncryptedResource
4151+
removed:aws-cdk-lib.aws_iam.IEncryptedResource.applyRemovalPolicy
4152+
removed:aws-cdk-lib.aws_iam.IEncryptedResource.node
4153+
removed:aws-cdk-lib.aws_iam.IEncryptedResource.stack

docs/DESIGN_GUIDELINES.md

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1165,9 +1165,50 @@ export abstract class TopicBase extends Resource implements ITopic, IEncryptedRe
11651165
}
11661166
```
11671167

1168-
The `TopicGrants` class, and many others, are generated automatically. But if there
1169-
is no auto-generated grants class for a resource, you can implement it manually,
1170-
following the same patterns.
1168+
The `TopicGrants` class, and many others, are generated automatically from the `grants.json`
1169+
file present at the root of each individual module (`packages/aws-sns` for SNS constructs and
1170+
so on). The `grants.json` file has the following general structure:
1171+
1172+
```json
1173+
{
1174+
"resources": {
1175+
"Topic": {
1176+
"hasResourcePolicy": true,
1177+
"grants": {
1178+
"publish": {
1179+
"actions": ["sns:Publish"],
1180+
"keyActions": ["kms:Decrypt", "kms:GenerateDataKey*"],
1181+
"docSummary": "Grant topic publishing permissions to the given identity"
1182+
},
1183+
"subscribe": {
1184+
"actions": ["sns:Subscribe"],
1185+
"arnFormat": "${topicArn}/*"
1186+
}
1187+
}
1188+
}
1189+
}
1190+
}
1191+
```
1192+
1193+
where:
1194+
1195+
* `Topic` - the class to generate grants for. This will lead to a class named TopicGrants.
1196+
* `hasResourcePolicy` - indicates whether the resource supports a resource policy. When true, all auto-generated methods in the Grants class will attempt to add statements to the resource policy when applicable. When false, the methods will only modify the principal's policy.
1197+
* `publish` - the name of a grant.
1198+
* `actions` - the actions to encompass in the grant.
1199+
* `keyActions` - if the resource has an associated KMS key, also grant these permissions on the key. Notice that the resource must implement the `iam.IEncryptedResource` interface for this to work.
1200+
* `docSummary` - the public documentation for the method.
1201+
* `arnFormat` - In some cases, the policy applies to a specific ARN patterns, rather than just the ARN of the resource.
1202+
1203+
In some cases, however, it might not be possible to specify the grant details using the `grants.json`
1204+
file. This is usually the case when grants require additional logic, such as checking whether the
1205+
resource is owned or unowned, or when the grant needs to modify the resource policy of the resource
1206+
(if it has one). In these cases, you can implement the grants class manually.
1207+
1208+
Historically, grant methods were implemented directly on the resource construct interface (e.g.
1209+
`sns.ITopic.grantPublish(principal)`). For backward compatibility reasons, these methods are still
1210+
present on the resource interfaces, but new grant implementations are only allowed through the Grants
1211+
classes [_awslint:no-grants_].
11711212

11721213
### Metrics
11731214

packages/@aws-cdk-testing/framework-integ/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"license": "Apache-2.0",
3131
"devDependencies": {
3232
"@aws-cdk/cdk-build-tools": "0.0.0",
33-
"@aws-cdk/integ-runner": "^2.193.4",
33+
"@aws-cdk/integ-runner": "^2.193.5",
3434
"@aws-cdk/pkglint": "0.0.0",
3535
"@aws-sdk/client-acm": "3.632.0",
3636
"@aws-sdk/client-rds": "3.632.0",
@@ -50,7 +50,7 @@
5050
"@aws-cdk/lambda-layer-kubectl-v34": "^2.0.0",
5151
"@aws-cdk/region-info": "0.0.0",
5252
"aws-cdk-lib": "0.0.0",
53-
"cdk8s": "2.70.42",
53+
"cdk8s": "2.70.43",
5454
"cdk8s-plus-27": "2.9.5",
5555
"constructs": "^10.0.0"
5656
},

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.cross-account-pipeline-cfn-action.js.snapshot/CdkPipelineCfnActionStack.assets.json

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

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.cross-account-pipeline-cfn-action.js.snapshot/CdkPipelineCfnActionStack.template.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@
198198
"Properties": {
199199
"Content": {
200200
"S3Bucket": "cdk-hnb659fds-assets-12345678-test-region",
201-
"S3Key": "c82567645316e1499ecd064c937f1183bb4a74e95800ff64fab4d308451ba5f0.zip"
201+
"S3Key": "0cfdecad2260a3a84ad0c2d08a77e03c9d25e26c7b52f26b1e1faf97aef92f18.zip"
202202
},
203203
"Description": "/opt/awscli/aws"
204204
}

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.cross-account-pipeline-cfn-action.js.snapshot/asset.0cfdecad2260a3a84ad0c2d08a77e03c9d25e26c7b52f26b1e1faf97aef92f18.zip

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

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.cross-account-pipeline-cfn-action.js.snapshot/asset.c82567645316e1499ecd064c937f1183bb4a74e95800ff64fab4d308451ba5f0.zip

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)