Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(release): 2.168.0 #32209

Merged
merged 38 commits into from
Nov 20, 2024
Merged

chore(release): 2.168.0 #32209

merged 38 commits into from
Nov 20, 2024

Conversation

aws-cdk-automation
Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation commented Nov 20, 2024

See CHANGELOG

mergify bot and others added 30 commits November 14, 2024 00:15
In #32082, we added codecov checks to
mergify merge conditions.

This, as originally intended, blocked merging to both the `main` and the
`v2-release` branches. However, we decided that currently we won't be
applying codecov on the `v2-release` branch because it is redundant.

Ideally, to achieve this, we would remove the conditions only from the
mergify configuration that applies to the `v2-release` branch. But our
configuration isn't set up that way right now, it doesn't distinguish
between branches.

Luckily, mergify will [automatically honor branch protection
rules](Mergifyio/mergify#2184 (comment)),
so we can safely remove the branch dependant conditions from mergify all
together, and keep them only in branch protection rules (which we
already configured).

Once this PR is merged, I will also remove the codecov branch protection
from `v2-release` (but keep it on `main`).

## Additional Changes

There's some additional codecov related cleanup we need to do so might
as well. They are explained as review comments.

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*
…32113)

### Issue

Closes #20754
Closes #30231

### Reason for this change

This package is no longer needed and not recommended for users.

### Description of changes

Remove the package from `package.json` and sample code.

### Description of how you validated changes

Tested locally.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.3 to 45.0.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/tj-actions/changed-files/releases">tj-actions/changed-files's releases</a>.</em></p>
<blockquote>
<h2>v45.0.4</h2>
<h2>What's Changed</h2>
<ul>
<li>Upgraded to v45.0.3 by <a href="https://github.com/tj-actions-bot"><code>@​tj-actions-bot</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2308">tj-actions/changed-files#2308</a></li>
<li>fix(deps): update dependency <code>@​actions/core</code> to v1.11.1 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2309">tj-actions/changed-files#2309</a></li>
<li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2310">tj-actions/changed-files#2310</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.7.5 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2312">tj-actions/changed-files#2312</a></li>
<li>chore(deps): update dependency typescript to v5.6.3 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2313">tj-actions/changed-files#2313</a></li>
<li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2315">tj-actions/changed-files#2315</a></li>
<li>skip: step for dependabot PRs by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2317">tj-actions/changed-files#2317</a></li>
<li>feat: prevent ignore files warning by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2318">tj-actions/changed-files#2318</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.7.6 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2321">tj-actions/changed-files#2321</a></li>
<li>chore(deps): update dependency <code>@​types/lodash</code> to v4.17.11 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2322">tj-actions/changed-files#2322</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.7.7 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2323">tj-actions/changed-files#2323</a></li>
<li>chore(deps): update dependency <code>@​types/lodash</code> to v4.17.12 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2324">tj-actions/changed-files#2324</a></li>
<li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2325">tj-actions/changed-files#2325</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.7.8 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2327">tj-actions/changed-files#2327</a></li>
<li>chore(deps): update dependency <code>@​types/jest</code> to v29.5.14 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2328">tj-actions/changed-files#2328</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.7.9 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2329">tj-actions/changed-files#2329</a></li>
<li>chore(deps): update actions/setup-node action to v4.1.0 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2330">tj-actions/changed-files#2330</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.0 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2331">tj-actions/changed-files#2331</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.1 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2332">tj-actions/changed-files#2332</a></li>
<li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2333">tj-actions/changed-files#2333</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.2 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2334">tj-actions/changed-files#2334</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.4 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2335">tj-actions/changed-files#2335</a></li>
<li>chore(deps): update dependency <code>@​types/lodash</code> to v4.17.13 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2336">tj-actions/changed-files#2336</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.5 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2337">tj-actions/changed-files#2337</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.6 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2338">tj-actions/changed-files#2338</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.8.7 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2339">tj-actions/changed-files#2339</a></li>
<li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2340">tj-actions/changed-files#2340</a></li>
<li>chore(deps): update dependency <code>@​types/node</code> to v22.9.0 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2341">tj-actions/changed-files#2341</a></li>
<li>chore(deps): update dependency eslint-plugin-jest to v28.9.0 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2342">tj-actions/changed-files#2342</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v45...v45.0.4">https://github.com/tj-actions/changed-files/compare/v45...v45.0.4</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/tj-actions/changed-files/blob/main/HISTORY.md">tj-actions/changed-files's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h1><a href="https://github.com/tj-actions/changed-files/compare/v45.0.3...v45.0.4">45.0.4</a> - (2024-11-05)</h1>
<h2>🚀 Features</h2>
<ul>
<li>Prevent ignore files warning (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2318">#2318</a>) (<a href="https://github.com/tj-actions/changed-files/commit/1f772e919bcbf025d221836bc4b8e3b72e2ef117">1f772e9</a>)  - (Tonye Jack)</li>
</ul>
<h2>🐛 Bug Fixes</h2>
<ul>
<li><strong>deps:</strong> Update dependency <code>@​actions/core</code> to v1.11.1 (<a href="https://github.com/tj-actions/changed-files/commit/4d0aab94b6284beb85e6cc3dd23ec0ee523dcca6">4d0aab9</a>)  - (renovate[bot])</li>
</ul>
<h2>➕ Add</h2>
<ul>
<li>Added missing changes and modified dist assets.
(<a href="https://github.com/tj-actions/changed-files/commit/9d7201ded6d75401ce2b888a4f643a921bfb8604">9d7201d</a>)  - (GitHub Action)</li>
<li>Added missing changes and modified dist assets.
(<a href="https://github.com/tj-actions/changed-files/commit/0104c75ccc49741ff97b817da4cd36887e0c13cd">0104c75</a>)  - (GitHub Action)</li>
</ul>
<h2>📝 Other</h2>
<ul>
<li>Step for dependabot PRs (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2317">#2317</a>) (<a href="https://github.com/tj-actions/changed-files/commit/684c5e6d941e3591a9de8182da044dd242dc17c9">684c5e6</a>)  - (Tonye Jack)</li>
</ul>
<h2>⚙️ Miscellaneous Tasks</h2>
<ul>
<li><strong>deps:</strong> Update dependency eslint-plugin-jest to v28.9.0 (<a href="https://github.com/tj-actions/changed-files/commit/4edd678ac3f81e2dc578756871e4d00c19191daf">4edd678</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.9.0 (<a href="https://github.com/tj-actions/changed-files/commit/f08255874b882608b0d7f6dde476c5756dbfc08c">f082558</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/92c02a00a1b05d13ef79d053e8e8e4aafc1431cd">92c02a0</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.7 (<a href="https://github.com/tj-actions/changed-files/commit/b70221184d8c03f985dc253d1a84169c4b530010">b702211</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.6 (<a href="https://github.com/tj-actions/changed-files/commit/435fd74b2ec5d115590c1a20ba1101bf9a291563">435fd74</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.5 (<a href="https://github.com/tj-actions/changed-files/commit/0626fa3ff3e2030febaa380334fab666814bd24f">0626fa3</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/lodash</code> to v4.17.13 (<a href="https://github.com/tj-actions/changed-files/commit/8817a797cbad83643006b4fafc757bb72a50bd51">8817a79</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.4 (<a href="https://github.com/tj-actions/changed-files/commit/54174910beb91e8c0eb59a8449720659f72bf24b">5417491</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.2 (<a href="https://github.com/tj-actions/changed-files/commit/84ef16253002b9f411c38d53e45521709f43247e">84ef162</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/b672a5115a5ab8c2b27838329a827d3ffda1202c">b672a51</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.1 (<a href="https://github.com/tj-actions/changed-files/commit/678cdc28086f7f6f8762a1934db3e94e7c0cadb4">678cdc2</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.8.0 (<a href="https://github.com/tj-actions/changed-files/commit/27b7bbb0aeabaa9258fe4bfd52318bbbb9bdbc9c">27b7bbb</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update actions/setup-node action to v4.1.0 (<a href="https://github.com/tj-actions/changed-files/commit/83610723bb32196f24d5880eca9cd59951b17c69">8361072</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.7.9 (<a href="https://github.com/tj-actions/changed-files/commit/21acf46f4af54c16f04ec314f1929b73692c4441">21acf46</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/jest</code> to v29.5.14 (<a href="https://github.com/tj-actions/changed-files/commit/f356b3c86b5e3dbe272d6579b57cb7344f3e8ea3">f356b3c</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.7.8 (<a href="https://github.com/tj-actions/changed-files/commit/66275de0606e56bdce755a9408b1cef1aac91580">66275de</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/a16702bf7a036756d8ef85e34bf2e6cbcd474726">a16702b</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/lodash</code> to v4.17.12 (<a href="https://github.com/tj-actions/changed-files/commit/aa11897ec4afaea2c563502c017812d493d21a90">aa11897</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.7.7 (<a href="https://github.com/tj-actions/changed-files/commit/6513fe1691ddc9793b54c3b337d6946cd331ab26">6513fe1</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/lodash</code> to v4.17.11 (<a href="https://github.com/tj-actions/changed-files/commit/45e0c78ac7fad3fc00ec4a92c7d93a3f4489a906">45e0c78</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.7.6 (<a href="https://github.com/tj-actions/changed-files/commit/a949a8338c60e9581f87873ab195f1a23066a4fc">a949a83</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/f93ff336292f0bcab245d8fc70fe7f1a6446464b">f93ff33</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency typescript to v5.6.3 (<a href="https://github.com/tj-actions/changed-files/commit/729c70475c2976c3d4ca8897d34d9df975a4d05c">729c704</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Update dependency <code>@​types/node</code> to v22.7.5 (<a href="https://github.com/tj-actions/changed-files/commit/2009d446ac92d696d7df2230847a71ba91db7d4a">2009d44</a>)  - (renovate[bot])</li>
<li><strong>deps:</strong> Lock file maintenance (<a href="https://github.com/tj-actions/changed-files/commit/b693fc207f2cd18198a39916698cec17bc8e8d42">b693fc2</a>)  - (renovate[bot])</li>
</ul>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/tj-actions/changed-files/commit/4edd678ac3f81e2dc578756871e4d00c19191daf"><code>4edd678</code></a> chore(deps): update dependency eslint-plugin-jest to v28.9.0</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/f08255874b882608b0d7f6dde476c5756dbfc08c"><code>f082558</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.9.0</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/92c02a00a1b05d13ef79d053e8e8e4aafc1431cd"><code>92c02a0</code></a> chore(deps): lock file maintenance</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/b70221184d8c03f985dc253d1a84169c4b530010"><code>b702211</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.8.7</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/435fd74b2ec5d115590c1a20ba1101bf9a291563"><code>435fd74</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.8.6</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/0626fa3ff3e2030febaa380334fab666814bd24f"><code>0626fa3</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.8.5</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/8817a797cbad83643006b4fafc757bb72a50bd51"><code>8817a79</code></a> chore(deps): update dependency <code>@​types/lodash</code> to v4.17.13</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/54174910beb91e8c0eb59a8449720659f72bf24b"><code>5417491</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.8.4</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/84ef16253002b9f411c38d53e45521709f43247e"><code>84ef162</code></a> chore(deps): update dependency <code>@​types/node</code> to v22.8.2</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/b672a5115a5ab8c2b27838329a827d3ffda1202c"><code>b672a51</code></a> chore(deps): lock file maintenance</li>
<li>Additional commits viewable in <a href="https://github.com/tj-actions/changed-files/compare/c3a1bb2c992d77180ae65be6ae6c166cf40f857c...4edd678ac3f81e2dc578756871e4d00c19191daf">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tj-actions/changed-files&package-manager=github_actions&previous-version=45.0.3&new-version=45.0.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>
For PR from forks, OIDC doesn't currently work with the latest version of the GitHub Action. 

[Example failure](https://github.com/aws/aws-cdk/actions/runs/11834319601/job/32974759899?pr=32121):

```console
Run codecov/codecov-action@v4
Error: Codecov: Failed to get OIDC token with url: https://codecov.io/. Error message: Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable
```

See codecov/codecov-action#1594

Revert back to token until we validate a fix. 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Folks are probably already doing this, but just clarify that when a PR is failing status checks you can ping a maintainer for a manual merge if you think its justified. 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…32134)

In Node.js, if you assign `undefined` to an environment variable, that variable ends up having the string `"undefined"`.

If we are using IAM user credentials, `AWS_SESSION_TOKEN` should not be set, but because we were not handling this edge case, it was getting assigned an invalid value:

```
Welcome to Node.js v22.9.0.
Type ".help" for more information.
> process.env.AWS_SESSION_TOKEN || process.env.AMAZON_SESSION_TOKEN
undefined
> process.env.AWS_SESSION_TOKEN = process.env.AWS_SESSION_TOKEN || process.env.AMAZON_SESSION_TOKEN
undefined
> process.env.AWS_SESSION_TOKEN
'undefined'
```

Closes #32120.

### Checklist
- [ ] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Reason for this change

We don't need to use the third party `source-map-support` package anymore to achieve the same result.

### Description of changes

We use `process.setSourceMapsEnabled(true)` instead. However unlike the previous package, this command needs to be run _before_ we import any other files, otherwise it won't work. We therefore move it into the executable.

### Description of how you validated changes

Manual verification

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

Tracking: #31785 

### Reason for this change

Improve README quality.

### Description of changes

Mostly grammar and formatting fixes.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

Closes #29351.

### Reason for this change

Although the creation of schedule task is supported, the AWS CDK currently lacks the capability to create these without a custom task definition.

### Description of changes

I've introduced the `EventBridgeSchedulerCreateScheduleTask` class to address this gap.

The original issue discussed the need for both creating and updating schedules. However, to maintain focus and simplicity, this PR will only cover the creation aspect. A subsequent PR will be dedicated to schedule updates.

### Description of how you validated changes

I have added both integ and unit tests.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…ettings for ALB and NLB (#31814)

### Issue # (if applicable)

Closes #31790.

### Reason for this change
To support target group level cross-zone settings  for ALB and NLB


### Description of changes
Add `crossZoneEnabled` property to `baseTargetGroup`.


### Description of how you validated changes
Add unit tests and integ tests.



### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
We just didn't consider the shared credentials file as returned by the SDK when loading configuration. 

Closes #32130.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Support new minor version

* Ref: [Amazon RDS for MySQL supports new minor version 8.0.40
](https://aws.amazon.com/about-aws/whats-new/2024/11/amazon-rds-mysql-new-minor-version/)

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…arget throws synth error (#32105)

### Issue # (if applicable)

Tracking #31785 

### Reason for this change

Similar to what was done in this PR for the Lambda Invoke target: #31837. 
Reasoning is explained in this [comment](#29615 (comment)):
> At synth time, there are cases where CDK does not know about the actual environment (e.g. when the environment is using Tokens). In other words, the environment check works in some scenarios and not others. This creates more confusion than benefit.
IF cross env target support is added in the future, this check will become a blocker for CDK customers to set up cross env target.


### Description of changes

Remove synth-time error that checks for same account and region for all targets to allow use of imported resources as target.

### Description of how you validated changes

All tests are passing.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

None

### Reason for this change

New interface VPC endpoint has released.

### Description of changes

Add BILLING `InterfaceVpcEndpointService`.

### Description of how you validated changes

Execute descrive endpoint CLI:

```sh
❯ aws ec2 describe-vpc-endpoint-services --filters Name=service-type,Values=Interface Name=owner,Values=amazon --region us-east-1 --query ServiceNames | grep billing
    "com.amazonaws.us-east-1.billing", // newly added
    "com.amazonaws.us-east-1.billingconductor",
```

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Reason for this change

Tried making use of the `eks.AccessEntry` construct, with the `eks.AccessEntryType.STANDARD` as accessEntryType, but the stack deployment failed with the following error: `AccessEntry type must be one of [EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX, STANDARD]`.

Seems like 'Standard' is not alright, suggested also by `eksctl` [docs](https://eksctl.io/usage/access-entries/#iam-entities).

If this is the case, documentation in the following places also needs to be corrected:

- https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateAccessEntry.html
- https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-accessentry.html
- https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks.CfnAccessEntry.html#construct-props

### Description of changes



### Description of how you validated changes



### Checklist
- [X] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…sis stream targets (#32122)

### Issue # (if applicable)

Tracking #31785 

### Reason for this change

We want to enforce principle of least privilege when granting target actions to the scheduler execution role. From the Scheduler docs, only `kinesis:PutRecord` and `sqs:SendMessage` are required. Previously we were using built-in grant methods for these targets that granted additional permissions. If wider permissions are needed the user can always provide their own IAM role for the scheduler to use.

KMS permissions references from service docs:
- Kinesis stream: https://docs.aws.amazon.com/streams/latest/dev/permissions-user-key-KMS.html#example-producer-permissions
- SQS Queue: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-key-management.html#sqs-what-permissions-for-sse

### Description of changes

- Explicitly grant only the necessary target permissions
- If target uses customer-managed key for SSEKMS, grant key permissions to role as well

### Description of how you validated changes

- updated unit tests
- deployed stacks with SSEKMS targets and verified the scheduled actions succeed

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

### Reason for this change

Need to bump the semanticVersion for gov cloud region.

### Description of changes
Bump the version to 1.1.213. This version is validated by an engineer with gov-cloud access.

### Description of how you validated changes



### Checklist
- [ ] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Closes #32160

### Reason for this change

<!--What is the bug or use case behind this change?-->

When running `cdk deploy`, it is supposed to (by default) create a
read-only change set and incorporate it within the diff.
However, it currently fails creating the change-set and always falls
back to template only diffs.

### Description of changes

<!--What code changes did you make? Have you made any important design
decisions?-->

There was a wrong invocation of the `makeBodyParameter` parameter after
the [migration to sdk v3](#31702).

### Description of how you validated changes

Added missing integration tests. Unit test for this code are tricky
because they require too many mocks.

### Checklist
- [x] My code adheres to the [CONTRIBUTING
GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and
[DESIGN
GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*
… a subset of tags (#32164)

There was a regression in the load balancer lookup, in which we started
requiring that the set of tags in the query is strictly the same as the
set of tags in the load balancer (rather than merely a subset of it).

Remove the length equality constraint and also simplify the code to make
the intent clearer.

Fixes #32161.

### Checklist
- [ ] My code adheres to the [CONTRIBUTING
GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and
[DESIGN
GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*

Co-authored-by: Momo Kornher <[email protected]>
### Issue # (if applicable)

N/A

### Reason for this change
Support  OpenSearch version 2.17.
https://docs.aws.amazon.com/opensearch-service/latest/developerguide/release-notes.html



### Description of changes
Add Enum.




### Description of how you validated changes
Add unit tests and integ tests.



### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…stead of l2 (#32150)

### Issue # (if applicable)

Tracking #31785 

### Reason for this change

Since the Kinesis Data Firehose Alpha module is in developer preview and contains the L2 construct for a Firehose Delivery Stream, we should make this upgrade from L1 to L2 now while the module is experimental instead of in the future, where we would need to add a V2 for this target (like for event targets, see #30189) to avoid breaking customers. 

### Description of changes

Replace CfnDeliveryStream with IDeliveryStream. The L1 uses `S3DestinationConfiguration` property whereas the L2 uses `ExtendedS3DestinationConfiguration` property  (includes additional fields on top of S3DestinationConfiguration fields). According to 
 https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html, "If you change the delivery stream destination from an Amazon S3 destination to an Amazon ES destination, update requires [some interruptions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt)."

### Description of how you validated changes

- Updated unit tests and integration test
- Deployed locally using CfnDeliveryStream then IDeliveryStream and verified the objects are written to the S3 bucket.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*

BREAKING CHANGE: KinesisDataFirehosePutRecord scheduler target now accepts IDeliveryStream instead of CfnDeliveryStream.
### Issue # (if applicable)

None

### Reason for this change

[AWS RDS now supports for Postgresql 17](https://aws.amazon.com/jp/about-aws/whats-new/2024/11/amazon-rds-postgresql-supports-version-17/).

### Description of changes

Add below versions
- 17.1
- 16.5
- 15.9
- 14.14
- 13.17
- 12.21

### Description of how you validated changes

None

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…deploy` (#32163)

Closes #32153.

### Reason for this change



When a stack contains externally managed notification ARNs (i.e ones that were added outside of CDK), a `cdk deploy` command will remove those ARNs.

### Description of changes



We incorrectly default notification ARNs to `[]` instead of `undefined`. When an empty array is passed to the SDK , it reasonably assumes you want to delete existing ARNs (because how otherwise would you delete them). If on the other hand you don't pass notification ARNs at all to the SDK (e.g `undefined`), it will preserve them.

This is the correct behavior and CDK should follow suite. This does however create a (maybe) quirky API ergonomic where in order to remove notification ARNs, one must pass `[]` instead of simply omitting the property. 

This stems from the fact notification ARNs are not managed through the template, but rather through imperative actions. So it seems reasonable al things considered. 

### Description of how you validated changes

Added both unit and integration tests.



### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Updates the L1 CloudFormation resource definitions with the latest changes from `@aws-cdk/aws-service-spec`

**L1 CloudFormation resource definition changes:**
```
├[~] service aws-applicationautoscaling
│ └ resources
│    └[~] resource AWS::ApplicationAutoScaling::ScalingPolicy
│      ├ properties
│      │  └[+] PredictiveScalingPolicyConfiguration: PredictiveScalingPolicyConfiguration
│      └ types
│         ├[+] type PredictiveScalingCustomizedCapacityMetric
│         │ ├  name: PredictiveScalingCustomizedCapacityMetric
│         │ └ properties
│         │    └MetricDataQueries: Array<PredictiveScalingMetricDataQuery> (required)
│         ├[+] type PredictiveScalingCustomizedLoadMetric
│         │ ├  name: PredictiveScalingCustomizedLoadMetric
│         │ └ properties
│         │    └MetricDataQueries: Array<PredictiveScalingMetricDataQuery> (required)
│         ├[+] type PredictiveScalingCustomizedScalingMetric
│         │ ├  name: PredictiveScalingCustomizedScalingMetric
│         │ └ properties
│         │    └MetricDataQueries: Array<PredictiveScalingMetricDataQuery> (required)
│         ├[+] type PredictiveScalingMetric
│         │ ├  name: PredictiveScalingMetric
│         │ └ properties
│         │    ├MetricName: string
│         │    ├Dimensions: Array<PredictiveScalingMetricDimension>
│         │    └Namespace: string
│         ├[+] type PredictiveScalingMetricDataQuery
│         │ ├  name: PredictiveScalingMetricDataQuery
│         │ └ properties
│         │    ├ReturnData: boolean
│         │    ├Expression: string
│         │    ├Label: string
│         │    ├MetricStat: PredictiveScalingMetricStat
│         │    └Id: string
│         ├[+] type PredictiveScalingMetricDimension
│         │ ├  name: PredictiveScalingMetricDimension
│         │ └ properties
│         │    ├Value: string
│         │    └Name: string
│         ├[+] type PredictiveScalingMetricSpecification
│         │ ├  name: PredictiveScalingMetricSpecification
│         │ └ properties
│         │    ├CustomizedLoadMetricSpecification: PredictiveScalingCustomizedLoadMetric
│         │    ├PredefinedLoadMetricSpecification: PredictiveScalingPredefinedLoadMetric
│         │    ├TargetValue: number (required)
│         │    ├PredefinedScalingMetricSpecification: PredictiveScalingPredefinedScalingMetric
│         │    ├CustomizedCapacityMetricSpecification: PredictiveScalingCustomizedCapacityMetric
│         │    ├CustomizedScalingMetricSpecification: PredictiveScalingCustomizedScalingMetric
│         │    └PredefinedMetricPairSpecification: PredictiveScalingPredefinedMetricPair
│         ├[+] type PredictiveScalingMetricStat
│         │ ├  name: PredictiveScalingMetricStat
│         │ └ properties
│         │    ├Stat: string
│         │    ├Metric: PredictiveScalingMetric
│         │    └Unit: string
│         ├[+] type PredictiveScalingPolicyConfiguration
│         │ ├  name: PredictiveScalingPolicyConfiguration
│         │ └ properties
│         │    ├MaxCapacityBreachBehavior: string
│         │    ├MaxCapacityBuffer: integer
│         │    ├Mode: string
│         │    ├MetricSpecifications: Array<PredictiveScalingMetricSpecification> (required)
│         │    └SchedulingBufferTime: integer
│         ├[+] type PredictiveScalingPredefinedLoadMetric
│         │ ├  name: PredictiveScalingPredefinedLoadMetric
│         │ └ properties
│         │    ├PredefinedMetricType: string (required)
│         │    └ResourceLabel: string
│         ├[+] type PredictiveScalingPredefinedMetricPair
│         │ ├  name: PredictiveScalingPredefinedMetricPair
│         │ └ properties
│         │    ├PredefinedMetricType: string (required)
│         │    └ResourceLabel: string
│         └[+] type PredictiveScalingPredefinedScalingMetric
│           ├  name: PredictiveScalingPredefinedScalingMetric
│           └ properties
│              ├PredefinedMetricType: string (required)
│              └ResourceLabel: string
├[~] service aws-applicationinsights
│ └ resources
│    └[~] resource AWS::ApplicationInsights::Application
│      └ properties
│         └[+] SNSNotificationArn: string
├[~] service aws-applicationsignals
│ └ resources
│    └[~] resource AWS::ApplicationSignals::ServiceLevelObjective
│      ├ properties
│      │  └[+] BurnRateConfigurations: Array<BurnRateConfiguration>
│      └ types
│         └[+] type BurnRateConfiguration
│           ├  documentation: This object defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO. A burn rate of exactly 1 indicates that the SLO goal will be met exactly.
│           │  For example, if you specify 60 as the number of minutes in the look-back window, the burn rate is calculated as the following:
│           │  burn rate = error rate over the look-back window / (1 - attainment goal percentage)
│           │  name: BurnRateConfiguration
│           └ properties
│              └LookBackWindowMinutes: integer (required)
├[~] service aws-aps
│ └ resources
│    └[~] resource AWS::APS::Scraper
│      └ properties
│         ├ Alias: - string (immutable)
│         │        + string
│         ├ Destination: - Destination (required, immutable)
│         │              + Destination (required)
│         └ ScrapeConfiguration: - ScrapeConfiguration (required, immutable)
│                                + ScrapeConfiguration (required)
├[~] service aws-autoscaling
│ └ resources
│    └[~] resource AWS::AutoScaling::AutoScalingGroup
│      ├ properties
│      │  ├ AvailabilityZoneDistribution: (documentation changed)
│      │  ├[+] AvailabilityZoneImpairmentPolicy: AvailabilityZoneImpairmentPolicy
│      │  └[+] SkipZonalShiftValidation: boolean
│      └ types
│         ├[~] type AvailabilityZoneDistribution
│         │ ├  - documentation: undefined
│         │ │  + documentation: `AvailabilityZoneDistribution` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
│         │ └ properties
│         │    └ CapacityDistributionStrategy: (documentation changed)
│         ├[+] type AvailabilityZoneImpairmentPolicy
│         │ ├  name: AvailabilityZoneImpairmentPolicy
│         │ └ properties
│         │    ├ZonalShiftEnabled: boolean (required)
│         │    └ImpairedZoneHealthCheckBehavior: string (required)
│         ├[+] type BaselinePerformanceFactorsRequest
│         │ ├  name: BaselinePerformanceFactorsRequest
│         │ └ properties
│         │    └Cpu: CpuPerformanceFactorRequest
│         ├[+] type CpuPerformanceFactorRequest
│         │ ├  name: CpuPerformanceFactorRequest
│         │ └ properties
│         │    └References: Array<PerformanceFactorReferenceRequest>
│         ├[~] type InstanceRequirements
│         │ └ properties
│         │    └[+] BaselinePerformanceFactors: BaselinePerformanceFactorsRequest
│         └[+] type PerformanceFactorReferenceRequest
│           ├  name: PerformanceFactorReferenceRequest
│           └ properties
│              └InstanceFamily: string
├[~] service aws-batch
│ └ resources
│    └[~] resource AWS::Batch::ComputeEnvironment
│      └ types
│         ├[~] type LaunchTemplateSpecification
│         │ └ properties
│         │    ├[+] Overrides: Array<LaunchTemplateSpecificationOverride>
│         │    └ Version: (documentation changed)
│         └[+] type LaunchTemplateSpecificationOverride
│           ├  documentation: An object that represents a launch template to use in place of the default launch template. You must specify either the launch template ID or launch template name in the request, but not both.
│           │  If security groups are specified using both the `securityGroupIds` parameter of `CreateComputeEnvironment` and the launch template, the values in the `securityGroupIds` parameter of `CreateComputeEnvironment` will be used.
│           │  You can define up to ten (10) overrides for each compute environment.
│           │  > This object isn't applicable to jobs that are running on Fargate resources. > To unset all override templates for a compute environment, you can pass an empty array to the [UpdateComputeEnvironment.overrides](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html) parameter, or not include the `overrides` parameter when submitting the `UpdateComputeEnvironment` API operation.
│           │  name: LaunchTemplateSpecificationOverride
│           └ properties
│              ├LaunchTemplateId: string
│              ├LaunchTemplateName: string
│              ├Version: string
│              └TargetInstanceTypes: Array<string>
├[~] service aws-bedrock
│ └ resources
│    ├[~] resource AWS::Bedrock::Flow
│    │ └ types
│    │    ├[~] type KnowledgeBaseFlowNodeConfiguration
│    │    │ └ properties
│    │    │    └ GuardrailConfiguration: (documentation changed)
│    │    ├[~] type PromptFlowNodeConfiguration
│    │    │ └ properties
│    │    │    └ GuardrailConfiguration: (documentation changed)
│    │    └[~] type PromptTemplateConfiguration
│    │      └  - documentation: Contains the message for a prompt. For more information, see [Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    │         + documentation: Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    ├[~] resource AWS::Bedrock::FlowVersion
│    │ └ types
│    │    ├[~] type KnowledgeBaseFlowNodeConfiguration
│    │    │ └ properties
│    │    │    └ GuardrailConfiguration: (documentation changed)
│    │    ├[~] type PromptFlowNodeConfiguration
│    │    │ └ properties
│    │    │    └ GuardrailConfiguration: (documentation changed)
│    │    └[~] type PromptTemplateConfiguration
│    │      └  - documentation: Contains the message for a prompt. For more information, see [Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    │         + documentation: Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    ├[~] resource AWS::Bedrock::Prompt
│    │ └ types
│    │    └[~] type PromptTemplateConfiguration
│    │      └  - documentation: Contains the message for a prompt. For more information, see [Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    │         + documentation: Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│    └[~] resource AWS::Bedrock::PromptVersion
│      └ types
│         └[~] type PromptTemplateConfiguration
│           └  - documentation: Contains the message for a prompt. For more information, see [Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
│              + documentation: Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html) .
├[~] service aws-cleanrooms
│ └ resources
│    ├[~] resource AWS::CleanRooms::Collaboration
│    │ └ properties
│    │    └ AnalyticsEngine: (documentation changed)
│    ├[~] resource AWS::CleanRooms::IdNamespaceAssociation
│    │ └ properties
│    │    └ Tags: (documentation changed)
│    └[~] resource AWS::CleanRooms::Membership
│      └ types
│         └[~] type ProtectedQueryS3OutputConfiguration
│           └ properties
│              └ SingleFileOutput: (documentation changed)
├[~] service aws-cloudformation
│ └ resources
│    ├[+] resource AWS::CloudFormation::GuardHook
│    │ ├  name: GuardHook
│    │ │  cloudFormationType: AWS::CloudFormation::GuardHook
│    │ │  documentation: This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook.
│    │ ├ properties
│    │ │  ├RuleLocation: S3Location (required)
│    │ │  ├LogBucket: string
│    │ │  ├HookStatus: string (required, default="DISABLED")
│    │ │  ├TargetOperations: Array<string> (required)
│    │ │  ├FailureMode: string (required, default="WARN")
│    │ │  ├TargetFilters: TargetFilters
│    │ │  ├StackFilters: StackFilters
│    │ │  ├Alias: string (required, immutable)
│    │ │  ├ExecutionRole: string (required, immutable)
│    │ │  └Options: Options
│    │ ├ attributes
│    │ │  └HookArn: string
│    │ └ types
│    │    ├type S3Location
│    │    │├  documentation: S3 Source Location for the Guard files.
│    │    ││  name: S3Location
│    │    │└ properties
│    │    │   ├Uri: string (required)
│    │    │   └VersionId: string
│    │    ├type TargetFilters
│    │    │├  name: TargetFilters
│    │    │└ properties
│    │    │   ├TargetNames: Array<string>
│    │    │   ├Actions: Array<string>
│    │    │   └InvocationPoints: Array<string>
│    │    ├type StackFilters
│    │    │├  documentation: Filters to allow hooks to target specific stack attributes
│    │    ││  name: StackFilters
│    │    │└ properties
│    │    │   ├FilteringCriteria: string (required, default="ALL")
│    │    │   ├StackNames: StackNames
│    │    │   └StackRoles: StackRoles
│    │    ├type StackNames
│    │    │├  documentation: List of stack names as filters
│    │    ││  name: StackNames
│    │    │└ properties
│    │    │   ├Include: Array<string>
│    │    │   └Exclude: Array<string>
│    │    ├type StackRoles
│    │    │├  documentation: List of stack roles that are performing the stack operations.
│    │    ││  name: StackRoles
│    │    │└ properties
│    │    │   ├Include: Array<string>
│    │    │   └Exclude: Array<string>
│    │    └type Options
│    │     ├  name: Options
│    │     └ properties
│    │        └InputParams: S3Location
│    └[+] resource AWS::CloudFormation::LambdaHook
│      ├  name: LambdaHook
│      │  cloudFormationType: AWS::CloudFormation::LambdaHook
│      │  documentation: This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook.
│      ├ properties
│      │  ├LambdaFunction: string (required)
│      │  ├HookStatus: string (required, default="ENABLED")
│      │  ├TargetOperations: Array<string> (required)
│      │  ├FailureMode: string (required)
│      │  ├TargetFilters: TargetFilters
│      │  ├StackFilters: StackFilters
│      │  ├Alias: string (required, immutable)
│      │  └ExecutionRole: string (required)
│      ├ attributes
│      │  └HookArn: string
│      └ types
│         ├type TargetFilters
│         │├  name: TargetFilters
│         │└ properties
│         │   ├TargetNames: Array<string>
│         │   ├Actions: Array<string>
│         │   └InvocationPoints: Array<string>
│         ├type StackFilters
│         │├  documentation: Filters to allow hooks to target specific stack attributes
│         ││  name: StackFilters
│         │└ properties
│         │   ├FilteringCriteria: string (required, default="ALL")
│         │   ├StackNames: StackNames
│         │   └StackRoles: StackRoles
│         ├type StackNames
│         │├  documentation: List of stack names as filters
│         ││  name: StackNames
│         │└ properties
│         │   ├Include: Array<string>
│         │   └Exclude: Array<string>
│         └type StackRoles
│          ├  documentation: List of stack roles that are performing the stack operations.
│          │  name: StackRoles
│          └ properties
│             ├Include: Array<string>
│             └Exclude: Array<string>
├[~] service aws-cloudfront
│ └ resources
│    └[~] resource AWS::CloudFront::Function
│      └ attributes
│         └ Stage: (documentation changed)
├[~] service aws-cloudtrail
│ └ resources
│    ├[~] resource AWS::CloudTrail::EventDataStore
│    │ └ types
│    │    ├[~] type AdvancedEventSelector
│    │    │ └  - documentation: Advanced event selectors let you create fine-grained selectors for AWS CloudTrail management, data, and network activity events. They help you control costs by logging only those events that are important to you. For more information about configuring advanced event selectors, see the [Logging data events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) , [Logging network activity events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html) , and [Logging management events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html) topics in the *AWS CloudTrail User Guide* .
│    │    │    You cannot apply both event selectors and advanced event selectors to a trail.
│    │    │    *Supported CloudTrail event record fields for management events*
│    │    │    - `eventCategory` (required)
│    │    │    - `eventSource`
│    │    │    - `readOnly`
│    │    │    *Supported CloudTrail event record fields for data events*
│    │    │    - `eventCategory` (required)
│    │    │    - `resources.type` (required)
│    │    │    - `readOnly`
│    │    │    - `eventName`
│    │    │    - `resources.ARN`
│    │    │    *Supported CloudTrail event record fields for network activity events*
│    │    │    > Network activity events is in preview release for CloudTrail and is subject to change. 
│    │    │    - `eventCategory` (required)
│    │    │    - `eventSource` (required)
│    │    │    - `eventName`
│    │    │    - `errorCode` - The only valid value for `errorCode` is `VpceAccessDenied` .
│    │    │    - `vpcEndpointId`
│    │    │    > For event data stores for CloudTrail Insights events, AWS Config configuration items, Audit Manager evidence, or events outside of AWS , the only supported field is `eventCategory` .
│    │    │    + documentation: Advanced event selectors let you create fine-grained selectors for AWS CloudTrail management, data, and network activity events. They help you control costs by logging only those events that are important to you. For more information about configuring advanced event selectors, see the [Logging data events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) , [Logging network activity events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html) , and [Logging management events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html) topics in the *AWS CloudTrail User Guide* .
│    │    │    You cannot apply both event selectors and advanced event selectors to a trail.
│    │    │    *Supported CloudTrail event record fields for management events*
│    │    │    - `eventCategory` (required)
│    │    │    - `eventSource`
│    │    │    - `readOnly`
│    │    │    The following additional fields are available for event data stores:
│    │    │    - `eventName`
│    │    │    - `eventType`
│    │    │    - `sessionCredentialFromConsole`
│    │    │    - `userIdentity.arn`
│    │    │    *Supported CloudTrail event record fields for data events*
│    │    │    - `eventCategory` (required)
│    │    │    - `resources.type` (required)
│    │    │    - `readOnly`
│    │    │    - `eventName`
│    │    │    - `resources.ARN`
│    │    │    The following additional fields are available for event data stores:
│    │    │    - `eventSource`
│    │    │    - `eventType`
│    │    │    - `sessionCredentialFromConsole`
│    │    │    - `userIdentity.arn`
│    │    │    *Supported CloudTrail event record fields for network activity events*
│    │    │    > Network activity events is in preview release for CloudTrail and is subject to change. 
│    │    │    - `eventCategory` (required)
│    │    │    - `eventSource` (required)
│    │    │    - `eventName`
│    │    │    - `errorCode` - The only valid value for `errorCode` is `VpceAccessDenied` .
│    │    │    - `vpcEndpointId`
│    │    │    > For event data stores for CloudTrail Insights events, AWS Config configuration items, Audit Manager evidence, or events outside of AWS , the only supported field is `eventCategory` .
│    │    └[~] type AdvancedFieldSelector
│    │      └ properties
│    │         └ Field: (documentation changed)
│    └[~] resource AWS::CloudTrail::Trail
│      └ types
│         ├[~] type AdvancedEventSelector
│         │ └  - documentation: Advanced event selectors let you create fine-grained selectors for AWS CloudTrail management, data, and network activity events. They help you control costs by logging only those events that are important to you. For more information about configuring advanced event selectors, see the [Logging data events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) , [Logging network activity events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html) , and [Logging management events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html) topics in the *AWS CloudTrail User Guide* .
│         │    You cannot apply both event selectors and advanced event selectors to a trail.
│         │    *Supported CloudTrail event record fields for management events*
│         │    - `eventCategory` (required)
│         │    - `eventSource`
│         │    - `readOnly`
│         │    *Supported CloudTrail event record fields for data events*
│         │    - `eventCategory` (required)
│         │    - `resources.type` (required)
│         │    - `readOnly`
│         │    - `eventName`
│         │    - `resources.ARN`
│         │    *Supported CloudTrail event record fields for network activity events*
│         │    > Network activity events is in preview release for CloudTrail and is subject to change. 
│         │    - `eventCategory` (required)
│         │    - `eventSource` (required)
│         │    - `eventName`
│         │    - `errorCode` - The only valid value for `errorCode` is `VpceAccessDenied` .
│         │    - `vpcEndpointId`
│         │    > For event data stores for CloudTrail Insights events, AWS Config configuration items, Audit Manager evidence, or events outside of AWS , the only supported field is `eventCategory` .
│         │    + documentation: Advanced event selectors let you create fine-grained selectors for AWS CloudTrail management, data, and network activity events. They help you control costs by logging only those events that are important to you. For more information about configuring advanced event selectors, see the [Logging data events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) , [Logging network activity events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html) , and [Logging management events](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html) topics in the *AWS CloudTrail User Guide* .
│         │    You cannot apply both event selectors and advanced event selectors to a trail.
│         │    *Supported CloudTrail event record fields for management events*
│         │    - `eventCategory` (required)
│         │    - `eventSource`
│         │    - `readOnly`
│         │    The following additional fields are available for event data stores:
│         │    - `eventName`
│         │    - `eventType`
│         │    - `sessionCredentialFromConsole`
│         │    - `userIdentity.arn`
│         │    *Supported CloudTrail event record fields for data events*
│         │    - `eventCategory` (required)
│         │    - `resources.type` (required)
│         │    - `readOnly`
│         │    - `eventName`
│         │    - `resources.ARN`
│         │    The following additional fields are available for event data stores:
│         │    - `eventSource`
│         │    - `eventType`
│         │    - `sessionCredentialFromConsole`
│         │    - `userIdentity.arn`
│         │    *Supported CloudTrail event record fields for network activity events*
│         │    > Network activity events is in preview release for CloudTrail and is subject to change. 
│         │    - `eventCategory` (required)
│         │    - `eventSource` (required)
│         │    - `eventName`
│         │    - `errorCode` - The only valid value for `errorCode` is `VpceAccessDenied` .
│         │    - `vpcEndpointId`
│         │    > For event data stores for CloudTrail Insights events, AWS Config configuration items, Audit Manager evidence, or events outside of AWS , the only supported field is `eventCategory` .
│         └[~] type AdvancedFieldSelector
│           └ properties
│              └ Field: (documentation changed)
├[~] service aws-codebuild
│ └ resources
│    └[~] resource AWS::CodeBuild::Fleet
│      ├ properties
│      │  ├[+] ComputeConfiguration: ComputeConfiguration
│      │  ├ EnvironmentType: (documentation changed)
│      │  ├[+] FleetProxyConfiguration: ProxyConfiguration
│      │  └[+] ScalingConfiguration: ScalingConfigurationInput
│      └ types
│         ├[+] type ComputeConfiguration
│         │ ├  documentation: Contains compute attributes. These attributes only need be specified when your project's or fleet's `computeType` is set to `ATTRIBUTE_BASED_COMPUTE` .
│         │ │  name: ComputeConfiguration
│         │ └ properties
│         │    ├vCpu: integer
│         │    ├memory: integer
│         │    ├disk: integer
│         │    └machineType: string
│         ├[+] type FleetProxyRule
│         │ ├  documentation: Information about the proxy rule for your reserved capacity instances.
│         │ │  name: FleetProxyRule
│         │ └ properties
│         │    ├Type: string
│         │    ├Effect: string
│         │    └Entities: Array<string>
│         ├[+] type ProxyConfiguration
│         │ ├  documentation: Information about the proxy configurations that apply network access control to your reserved capacity instances.
│         │ │  name: ProxyConfiguration
│         │ └ properties
│         │    ├DefaultBehavior: string
│         │    └OrderedProxyRules: Array<FleetProxyRule>
│         ├[+] type ScalingConfigurationInput
│         │ ├  documentation: The scaling configuration input of a compute fleet.
│         │ │  name: ScalingConfigurationInput
│         │ └ properties
│         │    ├MaxCapacity: integer
│         │    ├ScalingType: string
│         │    └TargetTrackingScalingConfigs: Array<TargetTrackingScalingConfiguration>
│         └[+] type TargetTrackingScalingConfiguration
│           ├  documentation: Defines when a new instance is auto-scaled into the compute fleet.
│           │  name: TargetTrackingScalingConfiguration
│           └ properties
│              ├MetricType: string
│              └TargetValue: number
├[+] service aws-connectcampaignsv2
│ ├  capitalized: ConnectCampaignsV2
│ │  cloudFormationNamespace: AWS::ConnectCampaignsV2
│ │  name: aws-connectcampaignsv2
│ │  shortName: connectcampaignsv2
│ └ resources
│    └resource AWS::ConnectCampaignsV2::Campaign
│     ├  name: Campaign
│     │  cloudFormationType: AWS::ConnectCampaignsV2::Campaign
│     │  documentation: Definition of AWS::ConnectCampaignsV2::Campaign Resource Type
│     │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│     ├ properties
│     │  ├Name: string (required)
│     │  ├ConnectInstanceId: string (required, immutable)
│     │  ├ChannelSubtypeConfig: ChannelSubtypeConfig (required)
│     │  ├Source: Source
│     │  ├ConnectCampaignFlowArn: string
│     │  ├Schedule: Schedule
│     │  ├CommunicationTimeConfig: CommunicationTimeConfig
│     │  ├CommunicationLimitsOverride: CommunicationLimitsConfig
│     │  └Tags: Array<tag>
│     ├ attributes
│     │  └Arn: string
│     └ types
│        ├type ChannelSubtypeConfig
│        │├  documentation: The possible types of channel subtype config parameters
│        ││  name: ChannelSubtypeConfig
│        │└ properties
│        │   ├Telephony: TelephonyChannelSubtypeConfig
│        │   ├Sms: SmsChannelSubtypeConfig
│        │   └Email: EmailChannelSubtypeConfig
│        ├type TelephonyChannelSubtypeConfig
│        │├  documentation: Telephony Channel Subtype config
│        ││  name: TelephonyChannelSubtypeConfig
│        │└ properties
│        │   ├Capacity: number
│        │   ├ConnectQueueId: string
│        │   ├OutboundMode: TelephonyOutboundMode (required)
│        │   └DefaultOutboundConfig: TelephonyOutboundConfig (required)
│        ├type TelephonyOutboundMode
│        │├  documentation: Telephony Outbound Mode
│        ││  name: TelephonyOutboundMode
│        │└ properties
│        │   ├ProgressiveConfig: ProgressiveConfig
│        │   ├PredictiveConfig: PredictiveConfig
│        │   └AgentlessConfig: json
│        ├type ProgressiveConfig
│        │├  documentation: Progressive config
│        ││  name: ProgressiveConfig
│        │└ properties
│        │   └BandwidthAllocation: number (required)
│        ├type PredictiveConfig
│        │├  documentation: Predictive config
│        ││  name: PredictiveConfig
│        │└ properties
│        │   └BandwidthAllocation: number (required)
│        ├type TelephonyOutboundConfig
│        │├  documentation: Default Telephone Outbound config
│        ││  name: TelephonyOutboundConfig
│        │└ properties
│        │   ├ConnectContactFlowId: string (required)
│        │   ├ConnectSourcePhoneNumber: string
│        │   └AnswerMachineDetectionConfig: AnswerMachineDetectionConfig
│        ├type AnswerMachineDetectionConfig
│        │├  documentation: The configuration used for answering machine detection during outbound calls
│        ││  name: AnswerMachineDetectionConfig
│        │└ properties
│        │   ├EnableAnswerMachineDetection: boolean (required)
│        │   └AwaitAnswerMachinePrompt: boolean
│        ├type SmsChannelSubtypeConfig
│        │├  documentation: SMS Channel Subtype config
│        ││  name: SmsChannelSubtypeConfig
│        │└ properties
│        │   ├Capacity: number
│        │   ├OutboundMode: SmsOutboundMode (required)
│        │   └DefaultOutboundConfig: SmsOutboundConfig (required)
│        ├type SmsOutboundMode
│        │├  documentation: SMS Outbound Mode
│        ││  name: SmsOutboundMode
│        │└ properties
│        │   └AgentlessConfig: json
│        ├type SmsOutboundConfig
│        │├  documentation: Default SMS outbound config
│        ││  name: SmsOutboundConfig
│        │└ properties
│        │   ├ConnectSourcePhoneNumberArn: string (required)
│        │   └WisdomTemplateArn: string (required)
│        ├type EmailChannelSubtypeConfig
│        │├  documentation: Email Channel Subtype config
│        ││  name: EmailChannelSubtypeConfig
│        │└ properties
│        │   ├Capacity: number
│        │   ├OutboundMode: EmailOutboundMode (required)
│        │   └DefaultOutboundConfig: EmailOutboundConfig (required)
│        ├type EmailOutboundMode
│        │├  documentation: Email Outbound Mode
│        ││  name: EmailOutboundMode
│        │└ properties
│        │   └AgentlessConfig: json
│        ├type EmailOutboundConfig
│        │├  documentation: Default SMS outbound config
│        ││  name: EmailOutboundConfig
│        │└ properties
│        │   ├ConnectSourceEmailAddress: string (required)
│        │   ├SourceEmailAddressDisplayName: string
│        │   └WisdomTemplateArn: string (required)
│        ├type Source
│        │├  documentation: The possible types of channel config parameters
│        ││  name: Source
│        │└ properties
│        │   └CustomerProfilesSegmentArn: string (required)
│        ├type Schedule
│        │├  documentation: Campaign schedule
│        ││  name: Schedule
│        │└ properties
│        │   ├StartTime: string (required)
│        │   ├EndTime: string (required)
│        │   └RefreshFrequency: string
│        ├type CommunicationTimeConfig
│        │├  documentation: Campaign communication time config
│        ││  name: CommunicationTimeConfig
│        │└ properties
│        │   ├LocalTimeZoneConfig: LocalTimeZoneConfig (required)
│        │   ├Telephony: TimeWindow
│        │   ├Sms: TimeWindow
│        │   └Email: TimeWindow
│        ├type LocalTimeZoneConfig
│        │├  documentation: Local time zone config
│        ││  name: LocalTimeZoneConfig
│        │└ properties
│        │   ├DefaultTimeZone: string
│        │   └LocalTimeZoneDetection: Array<string>
│        ├type TimeWindow
│        │├  documentation: Time window config
│        ││  name: TimeWindow
│        │└ properties
│        │   ├OpenHours: OpenHours (required)
│        │   └RestrictedPeriods: RestrictedPeriods
│        ├type OpenHours
│        │├  documentation: Open Hours config
│        ││  name: OpenHours
│        │└ properties
│        │   └DailyHours: Array<DailyHour> (required)
│        ├type DailyHour
│        │├  documentation: Daily Hour
│        ││  name: DailyHour
│        │└ properties
│        │   ├Key: string
│        │   └Value: Array<TimeRange>
│        ├type TimeRange
│        │├  documentation: Time range in 24 hour format
│        ││  name: TimeRange
│        │└ properties
│        │   ├StartTime: string (required)
│        │   └EndTime: string (required)
│        ├type RestrictedPeriods
│        │├  documentation: Restricted period config
│        ││  name: RestrictedPeriods
│        │└ properties
│        │   └RestrictedPeriodList: Array<RestrictedPeriod> (required)
│        ├type RestrictedPeriod
│        │├  documentation: Restricted period
│        ││  name: RestrictedPeriod
│        │└ properties
│        │   ├Name: string
│        │   ├StartDate: string (required)
│        │   └EndDate: string (required)
│        ├type CommunicationLimitsConfig
│        │├  documentation: Communication limits config
│        ││  name: CommunicationLimitsConfig
│        │└ properties
│        │   └AllChannelsSubtypes: CommunicationLimits
│        ├type CommunicationLimits
│        │├  documentation: Communication limits
│        ││  name: CommunicationLimits
│        │└ properties
│        │   └CommunicationLimitList: Array<CommunicationLimit>
│        └type CommunicationLimit
│         ├  documentation: Communication Limit
│         │  name: CommunicationLimit
│         └ properties
│            ├MaxCountPerRecipient: integer (required)
│            ├Frequency: integer (required)
│            └Unit: string (required)
├[~] service aws-dynamodb
│ └ resources
│    ├[~] resource AWS::DynamoDB::GlobalTable
│    │ ├ properties
│    │ │  ├[+] WarmThroughput: WarmThroughput
│    │ │  └ WriteOnDemandThroughputSettings: (documentation changed)
│    │ └ types
│    │    ├[~] type GlobalSecondaryIndex
│    │    │ └ properties
│    │    │    ├[+] WarmThroughput: WarmThroughput
│    │    │    └ WriteOnDemandThroughputSettings: (documentation changed)
│    │    ├[~] type ReadOnDemandThroughputSettings
│    │    │ └  - documentation: Sets the read request settings for a replica table or a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` .
│    │    │    + documentation: Sets the read request settings for a replica table or a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` .
│    │    ├[~] type ReplicaGlobalSecondaryIndexSpecification
│    │    │ └ properties
│    │    │    └ ReadOnDemandThroughputSettings: (documentation changed)
│    │    ├[+] type WarmThroughput
│    │    │ ├  name: WarmThroughput
│    │    │ └ properties
│    │    │    ├ReadUnitsPerSecond: integer
│    │    │    └WriteUnitsPerSecond: integer
│    │    └[~] type WriteOnDemandThroughputSettings
│    │      └  - documentation: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` .
│    │         + documentation: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` .
│    └[~] resource AWS::DynamoDB::Table
│      ├  - documentation: The `AWS::DynamoDB::Table` resource creates a DynamoDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *Amazon DynamoDB API Reference* .
│      │  You should be aware of the following behaviors when working with DynamoDB tables:
│      │  - AWS CloudFormation typically creates DynamoDB tables in parallel. However, if your template includes multiple DynamoDB tables with indexes, you must declare dependencies so that the tables are created sequentially. Amazon DynamoDB limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DynamoDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute) .
│      │  > Our guidance is to use the latest schema documented here for your AWS CloudFormation templates. This schema supports the provisioning of all table settings below. When using this schema in your AWS CloudFormation templates, please ensure that your Identity and Access Management ( IAM ) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
│      │  + documentation: The `AWS::DynamoDB::Table` resource creates a DynamoDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *Amazon DynamoDB API Reference* .
│      │  You should be aware of the following behaviors when working with DynamoDB tables:
│      │  - AWS CloudFormation typically creates DynamoDB tables in parallel. However, if your template includes multiple DynamoDB tables with indexes, you must declare dependencies so that the tables are created sequentially. Amazon DynamoDB limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DynamoDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute) .
│      │  > Our guidance is to use the latest schema documented for your AWS CloudFormation templates. This schema supports the provisioning of all table settings below. When using this schema in your AWS CloudFormation templates, please ensure that your Identity and Access Management ( IAM ) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
│      ├ properties
│      │  └[+] WarmThroughput: WarmThroughput
│      └ types
│         ├[~] type GlobalSecondaryIndex
│         │ └ properties
│         │    └[+] WarmThroughput: WarmThroughput
│         └[+] type WarmThroughput
│           ├  name: WarmThroughput
│           └ properties
│              ├ReadUnitsPerSecond: integer
│              └WriteUnitsPerSecond: integer
├[~] service aws-ec2
│ └ resources
│    └[~] resource AWS::EC2::CapacityReservation
│      └ properties
│         └ UnusedReservationBillingOwnerId: (documentation changed)
├[~] service aws-ecs
│ └ resources
│    ├[~] resource AWS::ECS::Service
│    │ ├ properties
│    │ │  ├[+] AvailabilityZoneRebalancing: string (default="DISABLED")
│    │ │  └[+] VpcLatticeConfigurations: Array<VpcLatticeConfiguration>
│    │ └ types
│    │    └[+] type VpcLatticeConfiguration
│    │      ├  name: VpcLatticeConfiguration
│    │      └ properties
│    │         ├TargetGroupArn: string (required)
│    │         ├PortName: string (required)
│    │         └RoleArn: string (required)
│    └[~] resource AWS::ECS::TaskDefinition
│      └ types
│         └[~] type ContainerDefinition
│           └ properties
│              └[+] VersionConsistency: string (default="enabled")
├[~] service aws-elasticloadbalancingv2
│ └ resources
│    └[~] resource AWS::ElasticLoadBalancingV2::LoadBalancer
│      ├ properties
│      │  └[+] EnablePrefixForIpv6SourceNat: string
│      └ types
│         └[~] type SubnetMapping
│           └ properties
│              └[+] SourceNatIpv6Prefix: string
├[~] service aws-fis
│ └ resources
│    └[~] resource AWS::FIS::ExperimentTemplate
│      ├ properties
│      │  └[+] ExperimentReportConfiguration: ExperimentTemplateExperimentReportConfiguration
│      └ types
│         ├[+] type CloudWatchDashboard
│         │ ├  documentation: The CloudWatch dashboards to include as data sources in the experiment report.
│         │ │  name: CloudWatchDashboard
│         │ └ properties
│         │    └DashboardIdentifier: string (required)
│         ├[+] type DataSources
│         │ ├  documentation: Describes the data sources for the experiment report.
│         │ │  name: DataSources
│         │ └ properties
│         │    └CloudWatchDashboards: Array<CloudWatchDashboard>
│         ├[+] type ExperimentReportS3Configuration
│         │ ├  documentation: The S3 destination for the experiment report.
│         │ │  name: ExperimentReportS3Configuration
│         │ └ properties
│         │    ├BucketName: string (required)
│         │    └Prefix: string
│         ├[+] type ExperimentTemplateExperimentReportConfiguration
│         │ ├  documentation: Describes the report configuration for the experiment template.
│         │ │  name: ExperimentTemplateExperimentReportConfiguration
│         │ └ properties
│         │    ├Outputs: Outputs (required)
│         │    ├DataSources: DataSources (required)
│         │    ├PreExperimentDuration: string
│         │    └PostExperimentDuration: string
│         └[+] type Outputs
│           ├  documentation: Describes the output destinations of the experiment report.
│           │  name: Outputs
│           └ properties
│              └ExperimentReportS3Configuration: ExperimentReportS3Configuration (required)
├[~] service aws-gamelift
│ └ resources
│    ├[~] resource AWS::GameLift::Build
│    │ └ properties
│    │    └ OperatingSystem: (documentation changed)
│    ├[+] resource AWS::GameLift::ContainerFleet
│    │ ├  name: ContainerFleet
│    │ │  cloudFormationType: AWS::GameLift::ContainerFleet
│    │ │  documentation: The AWS::GameLift::ContainerFleet resource creates an Amazon GameLift (GameLift) container fleet to host game servers.
│    │ │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │ ├ properties
│    │ │  ├FleetRoleArn: string (required)
│    │ │  ├Description: string
│    │ │  ├GameServerContainerGroupDefinitionName: string
│    │ │  ├PerInstanceContainerGroupDefinitionName: string
│    │ │  ├InstanceConnectionPortRange: ConnectionPortRange
│    │ │  ├InstanceInboundPermissions: Array<IpPermission>
│    │ │  ├GameServerContainerGroupsPerInstance: integer
│    │ │  ├DeploymentConfiguration: DeploymentConfiguration
│    │ │  ├InstanceType: string (immutable)
│    │ │  ├BillingType: string (immutable)
│    │ │  ├Locations: Array<LocationConfiguration> (immutable)
│    │ │  ├ScalingPolicies: Array<ScalingPolicy>
│    │ │  ├MetricGroups: Array<string>
│    │ │  ├NewGameSessionProtectionPolicy: string
│    │ │  ├GameSessionCreationLimitPolicy: GameSessionCreationLimitPolicy
│    │ │  ├LogConfiguration: LogConfiguration
│    │ │  └Tags: Array<tag>
│    │ ├ attributes
│    │ │  ├CreationTime: string
│    │ │  ├Status: string
│    │ │  ├FleetId: string
│    │ │  ├FleetArn: string
│    │ │  ├DeploymentDetails: DeploymentDetails
│    │ │  ├GameServerContainerGroupDefinitionArn: string
│    │ │  ├PerInstanceContainerGroupDefinitionArn: string
│    │ │  └MaximumGameServerContainerGroupsPerInstance: integer
│    │ └ types
│    │    ├type ConnectionPortRange
│    │    │├  documentation: Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet.
│    │    ││  name: ConnectionPortRange
│    │    │└ properties
│    │    │   ├FromPort: integer (required)
│    │    │   └ToPort: integer (required)
│    │    ├type IpPermission
│    │    │├  documentation: A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.
│    │    ││  name: IpPermission
│    │    │└ properties
│    │    │   ├FromPort: integer (required)
│    │    │   ├IpRange: string (required)
│    │    │   ├Protocol: string (required)
│    │    │   └ToPort: integer (required)
│    │    ├type DeploymentDetails
│    │    │├  documentation: Provides information about the last deployment ID and its status.
│    │    ││  name: DeploymentDetails
│    │    │└ properties
│    │    │   └LatestDeploymentId: string
│    │    ├type DeploymentConfiguration
│    │    │├  documentation: Provides details about how to drain old tasks and replace them with new updated tasks.
│    │    ││  name: DeploymentConfiguration
│    │    │└ properties
│    │    │   ├ProtectionStrategy: string
│    │    │   ├MinimumHealthyPercentage: integer
│    │    │   └ImpairmentStrategy: string
│    │    ├type LocationConfiguration
│    │    │├  documentation: A remote location where a multi-location fleet can deploy EC2 instances for game hosting.
│    │    ││  name: LocationConfiguration
│    │    │└ properties
│    │    │   ├Location: string (required)
│    │    │   ├LocationCapacity: LocationCapacity
│    │    │   └StoppedActions: Array<string>
│    │    ├type LocationCapacity
│    │    │├  documentation: Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
│    │    ││  name: LocationCapacity
│    │    │└ properties
│    │    │   ├DesiredEC2Instances: integer (required)
│    │    │   ├MinSize: integer (required)
│    │    │   └MaxSize: integer (required)
│    │    ├type ScalingPolicy
│    │    │├  documentation: Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.
│    │    ││  name: ScalingPolicy
│    │    │└ properties
│    │    │   ├ComparisonOperator: string
│    │    │   ├EvaluationPeriods: integer
│    │    │   ├MetricName: string (required)
│    │    │   ├Name: string (required)
│    │    │   ├PolicyType: string
│    │    │   ├ScalingAdjustment: integer
│    │    │   ├ScalingAdjustmentType: string
│    │    │   ├TargetConfiguration: TargetConfiguration
│    │    │   └Threshold: number
│    │    ├type TargetConfiguration
│    │    │├  documentation: Settings for a target-based scaling policy. A target-based policy tracks a particular fleet metric specifies a target value for the metric. As player usage changes, the policy triggers Amazon GameLift to adjust capacity so that the metric returns to the target value. The target configuration specifies settings as needed for the target based policy, including the target value.
│    │    ││  name: TargetConfiguration
│    │    │└ properties
│    │    │   └TargetValue: number (required)
│    │    ├type GameSessionCreationLimitPolicy
│    │    │├  documentation: A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: "An individual player can create a maximum number of new game sessions within a specified time period".
│    │    ││  The policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.
│    │    ││  name: GameSessionCreationLimitPolicy
│    │    │└ properties
│    │    │   ├NewGameSessionsPerCreator: integer
│    │    │   └PolicyPeriodInMinutes: integer
│    │    └type LogConfiguration
│    │     ├  documentation: A policy the location and provider of logs from the fleet.
│    │     │  name: LogConfiguration
│    │     └ properties
│    │        ├LogDestination: string
│    │        └S3BucketName: string
│    ├[~] resource AWS::GameLift::ContainerGroupDefinition
│    │ ├  - documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │ │  The properties that describe a container group resource. Container group definition properties can't be updated. To change a property, create a new container group definition.
│    │ │  *Used with:* `CreateContainerGroupDefinition`
│    │ │  *Returned by:* `DescribeContainerGroupDefinition` , `ListContainerGroupDefinitions`
│    │ │  + documentation: The properties that describe a container group resource. You can update all properties of a container group definition properties. Updates to a container group definition are saved as new versions.
│    │ │  *Used with:* `CreateContainerGroupDefinition`
│    │ │  *Returned by:* `DescribeContainerGroupDefinition` , `ListContainerGroupDefinitions` , `UpdateContainerGroupDefinition`
│    │ ├ properties
│    │ │  ├[-] ContainerDefinitions: Array<ContainerDefinition> (required, immutable)
│    │ │  ├[+] ContainerGroupType: string (immutable)
│    │ │  ├[+] GameServerContainerDefinition: GameServerContainerDefinition
│    │ │  ├ OperatingSystem: - string (required, immutable)
│    │ │  │                  + string (required)
│    │ │  │                  (documentation changed)
│    │ │  ├[-] SchedulingStrategy: string (immutable)
│    │ │  ├ SupportContainerDefinitions: - Array<json>
│    │ │  │                              + Array<SupportContainerDefinition>
│    │ │  │                              (documentation changed)
│    │ │  ├[-] TotalCpuLimit: integer (required, immutable)
│    │ │  ├[-] TotalMemoryLimit: integer (required, immutable)
│    │ │  ├[+] TotalMemoryLimitMebibytes: integer (required)
│    │ │  ├[+] TotalVcpuLimit: number (required)
│    │ │  └[+] VersionDescription: string
│    │ ├ attributes
│    │ │  ├ ContainerGroupDefinitionArn: (documentation changed)
│    │ │  └[+] VersionNumber: integer
│    │ └ types
│    │    ├[-] type ContainerDefinition
│    │    │ ├  documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  Describes a container in a container fleet, the resources available to the container, and the commands that are run when the container starts. Container properties can't be updated. To change a property, create a new container group definition. See also `ContainerDefinitionInput` .
│    │    │ │  *Part of:* `ContainerGroupDefinition`
│    │    │ │  *Returned by:* `DescribeContainerGroupDefinition` , `ListContainerGroupDefinitions`
│    │    │ │  name: ContainerDefinition
│    │    │ └ properties
│    │    │    ├WorkingDirectory: string
│    │    │    ├MemoryLimits: MemoryLimits
│    │    │    ├HealthCheck: ContainerHealthCheck
│    │    │    ├Cpu: integer
│    │    │    ├EntryPoint: Array<string>
│    │    │    ├ImageUri: string (required)
│    │    │    ├ResolvedImageDigest: string
│    │    │    ├Essential: boolean
│    │    │    ├PortConfiguration: PortConfiguration
│    │    │    ├DependsOn: Array<ContainerDependency>
│    │    │    ├ContainerName: string (required)
│    │    │    ├Command: Array<string>
│    │    │    └Environment: Array<ContainerEnvironment>
│    │    ├[~] type ContainerDependency
│    │    │ ├  - documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  A container's dependency on another container in the same container group. The dependency impacts how the dependent container is able to start or shut down based the status of the other container.
│    │    │ │  For example, ContainerA is configured with the following dependency: a `START` dependency on ContainerB. This means that ContainerA can't start until ContainerB has started. It also means that ContainerA must shut down before ContainerB.
│    │    │ │  *Part of:* `ContainerDefinition`
│    │    │ │  + documentation: A dependency that impacts a container's startup and shutdown.
│    │    │ └ properties
│    │    │    ├ Condition: (documentation changed)
│    │    │    └ ContainerName: (documentation changed)
│    │    ├[~] type ContainerEnvironment
│    │    │ └  - documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │    An environment variable to set inside a container, in the form of a key-value pair.
│    │    │    *Related data type:* `ContainerDefinition$Environment`
│    │    │    + documentation: An environment variable to set inside a container, in the form of a key-value pair.
│    │    ├[~] type ContainerHealthCheck
│    │    │ ├  - documentation: Instructions on when and how to check the health of a container in a container fleet. When health check properties are set in a container definition, they override any Docker health checks in the container image. For more information on container health checks, see [HealthCheck command](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html#ECS-Type-HealthCheck-command) in the *Amazon Elastic Container Service API* .
│    │    │ │  The following example instructions tell the container to wait 100 seconds after launch before counting failed health checks, then initiate the health check command every 60 seconds. After issuing the health check command, wait 10 seconds for it to succeed. If it fails, retry the command 3 times before considering the container to be unhealthy.
│    │    │ │  `{"Command": [ "CMD-SHELL", "ps cax | grep "processmanager" || exit 1" ], "Interval": 300, "Timeout": 30, "Retries": 5, "StartPeriod": 100 }`
│    │    │ │  *Part of:* `ContainerDefinition$HealthCheck`
│    │    │ │  + documentation: Specifies how the process manager checks the health of containers.
│    │    │ └ properties
│    │    │    ├ Command: (documentation changed)
│    │    │    ├ Interval: (documentation changed)
│    │    │    ├ Retries: (documentation changed)
│    │    │    ├ StartPeriod: (documentation changed)
│    │    │    └ Timeout: (documentation changed)
│    │    ├[+] type ContainerMountPoint
│    │    │ ├  documentation: Defines the mount point configuration within a container.
│    │    │ │  name: ContainerMountPoint
│    │    │ └ properties
│    │    │    ├InstancePath: string (required)
│    │    │    ├ContainerPath: string
│    │    │    └AccessLevel: string
│    │    ├[~] type ContainerPortRange
│    │    │ ├  - documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  A set of one or more port numbers that can be opened on the container.
│    │    │ │  *Part of:* `ContainerPortConfiguration`
│    │    │ │  + documentation: A set of one or more port numbers that can be opened on the container.
│    │    │ └ properties
│    │    │    ├ Protocol: (documentation changed)
│    │    │    └ ToPort: (documentation changed)
│    │    ├[+] type GameServerContainerDefinition
│    │    │ ├  documentation: Specifies the information required to run game servers with this container group
│    │    │ │  name: GameServerContainerDefinition
│    │    │ └ properties
│    │    │    ├ContainerName: string (required)
│    │    │    ├DependsOn: Array<ContainerDependency>
│    │    │    ├ServerSdkVersion: string (required)
│    │    │    ├ImageUri: string (required)
│    │    │    ├ResolvedImageDigest: string
│    │    │    ├EnvironmentOverride: Array<ContainerEnvironment>
│    │    │    ├PortConfiguration: PortConfiguration
│    │    │    └MountPoints: Array<ContainerMountPoint>
│    │    ├[-] type MemoryLimits
│    │    │ ├  documentation: Specifies how much memory is available to the container.
│    │    │ │  name: MemoryLimits
│    │    │ └ properties
│    │    │    ├SoftLimit: integer
│    │    │    └HardLimit: integer
│    │    └[+] type SupportContainerDefinition
│    │      ├  documentation: Supports the function of the main container group
│    │      │  name: SupportContainerDefinition
│    │      └ properties
│    │         ├ContainerName: string (required)
│    │         ├Vcpu: number
│    │         ├DependsOn: Array<ContainerDependency>
│    │         ├Essential: boolean
│    │         ├ImageUri: string (required)
│    │         ├ResolvedImageDigest: string
│    │         ├MemoryHardLimitMebibytes: integer
│    │         ├EnvironmentOverride: Array<ContainerEnvironment>
│    │         ├PortConfiguration: PortConfiguration
│    │         ├HealthCheck: ContainerHealthCheck
│    │         └MountPoints: Array<ContainerMountPoint>
│    ├[~] resource AWS::GameLift::Fleet
│    │ ├ properties
│    │ │  ├ ApplyCapacity: (documentation changed)
│    │ │  ├ ComputeType: (documentation changed)
│    │ │  ├[-] ContainerGroupsConfiguration: ContainerGroupsConfiguration (immutable)
│    │ │  ├ EC2InboundPermissions: (documentation changed)
│    │ │  ├ EC2InstanceType: (documentation changed)
│    │ │  └ InstanceRoleARN: (documentation changed)
│    │ ├ attributes
│    │ │  └[-] ContainerGroupsConfiguration.ContainerGroupsPerInstance.MaxReplicaContainerGroupsPerInstance: integer
│    │ └ types
│    │    ├[~] type CertificateConfiguration
│    │    │ └ properties
│    │    │    └ CertificateType: (documentation changed)
│    │    ├[-] type ConnectionPortRange
│    │    │ ├  documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  The set of port numbers to open on each instance in a container fleet. Connection ports are used by inbound traffic to connect with processes that are running in containers on the fleet.
│    │    │ │  *Part of:* `ContainerGroupsConfiguration` , `ContainerGroupsAttributes`
│    │    │ │  name: ConnectionPortRange
│    │    │ └ properties
│    │    │    ├FromPort: integer (required)
│    │    │    └ToPort: integer (required)
│    │    ├[-] type ContainerGroupsConfiguration
│    │    │ ├  documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` .
│    │    │ │  *Used with:* `CreateFleet`
│    │    │ │  name: ContainerGroupsConfiguration
│    │    │ └ properties
│    │    │    ├ContainerGroupDefinitionNames: Array<string> (required)
│    │    │    ├ConnectionPortRange: ConnectionPortRange (required)
│    │    │    └ContainerGroupsPerInstance: ContainerGroupsPerInstance
│    │    ├[-] type ContainerGroupsPerInstance
│    │    │ ├  documentation: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*
│    │    │ │  Determines how many replica container groups that Amazon GameLift deploys to each instance in a container fleet.
│    │    │ │  Amazon GameLift calculates the maximum possible replica groups per instance based on the instance 's CPU and memory resources. When deploying a fleet, Amazon GameLift places replica container groups on each fleet instance based on the following:
│    │    │ │  - If no desired value is set, Amazon GameLift places the calculated maximum.
│    │    │ │  - If a desired number is set to a value higher than the calculated maximum, fleet creation fails..
│    │    │ │  - If a desired number is set to a value lower than the calculated maximum, Amazon GameLift places the desired number.
│    │    │ │  *Part of:* `ContainerGroupsConfiguration` , `ContainerGroupsAttributes`
│    │    │ │  *Returned by:* `DescribeFleetAttributes` , `CreateFleet`
│    │    │ │  name: ContainerGroupsPerInstance
│    │    │ └ properties
│    │    │    ├DesiredReplicaContainerGroupsPerInstance: integer
│    │    │    └MaxReplicaContainerGroupsPerInstance: integer
│    │    ├[~] type LocationCapacity
│    │    │ └  - documentation: Current resource capacity settings for managed EC2 fleets. For multi-location fleets, location values might refer to a fleet's remote location or its home Region.
│    │    │    *Returned by:* [DescribeFleetCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeFleetCapacity.html) , [DescribeFleetLocationCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeFleetLocationCapacity.html) , [UpdateFleetCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateFleetCapacity.html)
│    │    │    + documentation: Current resource capacity settings for managed EC2 fleets and managed container fleets. For multi-location fleets, location values might refer to a fleet's remote location or its home Region.
│    │    │    *Returned by:* [DescribeFleetCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeFleetCapacity.html) , [DescribeFleetLocationCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeFleetLocationCapacity.html) , [UpdateFleetCapacity](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateFleetCapacity.html)
│    │    ├[~] type LocationConfiguration
│    │    │ └ properties
│    │    │    └ LocationCapacity: (documentation changed)
│    │    └[~] type ServerProcess
│    │      └ properties
│    │         └ ConcurrentExecutions: (documentation changed)
│    ├[~] resource AWS::GameLift::GameSessionQueue
│    │ └ properties
│    │    ├ PlayerLatencyPolicies: (documentation changed)
│    │    └ TimeoutInSeconds: (documentation changed)
│    └[~] resource AWS::GameLift::MatchmakingConfiguration
│      └ properties
│         └ AdditionalPlayerCount: (documentation changed)
├[~] service aws-iotwireless
│ └ resources
│    ├[~] resource AWS::IoTWireless::DeviceProfile
│    │ └ properties
│    │    ├ LoRaWAN: - LoRaWANDeviceProfile
│    │    │          + LoRaWANDeviceProfile (immutable)
│    │    └ Name: - string
│    │            + string (immutable)
│    └[~] resource AWS::IoTWireless::ServiceProfile
│      └ properties
│         ├ LoRaWAN: - LoRaWANServiceProfile
│         │          + LoRaWANServiceProfile (immutable)
│         └ Name: - string
│                 + string (immutable)
├[~] service aws-kinesisfirehose
│ └ resources
│    └[~] resource AWS::KinesisFirehose::DeliveryStream
│      ├ properties
│      │  └[+] DatabaseSourceConfiguration: DatabaseSourceConfiguration (immutable)
│      └ types
│         ├[+] type DatabaseColumns
│         │ ├  name: DatabaseColumns
│         │ └ properties
│         │    ├Include: Array<string>
│         │    └Exclude: Array<string>
│         ├[+] type Databases
│         │ ├  name: Databases
│         │ └ properties
│         │    ├Include: Array<string>
│         │    └Exclude: Array<string>
│         ├[+] type DatabaseSourceAuthenticationConfiguration
│         │ ├  name: DatabaseSourceAuthenticationConfiguration
│         │ └ properties
│         │    └SecretsManagerConfiguration: SecretsManagerConfiguration (required)
│         ├[+] type DatabaseSourceConfiguration
│         │ ├  name: DatabaseSourceConfiguration
│         │ └ properties
│         │    ├Type: string (required)
│         │    ├Endpoint: string (required)
│         │    ├Port: integer (required)
│         │    ├SSLMode: string
│         │    ├Databases: Databases (required)
│         │    ├Tables: DatabaseTables (required)
│         │    ├Columns: DatabaseColumns
│         │    ├SurrogateKeys: Array<string>
│         │    ├SnapshotWatermarkTable: string (required)
│         │    ├DatabaseSourceAuthenticationConfiguration: DatabaseSourceAuthenticationConfiguration (required)
│         │    ├DatabaseSourceVPCConfiguration: DatabaseSourceVPCConfiguration (required)
│         │    ├Digest: string
│         │    └PublicCert…
### Issue # (if applicable)

None

### Reason for this change

Amazon Simple Email Service (SES) offers a [new delivery option that allows us to set a custom maximum delivery time for our emails at Oct 15, 2024](https://aws.amazon.com/about-aws/whats-new/2024/10/amazon-ses-configurability-maximum-delivery-time-emails/?nc1=h_ls)

Cfn documentation: <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ses-configurationset-deliveryoptions.html#cfn-ses-configurationset-deliveryoptions-maxdeliveryseconds>

### Description of changes

Add `maxDeliveryDuration` to `ConfigurationSetProps`.

### Description of how you validated changes

Add both unit and integ tests.

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…31339)

Issue # (if applicable)

#31629 

### Reason for this change
This change introduces support for Lambda Function URLs with custom Origin Access Control (OAC) in CloudFront distributions, enhancing security and control over CloudFront-Lambda integration.

### Description of changes
- Added a new feature allowing the configuration of Lambda Function URLs with custom OAC in CloudFront.
- Implemented support for custom signing behavior and protocols for Lambda origins.
- Included new tests to validate the correct behavior of OAC with Lambda Function URLs.

### Description of how you validated changes
- Ran unit tests to ensure that the OAC setup for Lambda Function URLs is correctly applied in CloudFront distributions.
- Validated by deploying a sample CDK application to confirm the functionality and integration of Lambda Function URLs with CloudFront using OAC.


### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)
- [x] OAC implementation is complete.
----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
mergify bot and others added 8 commits November 19, 2024 16:14
A number of our tests depend on the version of the `cloud-assembly-schema`, and some of our tests use `aws-cdk-lib` to generate Cloud Assemblies which has its own copy of `cloud-assembly-schema` built in.

Because `cloud-assembly-schema` currently takes its schema version from its `package.json` version, and because the version of `cloud-assembly-schema/package.json` will be `0.0.0` once it has been moved into our new monorepo, these tests need to be changed to deal with this situation.

The solution we're currently taking is to rewrite `manifest.json` and change the `version` in there to a different one.

This PR also renames `expect(...).toBeCalledWith()` to `expect(...).toHaveBeenCalledWith()` because the jest linter requires is.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…urces and improve error messages (#32062)

### Issue # (if applicable)

N/A

### Reason for this change
Consolidate name validations for App Runner Resources and improve error messages.



### Description of changes
* Split regex-pattern check and length check to be more user-friendly.
  * `autoScalingConfigurationName` in `AutoScalingConfiguration`
  * `observabilityConfigurationName` in `ObservabilityConfigurationName`
  * `vpcIngressConnectionName` in `VpcIngressConnectionName`
* Add name validations.
  * `serviceName` in `ServiceName`. (Ref: [CFn document](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-service.html#cfn-apprunner-service-servicename))
  * `vpcConnectorName` in `VpcConnectorName`. (Ref: [CFn document](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcconnector.html#cfn-apprunner-vpcconnector-vpcconnectorname))




### Description of how you validated changes
Modify and add unit tests.



### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

N/A

### Reason for this change

Working on a new feature support - S3 destination for Lambda Async Invoke.

### Description of changes

- Adding a new destination - s3 bucket, to lambda event destinations. 
- Adding unit tests for the code.
- Adding integration test to create a lambda and event invoke config with an S3 destination.
- Updating readme with the new destination information.

### Description of how you validated changes

Unit tests and integration tests have been added.

### Checklist
- [ X ] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
### Issue # (if applicable)

NA

### Reason for this change

Adds NodeJs 22.x Runtime to the available [Lambda Runtimes constants](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.Runtime.html#initializer)

### Description of how you validated changes

Have added integration tests to validate the runtime support

### Checklist
- [ ] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
)

### Reason for this change

Lambda is introducing a new property in Event Sources named `MetricsConfig` to get enhanced metrics for user's event source that captures each stage of processing. Through this metrics customer can track flow of events through their EDA pipelines. 

This feature is currently supported for `DynamoDB`, `Kinesis` and `SQS` event sources only.
### Description of changes

This new property can be opted in by setting the `MetricsConfig` field while creating event sources. The example of opting for `MetricsConfig` for dynamoDB event is shown below:

```
fn.addEventSource(new eventsources.DynamoEventSource(table, {
  startingPosition: lambda.StartingPosition.LATEST,
  metricsConfig: {
    metrics: [MetricType.EVENT_COUNT],
  }
}))
```

Today there is only 1 metric type: EventCount. The `metrics` array can be either one element with `EventCount` or an empty array. More configuration support will be available in future

### Description of how you validated changes

Have added unit test and integration test to validate the implementation

### Checklist
- [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Closes #32186

### Reason for this change

<!--What is the bug or use case behind this change?-->

The CLI will poll for all stack events from the beginning of time, even
though it will end up using only a fraction of them to display in the
terminal. This can cause a significant slowdown of `cdk deploy`.

### Description of changes

<!--What code changes did you make? Have you made any important design
decisions?-->

Moved the pagination to the caller side, so it can decide whether or not
to poll the next page. This is how it was before `2.167.0`


https://github.com/aws/aws-cdk/blob/7bb9203eb95fe894c0d40942ff49c782a9fec251/packages/aws-cdk/lib/api/util/cloudformation/stack-event-poller.ts#L73-L74

### Description of how you validated changes

<!--Have you added any unit tests and/or integration tests?-->

Added unit test.

### Notes

- There are several functions in the
[sdk.ts](https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk/lib/api/aws-auth/sdk.ts)
that perform implicit pagination to retrieve all results. From a quick
glance, none of them seem to be misusing it though (at least with
respect to how it always was). I will investigate those functions
further in a followup PR.

### Checklist
- [x] My code adheres to the [CONTRIBUTING
GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and
[DESIGN
GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md)

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*
@aws-cdk-automation aws-cdk-automation added auto-approve pr/no-squash This PR should be merged instead of squash-merging it labels Nov 20, 2024
@aws-cdk-automation aws-cdk-automation requested a review from a team November 20, 2024 12:05
@github-actions github-actions bot added the p2 label Nov 20, 2024
@iliapolo iliapolo added the pr/do-not-merge This PR should not be merged at this time. label Nov 20, 2024
@iliapolo
Copy link
Contributor

Adding do-not-merge because there are some CFN schema issues we need to sort out.

@aws-cdk-automation
Copy link
Collaborator Author

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildv2Project1C6BFA3F-wQm2hXv2jqQv
  • Commit ID: c8d9204
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

@aws-cdk-automation aws-cdk-automation added the pr/needs-community-review This PR needs a review from a Trusted Community Member or Core Team Member. label Nov 20, 2024
@iliapolo iliapolo removed the pr/do-not-merge This PR should not be merged at this time. label Nov 20, 2024
@iliapolo
Copy link
Contributor

@Mergifyio refresh

Copy link
Contributor

mergify bot commented Nov 20, 2024

refresh

✅ Pull request refreshed

Copy link
Contributor

mergify bot commented Nov 20, 2024

Thank you for contributing! Your pull request will be automatically updated and merged without squashing (do not update manually, and be sure to allow changes to be pushed to your fork).

@mergify mergify bot merged commit f4a02ab into v2-release Nov 20, 2024
38 of 39 checks passed
@mergify mergify bot deleted the bump/2.168.0 branch November 20, 2024 13:07
Copy link

Comments on closed issues and PRs are hard for our team to see.
If you need help, please open a new issue that references this one.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 20, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
auto-approve p2 pr/needs-community-review This PR needs a review from a Trusted Community Member or Core Team Member. pr/no-squash This PR should be merged instead of squash-merging it
Projects
None yet
Development

Successfully merging this pull request may close these issues.