Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
f844293
chore(merge-back): 2.248.0 (#37513)
mergify[bot] Apr 3, 2026
58cb92a
fix: ensure issues created outside templates receive needs-triage lab…
Abogical Apr 3, 2026
a1b8031
chore(deps): bump dawidd6/action-download-artifact from 19 to 20 (#37…
dependabot[bot] Apr 6, 2026
e1110f4
chore: bring in new jsii to optimize warnings file (#37503)
rix0rrr Apr 7, 2026
d90eb33
chore: remove nonexistant entry points from `package.json` (#37541)
rix0rrr Apr 7, 2026
8f38378
feat(core): add source tracing for L1 construct property mutations (#…
otaviomacedo Apr 7, 2026
dc00bef
refactor(spec2cdk): relocate vended logs mixin builder (#37349)
ShadowCat567 Apr 7, 2026
c60f225
chore(batch): init base EC2 class for ECS and EKS (#35868)
phuhung273 Apr 8, 2026
9338652
chore(framework-integ): replace some deprecated API usage (#37549)
otaviomacedo Apr 8, 2026
1b4496f
chore(core): refactor reflection helpers into PropertyReflection and …
mrgrain Apr 8, 2026
6e4f891
chore(framework-integ): replace some deprecated API usage (#37552)
otaviomacedo Apr 8, 2026
ec887a8
chore(deps): bump basic-ftp from 5.2.0 to 5.2.1 in the npm_and_yarn g…
dependabot[bot] Apr 8, 2026
e847c52
fix: include cfn-property-mixins in spec-update workflow gen step
vishaalmehrishi Apr 9, 2026
6a3dc69
chore: include cfn-property-mixins in spec-update workflow gen step (…
vishaalmehrishi Apr 9, 2026
ba2502e
refactor(mixins-preview): rename standalone event pattern methods to …
gasolima Apr 9, 2026
2928e23
chore: run aws-cdk-lib gen before mixins gen in spec-update workflow …
vishaalmehrishi Apr 9, 2026
f28bb0e
feat: update L1 CloudFormation resource definitions
aws-cdk-automation Apr 9, 2026
117562c
feat: update L1 CloudFormation resource definitions (#37530)
vishaalmehrishi Apr 9, 2026
12a0217
chore(framework-integ): replace some deprecated API usage (#37557)
otaviomacedo Apr 9, 2026
6c1251c
feat(batch): add AL2023 image types and default to AL2023 (under feat…
aws-joelherd Apr 9, 2026
689c661
chore(rds): postgres 16.13 (#37540)
phadadi Apr 9, 2026
3c3ba04
chore(release): 2.249.0
Apr 10, 2026
840d5bb
chore: update analytics metadata blueprints
aws-cdk-automation Apr 10, 2026
8803780
chore: trigger release 2.249.0 PR build
vishaalmehrishi Apr 13, 2026
b448bbb
chore: retrigger release 2.249.0 PR build
vishaalmehrishi Apr 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
24 changes: 24 additions & 0 deletions .github/workflows/ensure-triage-label.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Issues created outside GitHub issue templates (e.g., via API or CLI) receive
# no labels, which causes them to be skipped by the triage pipeline in
# issue-label-assign.yml. This workflow ensures they get 'needs-triage'.
name: "Ensure triage label"
on:
issues:
types: [opened]

jobs:
ensure-triage-label:
if: join(github.event.issue.labels.*.name, '') == ''
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: actions/github-script@v8
with:
script: |
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
labels: ['needs-triage']
});
2 changes: 1 addition & 1 deletion .github/workflows/pr-linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
steps:
- name: "Download workflow_run artifact"
if: github.event_name == 'workflow_run'
uses: dawidd6/action-download-artifact@v19
uses: dawidd6/action-download-artifact@v20
continue-on-error: true
with:
run_id: ${{ github.event.workflow_run.id }}
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/spec-update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,13 @@ jobs:
# Build @aws-cdk/spec2cdk and run L1 gen script to generate base files for new modules
- name: Build @aws-cdk/spec2cdk
run: lerna run build --stream --no-progress --skip-nx-cache --scope @aws-cdk/spec2cdk
- name: Generate code
run: lerna run gen --stream --no-progress --skip-nx-cache --scope aws-cdk-lib --scope @aws-cdk/mixins-preview
# Generate L1 code for aws-cdk-lib first — this updates scope-map.json with new services.
# mixins-preview and cfn-property-mixins read scope-map.json during their gen, so they
# must run after aws-cdk-lib to see the new service entries.
- name: Generate L1 code
run: lerna run gen --stream --no-progress --skip-nx-cache --scope aws-cdk-lib
- name: Generate mixins
run: lerna run gen --stream --no-progress --skip-nx-cache --scope @aws-cdk/mixins-preview --scope @aws-cdk/cfn-property-mixins

# Next, create and upload the changes as a patch file. This will later be downloaded to create a pull request
# Creating a pull request requires write permissions and it's best to keep write privileges isolated.
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.v2.alpha.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

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.

## [2.249.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.248.0-alpha.0...v2.249.0-alpha.0) (2026-04-10)

## [2.248.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.247.0-alpha.0...v2.248.0-alpha.0) (2026-04-02)

## [2.247.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.246.0-alpha.0...v2.247.0-alpha.0) (2026-04-02)
Expand Down
32 changes: 32 additions & 0 deletions CHANGELOG.v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,38 @@

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.

## [2.249.0](https://github.com/aws/aws-cdk/compare/v2.248.0...v2.249.0) (2026-04-10)


### ⚠ 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-appstream: AWS::AppStream::Stack: Id attribute removed.
aws-appsync: AWS::AppSync::GraphQLApi: LogConfig.CloudWatchLogsRoleArn
property is now required.
aws-appsync: AWS::AppSync::GraphQLApi: LogConfig.FieldLogLevel property
is now required.
aws-kafkaconnect: AWS::KafkaConnect::Connector:
ProvisionedCapacity.McuCount property is now required.

### Features

* **batch:** add AL2023 image types and default to AL2023 (under feature flag) ([#37539](https://github.com/aws/aws-cdk/issues/37539)) ([6c1251c](https://github.com/aws/aws-cdk/commit/6c1251c5b18b99a31b6973d3877907f93b5130f0)), closes [#35839](https://github.com/aws/aws-cdk/issues/35839) [#37205](https://github.com/aws/aws-cdk/issues/37205)
* update L1 CloudFormation resource definitions ([f28bb0e](https://github.com/aws/aws-cdk/commit/f28bb0ea65e6cd777299e14c364d33f8cd4a7af9))
* update L1 CloudFormation resource definitions ([#37530](https://github.com/aws/aws-cdk/issues/37530)) ([117562c](https://github.com/aws/aws-cdk/commit/117562c3545720a5ed5127ecadae02787241b483))
* **core:** add source tracing for L1 construct property mutations ([#37543](https://github.com/aws/aws-cdk/issues/37543)) ([8f38378](https://github.com/aws/aws-cdk/commit/8f3837807ef5d06d249c59cf9a567a71a4d4cc8d))


### Bug Fixes

* ensure issues created outside templates receive needs-triage label ([#37505](https://github.com/aws/aws-cdk/issues/37505)) ([58cb92a](https://github.com/aws/aws-cdk/commit/58cb92a30fb3c3984f9360a39cce3dbdf46999e9)), closes [#37454](https://github.com/aws/aws-cdk/issues/37454) [Abogical/aws-cdk#24](https://github.com/Abogical/aws-cdk/issues/24)
* include cfn-property-mixins in spec-update workflow gen step ([e847c52](https://github.com/aws/aws-cdk/commit/e847c52d750089aa0213f620fc55de70fc06b3cd)), closes [#36300](https://github.com/aws/aws-cdk/issues/36300)

## [2.248.0](https://github.com/aws/aws-cdk/compare/v2.247.0...v2.248.0) (2026-04-02)


Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk-testing/framework-integ/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"lint": "cdk-lint",
"pkglint": "pkglint -f",
"test": "cdk-test",
"integ": "integ-runner --unstable=toolkit-lib-engine --language javascript",
"integ": "env JSII_DEPRECATED=fail integ-runner --unstable=toolkit-lib-engine --language javascript",
"package": "cdk-package",
"build+test": "yarn build && yarn test",
"build+extract": "yarn build",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class SfnRestApiWithoutDefaultMethodResponsesStack extends cdk.Stack {
});

const stateMachine = new sfn.StateMachine(this, 'StateMachine', {
definition: passTask,
definitionBody: sfn.DefinitionBody.fromChainable(passTask),
stateMachineType: sfn.StateMachineType.EXPRESS,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class StepFunctionsRestApiDeploymentStack extends cdk.Stack {
});

const stateMachine = new sfn.StateMachine(this, 'StateMachine', {
definition: passTask,
definitionBody: sfn.DefinitionBody.fromChainable(passTask),
stateMachineType: sfn.StateMachineType.EXPRESS,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ const app = new App();
const stack = new Stack(app, 'stepfunctions-integration');

const stateMachine = new sfn.StateMachine(stack, 'RouteStateMachine', {
definition: new sfn.Pass(stack, 'Pass1'),
definitionBody: sfn.DefinitionBody.fromChainable(new sfn.Pass(stack, 'Pass1')),
});
const expressStateMachine = new sfn.StateMachine(stack, 'ExpressStateMachine', {
definition: new sfn.Pass(stack, 'Pass2'),
definitionBody: sfn.DefinitionBody.fromChainable(new sfn.Pass(stack, 'Pass2')),
stateMachineType: sfn.StateMachineType.EXPRESS,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@ const baseStack = new cdk.Stack(app, 'baseStack');

const baseApi = new appsync.GraphqlApi(baseStack, 'baseApi', {
name: 'baseApi',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
},
});

const stack = new cdk.Stack(app, 'stack');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'DisableIntrospection', {
name: 'DisableIntrospection',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
},
introspectionConfig: appsync.IntrospectionConfig.DISABLED,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'EventBridgeApi', {
name: 'EventBridgeApi',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.eventbridge.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.eventbridge.graphql')),
},
});

const bus = new events.EventBus(stack, 'DestinationEventBus', {});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@ const stack = new cdk.Stack(app, 'aws-cdk-appsync-function-max-batch-size');

const api = new appsync.GraphqlApi(stack, 'LambdaAPI', {
name: 'LambdaAPI',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.lambda.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.lambda.graphql')),
},
});

const func = new lambda.Function(stack, 'func', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'GlobalApi', {
name: 'GlobalApi',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
},
visibility: appsync.Visibility.GLOBAL,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'LambdaAPI', {
name: 'LambdaAPI',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.lambda.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.lambda.graphql')),
},
});

const func = new lambda.Function(stack, 'func', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'ApiLimitConfigs', {
name: 'ApiLimitConfigs',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
},
queryDepthLimit: 2,
resolverCountLimit: 2,
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ const logConfig: LogConfig = {
const api = new GraphqlApi(stack, 'Api', {
authorizationConfig: {},
name: 'IntegLogRetention',
schema: SchemaFile.fromAsset(join(__dirname, 'appsync.test.graphql')),
definition: {
schema: SchemaFile.fromAsset(join(__dirname, 'appsync.test.graphql')),
},
logConfig,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'NoneAPI', {
name: 'NoneAPI',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.none.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.none.graphql')),
},
});

api.addNoneDataSource('NoneDS', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'stack');

const api = new appsync.GraphqlApi(stack, 'PrivateApi', {
name: 'PrivateApi',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.test.graphql')),
},
visibility: appsync.Visibility.PRIVATE,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@ const stack = new Stack(app, 'aws-appsync-integ');

const api = new GraphqlApi(stack, 'Api', {
name: 'Integ_Test_APIKey',
schema: SchemaFile.fromAsset(join(__dirname, 'appsync.auth.graphql')),
definition: {
schema: SchemaFile.fromAsset(join(__dirname, 'appsync.auth.graphql')),
},
authorizationConfig: {
defaultAuthorization: {
authorizationType: AuthorizationType.API_KEY,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ const stack = new cdk.Stack(app, 'AppSyncEnvironmentVariables');

const api = new appsync.GraphqlApi(stack, 'Api', {
name: 'Api',
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.js-resolver.graphql')),
definition: {
schema: appsync.SchemaFile.fromAsset(path.join(__dirname, 'appsync.js-resolver.graphql')),
},
environmentVariables: {
EnvKey1: 'non-empty-1',
},
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading