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.140.0 #30044

Merged
merged 38 commits into from
May 2, 2024
Merged

chore(release): 2.140.0 #30044

merged 38 commits into from
May 2, 2024

Conversation

aws-cdk-automation
Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation commented May 2, 2024

See CHANGELOG

badmintoncryer and others added 30 commits April 24, 2024 22:53
### Issue # (if applicable)

Closes #29927.

### Reason for this change

Cloudformation [supports for configuring period of automatic key rotation](https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-rotationperiodindays) but CDK does not.

### Description of changes

Added `rotationPeriod` to `KeyProps`.

### Description of how you validated changes

I've added 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*
### Issue # (if applicable)

Closes #29942

### Reason for this change

Allows existing API Destinations to be imported and attached to additional rules

### Description of changes

* Added `ApiDestination.fromApiDestinationAttributes` method

### Description of how you validated changes

Added 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*
Closes #29937 

### Reason for this change

Adding assertions for `AwsCustomResource` will improve our test coverage.

### Description of changes

Added assertions for `AwsCustomResource` to integ tests that were impacted by this [PR](#29868).

### Description of how you validated changes

Assertions were validated by running the integ tests and verifying that it succeeded.

### 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

Cloudformation has `ebsOptimized` property for enabling EBS optimized instance.
This property is not configurable from L2.

### Description of changes

Add `ebsOptimized` property to `InstanceProps`.

### Description of how you validated changes

I've added 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*
…29961)

### Issue #29699

Closes #29699

### Reason for this change

The logic was incorrectly using `Object.entries()` on a Map. 

### Description of changes

This is a straighforward change to properly handle the map, and an update to tests.

### Description of how you validated changes

Updated test

### 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 #

Closes #25582 .

### Reason for this change

If I have to manually create a new deployment for API gateway but want to deploy to an existing stage instead of creating a new stage, the current workaround is `(deployment as any).resource.stageName = "myStage";`

### Description of changes

Added a new property `stageName` to `Deployment`. Updated README with two new sections: `Deploying to an existing stage` and `Controlled triggering of deployments` to show how users can trigger new deployments with their latest API changes if they manually create a `Deployment` resource for RestApi. 

Since `RestApiBase` manages `Deployment` constructs, this change applies to both `SpecRestApi` and `RestApi`. 

### Description of how you validated changes

Added unit tests and integration tests. Also successfully deployed a sample app to my account where I created a stage in the API gateway console and specified the stage name in the new deployment.

### 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*
…as ARecord target (#29565)

### Issue # (if applicable)

Closes #23048.

### Reason for this change

Currently an existing A record created outside of CDK cannot be registered as an Alias Target under a new A record, while this is possible through AWS console.

### Description of changes

Introduces new function under class Arecord which will take input as existing record DNS name and then register it as an alias target under new Arecord. This way user will be able to alias an existing record (for type ARecord only). 

### Description of how you validated changes

- Added Unit tests to validate new A record is created with an alias target passed through new function
- Added Integration test for the alias target validation in template and after deployment to account.


### 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

While working on a related issue, I noticed that some integ-test snapshots are very brittle because assets include inline sourcemaps and ts files.

### Description of changes

With this change, we are disabling all sourcemaps for integ-tests and explicitly exclude ts source files from assets.
This is okay because the handlers are just written to be used inside integ tests.

Another change was made to disable the inline sourcemap for the custom resource handler entrypoint. The actual handlers do not have sourcemaps, so this was silly and probably just an oversight.

### Description of how you validated changes

Run integ tests to update snapshots.

### 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*
…29974)

### Reason for this change

There were a number of inconsistencies with the versions used for typescript, jsii & jsii-rosetta in this repository. 
Also the automated updater was incorrectly updating jsii minor versions.

I did some digging and turns out because `jsii` was at `5.4.x` already, we are already using TypeScript 5.4 for most critical paths. So I went ahead and aligned all TS version on that.

### Description of changes

Manually align all versions of typescript, jsii & jsii-rosetta.
Fixed the update workflow to only update patch version for these three packages.

Includes changes from #29978 until that is merged, and this PR is rebased.

### Description of how you validated changes

Run through the test pipeline.

### 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 44.0.1 to 44.3.0.
<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>v44.3.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Upgraded to v44.2.0 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/2054">tj-actions/changed-files#2054</a></li>
<li>fix: add a fallback value for the max number for retries to fetch missing history by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2055">tj-actions/changed-files#2055</a></li>
<li>feat: add support for returning posix path separator on windows by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2056">tj-actions/changed-files#2056</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v44.2.0...v44.3.0">https://github.com/tj-actions/changed-files/compare/v44.2.0...v44.3.0</a></p>
<h2>v44.2.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Updated README.md 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/2049">tj-actions/changed-files#2049</a></li>
<li>Upgraded to v44.1.0 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/2050">tj-actions/changed-files#2050</a></li>
<li>feat: add support for specifying the max number for retries to fetch missing history by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2052">tj-actions/changed-files#2052</a></li>
<li>Updated README.md 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/2053">tj-actions/changed-files#2053</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v44.1.0...v44.2.0">https://github.com/tj-actions/changed-files/compare/v44.1.0...v44.2.0</a></p>
<h2>v44.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Upgraded to v44.0.1 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/2037">tj-actions/changed-files#2037</a></li>
<li>chore(deps): update dependency typescript to v5.4.5 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2038">tj-actions/changed-files#2038</a></li>
<li>chore(deps): update peter-evans/create-pull-request action to v6.0.3 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2040">tj-actions/changed-files#2040</a></li>
<li>chore(deps): update dependency <code>@​types/micromatch</code> to v4.0.7 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2041">tj-actions/changed-files#2041</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/2042">tj-actions/changed-files#2042</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/2043">tj-actions/changed-files#2043</a></li>
<li>chore(deps): update typescript-eslint monorepo to v7.7.0 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2046">tj-actions/changed-files#2046</a></li>
<li>chore(deps): update peter-evans/create-pull-request action to v6.0.4 by <a href="https://github.com/renovate"><code>@​renovate</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2048">tj-actions/changed-files#2048</a></li>
<li>feat: add option to exclude submodules when detecting changes by <a href="https://github.com/jackton1"><code>@​jackton1</code></a> in <a href="https://redirect.github.com/tj-actions/changed-files/pull/2047">tj-actions/changed-files#2047</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/tj-actions/changed-files/compare/v44.0.1...v44.1.0">https://github.com/tj-actions/changed-files/compare/v44.0.1...v44.1.0</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/v44.2.0...v44.3.0">44.3.0</a> - (2024-04-18)</h1>
<h2>🚀 Features</h2>
<ul>
<li>Add support for returning posix path separator on windows (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2056">#2056</a>) (<a href="https://github.com/tj-actions/changed-files/commit/0874344d6ebbaa00a27da73276ae7162fadcaf69">0874344</a>)  - (Tonye Jack)</li>
</ul>
<h2>🐛 Bug Fixes</h2>
<ul>
<li>Add a fallback value for the max number for retries to fetch missing history (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2055">#2055</a>) (<a href="https://github.com/tj-actions/changed-files/commit/9f8300f8b45b8ddd3009f170957adfa5db4f3d5d">9f8300f</a>)  - (Tonye Jack)</li>
</ul>
<h2>⬆️ Upgrades</h2>
<ul>
<li>Upgraded to v44.2.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2054">#2054</a>)</li>
</ul>
<p>Co-authored-by: jackton1 <a href="mailto:[email protected]">[email protected]</a> (<a href="https://github.com/tj-actions/changed-files/commit/a06b9e80ae631cf6747b0ed4362a83f773ffaa40">a06b9e8</a>)  - (tj-actions[bot])</p>
<h1><a href="https://github.com/tj-actions/changed-files/compare/v44.1.0...v44.2.0">44.2.0</a> - (2024-04-18)</h1>
<h2>🚀 Features</h2>
<ul>
<li>Add support for specifying the max number for retries to fetch missing history (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2052">#2052</a>) (<a href="https://github.com/tj-actions/changed-files/commit/07c64e56185e44568aa942ce23164b22828747eb">07c64e5</a>)  - (Tonye Jack)</li>
</ul>
<h2>🔄 Update</h2>
<ul>
<li>Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2053">#2053</a>)</li>
</ul>
<p>Co-authored-by: jackton1 <a href="mailto:[email protected]">[email protected]</a> (<a href="https://github.com/tj-actions/changed-files/commit/4c5f5d698fbf2d763d5f13815ac7c2ccbef1ff7f">4c5f5d6</a>)  - (tj-actions[bot])</p>
<ul>
<li>Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2049">#2049</a>)</li>
</ul>
<p>Co-authored-by: repo-ranger[bot]  (<a href="https://github.com/tj-actions/changed-files/commit/831e892562944fa1fa9356c6b6e231553148f7bc">831e892</a>)  - (tj-actions[bot])</p>
<h2>⬆️ Upgrades</h2>
<ul>
<li>Upgraded to v44.1.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2050">#2050</a>)</li>
</ul>
<p>Co-authored-by: jackton1 <a href="mailto:[email protected]">[email protected]</a> (<a href="https://github.com/tj-actions/changed-files/commit/5bd333239b5f6fc69dcea71aafdd8c9da21aa0a2">5bd3332</a>)  - (tj-actions[bot])</p>
<h1><a href="https://github.com/tj-actions/changed-files/compare/v44.0.1...v44.1.0">44.1.0</a> - (2024-04-17)</h1>
<h2>🚀 Features</h2>
<ul>
<li>Add option to exclude submodules when detecting changes (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2047">#2047</a>) (<a href="https://github.com/tj-actions/changed-files/commit/e052d30e1c0bdf27cd806b01ca3b393f47b50c62">e052d30</a>)  - (Tonye Jack)</li>
</ul>
<h2>➕ Add</h2>
<ul>
<li>Added missing changes and modified dist assets.
(<a href="https://github.com/tj-actions/changed-files/commit/d477ae513d5b52384bbf032bcc395a548501f3fc">d477ae5</a>)  - (GitHub Action)</li>
</ul>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/tj-actions/changed-files/commit/0874344d6ebbaa00a27da73276ae7162fadcaf69"><code>0874344</code></a> feat: add support for returning posix path separator on windows (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2056">#2056</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/9f8300f8b45b8ddd3009f170957adfa5db4f3d5d"><code>9f8300f</code></a> fix: add a fallback value for the max number for retries to fetch missing his...</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/a06b9e80ae631cf6747b0ed4362a83f773ffaa40"><code>a06b9e8</code></a> Upgraded to v44.2.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2054">#2054</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/4c5f5d698fbf2d763d5f13815ac7c2ccbef1ff7f"><code>4c5f5d6</code></a> Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2053">#2053</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/07c64e56185e44568aa942ce23164b22828747eb"><code>07c64e5</code></a> feat: add support for specifying the max number for retries to fetch missing ...</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/5bd333239b5f6fc69dcea71aafdd8c9da21aa0a2"><code>5bd3332</code></a> Upgraded to v44.1.0 (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2050">#2050</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/831e892562944fa1fa9356c6b6e231553148f7bc"><code>831e892</code></a> Updated README.md (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2049">#2049</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/e052d30e1c0bdf27cd806b01ca3b393f47b50c62"><code>e052d30</code></a> feat: add option to exclude submodules when detecting changes (<a href="https://redirect.github.com/tj-actions/changed-files/issues/2047">#2047</a>)</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/23a449039c6fee9756073fb578b2659e524ea07a"><code>23a4490</code></a> chore(deps): update peter-evans/create-pull-request action to v6.0.4</li>
<li><a href="https://github.com/tj-actions/changed-files/commit/60e2739e15ad6e8a2d5a3b2c8c2d420894687405"><code>60e2739</code></a> chore(deps): update typescript-eslint monorepo to v7.7.0</li>
<li>Additional commits viewable in <a href="https://github.com/tj-actions/changed-files/compare/635f118699dd888d737c15018cd30aff2e0274f8...0874344d6ebbaa00a27da73276ae7162fadcaf69">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=44.0.1&new-version=44.3.0)](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>
Bumps [axios](https://github.com/axios/axios) from 0.27.2 to 1.6.8.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/axios/axios/releases">axios's releases</a>.</em></p>
<blockquote>
<h2>Release v1.6.8</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>AxiosHeaders:</strong> fix AxiosHeaders conversion to an object during config merging (<a href="https://redirect.github.com/axios/axios/issues/6243">#6243</a>) (<a href="https://github.com/axios/axios/commit/2656612bc10fe2757e9832b708ed773ab340b5cb">2656612</a>)</li>
<li><strong>import:</strong> use named export for EventEmitter; (<a href="https://github.com/axios/axios/commit/7320430aef2e1ba2b89488a0eaf42681165498b1">7320430</a>)</li>
<li><strong>vulnerability:</strong> update follow-redirects to 1.15.6 (<a href="https://redirect.github.com/axios/axios/issues/6300">#6300</a>) (<a href="https://github.com/axios/axios/commit/8786e0ff55a8c68d4ca989801ad26df924042e27">8786e0f</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/jasonsaayman" title="+4572/-3446 ([#6238](axios/axios#6238) )">Jay</a></li>
<li> <a href="https://github.com/DigitalBrainJS" title="+30/-0 ([#6231](axios/axios#6231) )">Dmitriy Mozgovoy</a></li>
<li> <a href="https://github.com/Creaous" title="+9/-9 ([#6300](axios/axios#6300) )">Mitchell</a></li>
<li> <a href="https://github.com/mannoeu" title="+2/-2 ([#6196](axios/axios#6196) )">Emmanuel</a></li>
<li> <a href="https://github.com/ljkeller" title="+3/-0 ([#6194](axios/axios#6194) )">Lucas Keller</a></li>
<li> <a href="https://github.com/ADITYA-176" title="+1/-1 ()">Aditya Mogili</a></li>
<li> <a href="https://github.com/petrovmiroslav" title="+1/-1 ([#6243](axios/axios#6243) )">Miroslav Petrov</a></li>
</ul>
<h2>Release v1.6.7</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li>capture async stack only for rejections with native error objects; (<a href="https://redirect.github.com/axios/axios/issues/6203">#6203</a>) (<a href="https://github.com/axios/axios/commit/1a08f90f402336e4d00e9ee82f211c6adb1640b0">1a08f90</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/DigitalBrainJS" title="+30/-26 ([#6203](axios/axios#6203) )">Dmitriy Mozgovoy</a></li>
<li> <a href="https://github.com/zh-lx" title="+0/-3 ([#6186](axios/axios#6186) )">zhoulixiang</a></li>
</ul>
<h2>Release v1.6.6</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li>fixed missed dispatchBeforeRedirect argument (<a href="https://redirect.github.com/axios/axios/issues/5778">#5778</a>) (<a href="https://github.com/axios/axios/commit/a1938ff073fcb0f89011f001dfbc1fa1dc995e39">a1938ff</a>)</li>
<li>wrap errors to improve async stack trace (<a href="https://redirect.github.com/axios/axios/issues/5987">#5987</a>) (<a href="https://github.com/axios/axios/commit/123f354b920f154a209ea99f76b7b2ef3d9ebbab">123f354</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/ikonst" title="+91/-8 ([#5987](axios/axios#5987) )">Ilya Priven</a></li>
<li> <a href="https://github.com/zaosoula" title="+6/-6 ([#5778](axios/axios#5778) )">Zao Soula</a></li>
</ul>
<h2>Release v1.6.5</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>ci:</strong> refactor notify action as a job of publish action; (<a href="https://redirect.github.com/axios/axios/issues/6176">#6176</a>) (<a href="https://github.com/axios/axios/commit/0736f95ce8776366dc9ca569f49ba505feb6373c">0736f95</a>)</li>
<li><strong>dns:</strong> fixed lookup error handling; (<a href="https://redirect.github.com/axios/axios/issues/6175">#6175</a>) (<a href="https://github.com/axios/axios/commit/f4f2b039dd38eb4829e8583caede4ed6d2dd59be">f4f2b03</a>)</li>
</ul>
<h3>Contributors to this release</h3>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/axios/axios/blob/v1.x/CHANGELOG.md">axios's changelog</a>.</em></p>
<blockquote>
<h2><a href="https://github.com/axios/axios/compare/v1.6.7...v1.6.8">1.6.8</a> (2024-03-15)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>AxiosHeaders:</strong> fix AxiosHeaders conversion to an object during config merging (<a href="https://redirect.github.com/axios/axios/issues/6243">#6243</a>) (<a href="https://github.com/axios/axios/commit/2656612bc10fe2757e9832b708ed773ab340b5cb">2656612</a>)</li>
<li><strong>import:</strong> use named export for EventEmitter; (<a href="https://github.com/axios/axios/commit/7320430aef2e1ba2b89488a0eaf42681165498b1">7320430</a>)</li>
<li><strong>vulnerability:</strong> update follow-redirects to 1.15.6 (<a href="https://redirect.github.com/axios/axios/issues/6300">#6300</a>) (<a href="https://github.com/axios/axios/commit/8786e0ff55a8c68d4ca989801ad26df924042e27">8786e0f</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/jasonsaayman" title="+4572/-3446 ([#6238](axios/axios#6238) )">Jay</a></li>
<li> <a href="https://github.com/DigitalBrainJS" title="+30/-0 ([#6231](axios/axios#6231) )">Dmitriy Mozgovoy</a></li>
<li> <a href="https://github.com/Creaous" title="+9/-9 ([#6300](axios/axios#6300) )">Mitchell</a></li>
<li> <a href="https://github.com/mannoeu" title="+2/-2 ([#6196](axios/axios#6196) )">Emmanuel</a></li>
<li> <a href="https://github.com/ljkeller" title="+3/-0 ([#6194](axios/axios#6194) )">Lucas Keller</a></li>
<li> <a href="https://github.com/ADITYA-176" title="+1/-1 ()">Aditya Mogili</a></li>
<li> <a href="https://github.com/petrovmiroslav" title="+1/-1 ([#6243](axios/axios#6243) )">Miroslav Petrov</a></li>
</ul>
<h2><a href="https://github.com/axios/axios/compare/v1.6.6...v1.6.7">1.6.7</a> (2024-01-25)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>capture async stack only for rejections with native error objects; (<a href="https://redirect.github.com/axios/axios/issues/6203">#6203</a>) (<a href="https://github.com/axios/axios/commit/1a08f90f402336e4d00e9ee82f211c6adb1640b0">1a08f90</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/DigitalBrainJS" title="+30/-26 ([#6203](axios/axios#6203) )">Dmitriy Mozgovoy</a></li>
<li> <a href="https://github.com/zh-lx" title="+0/-3 ([#6186](axios/axios#6186) )">zhoulixiang</a></li>
</ul>
<h2><a href="https://github.com/axios/axios/compare/v1.6.5...v1.6.6">1.6.6</a> (2024-01-24)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>fixed missed dispatchBeforeRedirect argument (<a href="https://redirect.github.com/axios/axios/issues/5778">#5778</a>) (<a href="https://github.com/axios/axios/commit/a1938ff073fcb0f89011f001dfbc1fa1dc995e39">a1938ff</a>)</li>
<li>wrap errors to improve async stack trace (<a href="https://redirect.github.com/axios/axios/issues/5987">#5987</a>) (<a href="https://github.com/axios/axios/commit/123f354b920f154a209ea99f76b7b2ef3d9ebbab">123f354</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li> <a href="https://github.com/ikonst" title="+91/-8 ([#5987](axios/axios#5987) )">Ilya Priven</a></li>
<li> <a href="https://github.com/zaosoula" title="+6/-6 ([#5778](axios/axios#5778) )">Zao Soula</a></li>
</ul>
<h2><a href="https://github.com/axios/axios/compare/v1.6.4...v1.6.5">1.6.5</a> (2024-01-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>ci:</strong> refactor notify action as a job of publish action; (<a href="https://redirect.github.com/axios/axios/issues/6176">#6176</a>) (<a href="https://github.com/axios/axios/commit/0736f95ce8776366dc9ca569f49ba505feb6373c">0736f95</a>)</li>
</ul>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/axios/axios/commit/ab3f0f9a94853c821cb00f1112788ecdd3ae7ed1"><code>ab3f0f9</code></a> chore(release): v1.6.8 (<a href="https://redirect.github.com/axios/axios/issues/6303">#6303</a>)</li>
<li><a href="https://github.com/axios/axios/commit/2656612bc10fe2757e9832b708ed773ab340b5cb"><code>2656612</code></a> fix(AxiosHeaders): fix AxiosHeaders conversion to an object during config mer...</li>
<li><a href="https://github.com/axios/axios/commit/7320430aef2e1ba2b89488a0eaf42681165498b1"><code>7320430</code></a> fix(import): use named export for EventEmitter;</li>
<li><a href="https://github.com/axios/axios/commit/8786e0ff55a8c68d4ca989801ad26df924042e27"><code>8786e0f</code></a> fix(vulnerability): update follow-redirects to 1.15.6 (<a href="https://redirect.github.com/axios/axios/issues/6300">#6300</a>)</li>
<li><a href="https://github.com/axios/axios/commit/d844227411263fab39d447442879112f8b0c8de5"><code>d844227</code></a> chore: update and bump deps (<a href="https://redirect.github.com/axios/axios/issues/6238">#6238</a>)</li>
<li><a href="https://github.com/axios/axios/commit/caa06252015003990958d7db96f63aa646bc58e8"><code>caa0625</code></a> docs: update README responseEncoding types (<a href="https://redirect.github.com/axios/axios/issues/6194">#6194</a>)</li>
<li><a href="https://github.com/axios/axios/commit/41c4584a41fad1d94cf86331667deff5a0b75044"><code>41c4584</code></a> docs: Update README.md to point to current axios version in CDN links (<a href="https://redirect.github.com/axios/axios/issues/6196">#6196</a>)</li>
<li><a href="https://github.com/axios/axios/commit/bf6974f16af6c72985f094a98d874c5a6adcdc83"><code>bf6974f</code></a> chore(ci): add npm tag action; (<a href="https://redirect.github.com/axios/axios/issues/6231">#6231</a>)</li>
<li><a href="https://github.com/axios/axios/commit/a52e4d9af51205959ef924f87bcf90c605e08a1e"><code>a52e4d9</code></a> chore(release): v1.6.7 (<a href="https://redirect.github.com/axios/axios/issues/6204">#6204</a>)</li>
<li><a href="https://github.com/axios/axios/commit/2b69888dd5601bbc872452ccd24010219fb6e41a"><code>2b69888</code></a> chore: remove unnecessary check (<a href="https://redirect.github.com/axios/axios/issues/6186">#6186</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/axios/axios/compare/v0.27.2...v1.6.8">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=axios&package-manager=npm_and_yarn&previous-version=0.27.2&new-version=1.6.8)](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)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/aws/aws-cdk/network/alerts).

</details>
…ion exceeds the recommended version (#29938)

Closes #28888

### Reason for this change

Currently, we just check for if a minimum bootstrap version is needed for a functionality and give a warning. But, we do not check the bootstrap version of the stack itself. This gives a confusing warning for upgrading to a bootstrap version (example: version 8) when the stack bootstrap version is already higher than the recommended version.

### Description of changes

We cannot know successfully what the bootstrap version is in the AWS account without the lookup role. We are getting this warning while trying to assume the lookup role and failing to assume it. 

I am removing upgrade related warnings since we are emitting them without any confirmation of the user's account bootstrap version. This will lead to confusion. Instead, I am trying to make some of the existing error messages more clear.

### Description of how you validated changes

Updated unit tests. 
Will run this through test pipeline.

### 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)

Closes #22254.

### Reason for this change

Currently, if chart is installed to the EKS cluster with wait timeout period set and fails initialization, helm will fail to send a response back to custom resource and it will be stuck in pending upgrade state (expected state is failed) . 
Subsequent attempts to update the stack will result in failure while chart is stuck in `pending upgrade` state until manually rolled back or deleted from the cluster. 

### Description of changes

Added feature flag `--atomic` supported by helm currently to mark the operation as atomic which will automatically rolls back the changes in case of upgrade/installation failure.
Reference doc: https://helm.sh/docs/helm/helm_install/#options

### Description of how you validated changes

Added unit tests to check if flag is set as per user input in the template.

### 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*
…29982)

### Reason for this change

Bedrock now supports CloudFormation resource types, and as of #29911 we now have L1 constructs for CDK.

### Description of changes

README previously stated that Bedrock was not available in CloudFormation.
I updated that to point people to Construct Hub and to the L1 constructs.

### Description of how you validated changes

N/A

### 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)

Closes #29891

### Reason for this change
When setting AwsCustomResource with installLatestAwsSdk: true it fails to upgrade aws-sdk to latest version. The Lambda function created to support the custom resource usually time out after 120 seconds, and for some cases it get time out even after 900 seconds. 

### Description of changes
Update the Lambda function created for the custom resource to set its MemorySize to be 512 in case if installLatestAwsSdk flag is true instead of the default value 128.

Also, this change will expose the MemorySize to the AwsCustomResource construct, so customers can customize the MemorySize of the Lambda function to fulfill use cases that requires higher memory, CPU, or I/O performance.

### Description of how you validated changes
I added the unit test cases, and updated the integration test cases.

### 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::ScalableTarget
│      └ attributes
│         └ Id: (documentation changed)
├[~] service aws-arczonalshift
│ └ resources
│    └[~] resource AWS::ARCZonalShift::ZonalAutoshiftConfiguration
│      └ properties
│         └ ResourceIdentifier: - string (immutable)
│                               + string (required, immutable)
├[~] service aws-bedrock
│ └ resources
│    ├[~] resource AWS::Bedrock::Agent
│    │ └ properties
│    │    └[+] TestAliasTags: Map<string, string>
│    └[+] resource AWS::Bedrock::Guardrail
│      ├  name: Guardrail
│      │  cloudFormationType: AWS::Bedrock::Guardrail
│      │  documentation: Definition of AWS::Bedrock::Guardrail Resource Type
│      │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│      ├ properties
│      │  ├BlockedInputMessaging: string (required)
│      │  ├BlockedOutputsMessaging: string (required)
│      │  ├ContentPolicyConfig: ContentPolicyConfig
│      │  ├Description: string
│      │  ├KmsKeyArn: string
│      │  ├Name: string (required)
│      │  ├SensitiveInformationPolicyConfig: SensitiveInformationPolicyConfig
│      │  ├Tags: Array<tag>
│      │  ├TopicPolicyConfig: TopicPolicyConfig
│      │  └WordPolicyConfig: WordPolicyConfig
│      ├ attributes
│      │  ├CreatedAt: string
│      │  ├FailureRecommendations: Array<string>
│      │  ├GuardrailArn: string
│      │  ├GuardrailId: string
│      │  ├Status: string
│      │  ├StatusReasons: Array<string>
│      │  ├UpdatedAt: string
│      │  └Version: string
│      └ types
│         ├type ContentPolicyConfig
│         │├  documentation: Content policy config for a guardrail.
│         ││  name: ContentPolicyConfig
│         │└ properties
│         │   └FiltersConfig: Array<ContentFilterConfig> (required)
│         ├type ContentFilterConfig
│         │├  documentation: Content filter config in content policy.
│         ││  name: ContentFilterConfig
│         │└ properties
│         │   ├Type: string (required)
│         │   ├InputStrength: string (required)
│         │   └OutputStrength: string (required)
│         ├type SensitiveInformationPolicyConfig
│         │├  documentation: Sensitive information policy config for a guardrail.
│         ││  name: SensitiveInformationPolicyConfig
│         │└ properties
│         │   ├PiiEntitiesConfig: Array<PiiEntityConfig>
│         │   └RegexesConfig: Array<RegexConfig>
│         ├type PiiEntityConfig
│         │├  documentation: Pii entity configuration.
│         ││  name: PiiEntityConfig
│         │└ properties
│         │   ├Type: string (required)
│         │   └Action: string (required)
│         ├type RegexConfig
│         │├  documentation: A regex configuration.
│         ││  name: RegexConfig
│         │└ properties
│         │   ├Name: string (required)
│         │   ├Description: string
│         │   ├Pattern: string (required)
│         │   └Action: string (required)
│         ├type TopicPolicyConfig
│         │├  documentation: Topic policy config for a guardrail.
│         ││  name: TopicPolicyConfig
│         │└ properties
│         │   └TopicsConfig: Array<TopicConfig> (required)
│         ├type TopicConfig
│         │├  documentation: Topic config in topic policy.
│         ││  name: TopicConfig
│         │└ properties
│         │   ├Name: string (required)
│         │   ├Definition: string (required)
│         │   ├Examples: Array<string>
│         │   └Type: string (required)
│         ├type WordPolicyConfig
│         │├  documentation: Word policy config for a guardrail.
│         ││  name: WordPolicyConfig
│         │└ properties
│         │   ├WordsConfig: Array<WordConfig>
│         │   └ManagedWordListsConfig: Array<ManagedWordsConfig>
│         ├type WordConfig
│         │├  documentation: A custom word config.
│         ││  name: WordConfig
│         │└ properties
│         │   └Text: string (required)
│         └type ManagedWordsConfig
│          ├  documentation: A managed words config.
│          │  name: ManagedWordsConfig
│          └ properties
│             └Type: string (required)
├[~] service aws-cloudfront
│ └ resources
│    └[~] resource AWS::CloudFront::Distribution
│      └ types
│         └[~] type CacheBehavior
│           └  - documentation: A complex type that describes how CloudFront processes requests.
│              You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
│              For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide* .
│              If you don't want to specify any cache behaviors, include only an empty `CacheBehaviors` element. For more information, see [CacheBehaviors](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CacheBehaviors.html) . Don't include an empty `CacheBehavior` element because this is invalid.
│              To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty `CacheBehaviors` element.
│              To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
│              For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide* .
│              + documentation: A complex type that describes how CloudFront processes requests.
│              You must create at least as many cache behaviors (including the default cache behavior) as you have origins if you want CloudFront to serve objects from all of the origins. Each cache behavior specifies the one origin from which you want CloudFront to get objects. If you have two origins and only the default cache behavior, the default cache behavior will cause CloudFront to get objects from one of the origins, but the other origin is never used.
│              For the current quota (formerly known as limit) on the number of cache behaviors that you can add to a distribution, see [Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) in the *Amazon CloudFront Developer Guide* .
│              If you don't want to specify any cache behaviors, include only an empty `CacheBehaviors` element. Don't specify an empty individual `CacheBehavior` element, because this is invalid. For more information, see [CacheBehaviors](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CacheBehaviors.html) .
│              To delete all cache behaviors in an existing distribution, update the distribution configuration and include only an empty `CacheBehaviors` element.
│              To add, change, or remove one or more cache behaviors, update the distribution configuration and specify all of the cache behaviors that you want to include in the updated distribution.
│              For more information about cache behaviors, see [Cache Behavior Settings](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior) in the *Amazon CloudFront Developer Guide* .
├[~] service aws-connectcampaigns
│ └ resources
│    └[~] resource AWS::ConnectCampaigns::Campaign
│      └ types
│         └[~] type AnswerMachineDetectionConfig
│           └ properties
│              └[+] AwaitAnswerMachinePrompt: boolean
├[~] service aws-datasync
│ └ resources
│    ├[~] resource AWS::DataSync::LocationObjectStorage
│    │ └ properties
│    │    └ ServerCertificate: (documentation changed)
│    └[~] resource AWS::DataSync::Task
│      └ types
│         └[~] type TaskSchedule
│           └ properties
│              ├ ScheduleExpression: - string (required)
│              │                     + string
│              └[+] Status: string
├[~] service aws-ec2
│ └ resources
│    ├[~] resource AWS::EC2::Instance
│    │ ├ properties
│    │ │  └ LaunchTemplate: (documentation changed)
│    │ └ types
│    │    └[~] type LaunchTemplateSpecification
│    │      ├  - documentation: Specifies a launch template to use when launching an Amazon EC2 instance.
│    │      │  You must specify the following:
│    │      │  - The ID or the name of the launch template, but not both.
│    │      │  - The version of the launch template.
│    │      │  For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template) in the *Amazon EC2 User Guide* .
│    │      │  For example launch templates, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples) for `AWS::EC2::LaunchTemplate` .
│    │      │  + documentation: Specifies a launch template to use when launching an Amazon EC2 instance.
│    │      │  You must specify the following:
│    │      │  - The ID or the name of the launch template, but not both.
│    │      │  - The version of the launch template.
│    │      │  For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template) in the *Amazon EC2 User Guide* . For example launch templates, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples) for `AWS::EC2::LaunchTemplate` .
│    │      └ properties
│    │         ├ LaunchTemplateId: (documentation changed)
│    │         ├ LaunchTemplateName: (documentation changed)
│    │         └ Version: (documentation changed)
│    └[~] resource AWS::EC2::LaunchTemplate
│      └  - documentation: Specifies the properties for creating a launch template.
│         The minimum required properties for specifying a launch template are as follows:
│         - You must specify at least one property for the launch template data.
│         - You do not need to specify a name for the launch template. If you do not specify a name, AWS CloudFormation creates the name for you.
│         A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the `ImageId` property, which has no default value. If you do not specify an AMI ID for the launch template `ImageId` property, you must specify an AMI ID for the instance `ImageId` property.
│         For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide* .
│         + documentation: Specifies the properties for creating a launch template.
│         The minimum required properties for specifying a launch template are as follows:
│         - You must specify at least one property for the launch template data.
│         - You can optionally specify a name for the launch template. If you do not specify a name, AWS CloudFormation creates a name for you.
│         A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the `ImageId` property, which has no default value. If you do not specify an AMI ID for the launch template `ImageId` property, you must specify an AMI ID for the instance `ImageId` property.
│         For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide* .
├[~] service aws-ecs
│ └ resources
│    └[~] resource AWS::ECS::TaskDefinition
│      ├ properties
│      │  └ RuntimePlatform: (documentation changed)
│      └ types
│         └[~] type FSxAuthorizationConfig
│           └ properties
│              ├ CredentialsParameter: (documentation changed)
│              └ Domain: (documentation changed)
├[~] service aws-fis
│ └ resources
│    └[~] resource AWS::FIS::ExperimentTemplate
│      └ attributes
│         └ Id: (documentation changed)
├[~] service aws-gamelift
│ └ resources
│    ├[+] resource AWS::GameLift::ContainerGroupDefinition
│    │ ├  name: ContainerGroupDefinition
│    │ │  cloudFormationType: AWS::GameLift::ContainerGroupDefinition
│    │ │  documentation: The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition.
│    │ │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │ ├ properties
│    │ │  ├Name: string (required, immutable)
│    │ │  ├SchedulingStrategy: string (immutable)
│    │ │  ├TotalMemoryLimit: integer (required, immutable)
│    │ │  ├TotalCpuLimit: integer (required, immutable)
│    │ │  ├ContainerDefinitions: Array<ContainerDefinition> (required, immutable)
│    │ │  ├Tags: Array<tag>
│    │ │  └OperatingSystem: string (required, immutable)
│    │ ├ attributes
│    │ │  ├ContainerGroupDefinitionArn: string
│    │ │  └CreationTime: string
│    │ └ types
│    │    ├type ContainerDefinition
│    │    │├  documentation: Details about a container that is used in a container fleet
│    │    ││  name: ContainerDefinition
│    │    │└ properties
│    │    │   ├ContainerName: string (required)
│    │    │   ├ImageUri: string (required)
│    │    │   ├ResolvedImageDigest: string
│    │    │   ├MemoryLimits: MemoryLimits
│    │    │   ├PortConfiguration: PortConfiguration
│    │    │   ├Cpu: integer
│    │    │   ├HealthCheck: ContainerHealthCheck
│    │    │   ├Command: Array<string>
│    │    │   ├Essential: boolean
│    │    │   ├EntryPoint: Array<string>
│    │    │   ├WorkingDirectory: string
│    │    │   ├Environment: Array<ContainerEnvironment>
│    │    │   └DependsOn: Array<ContainerDependency>
│    │    ├type MemoryLimits
│    │    │├  documentation: Specifies how much memory is available to the container.
│    │    ││  name: MemoryLimits
│    │    │└ properties
│    │    │   ├SoftLimit: integer
│    │    │   └HardLimit: integer
│    │    ├type PortConfiguration
│    │    │├  documentation: Defines the ports on a container.
│    │    ││  name: PortConfiguration
│    │    │└ properties
│    │    │   └ContainerPortRanges: Array<ContainerPortRange> (required)
│    │    ├type ContainerPortRange
│    │    │├  documentation: A set of one or more port numbers that can be opened on the container.
│    │    ││  name: ContainerPortRange
│    │    │└ properties
│    │    │   ├FromPort: integer (required)
│    │    │   ├Protocol: string (required)
│    │    │   └ToPort: integer (required)
│    │    ├type ContainerHealthCheck
│    │    │├  documentation: Specifies how the process manager checks the health of containers.
│    │    ││  name: ContainerHealthCheck
│    │    │└ properties
│    │    │   ├Command: Array<string> (required)
│    │    │   ├Interval: integer
│    │    │   ├Timeout: integer
│    │    │   ├Retries: integer
│    │    │   └StartPeriod: integer
│    │    ├type ContainerEnvironment
│    │    │├  documentation: An environment variable to set inside a container, in the form of a key-value pair.
│    │    ││  name: ContainerEnvironment
│    │    │└ properties
│    │    │   ├Name: string (required)
│    │    │   └Value: string (required)
│    │    └type ContainerDependency
│    │     ├  documentation: A dependency that impacts a container's startup and shutdown.
│    │     │  name: ContainerDependency
│    │     └ properties
│    │        ├ContainerName: string (required)
│    │        └Condition: string (required)
│    └[~] resource AWS::GameLift::Fleet
│      ├ properties
│      │  └[+] ContainerGroupsConfiguration: ContainerGroupsConfiguration (immutable)
│      ├ attributes
│      │  └[+] ContainerGroupsConfiguration.ContainerGroupsPerInstance.MaxReplicaContainerGroupsPerInstance: 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 ContainerGroupsConfiguration
│         │ ├  documentation: Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet.
│         │ │  name: ContainerGroupsConfiguration
│         │ └ properties
│         │    ├ConnectionPortRange: ConnectionPortRange (required)
│         │    ├ContainerGroupDefinitionNames: Array<string> (required)
│         │    └ContainerGroupsPerInstance: ContainerGroupsPerInstance
│         └[+] type ContainerGroupsPerInstance
│           ├  documentation: The number of container groups per instance.
│           │  name: ContainerGroupsPerInstance
│           └ properties
│              ├MaxReplicaContainerGroupsPerInstance: integer
│              └DesiredReplicaContainerGroupsPerInstance: integer
├[~] service aws-globalaccelerator
│ └ resources
│    └[~] resource AWS::GlobalAccelerator::CrossAccountAttachment
│      ├ properties
│      │  ├ Name: (documentation changed)
│      │  ├ Principals: (documentation changed)
│      │  ├ Resources: (documentation changed)
│      │  └ Tags: (documentation changed)
│      └ attributes
│         └ AttachmentArn: (documentation changed)
├[~] service aws-kinesisvideo
│ └ resources
│    └[~] resource AWS::KinesisVideo::SignalingChannel
│      └ properties
│         └ MessageTtlSeconds: (documentation changed)
├[~] service aws-lambda
│ └ resources
│    └[~] resource AWS::Lambda::Alias
│      └ attributes
│         └ AliasArn: (documentation changed)
├[+] service aws-paymentcryptography
│ ├  capitalized: PaymentCryptography
│ │  cloudFormationNamespace: AWS::PaymentCryptography
│ │  name: aws-paymentcryptography
│ │  shortName: paymentcryptography
│ └ resources
│    ├resource AWS::PaymentCryptography::Alias
│    │├  name: Alias
│    ││  cloudFormationType: AWS::PaymentCryptography::Alias
│    ││  documentation: Definition of AWS::PaymentCryptography::Alias Resource Type
│    │└ properties
│    │   ├AliasName: string (required, immutable)
│    │   └KeyArn: string
│    └resource AWS::PaymentCryptography::Key
│     ├  name: Key
│     │  cloudFormationType: AWS::PaymentCryptography::Key
│     │  documentation: Definition of AWS::PaymentCryptography::Key Resource Type
│     │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│     ├ properties
│     │  ├Enabled: boolean
│     │  ├Exportable: boolean (required)
│     │  ├KeyAttributes: KeyAttributes (required)
│     │  ├KeyCheckValueAlgorithm: string
│     │  └Tags: Array<tag>
│     ├ attributes
│     │  ├KeyIdentifier: string
│     │  ├KeyOrigin: string
│     │  └KeyState: string
│     └ types
│        ├type KeyAttributes
│        │├  name: KeyAttributes
│        │└ properties
│        │   ├KeyUsage: string (required)
│        │   ├KeyClass: string (required)
│        │   ├KeyAlgorithm: string (required)
│        │   └KeyModesOfUse: KeyModesOfUse (required)
│        └type KeyModesOfUse
│         ├  name: KeyModesOfUse
│         └ properties
│            ├Encrypt: boolean (default=false)
│            ├Decrypt: boolean (default=false)
│            ├Wrap: boolean (default=false)
│            ├Unwrap: boolean (default=false)
│            ├Generate: boolean (default=false)
│            ├Sign: boolean (default=false)
│            ├Verify: boolean (default=false)
│            ├DeriveKey: boolean (default=false)
│            └NoRestrictions: boolean (default=false)
├[~] service aws-personalize
│ └ resources
│    └[~] resource AWS::Personalize::Solution
│      └  - documentation: An object that provides information about a solution. A solution includes the custom recipe, customized parameters, and trained models (Solution Versions) that Amazon Personalize uses to generate recommendations.
│         + documentation: > After you create a solution, you can’t change its configuration. By default, all new solutions use automatic training. With automatic training, you incur training costs while your solution is active. You can't stop automatic training for a solution. To avoid unnecessary costs, make sure to delete the solution when you are finished. For information about training costs, see [Amazon Personalize pricing](https://docs.aws.amazon.com/https://aws.amazon.com/personalize/pricing/) . 
│         An object that provides information about a solution. A solution includes the custom recipe, customized parameters, and trained models (Solution Versions) that Amazon Personalize uses to generate recommendations.
│         After you create a solution, you can’t change its configuration. If you need to make changes, you can [clone the solution](https://docs.aws.amazon.com/personalize/latest/dg/cloning-solution.html) with the Amazon Personalize console or create a new one.
├[~] service aws-quicksight
│ └ resources
│    ├[~] resource AWS::QuickSight::Analysis
│    │ └ types
│    │    ├[~] type CategoryDrillDownFilter
│    │    │ └  - documentation: The numeric equality type drill down filter.
│    │    │    + documentation: The category drill down filter.
│    │    ├[~] type CategoryFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type DefaultDateTimePickerControlOptions
│    │    │ ├  documentation: The default options that correspond to the filter control type of a `DateTimePicker` .
│    │    │ │  name: DefaultDateTimePickerControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    └DisplayOptions: DateTimePickerControlDisplayOptions
│    │    ├[+] type DefaultFilterControlConfiguration
│    │    │ ├  documentation: The default configuration for all dependent controls of the filter.
│    │    │ │  name: DefaultFilterControlConfiguration
│    │    │ └ properties
│    │    │    ├ControlOptions: DefaultFilterControlOptions (required)
│    │    │    └Title: string (required)
│    │    ├[+] type DefaultFilterControlOptions
│    │    │ ├  documentation: The option that corresponds to the control type of the filter.
│    │    │ │  name: DefaultFilterControlOptions
│    │    │ └ properties
│    │    │    ├DefaultSliderOptions: DefaultSliderControlOptions
│    │    │    ├DefaultRelativeDateTimeOptions: DefaultRelativeDateTimeControlOptions
│    │    │    ├DefaultTextFieldOptions: DefaultTextFieldControlOptions
│    │    │    ├DefaultTextAreaOptions: DefaultTextAreaControlOptions
│    │    │    ├DefaultDropdownOptions: DefaultFilterDropDownControlOptions
│    │    │    ├DefaultDateTimePickerOptions: DefaultDateTimePickerControlOptions
│    │    │    └DefaultListOptions: DefaultFilterListControlOptions
│    │    ├[+] type DefaultFilterDropDownControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Dropdown` filter control type.
│    │    │ │  name: DefaultFilterDropDownControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: DropDownControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultFilterListControlOptions
│    │    │ ├  documentation: The default options that correspond to the `List` filter control type.
│    │    │ │  name: DefaultFilterListControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: ListControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultRelativeDateTimeControlOptions
│    │    │ ├  documentation: The default options that correspond to the `RelativeDateTime` filter control type.
│    │    │ │  name: DefaultRelativeDateTimeControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: RelativeDateTimeControlDisplayOptions
│    │    ├[+] type DefaultSliderControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Slider` filter control type.
│    │    │ │  name: DefaultSliderControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├StepSize: number (required, default=0)
│    │    │    ├DisplayOptions: SliderControlDisplayOptions
│    │    │    ├MaximumValue: number (required, default=0)
│    │    │    └MinimumValue: number (required, default=0)
│    │    ├[+] type DefaultTextAreaControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextArea` filter control type.
│    │    │ │  name: DefaultTextAreaControlOptions
│    │    │ └ properties
│    │    │    ├Delimiter: string
│    │    │    └DisplayOptions: TextAreaControlDisplayOptions
│    │    ├[+] type DefaultTextFieldControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextField` filter control type.
│    │    │ │  name: DefaultTextFieldControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: TextFieldControlDisplayOptions
│    │    ├[~] type FilterControl
│    │    │ └ properties
│    │    │    └[+] CrossSheet: FilterCrossSheetControl
│    │    ├[+] type FilterCrossSheetControl
│    │    │ ├  documentation: A control from a filter that is scoped across more than one sheet. This represents your filter control on a sheet
│    │    │ │  name: FilterCrossSheetControl
│    │    │ └ properties
│    │    │    ├FilterControlId: string (required)
│    │    │    ├CascadingControlConfiguration: CascadingControlConfiguration
│    │    │    └SourceFilterId: string (required)
│    │    ├[~] type FilterDateTimePickerControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterListControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    ├ MinimumValue: (documentation changed)
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type NumericEqualityDrillDownFilter
│    │    │ └  - documentation: The category drill down filter.
│    │    │    + documentation: The numeric equality type drill down filter.
│    │    ├[~] type NumericEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type NumericRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type ParameterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    └ MinimumValue: (documentation changed)
│    │    ├[~] type RelativeDatesFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TopBottomFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type WaterfallChartColorConfiguration
│    │    │ ├  name: WaterfallChartColorConfiguration
│    │    │ └ properties
│    │    │    └GroupColorConfiguration: WaterfallChartGroupColorConfiguration
│    │    ├[~] type WaterfallChartConfiguration
│    │    │ └ properties
│    │    │    └[+] ColorConfiguration: WaterfallChartColorConfiguration
│    │    └[+] type WaterfallChartGroupColorConfiguration
│    │      ├  name: WaterfallChartGroupColorConfiguration
│    │      └ properties
│    │         ├NegativeBarColor: string
│    │         ├TotalBarColor: string
│    │         └PositiveBarColor: string
│    ├[~] resource AWS::QuickSight::Dashboard
│    │ └ types
│    │    ├[~] type CategoryDrillDownFilter
│    │    │ └  - documentation: The numeric equality type drill down filter.
│    │    │    + documentation: The category drill down filter.
│    │    ├[~] type CategoryFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type DefaultDateTimePickerControlOptions
│    │    │ ├  documentation: The default options that correspond to the filter control type of a `DateTimePicker` .
│    │    │ │  name: DefaultDateTimePickerControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    └DisplayOptions: DateTimePickerControlDisplayOptions
│    │    ├[+] type DefaultFilterControlConfiguration
│    │    │ ├  documentation: The default configuration for all dependent controls of the filter.
│    │    │ │  name: DefaultFilterControlConfiguration
│    │    │ └ properties
│    │    │    ├ControlOptions: DefaultFilterControlOptions (required)
│    │    │    └Title: string (required)
│    │    ├[+] type DefaultFilterControlOptions
│    │    │ ├  documentation: The option that corresponds to the control type of the filter.
│    │    │ │  name: DefaultFilterControlOptions
│    │    │ └ properties
│    │    │    ├DefaultSliderOptions: DefaultSliderControlOptions
│    │    │    ├DefaultRelativeDateTimeOptions: DefaultRelativeDateTimeControlOptions
│    │    │    ├DefaultTextFieldOptions: DefaultTextFieldControlOptions
│    │    │    ├DefaultTextAreaOptions: DefaultTextAreaControlOptions
│    │    │    ├DefaultDropdownOptions: DefaultFilterDropDownControlOptions
│    │    │    ├DefaultDateTimePickerOptions: DefaultDateTimePickerControlOptions
│    │    │    └DefaultListOptions: DefaultFilterListControlOptions
│    │    ├[+] type DefaultFilterDropDownControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Dropdown` filter control type.
│    │    │ │  name: DefaultFilterDropDownControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: DropDownControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultFilterListControlOptions
│    │    │ ├  documentation: The default options that correspond to the `List` filter control type.
│    │    │ │  name: DefaultFilterListControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: ListControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultRelativeDateTimeControlOptions
│    │    │ ├  documentation: The default options that correspond to the `RelativeDateTime` filter control type.
│    │    │ │  name: DefaultRelativeDateTimeControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: RelativeDateTimeControlDisplayOptions
│    │    ├[+] type DefaultSliderControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Slider` filter control type.
│    │    │ │  name: DefaultSliderControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├StepSize: number (required, default=0)
│    │    │    ├DisplayOptions: SliderControlDisplayOptions
│    │    │    ├MaximumValue: number (required, default=0)
│    │    │    └MinimumValue: number (required, default=0)
│    │    ├[+] type DefaultTextAreaControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextArea` filter control type.
│    │    │ │  name: DefaultTextAreaControlOptions
│    │    │ └ properties
│    │    │    ├Delimiter: string
│    │    │    └DisplayOptions: TextAreaControlDisplayOptions
│    │    ├[+] type DefaultTextFieldControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextField` filter control type.
│    │    │ │  name: DefaultTextFieldControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: TextFieldControlDisplayOptions
│    │    ├[~] type FilterControl
│    │    │ └ properties
│    │    │    └[+] CrossSheet: FilterCrossSheetControl
│    │    ├[+] type FilterCrossSheetControl
│    │    │ ├  documentation: A control from a filter that is scoped across more than one sheet. This represents your filter control on a sheet
│    │    │ │  name: FilterCrossSheetControl
│    │    │ └ properties
│    │    │    ├FilterControlId: string (required)
│    │    │    ├CascadingControlConfiguration: CascadingControlConfiguration
│    │    │    └SourceFilterId: string (required)
│    │    ├[~] type FilterDateTimePickerControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterListControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    ├ MinimumValue: (documentation changed)
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type NumericEqualityDrillDownFilter
│    │    │ └  - documentation: The category drill down filter.
│    │    │    + documentation: The numeric equality type drill down filter.
│    │    ├[~] type NumericEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type NumericRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type ParameterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    └ MinimumValue: (documentation changed)
│    │    ├[~] type RelativeDatesFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TopBottomFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type WaterfallChartColorConfiguration
│    │    │ ├  name: WaterfallChartColorConfiguration
│    │    │ └ properties
│    │    │    └GroupColorConfiguration: WaterfallChartGroupColorConfiguration
│    │    ├[~] type WaterfallChartConfiguration
│    │    │ └ properties
│    │    │    └[+] ColorConfiguration: WaterfallChartColorConfiguration
│    │    └[+] type WaterfallChartGroupColorConfiguration
│    │      ├  name: WaterfallChartGroupColorConfiguration
│    │      └ properties
│    │         ├NegativeBarColor: string
│    │         ├TotalBarColor: string
│    │         └PositiveBarColor: string
│    ├[~] resource AWS::QuickSight::Template
│    │ └ types
│    │    ├[~] type CategoryDrillDownFilter
│    │    │ └  - documentation: The numeric equality type drill down filter.
│    │    │    + documentation: The category drill down filter.
│    │    ├[~] type CategoryFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type DefaultDateTimePickerControlOptions
│    │    │ ├  documentation: The default options that correspond to the filter control type of a `DateTimePicker` .
│    │    │ │  name: DefaultDateTimePickerControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    └DisplayOptions: DateTimePickerControlDisplayOptions
│    │    ├[+] type DefaultFilterControlConfiguration
│    │    │ ├  documentation: The default configuration for all dependent controls of the filter.
│    │    │ │  name: DefaultFilterControlConfiguration
│    │    │ └ properties
│    │    │    ├ControlOptions: DefaultFilterControlOptions (required)
│    │    │    └Title: string (required)
│    │    ├[+] type DefaultFilterControlOptions
│    │    │ ├  documentation: The option that corresponds to the control type of the filter.
│    │    │ │  name: DefaultFilterControlOptions
│    │    │ └ properties
│    │    │    ├DefaultSliderOptions: DefaultSliderControlOptions
│    │    │    ├DefaultRelativeDateTimeOptions: DefaultRelativeDateTimeControlOptions
│    │    │    ├DefaultTextFieldOptions: DefaultTextFieldControlOptions
│    │    │    ├DefaultTextAreaOptions: DefaultTextAreaControlOptions
│    │    │    ├DefaultDropdownOptions: DefaultFilterDropDownControlOptions
│    │    │    ├DefaultDateTimePickerOptions: DefaultDateTimePickerControlOptions
│    │    │    └DefaultListOptions: DefaultFilterListControlOptions
│    │    ├[+] type DefaultFilterDropDownControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Dropdown` filter control type.
│    │    │ │  name: DefaultFilterDropDownControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: DropDownControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultFilterListControlOptions
│    │    │ ├  documentation: The default options that correspond to the `List` filter control type.
│    │    │ │  name: DefaultFilterListControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├DisplayOptions: ListControlDisplayOptions
│    │    │    └SelectableValues: FilterSelectableValues
│    │    ├[+] type DefaultRelativeDateTimeControlOptions
│    │    │ ├  documentation: The default options that correspond to the `RelativeDateTime` filter control type.
│    │    │ │  name: DefaultRelativeDateTimeControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: RelativeDateTimeControlDisplayOptions
│    │    ├[+] type DefaultSliderControlOptions
│    │    │ ├  documentation: The default options that correspond to the `Slider` filter control type.
│    │    │ │  name: DefaultSliderControlOptions
│    │    │ └ properties
│    │    │    ├Type: string
│    │    │    ├StepSize: number (required, default=0)
│    │    │    ├DisplayOptions: SliderControlDisplayOptions
│    │    │    ├MaximumValue: number (required, default=0)
│    │    │    └MinimumValue: number (required, default=0)
│    │    ├[+] type DefaultTextAreaControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextArea` filter control type.
│    │    │ │  name: DefaultTextAreaControlOptions
│    │    │ └ properties
│    │    │    ├Delimiter: string
│    │    │    └DisplayOptions: TextAreaControlDisplayOptions
│    │    ├[+] type DefaultTextFieldControlOptions
│    │    │ ├  documentation: The default options that correspond to the `TextField` filter control type.
│    │    │ │  name: DefaultTextFieldControlOptions
│    │    │ └ properties
│    │    │    └DisplayOptions: TextFieldControlDisplayOptions
│    │    ├[~] type FilterControl
│    │    │ └ properties
│    │    │    └[+] CrossSheet: FilterCrossSheetControl
│    │    ├[+] type FilterCrossSheetControl
│    │    │ ├  documentation: A control from a filter that is scoped across more than one sheet. This represents your filter control on a sheet
│    │    │ │  name: FilterCrossSheetControl
│    │    │ └ properties
│    │    │    ├FilterControlId: string (required)
│    │    │    ├CascadingControlConfiguration: CascadingControlConfiguration
│    │    │    └SourceFilterId: string (required)
│    │    ├[~] type FilterDateTimePickerControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterListControl
│    │    │ └ properties
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type FilterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    ├ MinimumValue: (documentation changed)
│    │    │    └ Type: (documentation changed)
│    │    ├[~] type NumericEqualityDrillDownFilter
│    │    │ └  - documentation: The category drill down filter.
│    │    │    + documentation: The numeric equality type drill down filter.
│    │    ├[~] type NumericEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type NumericRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type ParameterSliderControl
│    │    │ └ properties
│    │    │    ├ MaximumValue: (documentation changed)
│    │    │    └ MinimumValue: (documentation changed)
│    │    ├[~] type RelativeDatesFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeEqualityFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TimeRangeFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[~] type TopBottomFilter
│    │    │ └ properties
│    │    │    └[+] DefaultFilterControlConfiguration: DefaultFilterControlConfiguration
│    │    ├[+] type WaterfallChartColorConfiguration
│    │    │ ├  name: WaterfallChartColorConfiguration
│    │    │ └ properties
│    │    │    └GroupColorConfiguration: WaterfallChartGroupColorConfiguration
│    │    ├[~] type WaterfallChartConfiguration
│    │    │ └ properties
│    │    │    └[+] ColorConfiguration: WaterfallChartColorConfiguration
│    │    └[+] type WaterfallChartGroupColorConfiguration
│    │      ├  name: WaterfallChartGroupColorConfiguration
│    │      └ properties
│    │         ├NegativeBarColor: string
│    │         ├TotalBarColor: string
│    │         └PositiveBarColor: string
│    └[~] resource AWS::QuickSight::Theme
│      └ attributes
│         └ Version: (documentation changed)
├[~] service aws-rds
│ └ resources
│    └[~] resource AWS::RDS::DBInstance
│      └ properties
│         └[+] AutomaticBackupReplicationKmsKeyId: string
├[~] service aws-redshiftserverless
│ └ resources
│    ├[~] resource AWS::RedshiftServerless::Namespace
│    │ └ types
│    │    └[~] type SnapshotCopyConfiguration
│    │      ├  - documentation: undefined
│    │      │  + documentation: The object that you configure to copy snapshots from one namespace to a namespace in another AWS Region .
│    │      └ properties
│    │         ├ DestinationKmsKeyId: (documentation changed)
│    │         ├ DestinationRegion: (documentation changed)
│    │         └ SnapshotRetentionPeriod: (documentation changed)
│    └[~] resource AWS::RedshiftServerless::Workgroup
│      └ types
│         └[~] type Workgroup
│           └ properties
│              ├ ConfigParameters: (documentation changed)
│              └ PubliclyAccessible: (documentation changed)
├[+] service aws-route53profiles
│ ├  capitalized: Route53Profiles
│ │  cloudFormationNamespace: AWS::Route53Profiles
│ │  name: aws-route53profiles
│ │  shortName: route53profiles
│ └ resources
│    ├resource AWS::Route53Profiles::Profile
│    │├  name: Profile
│    ││  cloudFormationType: AWS::Route53Profiles::Profile
│    ││  documentation: Resource Type definition for AWS::Route53Profiles::Profile
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├Name: string (required, immutable)
│    ││  └Tags: Array<tag>
│    │└ attributes
│    │   ├Arn: string
│    │   ├Id: string
│    │   └ClientToken: string
│    ├resource AWS::Route53Profiles::ProfileAssociation
│    │├  name: ProfileAssociation
│    ││  cloudFormationType: AWS::Route53Profiles::ProfileAssociation
│    ││  documentation: Resource Type definition for AWS::Route53Profiles::ProfileAssociation
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├ResourceId: string (required, immutable)
│    ││  ├ProfileId: string (required, immutable)
│    ││  ├Name: string (required, immutable)
│    ││  ├Tags: Array<tag>
│    ││  └Arn: string
│    │└ attributes
│    │   └Id: string
│    └resource AWS::Route53Profiles::ProfileResourceAssociation
│     ├  name: ProfileResourceAssociation
│     │  cloudFormationType: AWS::Route53Profiles::ProfileResourceAssociation
│     │  documentation: Resource Type definition for AWS::Route53Profiles::ProfileResourceAssociation
│     ├ properties
│     │  ├ProfileId: string (required, immutable)
│     │  ├Name: string (required, immutable)
│     │  ├ResourceArn: string (required, immutable)
│     │  └ResourceProperties: string
│     └ attributes
│        ├Id: string
│        └ResourceType: string
└[~] service aws-workspacesweb
  └ resources
     ├[~] resource AWS::WorkSpacesWeb::Portal
     │ └ properties
     │    ├[+] InstanceType: string
     │    └[+] MaxConcurrentSessions: number
     └[~] resource AWS::WorkSpacesWeb::UserSettings
       └ properties
          ├ AdditionalEncryptionContext: (documentation changed)
          └ CustomerManagedKey: (documentation changed)
```
### Reason for this change

The latest version of `cdk-from-cfn` is 0.157.0 which has introduced improved error types and error messages. As a result, I am manually bumping the version so that I can fix the unit tests that were testing the old error messages.

### Description of changes

Bumped `cdk-from-cfn` to 0.157.0, updated our error handling, and fixed broken unit tests.

### Description of how you validated changes

Fixed broken unit tests and ensured that no existing unit tests are failing.

### 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*
…object" (#30003)

### Issue # (if applicable)

Revert #29820

Closes #30002

### Reason for this change



### 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*
### Reason for this change

Adding myself to the contributors

### Description of changes

Adding myself to the contributors

### Description of how you validated changes

Made sure to spell my name right

### 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)

Closes #.

### Reason for this change

Cloudformation supports for using customer managed kms key to encrypt data in codecommit repository but CDK doesn't support it.

### Description of changes

Add `kmsKey` property to `RepositoryProps`.

### 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*
### Issue # (if applicable)

As the EBS console is now having `gp3` as the default volumeType, this PR set the default volumeType to gp3 if undefined under feature flag.

Closes #29931

### Reason for this change



### Description of changes



### Description of how you validated changes

I have deployed the sample below and verified the volume type is `gp3` from console.

```ts
import { Stack, App, Size, aws_ec2 as ec2 } from 'aws-cdk-lib';
import * as cxapi from 'aws-cdk-lib/cx-api';

const app = new App();

const stack = new Stack(app, 'demo-stack');

stack.node.setContext(cxapi.EBS_DEFAULT_GP3, true);

// should create a gp3 volume
new ec2.Volume(stack, 'Volume', {
  availabilityZone: 'us-east-1a',
  size: Size.gibibytes(500),
});


```



### 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)

Closes #<issue number here>.

### Reason for this change

Add debugging instructions for integration test to README

### Description of changes



### Description of how you validated changes



### Checklist
- [Y] 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*
Ran npm-check-updates and yarn upgrade to keep the `yarn.lock` file up-to-date.
…ping characters (#29765)

Regex is incorrect. Switching to basic regex. Fixing regex to properly escape special characters

### Reason for this change

Regex was incorrectly escaping the `]` character, and as such was falsely returning `true`. It also seemed to be interpreting the `\` characters incorrectly, so I switched to a regex literal in line to fix that.



### Description of changes

Switch from `RegExp` object to inline regex.
Fix regex to correctly escape `]` character.



### Description of how you validated changes

Running in Node CLI, such as:

```node
> /[\s\?\*\<\>\{\}\\[\]\:\;\,\|\^\~\$\#\%\&\`\"]|[\u0000-\u001f]|[\u007f-\u009f]/gi.test(' ') 
true
```

Running in Chrome Dev Tools console, such as:

```js
new RegExp("/[\s\?\*\<\>\{\}\\[\]\:\;\,\|\^\~\$\#\%\&\`\"]|[\u0000-\u001f]|[\u007f-\u009f]/gi").test(' ')
false
```


no

### 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 and others added 7 commits May 1, 2024 01:07
Ran npm-check-updates and yarn upgrade to keep the `yarn.lock` file up-to-date.
### Issue # (if applicable)

This PR allows users to specify AZ for the one-zone filesystems through the `vpcSubnets.availabilityZones`. Before this PR, `vpcSubnets` is not allowed when `oneZone` is enabled, this PR removes the restriction and takes the following use cases into considerations:

- [x] create a regional EFS file system with a mount target for each AZ
- [x] create a one-zone EFS file system with mount target at the auto-selected AZ
- [x] create a one-zone EFS file system at specified AZ with a single mount target at that AZ
- [x] create a regional EFS file system with a single mount target at the specified AZ

Closes #30005

### Reason for this change



### Description of changes



### Description of how you validated changes

1. Add additional unit tests.
2. I have deployed the code below and validated from my AWS console.

```ts
// create a regional EFS file system with a mount target for each AZ
new FileSystem(stack, 'FileSystem1', {
  vpc,
});

// create a one-zone EFS file system with mount target at the auto-selected AZ
new FileSystem(stack, 'FileSystem2', {
  vpc,
  oneZone: true,
});

// create a one-zone EFS file system at specified AZ with a single mount target at that AZ
new FileSystem(stack, 'FileSystem3', {
  vpc,
  oneZone: true,
  vpcSubnets: {
    availabilityZones: [vpc.availabilityZones[1]],
  },
});

// create a regional EFS file system with a single mount target at the specified AZ
new FileSystem(stack, 'FileSystem4', {
  vpc,
  vpcSubnets: {
    availabilityZones: [vpc.availabilityZones[2]],
  },
});

```


### 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)

Closes #30028 

### Reason for this change

As described in the issue.

### Description of changes


In this pull request, the "autoPublish" Property has been added to the Function class.

If you set `autoPublish` to false, the function will not be automatically published to the LIVE stage when it’s created.

```ts
new cloudfront.Function(this, 'Function', {
  code: cloudfront.FunctionCode.fromInline('function handler(event) { return event.request }'),
  runtime: cloudfront.FunctionRuntime.JS_2_0,
  autoPublish: false // Add
});
```

To ensure that the behavior remains unchanged when autoPublish is not set, the field is optional, with the default value set to true.


### Description of how you validated changes


I've added 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*
…#29629)

### Reason for this change


Allow users to define `Environment` and `EnvironmentFile` in a systemd service file.

### Description of changes


Added 2 new properties for `ec2.InitService.systemdConfigFile`:
1. `environmentVariables` which is a string key value pair
2. `environmentFiles` which is a list of file paths

### Description of how you validated changes


I have added a unit test.
Documentations referred to:
- https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#EnvironmentFile=
- https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#Environment= 

### 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-acmpca
│ └ resources
│    └[~] resource AWS::ACMPCA::CertificateAuthority
│      └ types
│         ├[~] type CrlConfiguration
│         │ └ properties
│         │    └ Enabled: - boolean
│         │               + boolean (required)
│         ├[~] type EdiPartyName
│         │ └ properties
│         │    └ NameAssigner: - string (required, immutable)
│         │                    + string (immutable)
│         └[~] type OcspConfiguration
│           └ properties
│              └ Enabled: - boolean
│                         + boolean (required)
├[~] service aws-bedrock
│ └ resources
│    ├[~] resource AWS::Bedrock::DataSource
│    │ ├ properties
│    │ │  └[+] DataDeletionPolicy: string
│    │ ├ attributes
│    │ │  └[+] FailureReasons: Array<string>
│    │ └ types
│    │    └[~] type S3DataSourceConfiguration
│    │      └ properties
│    │         └[+] BucketOwnerAccountId: string
│    └[~] resource AWS::Bedrock::KnowledgeBase
│      ├ properties
│      │  └[+] StorageConfiguration: StorageConfiguration (required, immutable)
│      └ types
│         ├[+] type OpenSearchServerlessConfiguration
│         │ ├  documentation: Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service. For more information, see [Create a vector index in Amazon OpenSearch Service](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-oss.html) .
│         │ │  name: OpenSearchServerlessConfiguration
│         │ └ properties
│         │    ├CollectionArn: string (required)
│         │    ├VectorIndexName: string (required)
│         │    └FieldMapping: OpenSearchServerlessFieldMapping (required)
│         ├[+] type OpenSearchServerlessFieldMapping
│         │ ├  documentation: Contains the names of the fields to which to map information about the vector store.
│         │ │  name: OpenSearchServerlessFieldMapping
│         │ └ properties
│         │    ├VectorField: string (required)
│         │    ├TextField: string (required)
│         │    └MetadataField: string (required)
│         ├[+] type PineconeConfiguration
│         │ ├  documentation: Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see [Create a vector index in Pinecone](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-pinecone.html) .
│         │ │  name: PineconeConfiguration
│         │ └ properties
│         │    ├ConnectionString: string (required)
│         │    ├CredentialsSecretArn: string (required)
│         │    ├Namespace: string
│         │    └FieldMapping: PineconeFieldMapping (required)
│         ├[+] type PineconeFieldMapping
│         │ ├  documentation: Contains the names of the fields to which to map information about the vector store.
│         │ │  name: PineconeFieldMapping
│         │ └ properties
│         │    ├TextField: string (required)
│         │    └MetadataField: string (required)
│         ├[+] type RdsConfiguration
│         │ ├  documentation: Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see [Create a vector index in Amazon RDS](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html) .
│         │ │  name: RdsConfiguration
│         │ └ properties
│         │    ├ResourceArn: string (required)
│         │    ├CredentialsSecretArn: string (required)
│         │    ├DatabaseName: string (required)
│         │    ├TableName: string (required)
│         │    └FieldMapping: RdsFieldMapping (required)
│         ├[+] type RdsFieldMapping
│         │ ├  documentation: Contains the names of the fields to which to map information about the vector store.
│         │ │  name: RdsFieldMapping
│         │ └ properties
│         │    ├PrimaryKeyField: string (required)
│         │    ├VectorField: string (required)
│         │    ├TextField: string (required)
│         │    └MetadataField: string (required)
│         └[+] type StorageConfiguration
│           ├  documentation: Contains the storage configuration of the knowledge base.
│           │  name: StorageConfiguration
│           └ properties
│              ├OpensearchServerlessConfiguration: OpenSearchServerlessConfiguration
│              ├PineconeConfiguration: PineconeConfiguration
│              ├RdsConfiguration: RdsConfiguration
│              └Type: string (required)
├[~] service aws-dms
│ └ resources
│    └[~] resource AWS::DMS::DataProvider
│      ├ properties
│      │  └[-] Settings: Settings
│      └ types
│         ├[-] type PostgreSqlSettings
│         │ ├  documentation: Provides information that defines a PostgreSQL endpoint.
│         │ │  name: PostgreSqlSettings
│         │ └ properties
│         │    ├ServerName: string
│         │    ├Port: integer
│         │    ├DatabaseName: string
│         │    ├SslMode: string
│         │    └CertificateArn: string
│         └[-] type Settings
│           ├  documentation: PostgreSqlSettings property identifier.
│           │  name: Settings
│           └ properties
│              └PostgreSqlSettings: PostgreSqlSettings
├[~] service aws-ec2
│ └ resources
│    └[~] resource AWS::EC2::TransitGatewayRouteTablePropagation
│      └ attributes
│         └[-] Id: string
├[~] service aws-kinesis
│ └ resources
│    └[~] resource AWS::Kinesis::Stream
│      └  - isStateful: undefined
│         + isStateful: true
├[~] service aws-lambda
│ └ resources
│    └[~] resource AWS::Lambda::Alias
│      └ attributes
│         └[-] AliasArn: string
├[~] service aws-medialive
│ └ resources
│    └[~] resource AWS::MediaLive::Channel
│      └ types
│         ├[~] type AudioDescription
│         │ └ properties
│         │    ├[+] AudioDashRoles: Array<string>
│         │    └[+] DvbDashAccessibility: string
│         ├[~] type CaptionDescription
│         │ └ properties
│         │    ├[+] CaptionDashRoles: Array<string>
│         │    └[+] DvbDashAccessibility: string
│         ├[+] type CmafIngestGroupSettings
│         │ ├  name: CmafIngestGroupSettings
│         │ └ properties
│         │    ├Destination: OutputLocationRef
│         │    ├Scte35Type: string
│         │    ├SegmentLengthUnits: string
│         │    ├NielsenId3Behavior: string
│         │    ├SegmentLength: integer
│         │    └SendDelayMs: integer
│         ├[+] type CmafIngestOutputSettings
│         │ ├  name: CmafIngestOutputSettings
│         │ └ properties
│         │    └NameModifier: string
│         ├[~] type H265Settings
│         │ └ properties
│         │    ├[+] MvOverPictureBoundaries: string
│         │    ├[+] MvTemporalPredictor: string
│         │    ├[+] TileHeight: integer
│         │    ├[+] TilePadding: string
│         │    ├[+] TileWidth: integer
│         │    └[+] TreeblockSize: string
│         ├[~] type OutputGroupSettings
│         │ └ properties
│         │    └[+] CmafIngestGroupSettings: CmafIngestGroupSettings
│         └[~] type OutputSettings
│           └ properties
│              └[+] CmafIngestOutputSettings: CmafIngestOutputSettings
├[+] service aws-qbusiness
│ ├  capitalized: QBusiness
│ │  cloudFormationNamespace: AWS::QBusiness
│ │  name: aws-qbusiness
│ │  shortName: qbusiness
│ └ resources
│    ├resource AWS::QBusiness::Application
│    │├  name: Application
│    ││  cloudFormationType: AWS::QBusiness::Application
│    ││  documentation: Definition of AWS::QBusiness::Application Resource Type
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├AttachmentsConfiguration: AttachmentsConfiguration
│    ││  ├Description: string
│    ││  ├DisplayName: string (required)
│    ││  ├EncryptionConfiguration: EncryptionConfiguration (immutable)
│    ││  ├IdentityCenterInstanceArn: string
│    ││  ├RoleArn: string
│    ││  └Tags: Array<tag>
│    │├ attributes
│    ││  ├ApplicationArn: string
│    ││  ├ApplicationId: string
│    ││  ├CreatedAt: string
│    ││  ├IdentityCenterApplicationArn: string
│    ││  ├Status: string
│    ││  └UpdatedAt: string
│    │└ types
│    │   ├type AttachmentsConfiguration
│    │   │├  name: AttachmentsConfiguration
│    │   │└ properties
│    │   │   └AttachmentsControlMode: string (required)
│    │   └type EncryptionConfiguration
│    │    ├  name: EncryptionConfiguration
│    │    └ properties
│    │       └KmsKeyId: string
│    ├resource AWS::QBusiness::DataSource
│    │├  name: DataSource
│    ││  cloudFormationType: AWS::QBusiness::DataSource
│    ││  documentation: Definition of AWS::QBusiness::DataSource Resource Type
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├ApplicationId: string (required, immutable)
│    ││  ├Configuration: json (required)
│    ││  ├Description: string
│    ││  ├DisplayName: string (required)
│    ││  ├DocumentEnrichmentConfiguration: DocumentEnrichmentConfiguration
│    ││  ├IndexId: string (required, immutable)
│    ││  ├RoleArn: string
│    ││  ├SyncSchedule: string
│    ││  ├Tags: Array<tag>
│    ││  └VpcConfiguration: DataSourceVpcConfiguration
│    │├ attributes
│    ││  ├CreatedAt: string
│    ││  ├DataSourceArn: string
│    ││  ├DataSourceId: string
│    ││  ├Status: string
│    ││  ├Type: string
│    ││  └UpdatedAt: string
│    │└ types
│    │   ├type DocumentEnrichmentConfiguration
│    │   │├  name: DocumentEnrichmentConfiguration
│    │   │└ properties
│    │   │   ├InlineConfigurations: Array<InlineDocumentEnrichmentConfiguration>
│    │   │   ├PreExtractionHookConfiguration: HookConfiguration
│    │   │   └PostExtractionHookConfiguration: HookConfiguration
│    │   ├type InlineDocumentEnrichmentConfiguration
│    │   │├  name: InlineDocumentEnrichmentConfiguration
│    │   │└ properties
│    │   │   ├Condition: DocumentAttributeCondition
│    │   │   ├Target: DocumentAttributeTarget
│    │   │   └DocumentContentOperator: string
│    │   ├type DocumentAttributeCondition
│    │   │├  name: DocumentAttributeCondition
│    │   │└ properties
│    │   │   ├Key: string (required)
│    │   │   ├Operator: string (required)
│    │   │   └Value: DocumentAttributeValue
│    │   ├type DocumentAttributeValue
│    │   │├  name: DocumentAttributeValue
│    │   │└ properties
│    │   │   ├StringValue: string
│    │   │   ├StringListValue: Array<string>
│    │   │   ├LongValue: number
│    │   │   └DateValue: string
│    │   ├type DocumentAttributeTarget
│    │   │├  name: DocumentAttributeTarget
│    │   │└ properties
│    │   │   ├Key: string (required)
│    │   │   ├Value: DocumentAttributeValue
│    │   │   └AttributeValueOperator: string
│    │   ├type HookConfiguration
│    │   │├  name: HookConfiguration
│    │   │└ properties
│    │   │   ├InvocationCondition: DocumentAttributeCondition
│    │   │   ├LambdaArn: string
│    │   │   ├S3BucketName: string
│    │   │   └RoleArn: string
│    │   └type DataSourceVpcConfiguration
│    │    ├  name: DataSourceVpcConfiguration
│    │    └ properties
│    │       ├SubnetIds: Array<string> (required)
│    │       └SecurityGroupIds: Array<string> (required)
│    ├resource AWS::QBusiness::Index
│    │├  name: Index
│    ││  cloudFormationType: AWS::QBusiness::Index
│    ││  documentation: Definition of AWS::QBusiness::Index Resource Type
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├ApplicationId: string (required, immutable)
│    ││  ├CapacityConfiguration: IndexCapacityConfiguration
│    ││  ├Description: string
│    ││  ├DisplayName: string (required)
│    ││  ├DocumentAttributeConfigurations: Array<DocumentAttributeConfiguration>
│    ││  ├Type: string (immutable)
│    ││  └Tags: Array<tag>
│    │├ attributes
│    ││  ├CreatedAt: string
│    ││  ├IndexArn: string
│    ││  ├IndexId: string
│    ││  ├IndexStatistics: IndexStatistics
│    ││  ├Status: string
│    ││  └UpdatedAt: string
│    │└ types
│    │   ├type IndexCapacityConfiguration
│    │   │├  name: IndexCapacityConfiguration
│    │   │└ properties
│    │   │   └Units: number
│    │   ├type DocumentAttributeConfiguration
│    │   │├  name: DocumentAttributeConfiguration
│    │   │└ properties
│    │   │   ├Name: string
│    │   │   ├Type: string
│    │   │   └Search: string
│    │   ├type IndexStatistics
│    │   │├  name: IndexStatistics
│    │   │└ properties
│    │   │   └TextDocumentStatistics: TextDocumentStatistics
│    │   └type TextDocumentStatistics
│    │    ├  name: TextDocumentStatistics
│    │    └ properties
│    │       ├IndexedTextBytes: number
│    │       └IndexedTextDocumentCount: number
│    ├resource AWS::QBusiness::Plugin
│    │├  name: Plugin
│    ││  cloudFormationType: AWS::QBusiness::Plugin
│    ││  documentation: Definition of AWS::QBusiness::Plugin Resource Type
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├ApplicationId: string (required, immutable)
│    ││  ├AuthConfiguration: PluginAuthConfiguration (required)
│    ││  ├CustomPluginConfiguration: CustomPluginConfiguration
│    ││  ├DisplayName: string (required)
│    ││  ├ServerUrl: string
│    ││  ├State: string
│    ││  ├Tags: Array<tag>
│    ││  └Type: string (required, immutable)
│    │├ attributes
│    ││  ├BuildStatus: string
│    ││  ├CreatedAt: string
│    ││  ├PluginArn: string
│    ││  ├PluginId: string
│    ││  └UpdatedAt: string
│    │└ types
│    │   ├type PluginAuthConfiguration
│    │   │├  name: PluginAuthConfiguration
│    │   │└ properties
│    │   │   ├BasicAuthConfiguration: BasicAuthConfiguration
│    │   │   ├OAuth2ClientCredentialConfiguration: OAuth2ClientCredentialConfiguration
│    │   │   └NoAuthConfiguration: json
│    │   ├type BasicAuthConfiguration
│    │   │├  name: BasicAuthConfiguration
│    │   │└ properties
│    │   │   ├SecretArn: string (required)
│    │   │   └RoleArn: string (required)
│    │   ├type OAuth2ClientCredentialConfiguration
│    │   │├  name: OAuth2ClientCredentialConfiguration
│    │   │└ properties
│    │   │   ├SecretArn: string (required)
│    │   │   └RoleArn: string (required)
│    │   ├type CustomPluginConfiguration
│    │   │├  name: CustomPluginConfiguration
│    │   │└ properties
│    │   │   ├Description: string (required)
│    │   │   ├ApiSchemaType: string (required)
│    │   │   └ApiSchema: APISchema (required)
│    │   ├type APISchema
│    │   │├  name: APISchema
│    │   │└ properties
│    │   │   ├Payload: string
│    │   │   └S3: S3
│    │   └type S3
│    │    ├  name: S3
│    │    └ properties
│    │       ├Bucket: string (required)
│    │       └Key: string (required)
│    ├resource AWS::QBusiness::Retriever
│    │├  name: Retriever
│    ││  cloudFormationType: AWS::QBusiness::Retriever
│    ││  documentation: Definition of AWS::QBusiness::Retriever Resource Type
│    ││  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│    │├ properties
│    ││  ├ApplicationId: string (required, immutable)
│    ││  ├Configuration: RetrieverConfiguration (required)
│    ││  ├DisplayName: string (required)
│    ││  ├RoleArn: string
│    ││  ├Tags: Array<tag>
│    ││  └Type: string (required, immutable)
│    │├ attributes
│    ││  ├CreatedAt: string
│    ││  ├RetrieverArn: string
│    ││  ├RetrieverId: string
│    ││  ├Status: string
│    ││  └UpdatedAt: string
│    │└ types
│    │   ├type RetrieverConfiguration
│    │   │├  name: RetrieverConfiguration
│    │   │└ properties
│    │   │   ├NativeIndexConfiguration: NativeIndexConfiguration
│    │   │   └KendraIndexConfiguration: KendraIndexConfiguration
│    │   ├type NativeIndexConfiguration
│    │   │├  name: NativeIndexConfiguration
│    │   │└ properties
│    │   │   └IndexId: string (required)
│    │   └type KendraIndexConfiguration
│    │    ├  name: KendraIndexConfiguration
│    │    └ properties
│    │       └IndexId: string (required)
│    └resource AWS::QBusiness::WebExperience
│     ├  name: WebExperience
│     │  cloudFormationType: AWS::QBusiness::WebExperience
│     │  documentation: Definition of AWS::QBusiness::WebExperience Resource Type
│     │  tagInformation: {"tagPropertyName":"Tags","variant":"standard"}
│     ├ properties
│     │  ├ApplicationId: string (required, immutable)
│     │  ├RoleArn: string
│     │  ├SamplePromptsControlMode: string
│     │  ├Subtitle: string
│     │  ├Tags: Array<tag>
│     │  ├Title: string
│     │  └WelcomeMessage: string
│     └ attributes
│        ├CreatedAt: string
│        ├DefaultEndpoint: string
│        ├Status: string
│        ├UpdatedAt: string
│        ├WebExperienceArn: string
│        └WebExperienceId: string
├[~] service aws-sso
│ └ resources
│    ├[~] resource AWS::SSO::Assignment
│    │ └  - scrutinizable: undefined
│    │    + scrutinizable: SsoAssignmentResource
│    ├[~] resource AWS::SSO::InstanceAccessControlAttributeConfiguration
│    │ └  - scrutinizable: undefined
│    │    + scrutinizable: SsoInstanceACAConfigResource
│    └[~] resource AWS::SSO::PermissionSet
│      └  - scrutinizable: undefined
│         + scrutinizable: SsoPermissionSet
└[~] service aws-transfer
  └ resources
     ├[~] resource AWS::Transfer::Connector
     │ ├ properties
     │ │  └[+] SecurityPolicyName: string
     │ └ attributes
     │    └[+] ServiceManagedEgressIpAddresses: Array<string>
     └[~] resource AWS::Transfer::Workflow
       └ types
          └[~] type DecryptStepDetails
            └ properties
               ├ DestinationFileLocation: - InputFileLocation (immutable)
               │                          + InputFileLocation (required, immutable)
               └ Type: - string (immutable)
                       + string (required, immutable)
```
@aws-cdk-automation aws-cdk-automation added auto-approve pr/no-squash This PR should be merged instead of squash-merging it labels May 2, 2024
@github-actions github-actions bot added the p2 label May 2, 2024
@aws-cdk-automation aws-cdk-automation requested a review from a team May 2, 2024 14:27
@colifran colifran added the pr/do-not-merge This PR should not be merged at this time. label May 2, 2024
@colifran colifran removed the pr/do-not-merge This PR should not be merged at this time. label May 2, 2024
@aws-cdk-automation
Copy link
Collaborator Author

AWS CodeBuild CI Report

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

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

Copy link
Contributor

mergify bot commented May 2, 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 46168aa into v2-release May 2, 2024
14 of 15 checks passed
@mergify mergify bot deleted the bump/2.140.0 branch May 2, 2024 15:06
@aws-cdk-automation
Copy link
Collaborator Author

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.

@aws aws locked as resolved and limited conversation to collaborators Jul 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
auto-approve p2 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.