From b08d215020002e36e768c45777b8cd9eaa02e379 Mon Sep 17 00:00:00 2001 From: Amplifiyer Date: Wed, 30 Apr 2025 13:26:21 -0700 Subject: [PATCH 01/56] chore: upgrade aws-cdk and amplify-core versions --- package.json | 4 +-- .../amplify-codegen-e2e-core/package.json | 2 +- .../amplify-codegen-e2e-tests/package.json | 2 +- yarn.lock | 28 +++++++++---------- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index cb0075a45..875710ed0 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "packages/*" ], "devDependencies": { - "@aws-amplify/amplify-cli-core": "^4.4.0", + "@aws-amplify/amplify-cli-core": "^4.4.1", "@commitlint/cli": "^17.0.3", "@commitlint/config-conventional": "^17.0.3", "@commitlint/config-lerna-scopes": "^17.0.2", @@ -138,7 +138,7 @@ "node-fetch": "^2.6.7", "parse-url": "^8.1.0", "xml2js": "0.5.0", - "aws-cdk-lib": "^2.187.0" + "aws-cdk-lib": "^2.189.1" }, "config": { "commitizen": { diff --git a/packages/amplify-codegen-e2e-core/package.json b/packages/amplify-codegen-e2e-core/package.json index af2710acf..9514109eb 100644 --- a/packages/amplify-codegen-e2e-core/package.json +++ b/packages/amplify-codegen-e2e-core/package.json @@ -43,7 +43,7 @@ "@types/ini": "^1.3.31" }, "peerDependencies": { - "@aws-amplify/amplify-cli-core": "^4.4.0", + "@aws-amplify/amplify-cli-core": "^4.4.1", "amplify-headless-interface": "^1.13.1", "graphql-transformer-core": "^8.0.0" } diff --git a/packages/amplify-codegen-e2e-tests/package.json b/packages/amplify-codegen-e2e-tests/package.json index 2329dedbf..f2dbea302 100644 --- a/packages/amplify-codegen-e2e-tests/package.json +++ b/packages/amplify-codegen-e2e-tests/package.json @@ -47,7 +47,7 @@ "ts-node": "^8.10.1" }, "peerDependencies": { - "@aws-amplify/amplify-cli-core": "^4.4.0", + "@aws-amplify/amplify-cli-core": "^4.4.1", "graphql-transformer-core": "^8.0.0" }, "jest": { diff --git a/yarn.lock b/yarn.lock index 404aa091e..290350dc4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -47,19 +47,19 @@ dependencies: node-fetch "^2.6.1" -"@aws-amplify/amplify-cli-core@^4.4.0": - version "4.4.0" - resolved "https://registry.npmjs.org/@aws-amplify/amplify-cli-core/-/amplify-cli-core-4.4.0.tgz#08c50d4323ed40671878b8cdab6a4ad4e2356fad" - integrity sha512-WMdd1hZm1d9nfmRfGLqsDmgGqPZGWjjU1FFH0vuAGXLCezimCONa08J6ZnrIatS/5NGEfZZ4/ap7R6nOLjV3Sg== +"@aws-amplify/amplify-cli-core@^4.4.1": + version "4.4.1" + resolved "https://registry.yarnpkg.com/@aws-amplify/amplify-cli-core/-/amplify-cli-core-4.4.1.tgz#281e8cc72830de2fd152694db80c9348d72bd558" + integrity sha512-//d1HVnZljMnWkqEkIVbiW1MQ1GoGcQsoPyq246qsojbAtn6/0tiYNLrNr9Uzv3upYSHERFg/US5g4A205D/7g== dependencies: "@aws-amplify/amplify-cli-logger" "1.3.8" "@aws-amplify/amplify-function-plugin-interface" "1.12.1" "@aws-amplify/amplify-prompts" "2.8.6" - "@aws-amplify/graphql-transformer-interfaces" "^3.10.2" + "@aws-amplify/graphql-transformer-interfaces" "^3.12.0" "@aws-sdk/util-arn-parser" "^3.310.0" "@yarnpkg/lockfile" "^1.1.0" ajv "^6.12.6" - aws-cdk-lib "~2.177.0" + aws-cdk-lib "~2.187.0" chalk "^4.1.1" ci-info "^3.8.0" cli-table3 "^0.6.0" @@ -669,10 +669,10 @@ dependencies: graphql "^15.5.0" -"@aws-amplify/graphql-transformer-interfaces@^3.10.2": - version "3.10.2" - resolved "https://registry.npmjs.org/@aws-amplify/graphql-transformer-interfaces/-/graphql-transformer-interfaces-3.10.2.tgz#6020deb141aac0054c0ce45a2d672eaf26bcc1b5" - integrity sha512-OfS0T1M47ShTd6mnWKbIReDiCTmFSWmBvdcXJQF/J09tOEaSSy5QS9H/B0QEW97QAlaasKqxVwKGAp4S5AWRJA== +"@aws-amplify/graphql-transformer-interfaces@^3.12.0": + version "3.12.0" + resolved "https://registry.yarnpkg.com/@aws-amplify/graphql-transformer-interfaces/-/graphql-transformer-interfaces-3.12.0.tgz#377c55fac147f9f37ae0f8643fee102f0f6cba80" + integrity sha512-uWR6L48kLWla4jKY8QTtOq+QNzRS/+73llKG6kVw/R7bfnpDZo60Ga1GrbWKwS4c7ud3BMcqLaJM8QKk2OZMww== dependencies: graphql "^15.5.0" @@ -8635,10 +8635,10 @@ aws-appsync@^4.1.9: url "^0.11.0" uuid "3.x" -aws-cdk-lib@^2.187.0, aws-cdk-lib@~2.177.0: - version "2.187.0" - resolved "https://registry.npmjs.org/aws-cdk-lib/-/aws-cdk-lib-2.187.0.tgz#7b76246abb77cd305cdf2cd00c4f32f9eb38cf67" - integrity sha512-OrAWin+LD5sZhRF5cWuEYEkmC/sxxlgcAasCpfzeRsj6yDImwmeQsaKhM7xqzZQBInog6ZbN6oFZYiWEGJMSIA== +aws-cdk-lib@^2.189.1, aws-cdk-lib@~2.187.0: + version "2.193.0" + resolved "https://registry.yarnpkg.com/aws-cdk-lib/-/aws-cdk-lib-2.193.0.tgz#2c97ac6794c955fbf62981de7d02c369fc9af967" + integrity sha512-Bsf11FM85+s9jSAT8JfDNlrSz6LF3Xa2eSNOyMLcXNopI7eVXP1U6opRHK0waaZGLmQfOwsbSp/9XRMKikkazg== dependencies: "@aws-cdk/asset-awscli-v1" "^2.2.229" "@aws-cdk/asset-node-proxy-agent-v6" "^2.1.0" From 5503c17375f41ab6a362d11d45b69c8166cdffef Mon Sep 17 00:00:00 2001 From: Kamil Sobol <5849952+sobolk@users.noreply.github.com> Date: Wed, 18 Jun 2025 11:55:45 -0700 Subject: [PATCH 02/56] chore: update brace-expansion (#964) --- yarn.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/yarn.lock b/yarn.lock index 290350dc4..efe130110 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8898,17 +8898,17 @@ bowser@^2.11.0: integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + version "1.1.12" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + version "2.0.2" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== dependencies: balanced-match "^1.0.0" From dc7ed0430f2bbc175d7e246dee6e849899f972d0 Mon Sep 17 00:00:00 2001 From: Amplifiyer Date: Wed, 2 Jul 2025 12:22:11 -0700 Subject: [PATCH 03/56] chore: add script to run PR workflow from command line --- package.json | 1 + scripts/cloud-pr.sh | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100755 scripts/cloud-pr.sh diff --git a/package.json b/package.json index 875710ed0..5bd0edd3f 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "trigger-deprecate-release": "source ./scripts/cloud-release.sh && deprecateRelease", "view-test-artifact": "./scripts/view-test-artifacts.sh", "cleanup-stale-resources": "source ./scripts/cloud-utils.sh && cleanupStaleResources", + "cloud-pr": "./scripts/cloud-pr.sh", "cloud-e2e": "source scripts/cloud-utils.sh && cloudE2E", "cloud-e2e-beta": "source scripts/cloud-utils.sh && cloudE2EBeta", "split-e2e-tests": "yarn ts-node ./scripts/split-e2e-tests.ts && git add .codebuild/e2e_workflow.yml", diff --git a/scripts/cloud-pr.sh b/scripts/cloud-pr.sh new file mode 100755 index 000000000..d7ec9e8a5 --- /dev/null +++ b/scripts/cloud-pr.sh @@ -0,0 +1,27 @@ +#!/bin/bash -e + +scriptDir=$(dirname -- "$(readlink -f -- "$BASH_SOURCE")") +source $scriptDir/.env set + +printf 'What is your PR number ? ' +read PR_NUMBER + +if [[ -n $USE_FIDO_KEY ]] ; then + mwinit -s -f +else + mwinit +fi + +ada cred update --profile=AmplifyAPIE2EProd --account=$E2E_ACCOUNT_PROD --role=CodebuildDeveloper --provider=isengard --once +RESULT=$(aws codebuild start-build-batch \ +--profile=AmplifyAPIE2EProd \ +--region us-east-1 \ +--project-name amplify-category-api-pr-workflow \ +--build-timeout-in-minutes-override 180 \ +--source-version "pr/$PR_NUMBER" \ +--debug-session-enabled \ +--git-clone-depth-override=1000 \ +--environment-variables-override name=AMPLIFY_CI_MANUAL_PR_BUILD,value=true,type=PLAINTEXT \ +--query 'buildBatch.id' --output text) + +echo "https://us-east-1.console.aws.amazon.com/codesuite/codebuild/$E2E_ACCOUNT_PROD/projects/amplify-category-api-pr-workflow/batch/$RESULT?region=us-east-1" From 8123496b596f4926de0739243a45a685de03cc41 Mon Sep 17 00:00:00 2001 From: Amplifiyer Date: Wed, 2 Jul 2025 12:39:23 -0700 Subject: [PATCH 04/56] fix: project name --- scripts/cloud-pr.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/cloud-pr.sh b/scripts/cloud-pr.sh index d7ec9e8a5..35c4a1cde 100755 --- a/scripts/cloud-pr.sh +++ b/scripts/cloud-pr.sh @@ -16,7 +16,7 @@ ada cred update --profile=AmplifyAPIE2EProd --account=$E2E_ACCOUNT_PROD --role=C RESULT=$(aws codebuild start-build-batch \ --profile=AmplifyAPIE2EProd \ --region us-east-1 \ ---project-name amplify-category-api-pr-workflow \ +--project-name amplify-codegen-pr-workflow \ --build-timeout-in-minutes-override 180 \ --source-version "pr/$PR_NUMBER" \ --debug-session-enabled \ @@ -24,4 +24,4 @@ RESULT=$(aws codebuild start-build-batch \ --environment-variables-override name=AMPLIFY_CI_MANUAL_PR_BUILD,value=true,type=PLAINTEXT \ --query 'buildBatch.id' --output text) -echo "https://us-east-1.console.aws.amazon.com/codesuite/codebuild/$E2E_ACCOUNT_PROD/projects/amplify-category-api-pr-workflow/batch/$RESULT?region=us-east-1" +echo "https://us-east-1.console.aws.amazon.com/codesuite/codebuild/$E2E_ACCOUNT_PROD/projects/amplify-codegen-pr-workflow/batch/$RESULT?region=us-east-1" From f66310d5f9efa6df5da7ee6719d2aa528ea31dcb Mon Sep 17 00:00:00 2001 From: Roshane Pascual Date: Thu, 7 Aug 2025 10:25:28 -0700 Subject: [PATCH 05/56] chore: update form-data --- dependency_licenses.txt | 78 +++++++++++++++++++++++++++ package.json | 5 +- yarn.lock | 116 +++++++++++++++++++++++++++++++++++----- 3 files changed, 184 insertions(+), 15 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index a99d784dd..7855b9305 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -9659,6 +9659,32 @@ SOFTWARE. ----- +The following software may be included in this product: call-bind-apply-helpers, es-define-property, es-errors, es-object-atoms. A copy of the source code may be downloaded from git+https://github.com/ljharb/call-bind-apply-helpers.git (call-bind-apply-helpers), git+https://github.com/ljharb/es-define-property.git (es-define-property), git+https://github.com/ljharb/es-errors.git (es-errors), git+https://github.com/ljharb/es-object-atoms.git (es-object-atoms). This software contains the following license and notice below: + +MIT License + +Copyright (c) 2024 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +----- + The following software may be included in this product: camel-case, capital-case, change-case, constant-case, dot-case, header-case, is-lower-case, is-upper-case, lower-case, lower-case-first, no-case, param-case, pascal-case, path-case, sentence-case, snake-case, swap-case, title-case, ts-node, upper-case-first. A copy of the source code may be downloaded from git://github.com/blakeembrey/change-case.git (camel-case), git://github.com/blakeembrey/change-case.git (capital-case), git://github.com/blakeembrey/change-case.git (change-case), git://github.com/blakeembrey/change-case.git (constant-case), git://github.com/blakeembrey/change-case.git (dot-case), git://github.com/blakeembrey/change-case.git (header-case), git://github.com/blakeembrey/change-case.git (is-lower-case), git://github.com/blakeembrey/change-case.git (is-upper-case), git://github.com/blakeembrey/change-case.git (lower-case), git://github.com/blakeembrey/change-case.git (lower-case-first), git://github.com/blakeembrey/change-case.git (no-case), git://github.com/blakeembrey/change-case.git (param-case), git://github.com/blakeembrey/change-case.git (pascal-case), git://github.com/blakeembrey/change-case.git (path-case), git://github.com/blakeembrey/change-case.git (sentence-case), git://github.com/blakeembrey/change-case.git (snake-case), git://github.com/blakeembrey/change-case.git (swap-case), git://github.com/blakeembrey/change-case.git (title-case), git://github.com/TypeStrong/ts-node.git (ts-node), git://github.com/blakeembrey/change-case.git (upper-case-first). This software contains the following license and notice below: The MIT License (MIT) @@ -12099,6 +12125,32 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----- +The following software may be included in this product: dunder-proto, math-intrinsics. A copy of the source code may be downloaded from git+https://github.com/es-shims/dunder-proto.git (dunder-proto), git+https://github.com/es-shims/math-intrinsics.git (math-intrinsics). This software contains the following license and notice below: + +MIT License + +Copyright (c) 2024 ECMAScript Shims + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +----- + The following software may be included in this product: electron-to-chromium. A copy of the source code may be downloaded from https://github.com/kilian/electron-to-chromium/. This software contains the following license and notice below: Copyright 2018 Kilian Valkhof @@ -14338,6 +14390,32 @@ SOFTWARE. ----- +The following software may be included in this product: get-proto. A copy of the source code may be downloaded from git+https://github.com/ljharb/get-proto.git. This software contains the following license and notice below: + +MIT License + +Copyright (c) 2025 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +----- + The following software may be included in this product: get-symbol-description, has-tostringtag, is-shared-array-buffer. A copy of the source code may be downloaded from git+https://github.com/inspect-js/get-symbol-description.git (get-symbol-description), git+https://github.com/inspect-js/has-tostringtag.git (has-tostringtag), git+https://github.com/inspect-js/is-shared-array-buffer.git (is-shared-array-buffer). This software contains the following license and notice below: MIT License diff --git a/package.json b/package.json index 5bd0edd3f..007b32d6f 100644 --- a/package.json +++ b/package.json @@ -130,16 +130,17 @@ "@octokit/plugin-paginate-rest": "^9.2.2", "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", + "aws-cdk-lib": "^2.189.1", "axios": "^1.7.4", "cross-fetch": "^2.2.6", + "form-data": "^4.0.4", "glob-parent": "^6.0.2", "graphql": "15.8.0", "lodash": "^4.17.21", "minimist": "^1.2.6", "node-fetch": "^2.6.7", "parse-url": "^8.1.0", - "xml2js": "0.5.0", - "aws-cdk-lib": "^2.189.1" + "xml2js": "0.5.0" }, "config": { "commitizen": { diff --git a/yarn.lock b/yarn.lock index efe130110..7e1535e05 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9036,6 +9036,14 @@ cachedir@2.3.0: resolved "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8" integrity sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw== +call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz#6fa2b7845ce0ea49bf4d8b9ef64727a2c2e2e513" @@ -10036,6 +10044,15 @@ dset@^3.1.2: resolved "https://registry.yarnpkg.com/dset/-/dset-3.1.4.tgz#f8eaf5f023f068a036d08cd07dc9ffb7d0065248" integrity sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA== +dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + duplexer@^0.1.1: version "0.1.2" resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" @@ -10174,6 +10191,16 @@ es-abstract@^1.22.1: unbox-primitive "^1.0.2" which-typed-array "^1.1.13" +es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + es-iterator-helpers@^1.0.12, es-iterator-helpers@^1.0.15: version "1.0.15" resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz#bd81d275ac766431d19305923707c3efd9f1ae40" @@ -10194,6 +10221,13 @@ es-iterator-helpers@^1.0.12, es-iterator-helpers@^1.0.15: iterator.prototype "^1.1.2" safe-array-concat "^1.0.1" +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + es-set-tostringtag@^2.0.1: version "2.0.2" resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz#11f7cc9f63376930a5f20be4915834f4bc74f9c9" @@ -10203,6 +10237,16 @@ es-set-tostringtag@^2.0.1: has-tostringtag "^1.0.0" hasown "^2.0.0" +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + es-shim-unscopables@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" @@ -10866,22 +10910,15 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== +form-data@^3.0.0, form-data@^4.0.0, form-data@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" + integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" mime-types "^2.1.12" fs-constants@^1.0.0: @@ -11011,6 +11048,22 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" +get-intrinsic@^1.2.6: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -11031,6 +11084,14 @@ get-port@^5.1.1: resolved "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== +get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + get-stdin@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" @@ -11234,6 +11295,11 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" +gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" @@ -11386,6 +11452,11 @@ has-symbols@^1.0.2, has-symbols@^1.0.3: resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== +has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + has-tostringtag@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" @@ -11393,6 +11464,13 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" @@ -11405,6 +11483,13 @@ hasown@^2.0.0: dependencies: function-bind "^1.1.2" +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + header-case@^2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz#5a42e63b55177349cf405beb8d775acabb92c063" @@ -13303,6 +13388,11 @@ map-obj@^4.0.0: resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + md5@^2.2.1, md5@^2.3.0: version "2.3.0" resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" From ffda30e469f1d489a8db92fd1fab00823697b14b Mon Sep 17 00:00:00 2001 From: Kamil Sobol <5849952+sobolk@users.noreply.github.com> Date: Fri, 15 Aug 2025 13:41:46 -0700 Subject: [PATCH 06/56] Update test-swift-modelgen.sh (#969) --- scripts/test-swift-modelgen.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/test-swift-modelgen.sh b/scripts/test-swift-modelgen.sh index cc21dca4a..f93ee5101 100755 --- a/scripts/test-swift-modelgen.sh +++ b/scripts/test-swift-modelgen.sh @@ -45,7 +45,7 @@ function createSwiftPackage() { rm -rf Package.swift echo '// swift-tools-version: 5.7 import PackageDescription - let package = Package(name: "swiftapp", platforms: [.macOS(.v10_15)], dependencies: [.package(url: "https://github.com/aws-amplify/amplify-swift", from: "2.12.0") ], targets: [ .executableTarget( name: "swiftapp", dependencies: [ .product(name: "Amplify", package: "amplify-swift") ], path: "Sources")] + let package = Package(name: "swiftapp", platforms: [.macOS(.v12_0)], dependencies: [.package(url: "https://github.com/aws-amplify/amplify-swift", from: "2.12.0") ], targets: [ .executableTarget( name: "swiftapp", dependencies: [ .product(name: "Amplify", package: "amplify-swift") ], path: "Sources")] )' >> Package.swift cat Package.swift } From f86fb0d6bcc15851787a63b8179b483180d1d98b Mon Sep 17 00:00:00 2001 From: Kamil Sobol <5849952+sobolk@users.noreply.github.com> Date: Fri, 15 Aug 2025 14:00:08 -0700 Subject: [PATCH 07/56] Update test-swift-modelgen.sh (#970) --- scripts/test-swift-modelgen.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/test-swift-modelgen.sh b/scripts/test-swift-modelgen.sh index f93ee5101..271f22c0d 100755 --- a/scripts/test-swift-modelgen.sh +++ b/scripts/test-swift-modelgen.sh @@ -45,7 +45,7 @@ function createSwiftPackage() { rm -rf Package.swift echo '// swift-tools-version: 5.7 import PackageDescription - let package = Package(name: "swiftapp", platforms: [.macOS(.v12_0)], dependencies: [.package(url: "https://github.com/aws-amplify/amplify-swift", from: "2.12.0") ], targets: [ .executableTarget( name: "swiftapp", dependencies: [ .product(name: "Amplify", package: "amplify-swift") ], path: "Sources")] + let package = Package(name: "swiftapp", platforms: [.macOS(.v12)], dependencies: [.package(url: "https://github.com/aws-amplify/amplify-swift", from: "2.12.0") ], targets: [ .executableTarget( name: "swiftapp", dependencies: [ .product(name: "Amplify", package: "amplify-swift") ], path: "Sources")] )' >> Package.swift cat Package.swift } From 6dc2f339ab2fcf84059ce88234b18a0efaf85466 Mon Sep 17 00:00:00 2001 From: Roshane Pascual Date: Wed, 20 Aug 2025 11:07:51 -0700 Subject: [PATCH 08/56] chore: use newer macos runner (#971) --- .github/workflows/build-swift-modelgen.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-swift-modelgen.yml b/.github/workflows/build-swift-modelgen.yml index 85935afad..b287fb753 100644 --- a/.github/workflows/build-swift-modelgen.yml +++ b/.github/workflows/build-swift-modelgen.yml @@ -13,7 +13,7 @@ env: jobs: Build-Swift-Modelgen: name: Build - runs-on: macos-13-xlarge + runs-on: macos-14-xlarge permissions: actions: read contents: read @@ -22,6 +22,9 @@ jobs: fail-fast: true steps: + - name: Set Xcode version + run: sudo xcode-select --switch "/Applications/Xcode_16.1.0.app" + - name: Mask S3 URL run: echo "::add-mask::$MODELS_S3_URL" From 81a867328f4cea90514fa4bcbce19ef8648703b7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 13 Sep 2025 12:23:11 +0000 Subject: [PATCH 09/56] build(deps): bump axios from 1.8.3 to 1.12.1 Bumps [axios](https://github.com/axios/axios) from 1.8.3 to 1.12.1. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.8.3...v1.12.1) --- updated-dependencies: - dependency-name: axios dependency-version: 1.12.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7e1535e05..2d90d9982 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8693,12 +8693,12 @@ axe-core@=4.7.0: integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== axios@1.6.0, axios@^1.0.0, axios@^1.7.4: - version "1.8.3" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.8.3.tgz#9ebccd71c98651d547162a018a1a95a4b4ed4de8" - integrity sha512-iP4DebzoNlP/YN2dpwCgb8zoCmhtkajzS48JvwmkSkXvPI3DHc7m+XYL5tGnSlJtR6nImXZmdCuN5aP8dh1d8A== + version "1.12.1" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.12.1.tgz#0747b39c5b615f81f93f2c138e6d82a71426937f" + integrity sha512-Kn4kbSXpkFHCGE6rBFNwIv0GQs4AvDT80jlveJDKFxjbTYMUeB4QtsdPCv6H8Cm19Je7IU6VFtRl2zWZI0rudQ== dependencies: follow-redirects "^1.15.6" - form-data "^4.0.0" + form-data "^4.0.4" proxy-from-env "^1.1.0" axobject-query@^3.2.1: @@ -10910,7 +10910,7 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -form-data@^3.0.0, form-data@^4.0.0, form-data@^4.0.4: +form-data@^3.0.0, form-data@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== From 1d6508f270e9c68f955cecb917dbc35430f3dfe5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Oct 2025 02:15:26 +0000 Subject: [PATCH 10/56] build(deps): bump validator from 13.11.0 to 13.15.20 Bumps [validator](https://github.com/validatorjs/validator.js) from 13.11.0 to 13.15.20. - [Release notes](https://github.com/validatorjs/validator.js/releases) - [Changelog](https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/validatorjs/validator.js/compare/13.11.0...13.15.20) --- updated-dependencies: - dependency-name: validator dependency-version: 13.15.20 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2d90d9982..ef94759e1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16375,9 +16375,9 @@ validate-npm-package-name@^4.0.0: builtins "^5.0.0" validator@^13.7.0: - version "13.11.0" - resolved "https://registry.npmjs.org/validator/-/validator-13.11.0.tgz#23ab3fd59290c61248364eabf4067f04955fbb1b" - integrity sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ== + version "13.15.20" + resolved "https://registry.yarnpkg.com/validator/-/validator-13.15.20.tgz#054e9238109538a1bf46ae3e1290845a64fa2186" + integrity sha512-KxPOq3V2LmfQPP4eqf3Mq/zrT0Dqp2Vmx2Bn285LwVahLc+CsxOM0crBHczm8ijlcjZ0Q5Xd6LW3z3odTPnlrw== value-or-promise@^1.0.12: version "1.0.12" From 5aa2cbeca22d85e6502ddde7bb6424d08bdd48d5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Nov 2025 19:59:49 +0000 Subject: [PATCH 11/56] build(deps): bump js-yaml from 4.1.0 to 4.1.1 Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1. - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 4.1.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yarn.lock | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/yarn.lock b/yarn.lock index 2d90d9982..b7943c994 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12828,13 +12828,20 @@ js-yaml@3.14.1, js-yaml@^3.10.0, js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@4.1.0, js-yaml@^4.0.0, js-yaml@^4.1.0: +js-yaml@4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: argparse "^2.0.1" +js-yaml@^4.0.0, js-yaml@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" + integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== + dependencies: + argparse "^2.0.1" + jsdom@^16.6.0: version "16.7.0" resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" From e421be2338e1cb8ce1fb0fa4a812143e6a0a5011 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Dec 2025 21:18:50 +0000 Subject: [PATCH 12/56] build(deps): bump validator from 13.15.20 to 13.15.23 Bumps [validator](https://github.com/validatorjs/validator.js) from 13.15.20 to 13.15.23. - [Release notes](https://github.com/validatorjs/validator.js/releases) - [Changelog](https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/validatorjs/validator.js/compare/13.15.20...13.15.23) --- updated-dependencies: - dependency-name: validator dependency-version: 13.15.23 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 22f98b2e6..642448c3c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16382,9 +16382,9 @@ validate-npm-package-name@^4.0.0: builtins "^5.0.0" validator@^13.7.0: - version "13.15.20" - resolved "https://registry.yarnpkg.com/validator/-/validator-13.15.20.tgz#054e9238109538a1bf46ae3e1290845a64fa2186" - integrity sha512-KxPOq3V2LmfQPP4eqf3Mq/zrT0Dqp2Vmx2Bn285LwVahLc+CsxOM0crBHczm8ijlcjZ0Q5Xd6LW3z3odTPnlrw== + version "13.15.23" + resolved "https://registry.yarnpkg.com/validator/-/validator-13.15.23.tgz#59a874f84e4594588e3409ab1edbe64e96d0c62d" + integrity sha512-4yoz1kEWqUjzi5zsPbAS/903QXSYp0UOtHsPpp7p9rHAw/W+dkInskAE386Fat3oKRROwO98d9ZB0G4cObgUyw== value-or-promise@^1.0.12: version "1.0.12" From 87e807d2273f535b2e3f164ced0d98b88a59c733 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 31 Dec 2025 13:47:32 +0000 Subject: [PATCH 13/56] build(deps): bump qs from 6.11.2 to 6.14.1 Bumps [qs](https://github.com/ljharb/qs) from 6.11.2 to 6.14.1. - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.11.2...v6.14.1) --- updated-dependencies: - dependency-name: qs dependency-version: 6.14.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 642448c3c..adef394bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9053,6 +9053,14 @@ call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.4, call-bind@^1.0.5: get-intrinsic "^1.2.1" set-function-length "^1.1.1" +call-bound@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -11048,7 +11056,7 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" -get-intrinsic@^1.2.6: +get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== @@ -13989,6 +13997,11 @@ object-inspect@^1.13.1, object-inspect@^1.9.0: resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== +object-inspect@^1.13.3: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + object-keys@^1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -14702,11 +14715,11 @@ q@^1.5.1: integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== qs@^6.11.2: - version "6.11.2" - resolved "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" - integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== + version "6.14.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" + integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== dependencies: - side-channel "^1.0.4" + side-channel "^1.1.0" querystring@0.2.0: version "0.2.0" @@ -15240,6 +15253,35 @@ shebang-regex@^3.0.0: resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +side-channel-list@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + side-channel@^1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" @@ -15249,6 +15291,17 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" From 816656404dc7c11b2385cb49a81ac6c076ad940d Mon Sep 17 00:00:00 2001 From: Sai Ray Date: Thu, 8 Jan 2026 11:32:01 -0500 Subject: [PATCH 14/56] chore: scope down permissions for closed-issue-message.yml --- .github/workflows/closed-issue-message.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/closed-issue-message.yml b/.github/workflows/closed-issue-message.yml index 8cb2db494..60a309231 100644 --- a/.github/workflows/closed-issue-message.yml +++ b/.github/workflows/closed-issue-message.yml @@ -2,6 +2,10 @@ name: Closed Issue Message on: issues: types: [closed] + +permissions: + issues: write + jobs: auto_comment: runs-on: ubuntu-latest From 751df7147be35550186a8811d53ab76628b377c7 Mon Sep 17 00:00:00 2001 From: Vieltojarvi Date: Wed, 14 Jan 2026 15:47:30 -0500 Subject: [PATCH 15/56] chore: new windows image --- .codebuild/e2e_workflow.yml | 22 +++++++++---------- .codebuild/e2e_workflow_base.yml | 6 ++--- .codebuild/pr_workflow.yml | 4 ++-- .codebuild/release_workflow.yml | 4 ++-- .../amplify-codegen-e2e-core/package.json | 2 +- scripts/split-e2e-tests.ts | 2 +- shared-scripts.sh | 7 +++--- 7 files changed, 24 insertions(+), 23 deletions(-) diff --git a/.codebuild/e2e_workflow.yml b/.codebuild/e2e_workflow.yml index eb7fa0e57..e0efdf5c2 100644 --- a/.codebuild/e2e_workflow.yml +++ b/.codebuild/e2e_workflow.yml @@ -13,13 +13,13 @@ batch: - identifier: build_windows buildspec: .codebuild/build_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - identifier: test_windows buildspec: .codebuild/test_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 depend-on: @@ -92,7 +92,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: src/__tests__/graphql-generator-gen2.test.ts CLI_REGION: us-east-1 @@ -194,7 +194,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/add-codegen-ios.test.ts|src/__tests__/configure-codegen-android.test.ts|src/__tests__/configure-codegen-js.test.ts|src/__tests__/graphql-codegen-android.test.ts @@ -208,7 +208,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/graphql-codegen-js.test.ts|src/__tests__/remove-codegen-android.test.ts|src/__tests__/remove-codegen-ios.test.ts|src/__tests__/add-codegen-android.test.ts @@ -222,7 +222,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/configure-codegen-ios.test.ts|src/__tests__/datastore-modelgen-android.test.ts|src/__tests__/datastore-modelgen-js.test.ts|src/__tests__/feature-flags.test.ts @@ -236,7 +236,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/graphql-codegen-ios.test.ts|src/__tests__/add-codegen-js.test.ts|src/__tests__/datastore-modelgen-ios.test.ts|src/__tests__/remove-codegen-js.test.ts @@ -250,7 +250,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/datastore-modelgen-flutter.test.ts|src/__tests__/env-codegen.test.ts|src/__tests__/model-introspection-codegen.test.ts|src/__tests__/pull-codegen.test.ts @@ -264,7 +264,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/push-codegen-ios.test.ts|src/__tests__/push-codegen-android.test.ts|src/__tests__/graphql-documents-generator.test.ts|src/__tests__/push-codegen-js.test.ts @@ -278,7 +278,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/build-app-ts.test.ts|src/__tests__/graphql-generator-app.test.ts|src/__tests__/push-codegen-admin-modelgen.test.ts|src/__tests__/uninitialized-project-codegen-js.test.ts @@ -293,7 +293,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: >- src/__tests__/uninitialized-project-modelgen-android.test.ts|src/__tests__/uninitialized-project-modelgen-flutter.test.ts|src/__tests__/uninitialized-project-modelgen-ios.test.ts|src/__tests__/uninitialized-project-modelgen-js.test.ts diff --git a/.codebuild/e2e_workflow_base.yml b/.codebuild/e2e_workflow_base.yml index c82c3a7f4..77af9270f 100644 --- a/.codebuild/e2e_workflow_base.yml +++ b/.codebuild/e2e_workflow_base.yml @@ -13,13 +13,13 @@ batch: - identifier: build_windows buildspec: .codebuild/build_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - identifier: test_windows buildspec: .codebuild/test_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 depend-on: @@ -92,7 +92,7 @@ batch: env: compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER variables: TEST_SUITE: src/__tests__/graphql-generator-gen2.test.ts CLI_REGION: us-east-1 diff --git a/.codebuild/pr_workflow.yml b/.codebuild/pr_workflow.yml index b75b731fd..0f6f3ad8e 100644 --- a/.codebuild/pr_workflow.yml +++ b/.codebuild/pr_workflow.yml @@ -11,13 +11,13 @@ batch: - identifier: build_windows buildspec: .codebuild/build_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - identifier: test_windows buildspec: .codebuild/test_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 depend-on: diff --git a/.codebuild/release_workflow.yml b/.codebuild/release_workflow.yml index 80b8fe24b..310380b47 100644 --- a/.codebuild/release_workflow.yml +++ b/.codebuild/release_workflow.yml @@ -11,13 +11,13 @@ batch: - identifier: build_windows buildspec: .codebuild/build_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 - identifier: test_windows buildspec: .codebuild/test_windows.yml env: - type: WINDOWS_SERVER_2019_CONTAINER + type: WINDOWS_SERVER_2022_CONTAINER compute-type: BUILD_GENERAL1_LARGE image: $WINDOWS_IMAGE_2019 depend-on: diff --git a/packages/amplify-codegen-e2e-core/package.json b/packages/amplify-codegen-e2e-core/package.json index 9514109eb..1bee26fe8 100644 --- a/packages/amplify-codegen-e2e-core/package.json +++ b/packages/amplify-codegen-e2e-core/package.json @@ -32,7 +32,7 @@ "jest-circus": "^27.5.1", "jest-environment-node": "^26.6.2", "lodash": "^4.17.19", - "node-pty": "1.0.0", + "node-pty": "1.1.0", "retimer": "2.0.0", "rimraf": "^3.0.0", "strip-ansi": "^6.0.0", diff --git a/scripts/split-e2e-tests.ts b/scripts/split-e2e-tests.ts index 91ca3f136..a150abd97 100644 --- a/scripts/split-e2e-tests.ts +++ b/scripts/split-e2e-tests.ts @@ -221,7 +221,7 @@ function main(): void { env: { 'compute-type': 'BUILD_GENERAL1_LARGE', image: '$WINDOWS_IMAGE_2019', - type: 'WINDOWS_SERVER_2019_CONTAINER', + type: 'WINDOWS_SERVER_2022_CONTAINER', }, 'depend-on': ['publish_to_local_registry', 'build_windows'], }; diff --git a/shared-scripts.sh b/shared-scripts.sh index cbb1d8090..fef67fa84 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -1,6 +1,7 @@ #!/bin/bash AMPLIFY_NODE_VERSION=18.20.4 +AMPLIFY_NODE_VERSION_WINDOWS=24.12.0 # set exit on error to true set -e @@ -141,8 +142,8 @@ function _buildLinux { } function _buildWindows { - echo "Setup Node Version $AMPLIFY_NODE_VERSION for Windows" - _setupNodeVersionWindows $AMPLIFY_NODE_VERSION + echo "Setup Node Version $AMPLIFY_NODE_VERSION_WINDOWS for Windows" + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION_WINDOWS echo "Windows Build" yarn run production-build storeCacheForWindowsBuildJob @@ -320,7 +321,7 @@ function _runGen2E2ETestsLinux { function _runGen2E2ETestsWindows { echo "RUN Gen2 E2E Tests Windows" echo "Setup Node Version" - _setupNodeVersionWindows $AMPLIFY_NODE_VERSION + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION_WINDOWS retry runGen2E2eTest } From 8f4eb3946c3912b6b798be6c0c0d2bf3fe76dcec Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Thu, 15 Jan 2026 15:30:51 -0500 Subject: [PATCH 16/56] chore: update license --- dependency_licenses.txt | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 7855b9305..786e0f8e4 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -9659,7 +9659,7 @@ SOFTWARE. ----- -The following software may be included in this product: call-bind-apply-helpers, es-define-property, es-errors, es-object-atoms. A copy of the source code may be downloaded from git+https://github.com/ljharb/call-bind-apply-helpers.git (call-bind-apply-helpers), git+https://github.com/ljharb/es-define-property.git (es-define-property), git+https://github.com/ljharb/es-errors.git (es-errors), git+https://github.com/ljharb/es-object-atoms.git (es-object-atoms). This software contains the following license and notice below: +The following software may be included in this product: call-bind-apply-helpers, call-bound, es-define-property, es-errors, es-object-atoms, side-channel-list, side-channel-map. A copy of the source code may be downloaded from git+https://github.com/ljharb/call-bind-apply-helpers.git (call-bind-apply-helpers), git+https://github.com/ljharb/call-bound.git (call-bound), git+https://github.com/ljharb/es-define-property.git (es-define-property), git+https://github.com/ljharb/es-errors.git (es-errors), git+https://github.com/ljharb/es-object-atoms.git (es-object-atoms), git+https://github.com/ljharb/side-channel-list.git (side-channel-list), git+https://github.com/ljharb/side-channel-map.git (side-channel-map). This software contains the following license and notice below: MIT License @@ -14289,7 +14289,7 @@ THE SOFTWARE. ----- -The following software may be included in this product: functions-have-names, has-bigints, internal-slot, side-channel, unbox-primitive, which-boxed-primitive. A copy of the source code may be downloaded from git+https://github.com/inspect-js/functions-have-names.git (functions-have-names), git+https://github.com/ljharb/has-bigints.git (has-bigints), git+https://github.com/ljharb/internal-slot.git (internal-slot), git+https://github.com/ljharb/side-channel.git (side-channel), git+https://github.com/ljharb/unbox-primitive.git (unbox-primitive), git+https://github.com/inspect-js/which-boxed-primitive.git (which-boxed-primitive). This software contains the following license and notice below: +The following software may be included in this product: functions-have-names, has-bigints, internal-slot, side-channel, side-channel-weakmap, unbox-primitive, which-boxed-primitive. A copy of the source code may be downloaded from git+https://github.com/inspect-js/functions-have-names.git (functions-have-names), git+https://github.com/ljharb/has-bigints.git (has-bigints), git+https://github.com/ljharb/internal-slot.git (internal-slot), git+https://github.com/ljharb/side-channel.git (side-channel), git+https://github.com/ljharb/side-channel-weakmap.git (side-channel-weakmap), git+https://github.com/ljharb/unbox-primitive.git (unbox-primitive), git+https://github.com/inspect-js/which-boxed-primitive.git (which-boxed-primitive). This software contains the following license and notice below: MIT License @@ -17803,20 +17803,6 @@ SOFTWARE. ----- -The following software may be included in this product: nan. A copy of the source code may be downloaded from git://github.com/nodejs/nan.git. This software contains the following license and notice below: - -The MIT License (MIT) - -Copyright (c) 2018 [NAN contributors]() - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------ - The following software may be included in this product: negotiator. A copy of the source code may be downloaded from https://github.com/jshttp/negotiator.git. This software contains the following license and notice below: (The MIT License) @@ -17917,6 +17903,20 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ----- +The following software may be included in this product: node-addon-api. A copy of the source code may be downloaded from git://github.com/nodejs/node-addon-api.git. This software contains the following license and notice below: + +The MIT License (MIT) + +Copyright (c) 2017 [Node.js API collaborators](https://github.com/nodejs/node-addon-api#collaborators) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +----- + The following software may be included in this product: node-fetch. A copy of the source code may be downloaded from https://github.com/bitinn/node-fetch.git. This software contains the following license and notice below: The MIT License (MIT) From 41584a660a7ea718c1630522c536f1c2b1bc5499 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Thu, 15 Jan 2026 16:23:33 -0500 Subject: [PATCH 17/56] fix: windows path construction --- scripts/cloud-pr.sh | 2 +- shared-scripts.sh | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/scripts/cloud-pr.sh b/scripts/cloud-pr.sh index 35c4a1cde..61c09d67a 100755 --- a/scripts/cloud-pr.sh +++ b/scripts/cloud-pr.sh @@ -9,7 +9,7 @@ read PR_NUMBER if [[ -n $USE_FIDO_KEY ]] ; then mwinit -s -f else - mwinit + mwinit -o fi ada cred update --profile=AmplifyAPIE2EProd --account=$E2E_ACCOUNT_PROD --role=CodebuildDeveloper --provider=isengard --once diff --git a/shared-scripts.sh b/shared-scripts.sh index fef67fa84..35624b73a 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -80,7 +80,9 @@ function storeCacheForLinuxBuildJob { function storeCacheForWindowsBuildJob { storeCache $CODEBUILD_SRC_DIR repo-windows windows - storeCache $HOME/AppData/Local/Yarn/Cache/v6 .cache-windows windows + # Use LOCALAPPDATA if available, otherwise construct the path + YARN_CACHE_PATH="${LOCALAPPDATA:-$HOME/AppData/Local}/Yarn/Cache/v6" + storeCache "$YARN_CACHE_PATH" .cache-windows windows } function loadCacheFromLinuxBuildJob { @@ -93,7 +95,9 @@ function loadCacheFromLinuxBuildJob { function loadCacheFromWindowsBuildJob { # download [repo, .cache] from s3 loadCache repo-windows $CODEBUILD_SRC_DIR windows - loadCache .cache-windows $HOME/AppData/Local/Yarn/Cache/v6 windows + # Use LOCALAPPDATA if available, otherwise construct the path + YARN_CACHE_PATH="${LOCALAPPDATA:-$HOME/AppData/Local}/Yarn/Cache/v6" + loadCache .cache-windows "$YARN_CACHE_PATH" windows } function storeCacheFile { From 5d98007f2dbfbbfb1dc553634a455f26046c2ec7 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Thu, 15 Jan 2026 16:24:38 -0500 Subject: [PATCH 18/56] revert accidental change --- scripts/cloud-pr.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/cloud-pr.sh b/scripts/cloud-pr.sh index 61c09d67a..35c4a1cde 100755 --- a/scripts/cloud-pr.sh +++ b/scripts/cloud-pr.sh @@ -9,7 +9,7 @@ read PR_NUMBER if [[ -n $USE_FIDO_KEY ]] ; then mwinit -s -f else - mwinit -o + mwinit fi ada cred update --profile=AmplifyAPIE2EProd --account=$E2E_ACCOUNT_PROD --role=CodebuildDeveloper --provider=isengard --once From cb95b7c6c91a34a9eec91b4b229d06d578c11707 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Tue, 20 Jan 2026 09:55:17 -0500 Subject: [PATCH 19/56] fix: mocking --- packages/amplify-codegen/tests/commands/models.test.js | 2 +- packages/amplify-codegen/tests/commands/types-mock-fs.test.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index 00868566c..935057f53 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -5,7 +5,7 @@ const { } = require('../../src/utils/validateAmplifyFlutterMinSupportedVersion'); const { DefaultDirectives } = require('@aws-amplify/graphql-directives'); const mockFs = require('mock-fs'); -const fs = require('fs'); +const fs = require('fs-extra'); const path = require('path'); jest.mock('../../src/utils/validateAmplifyFlutterMinSupportedVersion', () => { diff --git a/packages/amplify-codegen/tests/commands/types-mock-fs.test.js b/packages/amplify-codegen/tests/commands/types-mock-fs.test.js index 288eaa969..6bab4976f 100644 --- a/packages/amplify-codegen/tests/commands/types-mock-fs.test.js +++ b/packages/amplify-codegen/tests/commands/types-mock-fs.test.js @@ -1,5 +1,5 @@ const mockFs = require('mock-fs'); -const fs = require('fs'); +const fs = require('fs-extra'); const path = require('path'); const generateTypes = require('../../src/commands/types'); From 32ca93766dcd2a988c9d1e3cb6dbd968efb7b1ee Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Tue, 20 Jan 2026 11:11:21 -0500 Subject: [PATCH 20/56] chore: update file stuff --- .../tests/commands/mock-fs-setup.js | 5 ++- .../commands/model-introspection.test.js | 11 ++++--- .../tests/commands/models.test.js | 33 ++++++++++--------- 3 files changed, 29 insertions(+), 20 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/mock-fs-setup.js b/packages/amplify-codegen/tests/commands/mock-fs-setup.js index 7ad30f5be..445584b42 100644 --- a/packages/amplify-codegen/tests/commands/mock-fs-setup.js +++ b/packages/amplify-codegen/tests/commands/mock-fs-setup.js @@ -2,6 +2,9 @@ const mockFs = require('mock-fs'); const path = require('path'); const { getOutputFileName } = require('@aws-amplify/graphql-types-generator'); +// Normalize paths for mock-fs (always use forward slashes) +const normalizeMockPath = (p) => p.split(path.sep).join('/'); + /* Setup mocks for types and statements generation. * Create a mock filesystem so that output paths can be tested. * Mocks existence of `schema.json` using mocks fs @@ -21,7 +24,7 @@ function setupMocks(mockFs, loadConfig, apiId, frontend, target, generatedFileNa // load actual prettier module to avoid error // Cannot find module './parser-graphql' from '../../node_modules/prettier/index.js' // It's not clear why other modules don't need to be loaded - [nodeModulesPrettier]: mockFs.load(nodeModulesPrettier, { + [normalizeMockPath(nodeModulesPrettier)]: mockFs.load(nodeModulesPrettier, { recursive: true, lazy: true, }), diff --git a/packages/amplify-codegen/tests/commands/model-introspection.test.js b/packages/amplify-codegen/tests/commands/model-introspection.test.js index 3fe5d72f9..d0c67729d 100644 --- a/packages/amplify-codegen/tests/commands/model-introspection.test.js +++ b/packages/amplify-codegen/tests/commands/model-introspection.test.js @@ -28,6 +28,9 @@ const MOCK_BACKEND_DIRECTORY = 'backend'; const MOCK_GENERATED_INTROSPECTION = { schemaVersion: 1 }; const MOCK_GENERATED_CODE = JSON.stringify(MOCK_GENERATED_INTROSPECTION); +// Normalize paths for mock-fs (always use forward slashes) +const normalizeMockPath = (p) => p.split(path.sep).join('/'); + const MOCK_CONTEXT = { print: { info: jest.fn(), @@ -59,10 +62,10 @@ describe('generateModelIntrospection', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, MOCK_OUTPUT_DIR); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; beforeAll(() => { codegen_core.codegen.mockReturnValue(MOCK_GENERATED_CODE); @@ -108,10 +111,10 @@ describe('getModelIntrospection', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, MOCK_OUTPUT_DIR); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; beforeAll(() => { codegen_core.codegen.mockReturnValue(MOCK_GENERATED_CODE); diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index 935057f53..f672bf6ac 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -46,6 +46,9 @@ const MOCK_PROJECT_ROOT = 'project'; const MOCK_PROJECT_NAME = 'myapp'; const MOCK_BACKEND_DIRECTORY = 'backend'; +// Normalize paths for mock-fs (always use forward slashes) +const normalizeMockPath = (p) => p.split(path.sep).join('/'); + describe('command-models-generates models in expected output path', () => { beforeEach(() => { jest.resetAllMocks(); @@ -60,10 +63,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -81,10 +84,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFolderPath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME, 'schema', 'nested', 'deeply'); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[schemaFolderPath] = { + mockedFiles[normalizeMockPath(schemaFolderPath)] = { 'myschema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -102,11 +105,11 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; mockedFiles[overrideOutputDir] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -129,10 +132,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -148,7 +151,7 @@ describe('command-models-generates models in expected output path', () => { it(frontend + ': Should generate for frontend when backend is not initialized locally, and logs no warnings or errors', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[MOCK_PROJECT_ROOT] = { + mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -185,7 +188,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on invalid target option', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[MOCK_PROJECT_ROOT] = { + mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -207,7 +210,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing model-schema flag and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[MOCK_PROJECT_ROOT] = { + mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -229,7 +232,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing target flag and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[MOCK_PROJECT_ROOT] = { + mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -251,7 +254,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing override output dir and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[MOCK_PROJECT_ROOT] = { + mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -277,10 +280,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[schemaFilePath] = { + mockedFiles[normalizeMockPath(schemaFilePath)] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; - mockedFiles[outputDirectory] = {}; + mockedFiles[normalizeMockPath(outputDirectory)] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); From 6b1e9aeea2f9e58a13ef40c2d01f278230f341ca Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Tue, 20 Jan 2026 11:33:40 -0500 Subject: [PATCH 21/56] chore: resolving paths --- .../tests/commands/model-introspection.test.js | 6 +++--- packages/amplify-codegen/tests/commands/models.test.js | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/model-introspection.test.js b/packages/amplify-codegen/tests/commands/model-introspection.test.js index d0c67729d..d969a75f4 100644 --- a/packages/amplify-codegen/tests/commands/model-introspection.test.js +++ b/packages/amplify-codegen/tests/commands/model-introspection.test.js @@ -21,10 +21,10 @@ jest.mock('@graphql-codegen/core', () => { }; }); -const MOCK_OUTPUT_DIR = 'output'; -const MOCK_PROJECT_ROOT = 'project'; +const MOCK_OUTPUT_DIR = path.resolve('output'); +const MOCK_PROJECT_ROOT = path.resolve('project'); const MOCK_PROJECT_NAME = 'myapp'; -const MOCK_BACKEND_DIRECTORY = 'backend'; +const MOCK_BACKEND_DIRECTORY = path.resolve('backend'); const MOCK_GENERATED_INTROSPECTION = { schemaVersion: 1 }; const MOCK_GENERATED_CODE = JSON.stringify(MOCK_GENERATED_INTROSPECTION); diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index f672bf6ac..ac6370a38 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -42,9 +42,9 @@ const OUTPUT_PATHS = { ios: 'amplify/generated/models', flutter: 'lib/models', }; -const MOCK_PROJECT_ROOT = 'project'; +const MOCK_PROJECT_ROOT = path.resolve('project'); const MOCK_PROJECT_NAME = 'myapp'; -const MOCK_BACKEND_DIRECTORY = 'backend'; +const MOCK_BACKEND_DIRECTORY = path.resolve('backend'); // Normalize paths for mock-fs (always use forward slashes) const normalizeMockPath = (p) => p.split(path.sep).join('/'); From 3467f08bf7ae7b46d78d0c326d72b09765a6e9de Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Tue, 20 Jan 2026 16:47:37 -0500 Subject: [PATCH 22/56] Revert "chore: resolving paths" This reverts commit 6b1e9aeea2f9e58a13ef40c2d01f278230f341ca. --- .../tests/commands/model-introspection.test.js | 6 +++--- packages/amplify-codegen/tests/commands/models.test.js | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/model-introspection.test.js b/packages/amplify-codegen/tests/commands/model-introspection.test.js index d969a75f4..d0c67729d 100644 --- a/packages/amplify-codegen/tests/commands/model-introspection.test.js +++ b/packages/amplify-codegen/tests/commands/model-introspection.test.js @@ -21,10 +21,10 @@ jest.mock('@graphql-codegen/core', () => { }; }); -const MOCK_OUTPUT_DIR = path.resolve('output'); -const MOCK_PROJECT_ROOT = path.resolve('project'); +const MOCK_OUTPUT_DIR = 'output'; +const MOCK_PROJECT_ROOT = 'project'; const MOCK_PROJECT_NAME = 'myapp'; -const MOCK_BACKEND_DIRECTORY = path.resolve('backend'); +const MOCK_BACKEND_DIRECTORY = 'backend'; const MOCK_GENERATED_INTROSPECTION = { schemaVersion: 1 }; const MOCK_GENERATED_CODE = JSON.stringify(MOCK_GENERATED_INTROSPECTION); diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index ac6370a38..f672bf6ac 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -42,9 +42,9 @@ const OUTPUT_PATHS = { ios: 'amplify/generated/models', flutter: 'lib/models', }; -const MOCK_PROJECT_ROOT = path.resolve('project'); +const MOCK_PROJECT_ROOT = 'project'; const MOCK_PROJECT_NAME = 'myapp'; -const MOCK_BACKEND_DIRECTORY = path.resolve('backend'); +const MOCK_BACKEND_DIRECTORY = 'backend'; // Normalize paths for mock-fs (always use forward slashes) const normalizeMockPath = (p) => p.split(path.sep).join('/'); From 72aa06350f742e0be9220269e017b4a876d383b4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Jan 2026 23:17:41 +0000 Subject: [PATCH 23/56] build(deps): bump lodash-es from 4.17.21 to 4.17.23 Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash-es dependency-version: 4.17.23 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index adef394bc..79c1f17ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13166,9 +13166,9 @@ locate-path@^6.0.0: p-locate "^5.0.0" lodash-es@^4.17.4, lodash-es@^4.2.1: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" - integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.23.tgz#58c4360fd1b5d33afc6c0bbd3d1149349b1138e0" + integrity sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg== lodash.camelcase@^4.3.0: version "4.3.0" From d03afe597bee99b1814a3eab24b3edb6801ca424 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Jan 2026 00:43:59 +0000 Subject: [PATCH 24/56] build(deps): bump lodash from 4.17.21 to 4.17.23 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.17.23 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yarn.lock | 106 +++++++++++++++++++++++++++--------------------------- 1 file changed, 53 insertions(+), 53 deletions(-) diff --git a/yarn.lock b/yarn.lock index adef394bc..80fb695d0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -836,23 +836,23 @@ fast-xml-parser "^4.2.5" tslib "^1.8.0" -"@aws-cdk/asset-awscli-v1@^2.2.229": - version "2.2.230" - resolved "https://registry.npmjs.org/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.230.tgz#6a39f8849ca99fddbad2fac96cbd8f81e33c8406" - integrity sha512-kUnhKIYu42hqBa6a8x2/7o29ObpJgjYGQy28lZDq9awXyvpR62I2bRxrNKNR3uFUQz3ySuT9JXhGHhuZPdbnFw== +"@aws-cdk/asset-awscli-v1@2.2.261": + version "2.2.261" + resolved "https://registry.yarnpkg.com/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.261.tgz#3e578c7f6dbf00282cafb01e4315ed2025a89f1f" + integrity sha512-XkKvgG/OxrEYtVTt2Q9gaD58Qn90fnX/dNczL4k6myeii7UgAGPmqh+I+1uKohCWGKIKd+4Gz2xWBL/tPi4YIA== "@aws-cdk/asset-node-proxy-agent-v6@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.0.tgz#6d3c7860354d4856a7e75375f2f0ecab313b4989" integrity sha512-7bY3J8GCVxLupn/kNmpPc5VJz8grx+4RKfnnJiO1LG+uxkZfANZG3RMHhE+qQxxwkyQ9/MfPtTpf748UhR425A== -"@aws-cdk/cloud-assembly-schema@^41.0.0": - version "41.2.0" - resolved "https://registry.npmjs.org/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-41.2.0.tgz#c1ef513e1cc0528dbc05948ae39d5631306af423" - integrity sha512-JaulVS6z9y5+u4jNmoWbHZRs9uGOnmn/ktXygNWKNu1k6lF3ad4so3s18eRu15XCbUIomxN9WPYT6Ehh7hzONw== +"@aws-cdk/cloud-assembly-schema@^48.20.0": + version "48.20.0" + resolved "https://registry.yarnpkg.com/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-48.20.0.tgz#a2b60373cfbe228f901f62f0d7e2c5e2fe40702d" + integrity sha512-+eeiav9LY4wbF/EFuCt/vfvi/Zoxo8bf94PW5clbMraChEliq83w4TbRVy0jB9jE0v1ooFTtIjSQkowSPkfISg== dependencies: jsonschema "~1.4.1" - semver "^7.7.1" + semver "^7.7.2" "@aws-crypto/crc32@2.0.0": version "2.0.0" @@ -6416,7 +6416,7 @@ "@octokit/endpoint@^9.0.6": version "9.0.6" - resolved "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz#114d912108fe692d8b139cfe7fc0846dfd11b6c0" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-9.0.6.tgz#114d912108fe692d8b139cfe7fc0846dfd11b6c0" integrity sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw== dependencies: "@octokit/types" "^13.1.0" @@ -6438,13 +6438,13 @@ "@octokit/openapi-types@^20.0.0": version "20.0.0" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz#9ec2daa0090eeb865ee147636e0c00f73790c6e5" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-20.0.0.tgz#9ec2daa0090eeb865ee147636e0c00f73790c6e5" integrity sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA== -"@octokit/openapi-types@^23.0.1": - version "23.0.1" - resolved "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz#3721646ecd36b596ddb12650e0e89d3ebb2dd50e" - integrity sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g== +"@octokit/openapi-types@^24.2.0": + version "24.2.0" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-24.2.0.tgz#3d55c32eac0d38da1a7083a9c3b0cca77924f7d3" + integrity sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg== "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" @@ -6453,7 +6453,7 @@ "@octokit/plugin-paginate-rest@^6.1.2", "@octokit/plugin-paginate-rest@^9.2.2": version "9.2.2" - resolved "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.2.2.tgz#c516bc498736bcdaa9095b9a1d10d9d0501ae831" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.2.2.tgz#c516bc498736bcdaa9095b9a1d10d9d0501ae831" integrity sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ== dependencies: "@octokit/types" "^12.6.0" @@ -6472,7 +6472,7 @@ "@octokit/request-error@^3.0.0", "@octokit/request-error@^5.1.1": version "5.1.1" - resolved "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz#b9218f9c1166e68bb4d0c89b638edc62c9334805" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-5.1.1.tgz#b9218f9c1166e68bb4d0c89b638edc62c9334805" integrity sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g== dependencies: "@octokit/types" "^13.1.0" @@ -6481,7 +6481,7 @@ "@octokit/request@^6.0.0", "@octokit/request@^8.4.1": version "8.4.1" - resolved "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz#715a015ccf993087977ea4365c44791fc4572486" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-8.4.1.tgz#715a015ccf993087977ea4365c44791fc4572486" integrity sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw== dependencies: "@octokit/endpoint" "^9.0.6" @@ -6508,17 +6508,17 @@ "@octokit/types@^12.6.0": version "12.6.0" - resolved "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz#8100fb9eeedfe083aae66473bd97b15b62aedcb2" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-12.6.0.tgz#8100fb9eeedfe083aae66473bd97b15b62aedcb2" integrity sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw== dependencies: "@octokit/openapi-types" "^20.0.0" "@octokit/types@^13.1.0": - version "13.8.0" - resolved "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz#3815885e5abd16ed9ffeea3dced31d37ce3f8a0a" - integrity sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A== + version "13.10.0" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-13.10.0.tgz#3e7c6b19c0236c270656e4ea666148c2b51fd1a3" + integrity sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA== dependencies: - "@octokit/openapi-types" "^23.0.1" + "@octokit/openapi-types" "^24.2.0" "@octokit/types@^9.0.0": version "9.3.2" @@ -8636,22 +8636,22 @@ aws-appsync@^4.1.9: uuid "3.x" aws-cdk-lib@^2.189.1, aws-cdk-lib@~2.187.0: - version "2.193.0" - resolved "https://registry.yarnpkg.com/aws-cdk-lib/-/aws-cdk-lib-2.193.0.tgz#2c97ac6794c955fbf62981de7d02c369fc9af967" - integrity sha512-Bsf11FM85+s9jSAT8JfDNlrSz6LF3Xa2eSNOyMLcXNopI7eVXP1U6opRHK0waaZGLmQfOwsbSp/9XRMKikkazg== + version "2.235.1" + resolved "https://registry.yarnpkg.com/aws-cdk-lib/-/aws-cdk-lib-2.235.1.tgz#99ecb8cebb8f5a508db52a19c8d02a915d8a23ba" + integrity sha512-qKAsbunxtveIOIaeJSBgH2PZgdIiPkKtfsa+BxeNDOv2idw6Oa0dJW3Q0sdu8XBopY1KZI2Owrg8r56BOyyohA== dependencies: - "@aws-cdk/asset-awscli-v1" "^2.2.229" + "@aws-cdk/asset-awscli-v1" "2.2.261" "@aws-cdk/asset-node-proxy-agent-v6" "^2.1.0" - "@aws-cdk/cloud-assembly-schema" "^41.0.0" + "@aws-cdk/cloud-assembly-schema" "^48.20.0" "@balena/dockerignore" "^1.0.2" case "1.6.3" - fs-extra "^11.3.0" + fs-extra "^11.3.3" ignore "^5.3.2" jsonschema "^1.5.0" mime-types "^2.1.35" minimatch "^3.1.2" punycode "^2.3.1" - semver "^7.7.1" + semver "^7.7.3" table "^6.9.0" yaml "1.10.2" @@ -8693,9 +8693,9 @@ axe-core@=4.7.0: integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== axios@1.6.0, axios@^1.0.0, axios@^1.7.4: - version "1.12.1" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.12.1.tgz#0747b39c5b615f81f93f2c138e6d82a71426937f" - integrity sha512-Kn4kbSXpkFHCGE6rBFNwIv0GQs4AvDT80jlveJDKFxjbTYMUeB4QtsdPCv6H8Cm19Je7IU6VFtRl2zWZI0rudQ== + version "1.13.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.2.tgz#9ada120b7b5ab24509553ec3e40123521117f687" + integrity sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA== dependencies: follow-redirects "^1.15.6" form-data "^4.0.4" @@ -9656,7 +9656,7 @@ convert-source-map@^2.0.0: cookie@^0.4.0, cookie@^0.7.0: version "0.7.2" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== copyfiles@^2.2.0: @@ -10746,11 +10746,11 @@ fast-url-parser@^1.1.3: punycode "^1.3.2" fast-xml-parser@4.2.5, fast-xml-parser@^4.2.5, fast-xml-parser@^4.4.1: - version "4.5.0" - resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.5.0.tgz#2882b7d01a6825dfdf909638f2de0256351def37" - integrity sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg== + version "4.5.3" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.3.tgz#c54d6b35aa0f23dc1ea60b6c884340c006dc6efb" + integrity sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig== dependencies: - strnum "^1.0.5" + strnum "^1.1.1" fastq@^1.6.0: version "1.15.0" @@ -10953,10 +10953,10 @@ fs-extra@^11.0.0, fs-extra@^11.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^11.3.0: - version "11.3.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz#0daced136bbaf65a555a326719af931adc7a314d" - integrity sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew== +fs-extra@^11.3.3: + version "11.3.3" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.3.tgz#a27da23b72524e81ac6c3815cc0179b8c74c59ee" + integrity sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" @@ -13251,9 +13251,9 @@ lodash.upperfirst@^4.3.1: integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.7.0, lodash@~4.17.0, lodash@~4.17.15: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== log-symbols@^3.0.0: version "3.0.0" @@ -15191,10 +15191,10 @@ semver@^7.2.1: resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== -semver@^7.7.1: - version "7.7.1" - resolved "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f" - integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== +semver@^7.7.2, semver@^7.7.3: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== sentence-case@^3.0.4: version "3.0.4" @@ -15639,10 +15639,10 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1. resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -strnum@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" - integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== +strnum@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.1.2.tgz#57bca4fbaa6f271081715dbc9ed7cee5493e28e4" + integrity sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA== strong-log-transformer@^2.1.0: version "2.1.0" From e24d15bc2edc901db04879ae928066c0ef29a17f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 14 Feb 2026 12:47:51 +0000 Subject: [PATCH 25/56] build(deps): bump qs from 6.14.1 to 6.14.2 Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2. - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.14.2) --- updated-dependencies: - dependency-name: qs dependency-version: 6.14.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index adef394bc..62af9eae3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14715,9 +14715,9 @@ q@^1.5.1: integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== qs@^6.11.2: - version "6.14.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" - integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== + version "6.14.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.2.tgz#b5634cf9d9ad9898e31fba3504e866e8efb6798c" + integrity sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q== dependencies: side-channel "^1.1.0" From e83df515e30af435f1aa4302a5daf6de1f2af6f9 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Mon, 23 Feb 2026 14:30:45 -0500 Subject: [PATCH 26/56] normalize paths --- .../tests/commands/models.test.js | 8 +++---- ...eAmplifyFlutterMinSupportedVersion.test.js | 10 ++++---- .../tests/utils/validateDartSDK.test.js | 24 ++++++++++--------- 3 files changed, 23 insertions(+), 19 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index f672bf6ac..840dd27f3 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -163,7 +163,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: frontend, 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; + MOCK_CONTEXT.parameters.options = { target: frontend, 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; // assert empty folder before generation expect(fs.readdirSync(overrideOutputDir).length).toEqual(0); @@ -200,7 +200,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: 'clojure', 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; + MOCK_CONTEXT.parameters.options = { target: 'clojure', 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; await expect(() => generateModels(MOCK_CONTEXT, { overrideOutputDir })) .rejects @@ -244,7 +244,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; + MOCK_CONTEXT.parameters.options = { 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; await expect(() => generateModels(MOCK_CONTEXT, { overrideOutputDir })) .rejects @@ -266,7 +266,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: 'javascript', 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; + MOCK_CONTEXT.parameters.options = { target: 'javascript', 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; await expect(() => generateModels(MOCK_CONTEXT)) .rejects diff --git a/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js b/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js index 51a311052..2bde1d031 100644 --- a/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js +++ b/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js @@ -9,6 +9,8 @@ const yaml = require('js-yaml'); const MOCK_PROJECT_ROOT = 'project'; const MOCK_PUBSPEC_FILE_PATH = join(MOCK_PROJECT_ROOT, PUBSPEC_LOCK_FILE_NAME); +// Normalize paths for mock-fs (always use forward slashes) +const normalizeMockPath = (p) => p.split(join('a', 'b')[1]).join('/'); global.console = { log: jest.fn() }; const mockErrorPrinter = console.log; @@ -33,7 +35,7 @@ describe('Validate amplify flutter version tests', () => { }, }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(true); }); }); @@ -49,7 +51,7 @@ describe('Validate amplify flutter version tests', () => { }, }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); }); }); @@ -57,7 +59,7 @@ describe('Validate amplify flutter version tests', () => { it('should return false if the sdk version cannot be found', () => { const lockFile = {}; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); }); @@ -78,7 +80,7 @@ describe('Validate amplify flutter version tests', () => { it('should print error when error is thrown while loading yaml file', () => { const lockFile = {}; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); expect(mockErrorPrinter).toHaveBeenCalledTimes(3); diff --git a/packages/amplify-codegen/tests/utils/validateDartSDK.test.js b/packages/amplify-codegen/tests/utils/validateDartSDK.test.js index d80da4529..9db77db28 100644 --- a/packages/amplify-codegen/tests/utils/validateDartSDK.test.js +++ b/packages/amplify-codegen/tests/utils/validateDartSDK.test.js @@ -5,6 +5,8 @@ const yaml = require('js-yaml'); const MOCK_PROJECT_ROOT = 'project'; const MOCK_PUBSPEC_FILE_PATH = join(MOCK_PROJECT_ROOT, PUBSPEC_FILE_NAME); +// Normalize paths for mock-fs (always use forward slashes) +const normalizeMockPath = (p) => p.split(join('a', 'b')[1]).join('/'); const MOCK_CONTEXT = { print: { warning: jest.fn(), @@ -23,7 +25,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '2.12.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -33,7 +35,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.12.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -43,7 +45,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.18.0-release1', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -53,7 +55,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.12.0 <3.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -63,7 +65,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.18.0-release1 <3.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); }); @@ -75,7 +77,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '2.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -85,7 +87,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -95,7 +97,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.0.0-release1', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -105,7 +107,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.0.0 <3.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -115,14 +117,14 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.0.0-release1 <3.0.0', }, }; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); }); it('should return true if the sdk version cannot be found', () => { const config = {}; - mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); + mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); }); From c29ffe9ae9b0d27d2dc20f72b886de02b3196a6a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Feb 2026 20:13:02 +0000 Subject: [PATCH 27/56] build(deps): bump axios from 1.12.1 to 1.13.5 Bumps [axios](https://github.com/axios/axios) from 1.12.1 to 1.13.5. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.12.1...v1.13.5) --- updated-dependencies: - dependency-name: axios dependency-version: 1.13.5 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0bfccfcc9..6f4300987 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8693,12 +8693,12 @@ axe-core@=4.7.0: integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== axios@1.6.0, axios@^1.0.0, axios@^1.7.4: - version "1.13.2" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.2.tgz#9ada120b7b5ab24509553ec3e40123521117f687" - integrity sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA== + version "1.13.5" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.5.tgz#5e464688fa127e11a660a2c49441c009f6567a43" + integrity sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q== dependencies: - follow-redirects "^1.15.6" - form-data "^4.0.4" + follow-redirects "^1.15.11" + form-data "^4.0.5" proxy-from-env "^1.1.0" axobject-query@^3.2.1: @@ -10906,10 +10906,10 @@ fn.name@1.x.x: resolved "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz#26cad8017967aea8731bc42961d04a3d5988accc" integrity sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw== -follow-redirects@^1.15.6: - version "1.15.6" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" - integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== +follow-redirects@^1.15.11: + version "1.15.11" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" + integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== for-each@^0.3.3: version "0.3.3" @@ -10918,7 +10918,7 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" -form-data@^3.0.0, form-data@^4.0.4: +form-data@^3.0.0, form-data@^4.0.4, form-data@^4.0.5: version "4.0.4" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== From 948a4e0fa5554453f676a34de9843f5345f3520b Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Mon, 23 Feb 2026 15:47:45 -0500 Subject: [PATCH 28/56] chore: upgrade mock-fs --- packages/amplify-codegen/package.json | 2 +- yarn.lock | 28 +++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/amplify-codegen/package.json b/packages/amplify-codegen/package.json index bed828b91..db830de06 100644 --- a/packages/amplify-codegen/package.json +++ b/packages/amplify-codegen/package.json @@ -66,6 +66,6 @@ }, "devDependencies": { "@types/prettier": "^1.19.0", - "mock-fs": "^4.13.0" + "mock-fs": "^5.4.0" } } diff --git a/yarn.lock b/yarn.lock index adef394bc..5427577d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13607,10 +13607,10 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mock-fs@^4.13.0: - version "4.14.0" - resolved "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz#ce5124d2c601421255985e6e94da80a7357b1b18" - integrity sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw== +mock-fs@^5.4.0: + version "5.5.0" + resolved "https://registry.npmjs.org/mock-fs/-/mock-fs-5.5.0.tgz#94a46d299aaa588e735a201cbe823c876e91f385" + integrity sha512-d/P1M/RacgM3dB0sJ8rjeRNXxtapkPCUnMGmIN0ixJ16F/E4GUZCvWcSGfWGz8eaXYvn1s9baUwNjI4LOPEjiA== modify-values@^1.0.0: version "1.0.1" @@ -13658,11 +13658,6 @@ mute-stream@0.0.8, mute-stream@~0.0.4: resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.17.0: - version "2.18.0" - resolved "https://registry.npmjs.org/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554" - integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w== - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -13706,6 +13701,11 @@ node-addon-api@^3.2.1: resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== +node-addon-api@^7.1.0: + version "7.1.1" + resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558" + integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== + node-fetch@^2.6.1, node-fetch@^2.6.7, node-fetch@^3.3.2: version "2.7.0" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" @@ -13740,12 +13740,12 @@ node-int64@^0.4.0: resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-pty@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/node-pty/-/node-pty-1.0.0.tgz#7daafc0aca1c4ca3de15c61330373af4af5861fd" - integrity sha512-wtBMWWS7dFZm/VgqElrTvtfMq4GzJ6+edFI0Y0zyzygUSZMgZdraDUMUhCIvkjhJjme15qWmbyJbtAx4ot4uZA== +node-pty@1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz#161936d45a47751c2e3b694c365e73017417a887" + integrity sha512-20JqtutY6JPXTUnL0ij1uad7Qe1baT46lyolh2sSENDd4sTzKZ4nmAFkeAARDKwmlLjPx6XKRlwRUxwjOy+lUg== dependencies: - nan "^2.17.0" + node-addon-api "^7.1.0" node-releases@^2.0.14: version "2.0.14" From f39df20472a250f73a7d50e396cd13ff6cfce509 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Mon, 23 Feb 2026 16:12:59 -0500 Subject: [PATCH 29/56] chore: remove normalize path --- .../tests/commands/mock-fs-setup.js | 5 +-- .../commands/model-introspection.test.js | 11 ++--- .../tests/commands/models.test.js | 41 +++++++++---------- ...eAmplifyFlutterMinSupportedVersion.test.js | 10 ++--- .../tests/utils/validateDartSDK.test.js | 24 +++++------ 5 files changed, 39 insertions(+), 52 deletions(-) diff --git a/packages/amplify-codegen/tests/commands/mock-fs-setup.js b/packages/amplify-codegen/tests/commands/mock-fs-setup.js index 445584b42..7ad30f5be 100644 --- a/packages/amplify-codegen/tests/commands/mock-fs-setup.js +++ b/packages/amplify-codegen/tests/commands/mock-fs-setup.js @@ -2,9 +2,6 @@ const mockFs = require('mock-fs'); const path = require('path'); const { getOutputFileName } = require('@aws-amplify/graphql-types-generator'); -// Normalize paths for mock-fs (always use forward slashes) -const normalizeMockPath = (p) => p.split(path.sep).join('/'); - /* Setup mocks for types and statements generation. * Create a mock filesystem so that output paths can be tested. * Mocks existence of `schema.json` using mocks fs @@ -24,7 +21,7 @@ function setupMocks(mockFs, loadConfig, apiId, frontend, target, generatedFileNa // load actual prettier module to avoid error // Cannot find module './parser-graphql' from '../../node_modules/prettier/index.js' // It's not clear why other modules don't need to be loaded - [normalizeMockPath(nodeModulesPrettier)]: mockFs.load(nodeModulesPrettier, { + [nodeModulesPrettier]: mockFs.load(nodeModulesPrettier, { recursive: true, lazy: true, }), diff --git a/packages/amplify-codegen/tests/commands/model-introspection.test.js b/packages/amplify-codegen/tests/commands/model-introspection.test.js index d0c67729d..3fe5d72f9 100644 --- a/packages/amplify-codegen/tests/commands/model-introspection.test.js +++ b/packages/amplify-codegen/tests/commands/model-introspection.test.js @@ -28,9 +28,6 @@ const MOCK_BACKEND_DIRECTORY = 'backend'; const MOCK_GENERATED_INTROSPECTION = { schemaVersion: 1 }; const MOCK_GENERATED_CODE = JSON.stringify(MOCK_GENERATED_INTROSPECTION); -// Normalize paths for mock-fs (always use forward slashes) -const normalizeMockPath = (p) => p.split(path.sep).join('/'); - const MOCK_CONTEXT = { print: { info: jest.fn(), @@ -62,10 +59,10 @@ describe('generateModelIntrospection', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, MOCK_OUTPUT_DIR); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; beforeAll(() => { codegen_core.codegen.mockReturnValue(MOCK_GENERATED_CODE); @@ -111,10 +108,10 @@ describe('getModelIntrospection', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, MOCK_OUTPUT_DIR); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; beforeAll(() => { codegen_core.codegen.mockReturnValue(MOCK_GENERATED_CODE); diff --git a/packages/amplify-codegen/tests/commands/models.test.js b/packages/amplify-codegen/tests/commands/models.test.js index 840dd27f3..935057f53 100644 --- a/packages/amplify-codegen/tests/commands/models.test.js +++ b/packages/amplify-codegen/tests/commands/models.test.js @@ -46,9 +46,6 @@ const MOCK_PROJECT_ROOT = 'project'; const MOCK_PROJECT_NAME = 'myapp'; const MOCK_BACKEND_DIRECTORY = 'backend'; -// Normalize paths for mock-fs (always use forward slashes) -const normalizeMockPath = (p) => p.split(path.sep).join('/'); - describe('command-models-generates models in expected output path', () => { beforeEach(() => { jest.resetAllMocks(); @@ -63,10 +60,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -84,10 +81,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFolderPath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME, 'schema', 'nested', 'deeply'); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFolderPath)] = { + mockedFiles[schemaFolderPath] = { 'myschema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -105,11 +102,11 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; mockedFiles[overrideOutputDir] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -132,10 +129,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); @@ -151,7 +148,7 @@ describe('command-models-generates models in expected output path', () => { it(frontend + ': Should generate for frontend when backend is not initialized locally, and logs no warnings or errors', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { + mockedFiles[MOCK_PROJECT_ROOT] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -163,7 +160,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: frontend, 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; + MOCK_CONTEXT.parameters.options = { target: frontend, 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; // assert empty folder before generation expect(fs.readdirSync(overrideOutputDir).length).toEqual(0); @@ -188,7 +185,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on invalid target option', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { + mockedFiles[MOCK_PROJECT_ROOT] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -200,7 +197,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: 'clojure', 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; + MOCK_CONTEXT.parameters.options = { target: 'clojure', 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; await expect(() => generateModels(MOCK_CONTEXT, { overrideOutputDir })) .rejects @@ -210,7 +207,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing model-schema flag and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { + mockedFiles[MOCK_PROJECT_ROOT] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -232,7 +229,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing target flag and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { + mockedFiles[MOCK_PROJECT_ROOT] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -244,7 +241,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; + MOCK_CONTEXT.parameters.options = { 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; await expect(() => generateModels(MOCK_CONTEXT, { overrideOutputDir })) .rejects @@ -254,7 +251,7 @@ describe('command-models-generates models in expected output path', () => { it('throws an understandable error on missing override output dir and uninitialized backend', async () => { // mock the input and output file structure const mockedFiles = {}; - mockedFiles[normalizeMockPath(MOCK_PROJECT_ROOT)] = { + mockedFiles[MOCK_PROJECT_ROOT] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; const overrideOutputDir = 'some/other/dir'; @@ -266,7 +263,7 @@ describe('command-models-generates models in expected output path', () => { MOCK_CONTEXT.amplify.getProjectConfig.mockImplementation(() => { throw new Error('getProjectConfig Internal Error') }); MOCK_CONTEXT.amplify.getResourceStatus.mockImplementation(() => { throw new Error('getResourceStatus Internal Error') }); MOCK_CONTEXT.amplify.executeProviderUtils.mockImplementation(() => { throw new Error('executeProviderUtils Internal Error') }); - MOCK_CONTEXT.parameters.options = { target: 'javascript', 'model-schema': normalizeMockPath(path.join(MOCK_PROJECT_ROOT, 'schema.graphql')) }; + MOCK_CONTEXT.parameters.options = { target: 'javascript', 'model-schema': path.join(MOCK_PROJECT_ROOT, 'schema.graphql') }; await expect(() => generateModels(MOCK_CONTEXT)) .rejects @@ -280,10 +277,10 @@ describe('command-models-generates models in expected output path', () => { const schemaFilePath = path.join(MOCK_BACKEND_DIRECTORY, 'api', MOCK_PROJECT_NAME); const outputDirectory = path.join(MOCK_PROJECT_ROOT, OUTPUT_PATHS[frontend]); const mockedFiles = {}; - mockedFiles[normalizeMockPath(schemaFilePath)] = { + mockedFiles[schemaFilePath] = { 'schema.graphql': ' type SimpleModel @model { id: ID! status: String } ', }; - mockedFiles[normalizeMockPath(outputDirectory)] = {}; + mockedFiles[outputDirectory] = {}; mockFs(mockedFiles); MOCK_CONTEXT.amplify.getProjectConfig.mockReturnValue({ frontend: frontend }); diff --git a/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js b/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js index 2bde1d031..51a311052 100644 --- a/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js +++ b/packages/amplify-codegen/tests/utils/validateAmplifyFlutterMinSupportedVersion.test.js @@ -9,8 +9,6 @@ const yaml = require('js-yaml'); const MOCK_PROJECT_ROOT = 'project'; const MOCK_PUBSPEC_FILE_PATH = join(MOCK_PROJECT_ROOT, PUBSPEC_LOCK_FILE_NAME); -// Normalize paths for mock-fs (always use forward slashes) -const normalizeMockPath = (p) => p.split(join('a', 'b')[1]).join('/'); global.console = { log: jest.fn() }; const mockErrorPrinter = console.log; @@ -35,7 +33,7 @@ describe('Validate amplify flutter version tests', () => { }, }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(true); }); }); @@ -51,7 +49,7 @@ describe('Validate amplify flutter version tests', () => { }, }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); }); }); @@ -59,7 +57,7 @@ describe('Validate amplify flutter version tests', () => { it('should return false if the sdk version cannot be found', () => { const lockFile = {}; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); }); @@ -80,7 +78,7 @@ describe('Validate amplify flutter version tests', () => { it('should print error when error is thrown while loading yaml file', () => { const lockFile = {}; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(lockFile) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(lockFile) }); expect(validateAmplifyFlutterMinSupportedVersion(MOCK_PROJECT_ROOT)).toBe(false); expect(mockErrorPrinter).toHaveBeenCalledTimes(3); diff --git a/packages/amplify-codegen/tests/utils/validateDartSDK.test.js b/packages/amplify-codegen/tests/utils/validateDartSDK.test.js index 9db77db28..d80da4529 100644 --- a/packages/amplify-codegen/tests/utils/validateDartSDK.test.js +++ b/packages/amplify-codegen/tests/utils/validateDartSDK.test.js @@ -5,8 +5,6 @@ const yaml = require('js-yaml'); const MOCK_PROJECT_ROOT = 'project'; const MOCK_PUBSPEC_FILE_PATH = join(MOCK_PROJECT_ROOT, PUBSPEC_FILE_NAME); -// Normalize paths for mock-fs (always use forward slashes) -const normalizeMockPath = (p) => p.split(join('a', 'b')[1]).join('/'); const MOCK_CONTEXT = { print: { warning: jest.fn(), @@ -25,7 +23,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '2.12.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -35,7 +33,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.12.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -45,7 +43,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.18.0-release1', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -55,7 +53,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.12.0 <3.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); @@ -65,7 +63,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.18.0-release1 <3.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); }); @@ -77,7 +75,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '2.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -87,7 +85,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -97,7 +95,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '^2.0.0-release1', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -107,7 +105,7 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.0.0 <3.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); @@ -117,14 +115,14 @@ describe('Validate Dart SDK version tests', () => { sdk: '>=2.0.0-release1 <3.0.0', }, }; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(false); }); }); it('should return true if the sdk version cannot be found', () => { const config = {}; - mockFs({ [normalizeMockPath(MOCK_PUBSPEC_FILE_PATH)]: yaml.dump(config) }); + mockFs({ [MOCK_PUBSPEC_FILE_PATH]: yaml.dump(config) }); expect(validateDartSDK(MOCK_CONTEXT, MOCK_PROJECT_ROOT)).toBe(true); }); }); From f8c5cadafa3f258d5ea554f3df0815da8dfe0103 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Wed, 25 Feb 2026 15:07:31 -0500 Subject: [PATCH 30/56] fix: fix windows e2es --- shared-scripts.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/shared-scripts.sh b/shared-scripts.sh index 35624b73a..d5f0afb63 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -282,6 +282,11 @@ function _setupE2ETestsLinux { function _setupE2ETestsWindows { echo "Setup E2E Tests Windows" + # Ensure HOME is set for Windows environments (VS 2022 containers may not set it) + if [ -z "$HOME" ]; then + export HOME="${USERPROFILE:-$CODEBUILD_SRC_DIR/..}" + echo "Set HOME to: $HOME" + fi loadCacheFromWindowsBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache windows _installCLIFromLocalRegistry windows From 8aa9756ad918105e9e30a3e831fb936f02315640 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Wed, 25 Feb 2026 16:36:07 -0500 Subject: [PATCH 31/56] fix: set home for windows --- .codebuild/scripts/e2e_test_windows.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.codebuild/scripts/e2e_test_windows.sh b/.codebuild/scripts/e2e_test_windows.sh index 1cdcee9fb..06d684ae5 100755 --- a/.codebuild/scripts/e2e_test_windows.sh +++ b/.codebuild/scripts/e2e_test_windows.sh @@ -3,6 +3,11 @@ # set exit on error to true set -e +# Ensure HOME is set for Windows environments +if [ -z "$HOME" ]; then + export HOME="${USERPROFILE:-$CODEBUILD_SRC_DIR/..}" +fi + source ./shared-scripts.sh && _setupE2ETestsWindows codebuild-breakpoint source ./shared-scripts.sh && _runE2ETestsWindows From 8835fdd192212b02e7591ebf1b657e0da3263d38 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 13:11:36 +0000 Subject: [PATCH 32/56] Merge pull request #987 from aws-amplify/dependabot/npm_and_yarn/basic-ftp-5.2.0 build(deps): bump basic-ftp from 5.0.3 to 5.2.0 --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 6f4300987..9a1cd59ff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8862,9 +8862,9 @@ base64-js@^1.0.2, base64-js@^1.3.1: integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== basic-ftp@^5.0.2: - version "5.0.3" - resolved "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.3.tgz#b14c0fe8111ce001ec913686434fe0c2fb461228" - integrity sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g== + version "5.2.0" + resolved "https://registry.yarnpkg.com/basic-ftp/-/basic-ftp-5.2.0.tgz#7c2dff63c918bde60e6bad1f2ff93dcf5137a40a" + integrity sha512-VoMINM2rqJwJgfdHq6RiUudKt2BV+FY5ZFezP/ypmwayk68+NzzAQy4XXLlqsGD4MCzq3DrmNFD/uUmBJuGoXw== before-after-hook@^2.2.0: version "2.2.3" From ccc99d48163abf83b112d9efaef0db527756a9fc Mon Sep 17 00:00:00 2001 From: Adnan Khan Date: Fri, 27 Feb 2026 08:44:35 -0500 Subject: [PATCH 33/56] ci: scope down permissions for closed-issue-message.yml (#975) Co-authored-by: Momo Kornher From 8d25b79a1525b2ca9869d594d8e1dd8d62362c9f Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Fri, 27 Feb 2026 13:32:57 -0500 Subject: [PATCH 34/56] chore: change npm folder for windows --- .codebuild/scripts/local_publish_helpers.sh | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/.codebuild/scripts/local_publish_helpers.sh b/.codebuild/scripts/local_publish_helpers.sh index 75d65b11f..2e8d00079 100644 --- a/.codebuild/scripts/local_publish_helpers.sh +++ b/.codebuild/scripts/local_publish_helpers.sh @@ -48,11 +48,19 @@ function unsetSudoNpmRegistryUrl { } function changeNpmGlobalPath { - mkdir -p ~/.npm-global - if [ -z $SKIP_SET_NPM_PREFIX ]; then - npm config set prefix '~/.npm-global' + if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then + mkdir -p "$USERPROFILE/.npm-global" + if [ -z $SKIP_SET_NPM_PREFIX ]; then + npm config set prefix "$USERPROFILE/.npm-global" + fi + export PATH="$USERPROFILE/.npm-global/bin:$PATH" + else + mkdir -p ~/.npm-global + if [ -z $SKIP_SET_NPM_PREFIX ]; then + npm config set prefix '~/.npm-global' + fi + export PATH=~/.npm-global/bin:$PATH fi - export PATH=~/.npm-global/bin:$PATH } function changeSudoNpmGlobalPath { From a92d3eab64c63bad894642883f25aa9f80cb5b64 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Fri, 27 Feb 2026 14:51:00 -0500 Subject: [PATCH 35/56] chore: remove unnecessary changes and upgrade aws-appsync --- .codebuild/scripts/e2e_test_windows.sh | 5 ----- .../amplify-codegen-e2e-tests/package.json | 2 +- shared-scripts.sh | 5 ----- yarn.lock | 18 +++++++++--------- 4 files changed, 10 insertions(+), 20 deletions(-) diff --git a/.codebuild/scripts/e2e_test_windows.sh b/.codebuild/scripts/e2e_test_windows.sh index 06d684ae5..1cdcee9fb 100755 --- a/.codebuild/scripts/e2e_test_windows.sh +++ b/.codebuild/scripts/e2e_test_windows.sh @@ -3,11 +3,6 @@ # set exit on error to true set -e -# Ensure HOME is set for Windows environments -if [ -z "$HOME" ]; then - export HOME="${USERPROFILE:-$CODEBUILD_SRC_DIR/..}" -fi - source ./shared-scripts.sh && _setupE2ETestsWindows codebuild-breakpoint source ./shared-scripts.sh && _runE2ETestsWindows diff --git a/packages/amplify-codegen-e2e-tests/package.json b/packages/amplify-codegen-e2e-tests/package.json index f2dbea302..0c7fb4175 100644 --- a/packages/amplify-codegen-e2e-tests/package.json +++ b/packages/amplify-codegen-e2e-tests/package.json @@ -27,7 +27,7 @@ "@aws-amplify/graphql-schema-test-library": "^3.0.0", "amazon-cognito-identity-js": "^6.3.6", "aws-amplify": "^5.3.3", - "aws-appsync": "^4.1.9", + "aws-appsync": "^4.1.10", "aws-sdk": "^2.1413.0", "dotenv": "^8.2.0", "esm": "^3.2.25", diff --git a/shared-scripts.sh b/shared-scripts.sh index d5f0afb63..35624b73a 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -282,11 +282,6 @@ function _setupE2ETestsLinux { function _setupE2ETestsWindows { echo "Setup E2E Tests Windows" - # Ensure HOME is set for Windows environments (VS 2022 containers may not set it) - if [ -z "$HOME" ]; then - export HOME="${USERPROFILE:-$CODEBUILD_SRC_DIR/..}" - echo "Set HOME to: $HOME" - fi loadCacheFromWindowsBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache windows _installCLIFromLocalRegistry windows diff --git a/yarn.lock b/yarn.lock index 5427577d1..2946aa691 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8596,10 +8596,10 @@ aws-appsync-auth-link@^2.0.8: apollo-link "1.2.5" debug "2.6.9" -aws-appsync-subscription-link@^2.4.2: - version "2.4.2" - resolved "https://registry.npmjs.org/aws-appsync-subscription-link/-/aws-appsync-subscription-link-2.4.2.tgz#ea98c6a912d265f9f42515fc29b55a52330f11bd" - integrity sha512-r/PdEd/aLALB2os1MhFglXO9RWkwx7JTcFS6ARo2c8ObAErrfaKekzX/SQjVDzY1fAQeEdTny8WRCwbzMECEsA== +aws-appsync-subscription-link@^2.4.3: + version "2.4.3" + resolved "https://registry.npmjs.org/aws-appsync-subscription-link/-/aws-appsync-subscription-link-2.4.3.tgz#39d1b2e6dadf166f3dfaa79d1cc261674c438123" + integrity sha512-+UeQAlxtNUwSThmeYSyqlGMPouw8agR+PgtT6dzHbznUYSaljmEx73xvxTbd+2V7Jas0MAf2tWFBsd8GFs+LyQ== dependencies: apollo-link "1.2.5" apollo-link-context "1.0.11" @@ -8610,10 +8610,10 @@ aws-appsync-subscription-link@^2.4.2: url "^0.11.0" zen-observable-ts "^1.2.5" -aws-appsync@^4.1.9: - version "4.1.9" - resolved "https://registry.npmjs.org/aws-appsync/-/aws-appsync-4.1.9.tgz#ec084d9b6a3a40334822e49864fed14fbf9558ef" - integrity sha512-YlOxC81Ij25UmSUVocbFF+TA5tItYAkL+04Y+gPBvZGCmrKI4+g/Z9b6c6IrX4IaG0eh4msizeZuwlUUjsEvlQ== +aws-appsync@^4.1.10: + version "4.1.10" + resolved "https://registry.npmjs.org/aws-appsync/-/aws-appsync-4.1.10.tgz#24ac0feee98d5dea97106f32ab6cac9f6ccf4f04" + integrity sha512-UCDDYXmDfPLGQKvQMjR1l87BvwEYEQySBLkY+RQTPLn2gSobRJIZhj7N7SZMTrtqRLK8GY5l6qP0JESKoR/g9g== dependencies: "@aws-crypto/sha256-universal" "^1.1.1" "@aws-sdk/client-s3" "^3.25.0" @@ -8627,7 +8627,7 @@ aws-appsync@^4.1.9: apollo-link-http "1.5.8" apollo-link-retry "2.2.7" aws-appsync-auth-link "^2.0.8" - aws-appsync-subscription-link "^2.4.2" + aws-appsync-subscription-link "^2.4.3" debug "2.6.9" redux "^3.7.2" redux-thunk "^2.2.0" From fcae6eefc59f34486401d62ef2c0bbd3ca14d616 Mon Sep 17 00:00:00 2001 From: aws-amplify-bot Date: Fri, 27 Feb 2026 15:18:29 -0500 Subject: [PATCH 36/56] chore: set home for windows --- .codebuild/scripts/e2e_test_windows.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.codebuild/scripts/e2e_test_windows.sh b/.codebuild/scripts/e2e_test_windows.sh index 1cdcee9fb..52579544c 100755 --- a/.codebuild/scripts/e2e_test_windows.sh +++ b/.codebuild/scripts/e2e_test_windows.sh @@ -3,6 +3,11 @@ # set exit on error to true set -e +# Ensure HOME is set for Windows environments +if [ -z "$HOME" ]; then + export HOME="${USERPROFILE:-$CODEBUILD_SRC_DIR/..}" +fi + source ./shared-scripts.sh && _setupE2ETestsWindows codebuild-breakpoint source ./shared-scripts.sh && _runE2ETestsWindows From 3efb2c0d7fca9494cd2ee8878cdb6fd870e858c9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 27 Feb 2026 22:19:59 +0000 Subject: [PATCH 37/56] build(deps): bump fast-xml-parser from 4.5.3 to 4.5.4 Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.5.3 to 4.5.4. - [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases) - [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md) - [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v4.5.3...v4.5.4) --- updated-dependencies: - dependency-name: fast-xml-parser dependency-version: 4.5.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index e0eac24ed..cf97a5624 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10746,11 +10746,11 @@ fast-url-parser@^1.1.3: punycode "^1.3.2" fast-xml-parser@4.2.5, fast-xml-parser@^4.2.5, fast-xml-parser@^4.4.1: - version "4.5.3" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.3.tgz#c54d6b35aa0f23dc1ea60b6c884340c006dc6efb" - integrity sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig== + version "4.5.4" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.4.tgz#64e52ddf1308001893bd225d5b1768840511c797" + integrity sha512-jE8ugADnYOBsu1uaoayVl1tVKAMNOXyjwvv2U6udEA2ORBhDooJDWoGxTkhd4Qn4yh59JVVt/pKXtjPwx9OguQ== dependencies: - strnum "^1.1.1" + strnum "^1.0.5" fastq@^1.6.0: version "1.15.0" @@ -15639,7 +15639,7 @@ strip-json-comments@3.1.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1. resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -strnum@^1.1.1: +strnum@^1.0.5: version "1.1.2" resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.1.2.tgz#57bca4fbaa6f271081715dbc9ed7cee5493e28e4" integrity sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA== From d9390e131966f0cc6c85ec01e2555c4bcef5aae6 Mon Sep 17 00:00:00 2001 From: L Vieltojarvi <81589006+ShadowCat567@users.noreply.github.com> Date: Tue, 3 Mar 2026 10:03:17 -0500 Subject: [PATCH 38/56] chore: upgrade to AWS SDK V3 (#989) * chore: upgrade to aws sdk v3 * chore: liscense * chore: versions * fix: upgrade node, fixes for migration --------- Co-authored-by: aws-amplify-bot --- dependency_licenses.txt | 749 +++--- package.json | 5 +- .../amplify-codegen-e2e-core/package.json | 14 +- .../src/categories/lambda-function.ts | 8 +- .../src/utils/pinpoint.ts | 20 +- .../src/utils/sdk-calls.ts | 220 +- .../functions/get-api-appsync.js | 6 +- .../functions/mutation-appsync.js | 5 +- .../amplify-codegen-e2e-tests/package.json | 13 +- .../src/aws-matchers/iamMatcher.ts | 16 +- .../src/aws-matchers/s3matcher.ts | 6 +- .../src/cleanup-e2e-resources.ts | 144 +- .../src/import-helpers/utilities.ts | 47 +- .../src/schema-api-directives/authHelper.ts | 70 +- .../tests/function-example2.ts | 10 +- .../tests/predictions-usage.ts | 17 +- scripts/view-test-artifacts.ts | 31 +- shared-scripts.sh | 9 +- yarn.lock | 2073 ++++++++++++++++- 19 files changed, 2667 insertions(+), 796 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 786e0f8e4..f6b67ecc3 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -1074,7 +1074,7 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. ----- -The following software may be included in this product: @aws-amplify/data-schema-types, aws-appsync. A copy of the source code may be downloaded from https://github.com/awslabs/aws-mobile-appsync-sdk-js.git (aws-appsync). This software contains the following license and notice below: +The following software may be included in this product: @aws-amplify/data-schema-types, @aws/lambda-invoke-store, aws-appsync. A copy of the source code may be downloaded from git+https://github.com/awslabs/aws-lambda-invoke-store.git (@aws/lambda-invoke-store), https://github.com/awslabs/aws-mobile-appsync-sdk-js.git (aws-appsync). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -2132,7 +2132,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/abort-controller, @aws-sdk/config-resolver, @aws-sdk/credential-provider-env, @aws-sdk/credential-provider-imds, @aws-sdk/credential-provider-ini, @aws-sdk/credential-provider-node, @aws-sdk/credential-providers, @aws-sdk/fetch-http-handler, @aws-sdk/hash-node, @aws-sdk/is-array-buffer, @aws-sdk/lib-storage, @aws-sdk/md5-js, @aws-sdk/middleware-content-length, @aws-sdk/middleware-signing, @aws-sdk/middleware-stack, @aws-sdk/node-http-handler, @aws-sdk/property-provider, @aws-sdk/region-config-resolver, @aws-sdk/shared-ini-file-loader, @aws-sdk/signature-v4, @aws-sdk/token-providers, @aws-sdk/types, @aws-sdk/util-arn-parser, @aws-sdk/util-base64-browser, @aws-sdk/util-base64-node, @aws-sdk/util-body-length-browser, @aws-sdk/util-body-length-node, @aws-sdk/util-buffer-from, @aws-sdk/util-endpoints, @aws-sdk/util-hex-encoding, @aws-sdk/util-locate-window, @aws-sdk/util-uri-escape, @aws-sdk/util-utf8-browser, @aws-sdk/util-utf8-node, @aws-sdk/util-waiter, @aws-sdk/xml-builder, @smithy/abort-controller, @smithy/chunked-blob-reader, @smithy/chunked-blob-reader-native, @smithy/config-resolver, @smithy/credential-provider-imds, @smithy/fetch-http-handler, @smithy/hash-blob-browser, @smithy/hash-node, @smithy/hash-stream-node, @smithy/is-array-buffer, @smithy/md5-js, @smithy/middleware-content-length, @smithy/middleware-endpoint, @smithy/middleware-stack, @smithy/node-http-handler, @smithy/property-provider, @smithy/shared-ini-file-loader, @smithy/signature-v4, @smithy/util-base64, @smithy/util-body-length-browser, @smithy/util-body-length-node, @smithy/util-buffer-from, @smithy/util-hex-encoding, @smithy/util-stream, @smithy/util-uri-escape, @smithy/util-utf8, @smithy/util-waiter. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/abort-controller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-env), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-imds), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-ini), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/fetch-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/hash-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/is-array-buffer), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/lib-storage), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/md5-js), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-content-length), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-signing), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-stack), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/property-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/region-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/shared-ini-file-loader), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/token-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/types), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-arn-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-buffer-from), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-endpoints), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-hex-encoding), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-locate-window), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-uri-escape), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-waiter), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/xml-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/abort-controller), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader-native), https://github.com/awslabs/smithy-typescript.git (@smithy/config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/credential-provider-imds), https://github.com/awslabs/smithy-typescript.git (@smithy/fetch-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-blob-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-node), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-stream-node), https://github.com/awslabs/smithy-typescript.git (@smithy/is-array-buffer), https://github.com/awslabs/smithy-typescript.git (@smithy/md5-js), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-content-length), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-endpoint), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-stack), https://github.com/awslabs/smithy-typescript.git (@smithy/node-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/property-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/shared-ini-file-loader), https://github.com/awslabs/smithy-typescript.git (@smithy/signature-v4), https://github.com/awslabs/smithy-typescript.git (@smithy/util-base64), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-node), https://github.com/awslabs/smithy-typescript.git (@smithy/util-buffer-from), https://github.com/awslabs/smithy-typescript.git (@smithy/util-hex-encoding), https://github.com/awslabs/smithy-typescript.git (@smithy/util-stream), https://github.com/awslabs/smithy-typescript.git (@smithy/util-uri-escape), https://github.com/awslabs/smithy-typescript.git (@smithy/util-utf8), https://github.com/awslabs/smithy-typescript.git (@smithy/util-waiter). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/abort-controller, @aws-sdk/config-resolver, @aws-sdk/crc64-nvme, @aws-sdk/credential-provider-env, @aws-sdk/credential-provider-imds, @aws-sdk/credential-provider-ini, @aws-sdk/credential-provider-node, @aws-sdk/credential-providers, @aws-sdk/dynamodb-codec, @aws-sdk/fetch-http-handler, @aws-sdk/hash-node, @aws-sdk/is-array-buffer, @aws-sdk/lib-storage, @aws-sdk/md5-js, @aws-sdk/middleware-content-length, @aws-sdk/middleware-signing, @aws-sdk/middleware-stack, @aws-sdk/node-http-handler, @aws-sdk/property-provider, @aws-sdk/region-config-resolver, @aws-sdk/shared-ini-file-loader, @aws-sdk/signature-v4, @aws-sdk/token-providers, @aws-sdk/types, @aws-sdk/util-arn-parser, @aws-sdk/util-base64-browser, @aws-sdk/util-base64-node, @aws-sdk/util-body-length-browser, @aws-sdk/util-body-length-node, @aws-sdk/util-buffer-from, @aws-sdk/util-endpoints, @aws-sdk/util-hex-encoding, @aws-sdk/util-locate-window, @aws-sdk/util-uri-escape, @aws-sdk/util-utf8-browser, @aws-sdk/util-utf8-node, @aws-sdk/util-waiter, @aws-sdk/xml-builder, @smithy/abort-controller, @smithy/chunked-blob-reader, @smithy/chunked-blob-reader-native, @smithy/config-resolver, @smithy/credential-provider-imds, @smithy/fetch-http-handler, @smithy/hash-blob-browser, @smithy/hash-node, @smithy/hash-stream-node, @smithy/is-array-buffer, @smithy/md5-js, @smithy/middleware-content-length, @smithy/middleware-endpoint, @smithy/middleware-stack, @smithy/node-http-handler, @smithy/property-provider, @smithy/shared-ini-file-loader, @smithy/signature-v4, @smithy/util-base64, @smithy/util-body-length-browser, @smithy/util-body-length-node, @smithy/util-buffer-from, @smithy/util-hex-encoding, @smithy/util-stream, @smithy/util-uri-escape, @smithy/util-utf8, @smithy/util-waiter, @smithy/uuid. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/abort-controller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/crc64-nvme), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-env), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-imds), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-ini), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/dynamodb-codec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/fetch-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/hash-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/is-array-buffer), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/lib-storage), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/md5-js), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-content-length), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-signing), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-stack), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/property-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/region-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/shared-ini-file-loader), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/token-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/types), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-arn-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-buffer-from), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-endpoints), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-hex-encoding), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-locate-window), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-uri-escape), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-waiter), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/xml-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/abort-controller), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader-native), https://github.com/awslabs/smithy-typescript.git (@smithy/config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/credential-provider-imds), https://github.com/awslabs/smithy-typescript.git (@smithy/fetch-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-blob-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-node), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-stream-node), https://github.com/awslabs/smithy-typescript.git (@smithy/is-array-buffer), https://github.com/awslabs/smithy-typescript.git (@smithy/md5-js), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-content-length), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-endpoint), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-stack), https://github.com/awslabs/smithy-typescript.git (@smithy/node-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/property-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/shared-ini-file-loader), https://github.com/awslabs/smithy-typescript.git (@smithy/signature-v4), https://github.com/awslabs/smithy-typescript.git (@smithy/util-base64), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-node), https://github.com/awslabs/smithy-typescript.git (@smithy/util-buffer-from), https://github.com/awslabs/smithy-typescript.git (@smithy/util-hex-encoding), https://github.com/awslabs/smithy-typescript.git (@smithy/util-stream), https://github.com/awslabs/smithy-typescript.git (@smithy/util-uri-escape), https://github.com/awslabs/smithy-typescript.git (@smithy/util-utf8), https://github.com/awslabs/smithy-typescript.git (@smithy/util-waiter), https://github.com/smithy-lang/smithy-typescript.git (@smithy/uuid). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -2338,7 +2338,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/client-amplify, @aws-sdk/client-appsync, @aws-sdk/client-cloudwatch-logs, @aws-sdk/client-cognito-identity, @aws-sdk/client-comprehend, @aws-sdk/client-firehose, @aws-sdk/client-kinesis, @aws-sdk/client-lex-runtime-service, @aws-sdk/client-personalize-events, @aws-sdk/client-polly, @aws-sdk/client-rekognition, @aws-sdk/client-s3, @aws-sdk/client-ssm, @aws-sdk/client-sso, @aws-sdk/client-sts, @aws-sdk/client-textract, @aws-sdk/client-translate, @aws-sdk/credential-provider-cognito-identity, @aws-sdk/eventstream-codec, @aws-sdk/eventstream-marshaller, @aws-sdk/middleware-bucket-endpoint, @aws-sdk/middleware-eventstream, @aws-sdk/middleware-expect-continue, @aws-sdk/middleware-location-constraint, @aws-sdk/middleware-retry, @aws-sdk/middleware-sdk-sts, @aws-sdk/middleware-ssec, @aws-sdk/querystring-builder, @aws-sdk/querystring-parser, @aws-sdk/service-error-classification, @aws-sdk/url-parser, @aws-sdk/url-parser-native, @aws-sdk/util-defaults-mode-browser, @aws-sdk/util-defaults-mode-node, @aws-sdk/util-user-agent-browser, @aws-sdk/util-user-agent-node, @smithy/eventstream-codec, @smithy/middleware-retry, @smithy/querystring-builder, @smithy/querystring-parser, @smithy/service-error-classification, @smithy/url-parser, @smithy/util-defaults-mode-browser, @smithy/util-defaults-mode-node. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-amplify), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-appsync), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cloudwatch-logs), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cognito-identity), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-comprehend), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-firehose), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-kinesis), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lex-runtime-service), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-personalize-events), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-polly), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-rekognition), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-s3), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-ssm), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-sso), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-sts), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-textract), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-translate), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-cognito-identity), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-codec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-marshaller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-bucket-endpoint), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-eventstream), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-expect-continue), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-location-constraint), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-retry), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-sdk-sts), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-ssec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/querystring-builder), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/querystring-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/service-error-classification), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/url-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/url-parser-native), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-defaults-mode-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-defaults-mode-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-user-agent-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-user-agent-node), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-codec), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-retry), https://github.com/awslabs/smithy-typescript.git (@smithy/querystring-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/querystring-parser), https://github.com/awslabs/smithy-typescript.git (@smithy/service-error-classification), https://github.com/awslabs/smithy-typescript.git (@smithy/url-parser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-defaults-mode-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-defaults-mode-node). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/client-account, @aws-sdk/client-lex-runtime-v2, @aws-sdk/client-location. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-account), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lex-runtime-v2), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-location). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -2528,7 +2528,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -2544,7 +2544,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/client-lex-runtime-v2, @aws-sdk/client-location. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lex-runtime-v2), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-location). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/client-amplify, @aws-sdk/client-amplifybackend, @aws-sdk/client-appsync, @aws-sdk/client-cloudformation, @aws-sdk/client-cloudwatch-events, @aws-sdk/client-cloudwatch-logs, @aws-sdk/client-codebuild, @aws-sdk/client-cognito-identity, @aws-sdk/client-cognito-identity-provider, @aws-sdk/client-comprehend, @aws-sdk/client-dynamodb, @aws-sdk/client-firehose, @aws-sdk/client-iam, @aws-sdk/client-kinesis, @aws-sdk/client-lambda, @aws-sdk/client-lex-model-building-service, @aws-sdk/client-lex-runtime-service, @aws-sdk/client-organizations, @aws-sdk/client-personalize-events, @aws-sdk/client-pinpoint, @aws-sdk/client-polly, @aws-sdk/client-rekognition, @aws-sdk/client-s3, @aws-sdk/client-ssm, @aws-sdk/client-sso, @aws-sdk/client-sts, @aws-sdk/client-textract, @aws-sdk/client-translate, @aws-sdk/credential-provider-cognito-identity, @aws-sdk/eventstream-codec, @aws-sdk/eventstream-marshaller, @aws-sdk/middleware-bucket-endpoint, @aws-sdk/middleware-endpoint-discovery, @aws-sdk/middleware-eventstream, @aws-sdk/middleware-expect-continue, @aws-sdk/middleware-location-constraint, @aws-sdk/middleware-retry, @aws-sdk/middleware-sdk-sts, @aws-sdk/middleware-ssec, @aws-sdk/querystring-builder, @aws-sdk/querystring-parser, @aws-sdk/service-error-classification, @aws-sdk/url-parser, @aws-sdk/url-parser-native, @aws-sdk/util-defaults-mode-browser, @aws-sdk/util-defaults-mode-node, @aws-sdk/util-user-agent-browser, @aws-sdk/util-user-agent-node, @smithy/eventstream-codec, @smithy/middleware-retry, @smithy/querystring-builder, @smithy/querystring-parser, @smithy/service-error-classification, @smithy/url-parser, @smithy/util-defaults-mode-browser, @smithy/util-defaults-mode-node. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-amplify), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-amplifybackend), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-appsync), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cloudformation), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cloudwatch-events), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cloudwatch-logs), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-codebuild), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cognito-identity), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-cognito-identity-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-comprehend), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-dynamodb), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-firehose), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-iam), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-kinesis), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lambda), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lex-model-building-service), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-lex-runtime-service), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-organizations), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-personalize-events), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-pinpoint), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-polly), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-rekognition), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-s3), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-ssm), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-sso), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-sts), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-textract), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/client-translate), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-cognito-identity), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-codec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-marshaller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-bucket-endpoint), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-endpoint-discovery), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-eventstream), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-expect-continue), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-location-constraint), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-retry), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-sdk-sts), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-ssec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/querystring-builder), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/querystring-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/service-error-classification), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/url-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/url-parser-native), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-defaults-mode-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-defaults-mode-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-user-agent-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-user-agent-node), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-codec), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-retry), https://github.com/awslabs/smithy-typescript.git (@smithy/querystring-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/querystring-parser), https://github.com/awslabs/smithy-typescript.git (@smithy/service-error-classification), https://github.com/awslabs/smithy-typescript.git (@smithy/url-parser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-defaults-mode-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-defaults-mode-node). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -2734,7 +2734,213 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2018-2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +----- + +The following software may be included in this product: @aws-sdk/core. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git. This software contains the following license and notice below: + +Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -2956,7 +3162,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/eventstream-handler-node, @aws-sdk/eventstream-serde-browser, @aws-sdk/eventstream-serde-config-resolver, @aws-sdk/eventstream-serde-node, @aws-sdk/eventstream-serde-universal, @aws-sdk/invalid-dependency, @aws-sdk/middleware-host-header, @aws-sdk/middleware-recursion-detection, @aws-sdk/middleware-sdk-s3, @aws-sdk/middleware-serde, @aws-sdk/middleware-user-agent, @aws-sdk/protocol-http, @aws-sdk/signature-v4-multi-region, @aws-sdk/smithy-client, @smithy/core, @smithy/eventstream-serde-browser, @smithy/eventstream-serde-config-resolver, @smithy/eventstream-serde-node, @smithy/eventstream-serde-universal, @smithy/invalid-dependency, @smithy/middleware-serde, @smithy/protocol-http, @smithy/smithy-client, @smithy/types. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-handler-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-universal), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/invalid-dependency), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-host-header), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-recursion-detection), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-sdk-s3), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-serde), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-user-agent), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/protocol-http), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4-multi-region), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/smithy-client), https://github.com/awslabs/smithy-typescript.git (@smithy/core), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-node), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-universal), https://github.com/awslabs/smithy-typescript.git (@smithy/invalid-dependency), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-serde), https://github.com/awslabs/smithy-typescript.git (@smithy/protocol-http), https://github.com/awslabs/smithy-typescript.git (@smithy/smithy-client), https://github.com/awslabs/smithy-typescript.git (@smithy/types). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/endpoint-cache, @aws-sdk/middleware-logger, @aws-sdk/node-config-provider, @aws-sdk/util-config-provider, @smithy/node-config-provider, @smithy/util-config-provider. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/endpoint-cache), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-logger), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-config-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-config-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/node-config-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/util-config-provider). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -3146,7 +3352,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -3162,7 +3368,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/middleware-flexible-checksums. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git. This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/eventstream-handler-node, @aws-sdk/eventstream-serde-browser, @aws-sdk/eventstream-serde-config-resolver, @aws-sdk/eventstream-serde-node, @aws-sdk/eventstream-serde-universal, @aws-sdk/invalid-dependency, @aws-sdk/middleware-host-header, @aws-sdk/middleware-recursion-detection, @aws-sdk/middleware-sdk-s3, @aws-sdk/middleware-serde, @aws-sdk/middleware-user-agent, @aws-sdk/protocol-http, @aws-sdk/signature-v4-multi-region, @aws-sdk/smithy-client, @smithy/core, @smithy/eventstream-serde-browser, @smithy/eventstream-serde-config-resolver, @smithy/eventstream-serde-node, @smithy/eventstream-serde-universal, @smithy/invalid-dependency, @smithy/middleware-serde, @smithy/protocol-http, @smithy/smithy-client, @smithy/types. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-handler-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/eventstream-serde-universal), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/invalid-dependency), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-host-header), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-recursion-detection), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-sdk-s3), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-serde), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-user-agent), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/protocol-http), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4-multi-region), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/smithy-client), https://github.com/awslabs/smithy-typescript.git (@smithy/core), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-node), https://github.com/awslabs/smithy-typescript.git (@smithy/eventstream-serde-universal), https://github.com/awslabs/smithy-typescript.git (@smithy/invalid-dependency), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-serde), https://github.com/awslabs/smithy-typescript.git (@smithy/protocol-http), https://github.com/awslabs/smithy-typescript.git (@smithy/smithy-client), https://github.com/awslabs/smithy-typescript.git (@smithy/types). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -3352,7 +3558,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -3368,7 +3574,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/middleware-logger, @aws-sdk/node-config-provider, @aws-sdk/util-config-provider, @smithy/node-config-provider, @smithy/util-config-provider. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-logger), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-config-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-config-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/node-config-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/util-config-provider). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/middleware-flexible-checksums. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git. This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -3558,7 +3764,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2018-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -7509,7 +7715,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2018-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved. + Copyright 2018-2026 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -7527,7 +7733,7 @@ Apache License NOTICE AWS Cloud Development Kit (AWS CDK) -Copyright 2018-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved. +Copyright 2018-2026 Amazon.com, Inc. or its affiliates. All Rights Reserved. ------------------------------------------------------------------------------- @@ -8234,280 +8440,65 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI Copyright (c) 2018, Gajus Kuizinas (http://gajus.com/) All rights reserved. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the Gajus Kuizinas (http://gajus.com/) nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL ANUARY BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ----------------- - -** fast-uri - https://www.npmjs.com/package/fast-uri/v/3.0.1 | BSD-3-Clause -Copyright (c) 2021 The Fastify Team -Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * The names of any contributors may not be used to endorse or promote - products derived from this software without specific prior written - permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - * * * - -The complete list of contributors can be found at: -- https://github.com/garycourt/uri-js/graphs/contributors - - ----------------- - ------ - -The following software may be included in this product: aws-sdk. A copy of the source code may be downloaded from git://github.com/aws/aws-sdk-js. This software contains the following license and notice below: - -Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Gajus Kuizinas (http://gajus.com/) nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. - APPENDIX: How to apply the Apache License to your work. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL ANUARY BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +---------------- - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at +** fast-uri - https://www.npmjs.com/package/fast-uri/v/3.0.1 | BSD-3-Clause +Copyright (c) 2021 The Fastify Team +Copyright (c) 2011-2021, Gary Court until https://github.com/garycourt/uri-js/commit/a1acf730b4bba3f1097c9f52e7d9d3aba8cdcaae +All rights reserved. - http://www.apache.org/licenses/LICENSE-2.0 +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * The names of any contributors may not be used to endorse or promote + products derived from this software without specific prior written + permission. - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * * * -NOTICE +The complete list of contributors can be found at: +- https://github.com/garycourt/uri-js/graphs/contributors -AWS SDK for JavaScript -Copyright 2012-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. -This product includes software developed at -Amazon Web Services, Inc. (http://aws.amazon.com/). +---------------- ----- @@ -13728,7 +13719,7 @@ THE SOFTWARE. ----- -The following software may be included in this product: fast-xml-parser. A copy of the source code may be downloaded from https://github.com/NaturalIntelligence/fast-xml-parser. This software contains the following license and notice below: +The following software may be included in this product: fast-xml-parser. A copy of the source code may be downloaded from git+https://github.com/NaturalIntelligence/fast-xml-parser.git. This software contains the following license and notice below: MIT License @@ -13999,7 +13990,7 @@ SOFTWARE. ----- -The following software may be included in this product: follow-redirects. A copy of the source code may be downloaded from git@github.com:follow-redirects/follow-redirects.git. This software contains the following license and notice below: +The following software may be included in this product: follow-redirects. A copy of the source code may be downloaded from git+ssh://git@github.com/follow-redirects/follow-redirects.git. This software contains the following license and notice below: Copyright 2014–present Olivier Lalonde , James Talmage , Ruben Verborgh @@ -15708,31 +15699,6 @@ THE SOFTWARE. ----- -The following software may be included in this product: is-arguments, is-generator-function, is-negative-zero, is-regex. A copy of the source code may be downloaded from git://github.com/inspect-js/is-arguments.git (is-arguments), git://github.com/inspect-js/is-generator-function.git (is-generator-function), git://github.com/inspect-js/is-negative-zero.git (is-negative-zero), git://github.com/inspect-js/is-regex.git (is-regex). This software contains the following license and notice below: - -The MIT License (MIT) - -Copyright (c) 2014 Jordan Harband - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------ - The following software may be included in this product: is-array-buffer. A copy of the source code may be downloaded from git+https://github.com/inspect-js/is-array-buffer.git. This software contains the following license and notice below: MIT License @@ -15913,6 +15879,31 @@ THE SOFTWARE. ----- +The following software may be included in this product: is-generator-function, is-negative-zero, is-regex. A copy of the source code may be downloaded from git://github.com/inspect-js/is-generator-function.git (is-generator-function), git://github.com/inspect-js/is-negative-zero.git (is-negative-zero), git://github.com/inspect-js/is-regex.git (is-regex). This software contains the following license and notice below: + +The MIT License (MIT) + +Copyright (c) 2014 Jordan Harband + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +----- + The following software may be included in this product: is-glob, is-plain-object, is-relative, kind-of. A copy of the source code may be downloaded from https://github.com/micromatch/is-glob.git (is-glob), https://github.com/jonschlinkert/is-plain-object.git (is-plain-object), https://github.com/jonschlinkert/is-relative.git (is-relative), https://github.com/jonschlinkert/kind-of.git (kind-of). This software contains the following license and notice below: The MIT License (MIT) @@ -16425,24 +16416,6 @@ THE SOFTWARE. ----- -The following software may be included in this product: jmespath. A copy of the source code may be downloaded from git://github.com/jmespath/jmespath.js. This software contains the following license and notice below: - -Copyright 2014 James Saryerwinnie - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - ------ - The following software may be included in this product: js-cookie. A copy of the source code may be downloaded from git://github.com/js-cookie/js-cookie.git. This software contains the following license and notice below: MIT License @@ -17670,6 +17643,32 @@ THE SOFTWARE. ----- +The following software may be included in this product: mnemonist. A copy of the source code may be downloaded from git+https://github.com/yomguithereal/mnemonist.git. This software contains the following license and notice below: + +The MIT License (MIT) + +Copyright (c) 2016 Guillaume Plique (Yomguithereal) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +----- + The following software may be included in this product: mock-fs. A copy of the source code may be downloaded from git://github.com/tschaub/mock-fs.git. This software contains the following license and notice below: # License for mock-fs @@ -18379,6 +18378,32 @@ SOFTWARE. ----- +The following software may be included in this product: obliterator. A copy of the source code may be downloaded from git+https://github.com/yomguithereal/obliterator.git. This software contains the following license and notice below: + +The MIT License (MIT) + +Copyright (c) 2017 Guillaume Plique (Yomguithereal) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +----- + The following software may be included in this product: one-time, querystringify, requires-port, url-parse. A copy of the source code may be downloaded from https://github.com/3rd-Eden/one-time.git (one-time), https://github.com/unshiftio/querystringify (querystringify), https://github.com/unshiftio/requires-port (requires-port), https://github.com/unshiftio/url-parse.git (url-parse). This software contains the following license and notice below: The MIT License (MIT) @@ -19252,7 +19277,7 @@ IN THE SOFTWARE. ----- -The following software may be included in this product: readable-stream, util. A copy of the source code may be downloaded from git://github.com/isaacs/readable-stream (readable-stream), git://github.com/browserify/node-util (util). This software contains the following license and notice below: +The following software may be included in this product: readable-stream. A copy of the source code may be downloaded from git://github.com/isaacs/readable-stream. This software contains the following license and notice below: Copyright Joyent, Inc. and other Node contributors. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy @@ -19873,52 +19898,6 @@ Copyright (c) 2010-2022 Mathias Bynens ----- -The following software may be included in this product: sax. A copy of the source code may be downloaded from git://github.com/isaacs/sax-js.git. This software contains the following license and notice below: - -The ISC License - -Copyright (c) Isaac Z. Schlueter and Contributors - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -==== - -`String.fromCodePoint` by Mathias Bynens used according to terms of MIT -License, as follows: - - Copyright Mathias Bynens - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------ - The following software may be included in this product: setimmediate. A copy of the source code may be downloaded from https://github.com/YuzuJS/setImmediate.git. This software contains the following license and notice below: Copyright (c) 2012 Barnesandnoble.com, llc, Donavon West, and Domenic Denicola @@ -21472,7 +21451,7 @@ The following software may be included in this product: url. A copy of the sourc The MIT License (MIT) -Copyright Joyent, Inc. and other Node contributors. +Copyright 2014 Joyent, Inc. and other Node contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -21498,7 +21477,7 @@ The following software may be included in this product: url. A copy of the sourc The MIT License (MIT) -Copyright 2014 Joyent, Inc. and other Node contributors. +Copyright Joyent, Inc. and other Node contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -21591,32 +21570,6 @@ The following software may be included in this product: uuid. A copy of the sour The MIT License (MIT) -Copyright (c) 2010-2020 Robert Kieffer and other contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - ------ - -The following software may be included in this product: uuid. A copy of the source code may be downloaded from https://github.com/uuidjs/uuid.git. This software contains the following license and notice below: - -The MIT License (MIT) - Copyright (c) 2010-2016 Robert Kieffer and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/package.json b/package.json index 007b32d6f..2cf37c5e9 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,10 @@ "@typescript-eslint/eslint-plugin": "^4.0.0", "@typescript-eslint/parser": "^4.0.0", "amplify-headless-interface": "^1.13.1", - "aws-sdk": "2.1414.0", + "@aws-sdk/client-codebuild": "^3.996.0", + "@aws-sdk/client-s3": "^3.996.0", + "@aws-sdk/credential-providers": "^3.996.0", + "@smithy/types": "^4.13.0", "cli-progress": "3.12.0", "cmd-shim": "^3.0.3", "codecov": "^3.7.0", diff --git a/packages/amplify-codegen-e2e-core/package.json b/packages/amplify-codegen-e2e-core/package.json index 1bee26fe8..daa62b6dc 100644 --- a/packages/amplify-codegen-e2e-core/package.json +++ b/packages/amplify-codegen-e2e-core/package.json @@ -22,7 +22,19 @@ "clean": "rimraf ./lib" }, "dependencies": { - "aws-sdk": "^2.1465.0", + "@aws-sdk/client-amplifybackend": "^3.990.0", + "@aws-sdk/client-appsync": "^3.996.0", + "@aws-sdk/client-cloudformation": "^3.996.0", + "@aws-sdk/client-cloudwatch-events": "^3.996.0", + "@aws-sdk/client-cloudwatch-logs": "^3.996.0", + "@aws-sdk/client-cognito-identity-provider": "^3.996.0", + "@aws-sdk/client-dynamodb": "^3.996.0", + "@aws-sdk/client-kinesis": "^3.996.0", + "@aws-sdk/client-lambda": "^3.996.0", + "@aws-sdk/client-lex-model-building-service": "^3.996.0", + "@aws-sdk/client-pinpoint": "^3.996.0", + "@aws-sdk/client-rekognition": "^3.996.0", + "@aws-sdk/client-s3": "^3.996.0", "chalk": "^3.0.0", "dotenv": "^8.6.0", "execa": "^4.1.0", diff --git a/packages/amplify-codegen-e2e-core/src/categories/lambda-function.ts b/packages/amplify-codegen-e2e-core/src/categories/lambda-function.ts index 21d92faa0..6f875af92 100644 --- a/packages/amplify-codegen-e2e-core/src/categories/lambda-function.ts +++ b/packages/amplify-codegen-e2e-core/src/categories/lambda-function.ts @@ -1,5 +1,5 @@ import { nspawn as spawn, ExecutionContext, KEY_DOWN_ARROW, getCLIPath, getProjectMeta, getBackendAmplifyMeta, invokeFunction } from '..'; -import { Lambda } from 'aws-sdk'; +import { LambdaClient, GetFunctionCommand, InvokeCommandOutput } from '@aws-sdk/client-lambda'; import { singleSelect, multiSelect, moveUp, moveDown } from '../utils/selectors'; import { sync } from 'globby'; import * as path from 'path'; @@ -417,7 +417,7 @@ export const functionMockAssert = ( export const functionCloudInvoke = async ( cwd: string, settings: { funcName: string; payload: string }, -): Promise => { +): Promise => { const meta = getProjectMeta(cwd); const lookupName = settings.funcName; expect(meta.function[lookupName]).toBeDefined(); @@ -425,10 +425,10 @@ export const functionCloudInvoke = async ( expect(functionName).toBeDefined(); expect(region).toBeDefined(); const result = await invokeFunction(functionName, settings.payload, region); - if (!result.$response.data) { + if (!result) { fail('No data in lambda response'); } - return result.$response.data as Lambda.InvocationResponse; + return result; }; const getTemplateChoices = (runtime: FunctionRuntimes) => { diff --git a/packages/amplify-codegen-e2e-core/src/utils/pinpoint.ts b/packages/amplify-codegen-e2e-core/src/utils/pinpoint.ts index 13a5b0277..b47cf4ed4 100644 --- a/packages/amplify-codegen-e2e-core/src/utils/pinpoint.ts +++ b/packages/amplify-codegen-e2e-core/src/utils/pinpoint.ts @@ -1,4 +1,4 @@ -import { Pinpoint } from 'aws-sdk'; +import { PinpointClient, GetAppCommand } from '@aws-sdk/client-pinpoint'; import { getCLIPath, nspawn as spawn, singleSelect, amplifyRegions, addCITags, KEY_DOWN_ARROW, confirmUsingGen1Amplify } from '..'; import _ from 'lodash'; @@ -43,23 +43,23 @@ const serviceRegionMap = { export async function pinpointAppExist(pinpointProjectId: string): Promise { let result = false; - const pinpointClient = new Pinpoint({ - accessKeyId: settings.accessKeyId, - secretAccessKey: settings.secretAccessKey, + const pinpointClient = new PinpointClient({ + credentials: { + accessKeyId: settings.accessKeyId, + secretAccessKey: settings.secretAccessKey, + }, region: _.get(serviceRegionMap, settings.region, defaultPinpointRegion), }); try { - const response = await pinpointClient - .getApp({ - ApplicationId: pinpointProjectId, - }) - .promise(); + const response = await pinpointClient.send(new GetAppCommand({ + ApplicationId: pinpointProjectId, + })); if (response.ApplicationResponse.Id === pinpointProjectId) { result = true; } } catch (err) { - if (err.code === 'NotFoundException') { + if (err.name === 'NotFoundException') { result = false; } else { throw err; diff --git a/packages/amplify-codegen-e2e-core/src/utils/sdk-calls.ts b/packages/amplify-codegen-e2e-core/src/utils/sdk-calls.ts index f132944b0..0c97db89a 100644 --- a/packages/amplify-codegen-e2e-core/src/utils/sdk-calls.ts +++ b/packages/amplify-codegen-e2e-core/src/utils/sdk-calls.ts @@ -1,43 +1,40 @@ import { - config, - DynamoDB, - S3, - CognitoIdentityServiceProvider, - Lambda, - LexModelBuildingService, - Rekognition, - AppSync, - CloudWatchLogs, - CloudWatchEvents, - Kinesis, - CloudFormation, - AmplifyBackend, -} from 'aws-sdk'; + DynamoDBClient, + DescribeTableCommand, + DeleteTableCommand, +} from '@aws-sdk/client-dynamodb'; +import { S3Client, HeadBucketCommand, GetObjectCommand, waitUntilBucketNotExists, ListObjectVersionsCommand, DeleteObjectsCommand, DeleteBucketCommand } from '@aws-sdk/client-s3'; +import { CognitoIdentityProviderClient, DescribeUserPoolCommand, DescribeUserPoolClientCommand } from '@aws-sdk/client-cognito-identity-provider'; +import { LambdaClient, GetFunctionCommand, GetLayerVersionByArnCommand, ListLayerVersionsCommand, InvokeCommand, ListEventSourceMappingsCommand } from '@aws-sdk/client-lambda'; +import { LexModelBuildingServiceClient, GetBotCommand } from '@aws-sdk/client-lex-model-building-service'; +import { RekognitionClient, DescribeCollectionCommand } from '@aws-sdk/client-rekognition'; +import { AppSyncClient, GetGraphqlApiCommand } from '@aws-sdk/client-appsync'; +import { CloudWatchLogsClient, DescribeLogStreamsCommand, GetLogEventsCommand } from '@aws-sdk/client-cloudwatch-logs'; +import { CloudWatchEventsClient, ListRuleNamesByTargetCommand } from '@aws-sdk/client-cloudwatch-events'; +import { KinesisClient, PutRecordsCommand } from '@aws-sdk/client-kinesis'; +import { CloudFormationClient, DescribeStacksCommand } from '@aws-sdk/client-cloudformation'; +import { AmplifyBackendClient, CreateBackendConfigCommand, GetBackendJobCommand } from '@aws-sdk/client-amplifybackend'; import _ from 'lodash'; import { getProjectMeta } from './projectMeta'; export const getDDBTable = async (tableName: string, region: string) => { - const service = new DynamoDB({ region }); - return await service.describeTable({ TableName: tableName }).promise(); + const service = new DynamoDBClient({ region }); + return await service.send(new DescribeTableCommand({ TableName: tableName })); }; export const checkIfBucketExists = async (bucketName: string, region: string) => { - const service = new S3({ region }); - return await service.headBucket({ Bucket: bucketName }).promise(); + const s3Client = new S3Client({ region }); + return await s3Client.send(new HeadBucketCommand({ Bucket: bucketName})); }; export const bucketNotExists = async (bucket: string) => { - const s3 = new S3(); - const params = { - Bucket: bucket, - $waiter: { maxAttempts: 10, delay: 30 }, - }; + const s3 = new S3Client({}); try { - await s3.waitFor('bucketNotExists', params).promise(); + await waitUntilBucketNotExists({ client: s3, maxWaitTime: 300 }, { Bucket: bucket }); return true; } catch (error) { - if (error.statusCode === 200) { - return false; + if (error.state === 'SUCCESS') { + return true; } throw error; } @@ -46,28 +43,28 @@ export const bucketNotExists = async (bucket: string) => { export const getDeploymentBucketObject = async (projectRoot: string, objectKey: string) => { const meta = getProjectMeta(projectRoot); const deploymentBucket = meta.providers.awscloudformation.DeploymentBucketName; - const s3 = new S3(); - const result = await s3 - .getObject({ - Bucket: deploymentBucket, - Key: objectKey, - }) - .promise(); - return result.Body.toLocaleString(); + const region = meta.providers.awscloudformation.Region; + const s3 = new S3Client({ region }); + const command = new GetObjectCommand({ + Bucket: deploymentBucket, + Key: objectKey, + }); + const result = await s3.send(command); + const bodyString = await result.Body.transformToString(); + return bodyString; }; -export const deleteS3Bucket = async (bucket: string, providedS3Client: S3 | undefined = undefined) => { - const s3 = providedS3Client ? providedS3Client : new S3(); - let continuationToken: Required> = undefined; - const objectKeyAndVersion = []; +export const deleteS3Bucket = async (bucket: string, providedS3Client: S3Client | undefined = undefined) => { + const s3 = providedS3Client ? providedS3Client : new S3Client({}); + let continuationToken: { KeyMarker?: string; VersionIdMarker?: string } = undefined; + const objectKeyAndVersion: { Key: string; VersionId: string }[] = []; let truncated = false; do { - const results = await s3 - .listObjectVersions({ - Bucket: bucket, - ...continuationToken, - }) - .promise(); + const command = new ListObjectVersionsCommand({ + Bucket: bucket, + ...continuationToken, + }); + const results = await s3.send(command); results.Versions?.forEach(({ Key, VersionId }) => { objectKeyAndVersion.push({ Key, VersionId }); @@ -91,21 +88,21 @@ export const deleteS3Bucket = async (bucket: string, providedS3Client: S3 | unde }, }; }) - .map(delParams => s3.deleteObjects(delParams).promise()); + .map(delParams => { + const deleteCommand = new DeleteObjectsCommand(delParams); + return s3.send(deleteCommand); + }); await Promise.all(deleteReq); - await s3 - .deleteBucket({ - Bucket: bucket, - }) - .promise(); + const deleteBucketCommand = new DeleteBucketCommand({ Bucket: bucket }); + await s3.send(deleteBucketCommand); await bucketNotExists(bucket); }; export const getUserPool = async (userpoolId, region) => { - config.update({ region }); let res; try { - res = await new CognitoIdentityServiceProvider().describeUserPool({ UserPoolId: userpoolId }).promise(); + const client = new CognitoIdentityProviderClient({ region }); + res = await client.send(new DescribeUserPoolCommand({ UserPoolId: userpoolId })); } catch (e) { console.log(e); } @@ -113,10 +110,10 @@ export const getUserPool = async (userpoolId, region) => { }; export const getLambdaFunction = async (functionName, region) => { - const lambda = new Lambda(); + const lambda = new LambdaClient({ region }); let res; try { - res = await lambda.getFunction({ FunctionName: functionName }).promise(); + res = await lambda.send(new GetFunctionCommand({ FunctionName: functionName })); } catch (e) { console.log(e); } @@ -124,16 +121,14 @@ export const getLambdaFunction = async (functionName, region) => { }; export const getUserPoolClients = async (userPoolId: string, clientIds: string[], region: string) => { - const provider = new CognitoIdentityServiceProvider({ region }); + const provider = new CognitoIdentityProviderClient({ region }); const res = []; try { for (let i = 0; i < clientIds.length; i++) { - const clientData = await provider - .describeUserPoolClient({ - UserPoolId: userPoolId, - ClientId: clientIds[i], - }) - .promise(); + const clientData = await provider.send(new DescribeUserPoolClientCommand({ + UserPoolId: userPoolId, + ClientId: clientIds[i], + })); res.push(clientData); } } catch (e) { @@ -143,63 +138,65 @@ export const getUserPoolClients = async (userPoolId: string, clientIds: string[] }; export const getBot = async (botName: string, region: string) => { - const service = new LexModelBuildingService({ region }); - return await service.getBot({ name: botName, versionOrAlias: '$LATEST' }).promise(); + const service = new LexModelBuildingServiceClient({ region }); + return await service.send(new GetBotCommand({ name: botName, versionOrAlias: '$LATEST' })); }; export const getFunction = async (functionName: string, region: string) => { - const service = new Lambda({ region }); - return await service.getFunction({ FunctionName: functionName }).promise(); + const service = new LambdaClient({ region }); + return await service.send(new GetFunctionCommand({ FunctionName: functionName })); }; export const getLayerVersion = async (functionArn: string, region: string) => { - const service = new Lambda({ region }); - return await service.getLayerVersionByArn({ Arn: functionArn }).promise(); + const service = new LambdaClient({ region }); + return await service.send(new GetLayerVersionByArnCommand({ Arn: functionArn })); }; export const listVersions = async (layerName: string, region: string) => { - const service = new Lambda({ region }); - return await service.listLayerVersions({ LayerName: layerName }).promise(); + const service = new LambdaClient({ region }); + return await service.send(new ListLayerVersionsCommand({ LayerName: layerName })); }; export const invokeFunction = async (functionName: string, payload: string, region: string) => { - const service = new Lambda({ region }); - return await service.invoke({ FunctionName: functionName, Payload: payload }).promise(); + const service = new LambdaClient({ region }); + return await service.send(new InvokeCommand({ FunctionName: functionName, Payload: payload })); }; export const getCollection = async (collectionId: string, region: string) => { - const service = new Rekognition({ region }); - return await service.describeCollection({ CollectionId: collectionId }).promise(); + const service = new RekognitionClient({ region }); + return await service.send(new DescribeCollectionCommand({ CollectionId: collectionId })); }; export const getTable = async (tableName: string, region: string) => { - const service = new DynamoDB({ region }); - return await service.describeTable({ TableName: tableName }).promise(); + const service = new DynamoDBClient({ region }); + return await service.send(new DescribeTableCommand({ TableName: tableName })); }; export const getEventSourceMappings = async (functionName: string, region: string) => { - const service = new Lambda({ region }); - return (await service.listEventSourceMappings({ FunctionName: functionName }).promise()).EventSourceMappings; + const service = new LambdaClient({ region }); + return (await service.send(new ListEventSourceMappingsCommand({ FunctionName: functionName }))).EventSourceMappings; }; export const deleteTable = async (tableName: string, region: string) => { - const service = new DynamoDB({ region }); - return await service.deleteTable({ TableName: tableName }).promise(); + const service = new DynamoDBClient({ region }); + return await service.send(new DeleteTableCommand({ TableName: tableName })); }; export const getAppSyncApi = async (appSyncApiId: string, region: string) => { - const service = new AppSync({ region }); - return await service.getGraphqlApi({ apiId: appSyncApiId }).promise(); + const service = new AppSyncClient({ region }); + return await service.send(new GetGraphqlApiCommand({ apiId: appSyncApiId })); }; export const getCloudWatchLogs = async (region: string, logGroupName: string, logStreamName: string | undefined = undefined) => { - const cloudwatchlogs = new CloudWatchLogs({ region, retryDelayOptions: { base: 500 } }); + const cloudwatchlogs = new CloudWatchLogsClient({ region }); let targetStreamName = logStreamName; if (targetStreamName === undefined) { - const describeStreamsResp = await cloudwatchlogs - .describeLogStreams({ logGroupName, descending: true, orderBy: 'LastEventTime' }) - .promise(); + const describeStreamsResp = await cloudwatchlogs.send(new DescribeLogStreamsCommand({ + logGroupName, + descending: true, + orderBy: 'LastEventTime' + })); if (describeStreamsResp.logStreams === undefined || describeStreamsResp.logStreams.length == 0) { return []; } @@ -207,42 +204,39 @@ export const getCloudWatchLogs = async (region: string, logGroupName: string, lo targetStreamName = describeStreamsResp.logStreams[0].logStreamName; } - const logsResp = await cloudwatchlogs.getLogEvents({ logGroupName, logStreamName: targetStreamName }).promise(); + const logsResp = await cloudwatchlogs.send(new GetLogEventsCommand({ logGroupName, logStreamName: targetStreamName })); return logsResp.events || []; }; export const describeCloudFormationStack = async (stackName: string, region: string, profileConfig?: any) => { - const service = profileConfig ? new CloudFormation(profileConfig) : new CloudFormation({ region }); - return (await service.describeStacks({ StackName: stackName }).promise()).Stacks.find( + const service = profileConfig ? new CloudFormationClient(profileConfig) : new CloudFormationClient({ region }); + return (await service.send(new DescribeStacksCommand({ StackName: stackName }))).Stacks.find( stack => stack.StackName === stackName || stack.StackId === stackName, ); }; export const putKinesisRecords = async (data: string, partitionKey: string, streamName: string, region: string) => { - const kinesis = new Kinesis({ region }); - - return await kinesis - .putRecords({ - Records: [ - { - Data: data, - PartitionKey: partitionKey, - }, - ], - StreamName: streamName, - }) - .promise(); + const kinesis = new KinesisClient({ region }); + + return await kinesis.send(new PutRecordsCommand({ + Records: [ + { + Data: new Uint8Array(Buffer.from(data)), + PartitionKey: partitionKey, + }, + ], + StreamName: streamName, + })); }; export const getCloudWatchEventRule = async (targetName: string, region: string) => { - config.update({ region }); - const service = new CloudWatchEvents(); + const service = new CloudWatchEventsClient({ region }); var params = { TargetArn: targetName /* required */, }; let ruleName; try { - ruleName = await service.listRuleNamesByTarget(params).promise(); + ruleName = await service.send(new ListRuleNamesByTargetCommand(params)); } catch (e) { console.log(e); } @@ -250,19 +244,17 @@ export const getCloudWatchEventRule = async (targetName: string, region: string) }; export const setupAmplifyAdminUI = async (appId: string, region: string) => { - const amplifyBackend = new AmplifyBackend({ region }); + const amplifyBackend = new AmplifyBackendClient({ region }); - return await amplifyBackend.createBackendConfig({ AppId: appId }).promise(); + return await amplifyBackend.send(new CreateBackendConfigCommand({ AppId: appId })); }; export const getAmplifyBackendJobStatus = async (jobId: string, appId: string, envName: string, region: string) => { - const amplifyBackend = new AmplifyBackend({ region }); + const amplifyBackend = new AmplifyBackendClient({ region }); - return await amplifyBackend - .getBackendJob({ - JobId: jobId, - AppId: appId, - BackendEnvironmentName: envName, - }) - .promise(); + return await amplifyBackend.send(new GetBackendJobCommand({ + JobId: jobId, + AppId: appId, + BackendEnvironmentName: envName, + })); }; diff --git a/packages/amplify-codegen-e2e-tests/functions/get-api-appsync.js b/packages/amplify-codegen-e2e-tests/functions/get-api-appsync.js index 5db92cb63..90c0f9e6f 100644 --- a/packages/amplify-codegen-e2e-tests/functions/get-api-appsync.js +++ b/packages/amplify-codegen-e2e-tests/functions/get-api-appsync.js @@ -1,9 +1,9 @@ // /* eslint-disable no-console */ -const AWS = require('aws-sdk'); +const { AppSyncClient, GetGraphqlApiCommand } = require('@aws-sdk/client-appsync'); const getGqlApi = async (idKey) => { - const appsync = new AWS.AppSync({ region: process.env.REGION }); - return await appsync.getGraphqlApi({ apiId: process.env[idKey] }).promise(); + const appsync = new AppSyncClient({ region: process.env.REGION }); + return await appsync.send(new GetGraphqlApiCommand({ apiId: process.env[idKey] })); } exports.handler = async (event) => { diff --git a/packages/amplify-codegen-e2e-tests/functions/mutation-appsync.js b/packages/amplify-codegen-e2e-tests/functions/mutation-appsync.js index e5f321fb8..ded02a786 100644 --- a/packages/amplify-codegen-e2e-tests/functions/mutation-appsync.js +++ b/packages/amplify-codegen-e2e-tests/functions/mutation-appsync.js @@ -1,17 +1,18 @@ /* eslint-disable no-console */ require("isomorphic-fetch"); -const AWS = require('aws-sdk'); +const { fromNodeProviderChain } = require('@aws-sdk/credential-providers'); const AWSAppSyncClient = require("aws-appsync").default; const { AUTH_TYPE } = require("aws-appsync"); const gql = require('graphql-tag'); const runGQLMutation = async (gql_url, mutation, variables) => { + const credentials = fromNodeProviderChain(); const client = new AWSAppSyncClient({ url: process.env[gql_url], region: process.env.REGION, auth: { type: AUTH_TYPE.AWS_IAM, - credentials: AWS.config.credentials + credentials }, disableOffline: true }); diff --git a/packages/amplify-codegen-e2e-tests/package.json b/packages/amplify-codegen-e2e-tests/package.json index 0c7fb4175..8fd8e0547 100644 --- a/packages/amplify-codegen-e2e-tests/package.json +++ b/packages/amplify-codegen-e2e-tests/package.json @@ -28,7 +28,18 @@ "amazon-cognito-identity-js": "^6.3.6", "aws-amplify": "^5.3.3", "aws-appsync": "^4.1.10", - "aws-sdk": "^2.1413.0", + "@aws-sdk/client-amplify": "^3.996.0", + "@aws-sdk/client-appsync": "^3.996.0", + "@aws-sdk/client-cloudformation": "^3.996.0", + "@aws-sdk/client-codebuild": "^3.996.0", + "@aws-sdk/client-cognito-identity-provider": "^3.996.0", + "@aws-sdk/credential-providers": "^3.996.0", + "@aws-sdk/client-dynamodb": "^3.996.0", + "@aws-sdk/client-iam": "^3.996.0", + "@aws-sdk/client-organizations": "^3.996.0", + "@aws-sdk/client-s3": "^3.996.0", + "@aws-sdk/client-sts": "^3.996.0", + "@aws-sdk/client-account": "^3.996.0", "dotenv": "^8.2.0", "esm": "^3.2.25", "fs-extra": "^8.1.0", diff --git a/packages/amplify-codegen-e2e-tests/src/aws-matchers/iamMatcher.ts b/packages/amplify-codegen-e2e-tests/src/aws-matchers/iamMatcher.ts index f4929ee1a..c3ac8fc74 100644 --- a/packages/amplify-codegen-e2e-tests/src/aws-matchers/iamMatcher.ts +++ b/packages/amplify-codegen-e2e-tests/src/aws-matchers/iamMatcher.ts @@ -1,11 +1,11 @@ -import { IAM } from 'aws-sdk'; +import { IAMClient, GetRoleCommand } from '@aws-sdk/client-iam'; export const toBeIAMRoleWithArn = async (roleName: string, arn?: string) => { - const iam = new IAM(); + const iam = new IAMClient({}); let pass: boolean; let message: string; try { - const { Role: role } = await iam.getRole({ RoleName: roleName }).promise(); + const { Role: role } = await iam.send(new GetRoleCommand({ RoleName: roleName })); if (arn) { pass = role.Arn === arn ? true : false; if (pass) { @@ -33,12 +33,14 @@ export const toHaveValidPolicyConditionMatchingIdpId = async (roleName: string, let message: string = ''; try { - const iam = new IAM({ - accessKeyId: process.env.AWS_ACCESS_KEY_ID, - secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, + const iam = new IAMClient({ + credentials: { + accessKeyId: process.env.AWS_ACCESS_KEY_ID, + secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, + } }); - const { Role: role } = await iam.getRole({ RoleName: roleName }).promise(); + const { Role: role } = await iam.send(new GetRoleCommand({ RoleName: roleName })); const assumeRolePolicyDocument = JSON.parse(decodeURIComponent(role.AssumeRolePolicyDocument)); pass = assumeRolePolicyDocument.Statement.some(statement => { diff --git a/packages/amplify-codegen-e2e-tests/src/aws-matchers/s3matcher.ts b/packages/amplify-codegen-e2e-tests/src/aws-matchers/s3matcher.ts index b007f43c4..0b2056400 100644 --- a/packages/amplify-codegen-e2e-tests/src/aws-matchers/s3matcher.ts +++ b/packages/amplify-codegen-e2e-tests/src/aws-matchers/s3matcher.ts @@ -1,10 +1,10 @@ -import { S3 } from 'aws-sdk'; +import { S3Client, HeadBucketCommand } from '@aws-sdk/client-s3'; export const toBeAS3Bucket = async (bucketName: string) => { - const s3 = new S3(); + const s3 = new S3Client({}); let pass: boolean; try { - await s3.headBucket({ Bucket: bucketName }).promise(); + await s3.send(new HeadBucketCommand({ Bucket: bucketName })); pass = true; } catch (e) { pass = false; diff --git a/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts b/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts index dc410e8f2..5e8275c57 100644 --- a/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts +++ b/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts @@ -1,8 +1,14 @@ /* eslint-disable spellcheck/spell-checker, camelcase, @typescript-eslint/no-explicit-any */ -import { CodeBuild, Account } from 'aws-sdk'; +import { CodeBuildClient, BatchGetBuildsCommand, Build } from '@aws-sdk/client-codebuild'; +import { AccountClient, ListRegionsCommand, ListRegionsRequest } from '@aws-sdk/client-account'; +import { AmplifyClient, ListAppsCommand, ListBackendEnvironmentsCommand, DeleteAppCommand } from '@aws-sdk/client-amplify'; +import { CloudFormationClient, DescribeStacksCommand, ListStacksCommand, ListStackResourcesCommand, DeleteStackCommand, waitUntilStackDeleteComplete, Tag } from '@aws-sdk/client-cloudformation'; +import { S3Client, ListBucketsCommand, GetBucketLocationCommand, GetBucketTaggingCommand, Bucket } from '@aws-sdk/client-s3'; +import { IAMClient, ListRolesCommand, DeleteRoleCommand, ListAttachedRolePoliciesCommand, DetachRolePolicyCommand, ListRolePoliciesCommand, DeleteRolePolicyCommand, Role, AttachedPolicy } from '@aws-sdk/client-iam'; +import { STSClient, AssumeRoleCommand, GetCallerIdentityCommand } from '@aws-sdk/client-sts'; +import { OrganizationsClient, ListAccountsCommand } from '@aws-sdk/client-organizations'; import { config } from 'dotenv'; import yargs from 'yargs'; -import * as aws from 'aws-sdk'; import _ from 'lodash'; import fs from 'fs-extra'; import path from 'path'; @@ -47,7 +53,7 @@ type StackInfo = { tags: Record; region: string; jobId: string; - cbInfo?: CodeBuild.Build; + cbInfo?: Build; }; type AmplifyAppInfo = { @@ -61,19 +67,19 @@ type S3BucketInfo = { name: string; region: string; jobId?: string; - cbInfo?: CodeBuild.Build; + cbInfo?: Build; }; type IamRoleInfo = { name: string; - cbInfo?: CodeBuild.Build; + cbInfo?: Build; }; type ReportEntry = { jobId?: string; buildBatchArn?: string; buildComplete?: boolean; - cbJobDetails?: CodeBuild.Build; + cbJobDetails?: Build; buildStatus?: string; amplifyApps: Record; stacks: Record; @@ -87,7 +93,7 @@ type CBJobInfo = { buildBatchArn: string; projectName: string; buildComplete: boolean; - cbJobDetails: CodeBuild.Build; + cbJobDetails: Build; buildStatus: string; }; @@ -114,13 +120,13 @@ const handleExpiredTokenException = (): void => { /** * We define a resource as viable for deletion if it matches TEST_REGEX in the name, and if it is > STALE_DURATION_MS old. */ -const testBucketStalenessFilter = (resource: aws.S3.Bucket): boolean => { +const testBucketStalenessFilter = (resource: Bucket): boolean => { const isTestResource = resource.Name.match(BUCKET_TEST_REGEX); const isStaleResource = (Date.now() - resource.CreationDate.getMilliseconds()) > STALE_DURATION_MS; return isTestResource && isStaleResource; }; -const testRoleStalenessFilter = (resource: aws.IAM.Role): boolean => { +const testRoleStalenessFilter = (resource: Role): boolean => { const isTestResource = resource.RoleName.match(IAM_TEST_REGEX); const isStaleResource = (Date.now() - resource.CreateDate.getMilliseconds()) > STALE_DURATION_MS; return isTestResource && isStaleResource; @@ -130,8 +136,8 @@ const testRoleStalenessFilter = (resource: aws.IAM.Role): boolean => { * Get all S3 buckets in the account, and filter down to the ones we consider stale. */ const getOrphanS3TestBuckets = async (account: AWSAccountInfo): Promise => { - const s3Client = new aws.S3(getAWSConfig(account)); - const listBucketResponse = await s3Client.listBuckets().promise(); + const s3Client = new S3Client(getAWSConfig(account)); + const listBucketResponse = await s3Client.send(new ListBucketsCommand({})); const staleBuckets = listBucketResponse.Buckets.filter(testBucketStalenessFilter); const bucketInfos = await Promise.all( staleBuckets.map(async (staleBucket): Promise => { @@ -149,8 +155,8 @@ const getOrphanS3TestBuckets = async (account: AWSAccountInfo): Promise => { - const iamClient = new aws.IAM(getAWSConfig(account)); - const listRoleResponse = await iamClient.listRoles({ MaxItems: 1000 }).promise(); + const iamClient = new IAMClient(getAWSConfig(account)); + const listRoleResponse = await iamClient.send(new ListRolesCommand({MaxItems: 1000})); const staleRoles = listRoleResponse.Roles.filter(testRoleStalenessFilter); return staleRoles.map(it => ({ name: it.RoleName })); }; @@ -175,18 +181,18 @@ const getOrphanTestIamRoles = async (account: AWSAccountInfo): Promise => { // Specify service region to avoid possible endpoint unavailable error - const account = new Account({ ...accountInfo, region: 'us-east-1' }); + const account = new AccountClient(getAWSConfig(accountInfo, 'us-east-1')); const enabledRegions: string[] = []; let nextToken: string | undefined = undefined; do { - const input: Account.Types.ListRegionsRequest = { + const input: ListRegionsRequest = { RegionOptStatusContains: ['ENABLED', 'ENABLED_BY_DEFAULT'], NextToken: nextToken, }; - const response = await account.listRegions(input).promise(); + const response = await account.send(new ListRegionsCommand(input)); nextToken = response.NextToken; enabledRegions.push(...response.Regions.map(r => r.RegionName).filter(Boolean)); @@ -204,19 +210,19 @@ const getRegionsEnabled = async (accountInfo: AWSAccountInfo): Promise * @returns Promise a list of Amplify Apps in the region with build info */ const getAmplifyApps = async (account: AWSAccountInfo, region: string, regionsEnabled: string[]): Promise => { - const amplifyClient = new aws.Amplify(getAWSConfig(account, region)); + const amplifyClient = new AmplifyClient(getAWSConfig(account, region)); if (!regionsEnabled.includes(region)) { console.error(`Listing apps for account ${account.accountId}-${region} failed since ${region} is not enabled. Skipping.`); return []; } - const amplifyApps = await amplifyClient.listApps({ maxResults: 50 }).promise(); // keeping it to 50 as max supported is 50 + const amplifyApps = await amplifyClient.send(new ListAppsCommand({ maxResults: 50 })); // keeping it to 50 as max supported is 50 const result: AmplifyAppInfo[] = []; for (const app of amplifyApps.apps) { const backends: Record = {}; try { - const backendEnvironments = await amplifyClient.listBackendEnvironments({ appId: app.appId, maxResults: 50 }).promise(); + const backendEnvironments = await amplifyClient.send(new ListBackendEnvironmentsCommand({ appId: app.appId, maxResults: 50 })); for (const backendEnv of backendEnvironments.backendEnvironments) { const buildInfo = await getStackDetails(backendEnv.stackName, account, region); if (buildInfo) { @@ -241,7 +247,7 @@ const getAmplifyApps = async (account: AWSAccountInfo, region: string, regionsEn * @param tags Tags associated with the resource * @returns build number or undefined */ -const getJobId = (tags: aws.CloudFormation.Tags = []): string | undefined => { +const getJobId = (tags: Tag[] = []): string | undefined => { const jobId = tags.find(tag => tag.Key === 'codebuild:build_id')?.Value; return jobId; }; @@ -257,14 +263,14 @@ const getJobId = (tags: aws.CloudFormation.Tags = []): string | undefined => { * @returns stack details */ const getStackDetails = async (stackName: string, account: AWSAccountInfo, region: string): Promise => { - const cfnClient = new aws.CloudFormation(getAWSConfig(account, region)); - const stack = await cfnClient.describeStacks({ StackName: stackName }).promise(); + const cfnClient = new CloudFormationClient(getAWSConfig(account, region)); + const stack = await cfnClient.send(new DescribeStacksCommand({ StackName: stackName })); const tags = stack.Stacks.length && stack.Stacks[0].Tags; const stackStatus = stack.Stacks[0].StackStatus; let resourcesFailedToDelete: string[] = []; if (stackStatus === 'DELETE_FAILED') { // TODO: We need to investigate if we should go ahead and remove the resources to prevent account getting cluttered - const resources = await cfnClient.listStackResources({ StackName: stackName }).promise(); + const resources = await cfnClient.send(new ListStackResourcesCommand({ StackName: stackName })); resourcesFailedToDelete = resources.StackResourceSummaries.filter(r => r.ResourceStatus === 'DELETE_FAILED').map( r => r.LogicalResourceId, ); @@ -281,15 +287,14 @@ const getStackDetails = async (stackName: string, account: AWSAccountInfo, regio }; const getStacks = async (account: AWSAccountInfo, region: string, regionsEnabled: string[]): Promise => { - const cfnClient = new aws.CloudFormation(getAWSConfig(account, region)); + const cfnClient = new CloudFormationClient(getAWSConfig(account, region)); if (!regionsEnabled.includes(region)) { console.error(`Listing stacks for account ${account.accountId}-${region} failed since ${region} is not enabled. Skipping.`); return []; } - const stacks = await cfnClient - .listStacks({ + const stacks = await cfnClient.send(new ListStacksCommand({ StackStatusFilter: [ 'CREATE_COMPLETE', 'ROLLBACK_FAILED', @@ -301,8 +306,7 @@ const getStacks = async (account: AWSAccountInfo, region: string, regionsEnabled 'IMPORT_ROLLBACK_FAILED', 'IMPORT_ROLLBACK_COMPLETE', ], - }) - .promise(); + })); // We are interested in only the root stacks that are deployed by amplify-cli const rootStacks = stacks.StackSummaries.filter(stack => !stack.RootId); @@ -320,20 +324,20 @@ const getStacks = async (account: AWSAccountInfo, region: string, regionsEnabled return results; }; -const getCodeBuildClient = (): CodeBuild => { - return new CodeBuild({ +const getCodeBuildClient = (): CodeBuildClient => { + return new CodeBuildClient({ apiVersion: '2016-10-06', region: 'us-east-1', }); }; -const getJobCodeBuildDetails = async (jobIds: string[]): Promise => { +const getJobCodeBuildDetails = async (jobIds: string[]): Promise => { if (jobIds.length === 0) { return []; } const client = getCodeBuildClient(); try { - const { builds } = await client.batchGetBuilds({ ids: jobIds }).promise(); + const { builds } = await client.send(new BatchGetBuildsCommand({ ids: jobIds })); return builds; } catch(e) { console.log(e); @@ -342,27 +346,27 @@ const getJobCodeBuildDetails = async (jobIds: string[]): Promise => { const awsConfig = getAWSConfig(account); - const s3Client = new aws.S3(awsConfig); - const location = await s3Client.getBucketLocation({ Bucket: bucketName }).promise(); + const s3Client = new S3Client(awsConfig); + const location = await s3Client.send(new GetBucketLocationCommand({ Bucket: bucketName })); const region = location.LocationConstraint ?? 'us-east-1'; return region; }; const getS3Buckets = async (account: AWSAccountInfo): Promise => { const awsConfig = getAWSConfig(account); - const s3Client = new aws.S3(awsConfig); - const buckets = await s3Client.listBuckets().promise(); + const s3Client = new S3Client(awsConfig); + const buckets = await s3Client.send(new ListBucketsCommand({})); const result: S3BucketInfo[] = []; for (const bucket of buckets.Buckets) { let region: string | undefined; try { region = await getBucketRegion(account, bucket.Name); // Operations on buckets created in opt-in regions appear to require region-specific clients - const regionalizedClient = new aws.S3({ + const regionalizedClient = new S3Client({ region, ...(awsConfig as object), }); - const bucketDetails = await regionalizedClient.getBucketTagging({ Bucket: bucket.Name }).promise(); + const bucketDetails = await regionalizedClient.send(new GetBucketTaggingCommand({ Bucket: bucket.Name })); const jobId = getJobId(bucketDetails.TagSet); if (jobId) { result.push({ @@ -373,12 +377,12 @@ const getS3Buckets = async (account: AWSAccountInfo): Promise => } } catch (e) { // TODO: Why do we process the bucket even with these particular errors? - if (e.code === 'NoSuchTagSet' || e.code === 'NoSuchBucket') { + if (e.name === 'NoSuchTagSet' || e.name === 'NoSuchBucket') { result.push({ name: bucket.Name, region: region ?? 'us-east-1', }); - } else if (e.code === 'InvalidToken') { + } else if (e.name === 'InvalidToken') { // We see some buckets in some accounts that were somehow created in an opt-in region different from the one to which the account is // actually opted in. We don't quite know how this happened, but for now, we'll make a note of the inconsistency and continue // processing the rest of the buckets. @@ -396,7 +400,7 @@ const getS3Buckets = async (account: AWSAccountInfo): Promise => */ const extractCCIJobInfo = ( record: S3BucketInfo | StackInfo | AmplifyAppInfo, - buildInfos: Record + buildInfos: Record ): CBJobInfo => { const buildId = _.get(record, ['0', 'jobId']); return { @@ -442,7 +446,7 @@ const mergeResourcesByCCIJob = async ( const codeBuildJobIds: string[] = _.uniq([...Object.keys(stacksByJobId), ...Object.keys(bucketByJobId), ...Object.keys(amplifyAppByJobId)]) .filter((jobId: string) => jobId !== UNKNOWN && jobId !== ORPHAN && jobId !== MULTI_JOB_APP) const buildInfos = await getJobCodeBuildDetails(codeBuildJobIds); - const buildInfosByJobId = _.groupBy(buildInfos, (build: CodeBuild.Build) => _.get(build, ['id'])); + const buildInfosByJobId = _.groupBy(buildInfos, (build: Build) => _.get(build, ['id'])); _.mergeWith( result, _.pickBy(amplifyAppByJobId, (__, key) => key !== MULTI_JOB_APP), @@ -503,9 +507,9 @@ const deleteAmplifyApps = async (account: AWSAccountInfo, accountIndex: number, const deleteAmplifyApp = async (account: AWSAccountInfo, accountIndex: number, app: AmplifyAppInfo): Promise => { const { name, appId, region } = app; console.log(`${generateAccountInfo(account, accountIndex)} Deleting App ${name}(${appId})`); - const amplifyClient = new aws.Amplify(getAWSConfig(account, region)); + const amplifyClient = new AmplifyClient(getAWSConfig(account, region)); try { - await amplifyClient.deleteApp({ appId }).promise(); + await amplifyClient.send(new DeleteAppCommand({ appId })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting Amplify App ${appId} failed with the following error`, e); if (e.code === 'ExpiredTokenException') { @@ -529,10 +533,10 @@ const deleteIamRole = async (account: AWSAccountInfo, accountIndex: number, role const { name: roleName } = role; try { console.log(`${generateAccountInfo(account, accountIndex)} Deleting Iam Role ${roleName}`); - const iamClient = new aws.IAM(getAWSConfig(account)); + const iamClient = new IAMClient(getAWSConfig(account)); await deleteAttachedRolePolicies(account, accountIndex, roleName); await deleteRolePolicies(account, accountIndex, roleName); - await iamClient.deleteRole({ RoleName: roleName }).promise(); + await iamClient.send(new DeleteRoleCommand({ RoleName: roleName })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting iam role ${roleName} failed with error ${e.message}`); if (e.code === 'ExpiredTokenException') { @@ -546,8 +550,8 @@ const deleteAttachedRolePolicies = async ( accountIndex: number, roleName: string, ): Promise => { - const iamClient = new aws.IAM(getAWSConfig(account)); - const rolePolicies = await iamClient.listAttachedRolePolicies({ RoleName: roleName }).promise(); + const iamClient = new IAMClient(getAWSConfig(account)); + const rolePolicies = await iamClient.send(new ListAttachedRolePoliciesCommand({ RoleName: roleName })); await Promise.all(rolePolicies.AttachedPolicies.map(policy => detachIamAttachedRolePolicy(account, accountIndex, roleName, policy))); }; @@ -555,12 +559,12 @@ const detachIamAttachedRolePolicy = async ( account: AWSAccountInfo, accountIndex: number, roleName: string, - policy: aws.IAM.AttachedPolicy, + policy: AttachedPolicy, ): Promise => { try { console.log(`${generateAccountInfo(account, accountIndex)} Detach Iam Attached Role Policy ${policy.PolicyName}`); - const iamClient = new aws.IAM(getAWSConfig(account)); - await iamClient.detachRolePolicy({ RoleName: roleName, PolicyArn: policy.PolicyArn }).promise(); + const iamClient = new IAMClient(getAWSConfig(account)); + await iamClient.send(new DetachRolePolicyCommand({ RoleName: roleName, PolicyArn: policy.PolicyArn })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Detach iam role policy ${policy.PolicyName} failed with error ${e.message}`); if (e.code === 'ExpiredTokenException') { @@ -574,8 +578,8 @@ const deleteRolePolicies = async ( accountIndex: number, roleName: string, ): Promise => { - const iamClient = new aws.IAM(getAWSConfig(account)); - const rolePolicies = await iamClient.listRolePolicies({ RoleName: roleName }).promise(); + const iamClient = new IAMClient(getAWSConfig(account)); + const rolePolicies = await iamClient.send(new ListRolePoliciesCommand({ RoleName: roleName })); await Promise.all(rolePolicies.PolicyNames.map(policy => deleteIamRolePolicy(account, accountIndex, roleName, policy))); }; @@ -587,8 +591,8 @@ const deleteIamRolePolicy = async ( ): Promise => { try { console.log(`${generateAccountInfo(account, accountIndex)} Deleting Iam Role Policy ${policyName}`); - const iamClient = new aws.IAM(getAWSConfig(account)); - await iamClient.deleteRolePolicy({ RoleName: roleName, PolicyName: policyName }).promise(); + const iamClient = new IAMClient(getAWSConfig(account)); + await iamClient.send(new DeleteRolePolicyCommand({ RoleName: roleName, PolicyName: policyName })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting iam role policy ${policyName} failed with error ${e.message}`); if (e.code === 'ExpiredTokenException') { @@ -606,7 +610,7 @@ const deleteBucket = async (account: AWSAccountInfo, accountIndex: number, bucke try { console.log(`${generateAccountInfo(account, accountIndex)} Deleting S3 Bucket ${name}`); const awsConfig = getAWSConfig(account); - const regionalizedS3Client = new aws.S3({ + const regionalizedS3Client = new S3Client({ region: bucket.region, ...(awsConfig as object), }); @@ -628,9 +632,9 @@ const deleteCfnStack = async (account: AWSAccountInfo, accountIndex: number, sta const resourceToRetain = resourcesFailedToDelete.length ? resourcesFailedToDelete : undefined; console.log(`${generateAccountInfo(account, accountIndex)} Deleting CloudFormation stack ${stackName}`); try { - const cfnClient = new aws.CloudFormation(getAWSConfig(account, region)); - await cfnClient.deleteStack({ StackName: stackName, RetainResources: resourceToRetain }).promise(); - await cfnClient.waitFor('stackDeleteComplete', { StackName: stackName }).promise(); + const cfnClient = new CloudFormationClient(getAWSConfig(account, region)); + await cfnClient.send(new DeleteStackCommand({ StackName: stackName, RetainResources: resourceToRetain })); + await waitUntilStackDeleteComplete({ client: cfnClient, maxWaitTime: 3600 }, { StackName: stackName }); } catch (e) { console.log(`Deleting CloudFormation stack ${stackName} failed with error ${e.message}`); if (e.code === 'ExpiredTokenException') { @@ -701,35 +705,33 @@ const getFilterPredicate = (args: any): JobFilterPredicate => { */ const getAccountsToCleanup = async (): Promise => { // This script runs using the codebuild project role to begin with - const stsClient = new aws.STS({ + const stsClient = new STSClient({ apiVersion: '2011-06-15' }); - const assumeRoleResForE2EParent = await stsClient - .assumeRole({ + const assumeRoleResForE2EParent = await stsClient.send(new AssumeRoleCommand({ RoleArn: process.env.TEST_ACCOUNT_ROLE, RoleSessionName: `testSession${Math.floor(Math.random() * 100000)}`, // One hour DurationSeconds: 1 * 60 * 60, - }) - .promise(); + })); const e2eParentAccountCred = { accessKeyId: assumeRoleResForE2EParent.Credentials.AccessKeyId, secretAccessKey: assumeRoleResForE2EParent.Credentials.SecretAccessKey, sessionToken: assumeRoleResForE2EParent.Credentials.SessionToken } - const stsClientForE2E = new aws.STS({ + const stsClientForE2E = new STSClient({ apiVersion: '2011-06-15', credentials: e2eParentAccountCred }); - const parentAccountIdentity = await stsClientForE2E.getCallerIdentity().promise() - const orgApi = new aws.Organizations({ + const parentAccountIdentity = await stsClientForE2E.send(new GetCallerIdentityCommand({})); + const orgApi = new OrganizationsClient({ apiVersion: '2016-11-28', // the region where the organization exists region: 'us-east-1', credentials: e2eParentAccountCred }); try { - const orgAccounts = await orgApi.listAccounts().promise(); + const orgAccounts = await orgApi.send(new ListAccountsCommand({})); const accountCredentialPromises = orgAccounts.Accounts.map(async account => { if (account.Id === parentAccountIdentity.Account) { return { @@ -738,14 +740,12 @@ const getAccountsToCleanup = async (): Promise => { }; } const randomNumber = Math.floor(Math.random() * 100000); - const assumeRoleRes = await stsClientForE2E - .assumeRole({ + const assumeRoleRes = await stsClientForE2E.send(new AssumeRoleCommand({ RoleArn: `arn:aws:iam::${account.Id}:role/OrganizationAccountAccessRole`, RoleSessionName: `testSession${randomNumber}`, // One hour DurationSeconds: 1 * 60 * 60, - }) - .promise(); + })); return { accountId: account.Id, accessKeyId: assumeRoleRes.Credentials.AccessKeyId, diff --git a/packages/amplify-codegen-e2e-tests/src/import-helpers/utilities.ts b/packages/amplify-codegen-e2e-tests/src/import-helpers/utilities.ts index 785fd9f13..9a62ddb7c 100644 --- a/packages/amplify-codegen-e2e-tests/src/import-helpers/utilities.ts +++ b/packages/amplify-codegen-e2e-tests/src/import-helpers/utilities.ts @@ -1,4 +1,5 @@ -import * as aws from 'aws-sdk'; +import { CognitoIdentityProviderClient, CreateUserPoolClientCommand, DeleteUserPoolClientCommand } from '@aws-sdk/client-cognito-identity-provider'; +import { fromIni } from '@aws-sdk/credential-providers'; import * as path from 'path'; import { $TSObject, JSONUtilities } from '@aws-amplify/amplify-cli-core'; @@ -276,23 +277,23 @@ const addAppClient = async ( ) => { const projectDetails = getProjectMeta(projectRoot); const authDetails = getAuthProjectDetails(projectRoot); - const creds = new aws.SharedIniFileCredentials({ profile: profileName }); - aws.config.credentials = creds; - - const cognitoClient = new aws.CognitoIdentityServiceProvider({ region: projectDetails.providers.awscloudformation.Region }); - const response = await cognitoClient - .createUserPoolClient({ - ClientName: clientName, - UserPoolId: authDetails.meta.UserPoolId, - GenerateSecret: generateSecret, - AllowedOAuthFlows: settings.allowedOAuthFlows, - CallbackURLs: settings.callbackURLs, - LogoutURLs: settings.logoutURLs, - AllowedOAuthScopes: settings.allowedScopes, - SupportedIdentityProviders: settings.supportedIdentityProviders, - AllowedOAuthFlowsUserPoolClient: settings.allowedOAuthFlowsUserPoolClient, - }) - .promise(); + const creds = fromIni({ profile: profileName }); + + const cognitoClient = new CognitoIdentityProviderClient({ + region: projectDetails.providers.awscloudformation.Region, + credentials: creds + }); + const response = await cognitoClient.send(new CreateUserPoolClientCommand({ + ClientName: clientName, + UserPoolId: authDetails.meta.UserPoolId, + GenerateSecret: generateSecret, + AllowedOAuthFlows: settings.allowedOAuthFlows, + CallbackURLs: settings.callbackURLs, + LogoutURLs: settings.logoutURLs, + AllowedOAuthScopes: settings.allowedScopes, + SupportedIdentityProviders: settings.supportedIdentityProviders, + AllowedOAuthFlowsUserPoolClient: settings.allowedOAuthFlowsUserPoolClient, + })); return { appClientId: response.UserPoolClient.ClientId, appclientSecret: response.UserPoolClient.ClientSecret }; }; @@ -312,9 +313,11 @@ export const addAppClientWithoutSecret = async ( export const deleteAppClient = async (profileName: string, projectRoot: string, clientId: string) => { const authDetails = getAuthProjectDetails(projectRoot); const projectDetails = getProjectMeta(projectRoot); - const creds = new aws.SharedIniFileCredentials({ profile: profileName }); - aws.config.credentials = creds; + const creds = fromIni({ profile: profileName }); - const cognitoClient = new aws.CognitoIdentityServiceProvider({ region: projectDetails.providers.awscloudformation.Region }); - await cognitoClient.deleteUserPoolClient({ ClientId: clientId, UserPoolId: authDetails.meta.UserPoolId }).promise(); + const cognitoClient = new CognitoIdentityProviderClient({ + region: projectDetails.providers.awscloudformation.Region, + credentials: creds + }); + await cognitoClient.send(new DeleteUserPoolClientCommand({ ClientId: clientId, UserPoolId: authDetails.meta.UserPoolId })); }; diff --git a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/authHelper.ts b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/authHelper.ts index 6578d7627..6b3452df2 100644 --- a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/authHelper.ts +++ b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/authHelper.ts @@ -1,4 +1,4 @@ -import { CognitoIdentityServiceProvider } from 'aws-sdk'; +import { CognitoIdentityProviderClient, AdminCreateUserCommand, AdminAddUserToGroupCommand } from '@aws-sdk/client-cognito-identity-provider'; import { getProjectMeta, getBackendAmplifyMeta } from '@aws-amplify/amplify-codegen-e2e-core'; import Amplify, { Auth } from 'aws-amplify'; import { AuthenticationDetails } from 'amazon-cognito-identity-js'; @@ -12,24 +12,13 @@ const tempPassword = 'tempPassword'; //if groupName is specified, add the user to the group. export async function setupUser(userPoolId: string, username: string, password: string, groupName?: string) { const cognitoClient = getConfiguredCognitoClient(); - await cognitoClient - .adminCreateUser({ - UserPoolId: userPoolId, - UserAttributes: [{ Name: 'email', Value: 'username@amazon.com' }], - Username: username, - MessageAction: 'SUPPRESS', - TemporaryPassword: tempPassword, - }) - .promise(); - - // await cognitoClient - // .adminSetUserPassword({ - // UserPoolId: userPoolId, - // Username: username, - // Password: password, - // Permanent: true, - // }) - // .promise(); + await cognitoClient.send(new AdminCreateUserCommand({ + UserPoolId: userPoolId, + UserAttributes: [{ Name: 'email', Value: 'username@amazon.com' }], + Username: username, + MessageAction: 'SUPPRESS', + TemporaryPassword: tempPassword, + })); const authDetails = new AuthenticationDetails({ Username: username, @@ -39,41 +28,36 @@ export async function setupUser(userPoolId: string, username: string, password: await authenticateUser(user, authDetails, password); if (groupName) { - await cognitoClient - .adminAddUserToGroup({ - UserPoolId: userPoolId, - Username: username, - GroupName: groupName, - }) - .promise(); + await cognitoClient.send(new AdminAddUserToGroupCommand({ + UserPoolId: userPoolId, + Username: username, + GroupName: groupName, + })); } } export async function addUserToGroup( - cognitoClient: CognitoIdentityServiceProvider, + cognitoClient: CognitoIdentityProviderClient, userPoolId: string, username: string, groupName?: string, ) { - await cognitoClient - .adminAddUserToGroup({ - UserPoolId: userPoolId, - Username: username, - GroupName: groupName, - }) - .promise(); + await cognitoClient.send(new AdminAddUserToGroupCommand({ + UserPoolId: userPoolId, + Username: username, + GroupName: groupName, + })); } -export function getConfiguredCognitoClient(): CognitoIdentityServiceProvider { - const cognitoClient = new CognitoIdentityServiceProvider({ apiVersion: '2016-04-19', region: process.env.CLI_REGION }); - - const awsconfig = { - accessKeyId: process.env.AWS_ACCESS_KEY_ID, - secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, +export function getConfiguredCognitoClient(): CognitoIdentityProviderClient { + const cognitoClient = new CognitoIdentityProviderClient({ + apiVersion: '2016-04-19', region: process.env.CLI_REGION, - }; - - cognitoClient.config.update(awsconfig); + credentials: { + accessKeyId: process.env.AWS_ACCESS_KEY_ID, + secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, + } + }); return cognitoClient; } diff --git a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/function-example2.ts b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/function-example2.ts index f5fcc1842..c99d77fcc 100644 --- a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/function-example2.ts +++ b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/function-example2.ts @@ -93,8 +93,8 @@ var authMyResourceNameUserPoolId = process.env.AUTH_MYRESOURCENAME_USERPOOLID Amplify Params - DO NOT EDIT */ -const { CognitoIdentityServiceProvider } = require('aws-sdk'); -const cognitoIdentityServiceProvider = new CognitoIdentityServiceProvider(); +const { CognitoIdentityProviderClient, AdminGetUserCommand } = require('@aws-sdk/client-cognito-identity-provider'); +const cognitoClient = new CognitoIdentityProviderClient(); /** * Get user pool information from environment variables. @@ -114,13 +114,13 @@ const resolvers = { return ctx.arguments.msg; }, me: async ctx => { - var params = { + const params = { UserPoolId: COGNITO_USERPOOL_ID /* required */, Username: ctx.identity.claims[COGNITO_USERNAME_CLAIM_KEY] /* required */, }; try { - // Read more: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html#adminGetUser-property - return await cognitoIdentityServiceProvider.adminGetUser(params).promise(); + // Read more: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/AdminGetUserCommand/ + return await cognitoClient.send(new AdminGetUserCommand(params)); } catch (e) { throw new Error('NOT FOUND'); } diff --git a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/predictions-usage.ts b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/predictions-usage.ts index 6ce79a447..c430e5e31 100644 --- a/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/predictions-usage.ts +++ b/packages/amplify-codegen-e2e-tests/src/schema-api-directives/tests/predictions-usage.ts @@ -2,7 +2,7 @@ //This test will faile due to a possible AppSync bug, see details below the test code import path from 'path'; import fs from 'fs-extra'; -import aws from 'aws-sdk'; +import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3'; import gql from 'graphql-tag'; import { addAuthWithDefault, addS3Storage, getBackendAmplifyMeta, addApi, amplifyPush } from '@aws-amplify/amplify-codegen-e2e-core'; @@ -42,11 +42,13 @@ export async function runTest(projectDir: string, testModule: any) { async function uploadImageFile(projectDir: string) { const imageFilePath = path.join(__dirname, 'predictions-usage-image.jpg'); - const s3Client = new aws.S3({ - accessKeyId: process.env.AWS_ACCESS_KEY_ID, - secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, + const s3Client = new S3Client([{ + credentials: { + accessKeyId: process.env.AWS_ACCESS_KEY_ID, + secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY, + }, region: process.env.AWS_DEFAULT_REGION, - }); + }]); const amplifyMeta = getBackendAmplifyMeta(projectDir); const storageResourceName = Object.keys(amplifyMeta.storage).find((key: any) => { @@ -56,14 +58,13 @@ async function uploadImageFile(projectDir: string) { const bucketName = amplifyMeta.storage[storageResourceName].output.BucketName; const fileStream = fs.createReadStream(imageFilePath); - const uploadParams = { + await s3Client.send(new PutObjectCommand({ Bucket: bucketName, Key: imageKey, Body: fileStream, ContentType: 'image/jpeg', ACL: 'public-read', - }; - await s3Client.upload(uploadParams).promise(); + })); } //schema diff --git a/scripts/view-test-artifacts.ts b/scripts/view-test-artifacts.ts index f902f0886..ebf8dfc55 100644 --- a/scripts/view-test-artifacts.ts +++ b/scripts/view-test-artifacts.ts @@ -6,16 +6,20 @@ import * as process from 'process'; import * as path from 'path'; import * as os from 'os'; import * as fs from 'fs-extra'; +import { Readable } from 'stream'; +import { SdkStream } from '@smithy/types'; // eslint-disable-next-line import/no-extraneous-dependencies -import { CodeBuild, S3, SharedIniFileCredentials } from 'aws-sdk'; +import { CodeBuildClient, BatchGetBuildBatchesCommand } from '@aws-sdk/client-codebuild'; +import { S3Client, ListObjectsCommand, GetObjectCommand, GetObjectCommandOutput } from '@aws-sdk/client-s3'; +import { fromIni } from '@aws-sdk/credential-providers'; // eslint-disable-next-line import/no-extraneous-dependencies import { SingleBar, Presets } from 'cli-progress'; import * as execa from 'execa'; const E2E_PROFILE_NAME = 'AmplifyAPIE2EProd'; -const credentials = new SharedIniFileCredentials({ profile: E2E_PROFILE_NAME }); -const s3 = new S3({ credentials }); -const codeBuild = new CodeBuild({ credentials, region: 'us-east-1' }); +const credentials = fromIni({ profile: E2E_PROFILE_NAME }); +const s3 = new S3Client([{ credentials }]); +const codeBuild = new CodeBuildClient({credentials, region: 'us-east-1'}); const progressBar = new SingleBar({}, Presets.shades_classic); type BuildStatus = 'FAILED' | 'FAULT' | 'IN_PROGRESS' | 'STOPPED' | 'SUCCEEDED' | 'TIMED_OUT'; @@ -81,7 +85,7 @@ const generateIndexFile = (directory: string, artifacts: TestArtifact[]): void = * @param batchId the batch to look up. */ const retrieveArtifactsForBatch = async (batchId: string): Promise => { - const { buildBatches } = await codeBuild.batchGetBuildBatches({ ids: [batchId] }).promise(); + const { buildBatches } = await codeBuild.send(new BatchGetBuildBatchesCommand({ ids: [batchId] })); return (buildBatches || []) .flatMap((batch) => (batch.buildGroups || []).map( @@ -101,7 +105,7 @@ const downloadSingleTestArtifact = async (tempDir: string, artifact: Required x.Key !== undefined; @@ -115,10 +119,17 @@ const downloadSingleTestArtifact = async (tempDir: string, artifact: Required { const writer = fs.createWriteStream(filePath); - s3.getObject({ Bucket, Key }).createReadStream().pipe(writer); - writer.on('finish', resolve); - writer.on('close', resolve); - writer.on('error', reject); + s3.send(new GetObjectCommand({ Bucket, Key })).then((response: GetObjectCommandOutput) => { + if (!response.Body) { + reject(new Error('No body in response')); + return; + } + const body = response.Body as SdkStream; + body.pipe(writer); + writer.on('finish', resolve); + writer.on('close', resolve); + writer.on('error', reject); + }).catch(reject); }); }), ); diff --git a/shared-scripts.sh b/shared-scripts.sh index 35624b73a..c975a8811 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -1,7 +1,6 @@ #!/bin/bash -AMPLIFY_NODE_VERSION=18.20.4 -AMPLIFY_NODE_VERSION_WINDOWS=24.12.0 +AMPLIFY_NODE_VERSION=24.12.0 # set exit on error to true set -e @@ -146,8 +145,8 @@ function _buildLinux { } function _buildWindows { - echo "Setup Node Version $AMPLIFY_NODE_VERSION_WINDOWS for Windows" - _setupNodeVersionWindows $AMPLIFY_NODE_VERSION_WINDOWS + echo "Setup Node Version $AMPLIFY_NODE_VERSION for Windows" + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION echo "Windows Build" yarn run production-build storeCacheForWindowsBuildJob @@ -325,7 +324,7 @@ function _runGen2E2ETestsLinux { function _runGen2E2ETestsWindows { echo "RUN Gen2 E2E Tests Windows" echo "Setup Node Version" - _setupNodeVersionWindows $AMPLIFY_NODE_VERSION_WINDOWS + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION retry runGen2E2eTest } diff --git a/yarn.lock b/yarn.lock index cf97a5624..e90f7b79e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -872,6 +872,15 @@ "@aws-sdk/types" "^3.222.0" tslib "^1.11.1" +"@aws-crypto/crc32@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz#cfcc22570949c98c6689cfcbd2d693d36cdae2e1" + integrity sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg== + dependencies: + "@aws-crypto/util" "^5.2.0" + "@aws-sdk/types" "^3.222.0" + tslib "^2.6.2" + "@aws-crypto/crc32@^1.0.0": version "1.2.2" resolved "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-1.2.2.tgz#4a758a596fa8cb3ab463f037a78c2ca4992fe81f" @@ -890,6 +899,15 @@ "@aws-sdk/types" "^3.222.0" tslib "^1.11.1" +"@aws-crypto/crc32c@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz#4e34aab7f419307821509a98b9b08e84e0c1917e" + integrity sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag== + dependencies: + "@aws-crypto/util" "^5.2.0" + "@aws-sdk/types" "^3.222.0" + tslib "^2.6.2" + "@aws-crypto/ie11-detection@^1.0.0": version "1.0.0" resolved "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-1.0.0.tgz#d3a6af29ba7f15458f79c41d1cd8cac3925e726a" @@ -924,6 +942,18 @@ "@aws-sdk/util-utf8-browser" "^3.0.0" tslib "^1.11.1" +"@aws-crypto/sha1-browser@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz#b0ee2d2821d3861f017e965ef3b4cb38e3b6a0f4" + integrity sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg== + dependencies: + "@aws-crypto/supports-web-crypto" "^5.2.0" + "@aws-crypto/util" "^5.2.0" + "@aws-sdk/types" "^3.222.0" + "@aws-sdk/util-locate-window" "^3.0.0" + "@smithy/util-utf8" "^2.0.0" + tslib "^2.6.2" + "@aws-crypto/sha256-browser@2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz#741c9024df55ec59b51e5b1f5d806a4852699fb5" @@ -952,6 +982,19 @@ "@aws-sdk/util-utf8-browser" "^3.0.0" tslib "^1.11.1" +"@aws-crypto/sha256-browser@5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz#153895ef1dba6f9fce38af550e0ef58988eb649e" + integrity sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw== + dependencies: + "@aws-crypto/sha256-js" "^5.2.0" + "@aws-crypto/supports-web-crypto" "^5.2.0" + "@aws-crypto/util" "^5.2.0" + "@aws-sdk/types" "^3.222.0" + "@aws-sdk/util-locate-window" "^3.0.0" + "@smithy/util-utf8" "^2.0.0" + tslib "^2.6.2" + "@aws-crypto/sha256-browser@^1.0.0", "@aws-crypto/sha256-browser@^1.2.2": version "1.2.2" resolved "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-1.2.2.tgz#004d806e3bbae130046c259ec3279a02d4a0b576" @@ -992,6 +1035,15 @@ "@aws-sdk/types" "^3.222.0" tslib "^1.11.1" +"@aws-crypto/sha256-js@5.2.0", "@aws-crypto/sha256-js@^5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz#c4fdb773fdbed9a664fc1a95724e206cf3860042" + integrity sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA== + dependencies: + "@aws-crypto/util" "^5.2.0" + "@aws-sdk/types" "^3.222.0" + tslib "^2.6.2" + "@aws-crypto/sha256-js@^2.0.0": version "2.0.2" resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.2.tgz#c81e5d378b8a74ff1671b58632779986e50f4c99" @@ -1032,6 +1084,22 @@ dependencies: tslib "^1.11.1" +"@aws-crypto/supports-web-crypto@^5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz#a1e399af29269be08e695109aa15da0a07b5b5fb" + integrity sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg== + dependencies: + tslib "^2.6.2" + +"@aws-crypto/util@5.2.0", "@aws-crypto/util@^5.2.0": + version "5.2.0" + resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz#71284c9cffe7927ddadac793c14f14886d3876da" + integrity sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ== + dependencies: + "@aws-sdk/types" "^3.222.0" + "@smithy/util-utf8" "^2.0.0" + tslib "^2.6.2" + "@aws-crypto/util@^1.2.2": version "1.2.2" resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-1.2.2.tgz#b28f7897730eb6538b21c18bd4de22d0ea09003c" @@ -1075,6 +1143,51 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/client-account@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-account/-/client-account-3.1000.0.tgz#122fb3fc6e27b9ae1cdfd013a9b393d159d8c3a9" + integrity sha512-I/jJ8ZyAVKgcCzWhYf1ECv+LN040BojMeBWp4nOU6sPcxPvJVomJBYfboYgqnkKbbBOvEVwjyfEuGU6E42KsPA== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-amplify@^3.465.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/client-amplify/-/client-amplify-3.568.0.tgz#a4cc53c54265fd39958d4b7e08fd5c2c4dbd4ae1" @@ -1120,6 +1233,96 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/client-amplify@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-amplify/-/client-amplify-3.1000.0.tgz#3625d87c63f10ce54bcb8d9c5154973b298fd853" + integrity sha512-6IfJN7tmdFWXCqQ2daypSy0TmhTIxszLY1CO89IVKUJ2pIDntHdTz7VmSXvedr8l4NDkxdnCtPH51AF8Ab4WCQ== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/client-amplifybackend@^3.990.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-amplifybackend/-/client-amplifybackend-3.1000.0.tgz#58e8252f6b75cb4bf00680ec422104268354fb11" + integrity sha512-Jt/9aTdYSI9q6+2GdSVSaOIwxNCl+rfM55pOgC6J4rPR0omNWnYJHwWpAFMtV68IbbXSwGTlWaLMAtl3Efn71g== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-appsync@^3.465.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/client-appsync/-/client-appsync-3.568.0.tgz#5c58261b2bf54ce63e199a86de868b517be78d28" @@ -1166,6 +1369,143 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/client-appsync@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-appsync/-/client-appsync-3.1000.0.tgz#7bd7b98a55196736bf41486e8dd864439afca660" + integrity sha512-Ql6+ya89ZD0mgde9DrVXH/3tc3hHNilaRPVKcyj+MjTsZvGeN6deCzZ0xQe9iaMun1lPDAj4GZYuHqyCZvAy4A== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/client-cloudformation@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-cloudformation/-/client-cloudformation-3.1000.0.tgz#0afdce97995df004a7cc6451b3c65a3fab9f289d" + integrity sha512-ND+5NU5j2BxT/IC1HQMZOH2Mmiw+6/w4RDUBB2FHrqcXUk52DZs1PRppl3hZBzpv6xkbFnRd0aDb83TSaCCsxw== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + +"@aws-sdk/client-cloudwatch-events@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-events/-/client-cloudwatch-events-3.1000.0.tgz#e688394e76a1e32c878e0d97472db2f1509bcee0" + integrity sha512-7geHMvAnU14ykgmM2N62SONC545PkiLSImyWIEepa5G0MlwL6+WRASaAWzPaHtZ/K7vpNVKJjn/T3qJmnU7tpg== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-cloudwatch-logs@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.6.1.tgz#5e8dba495a2ba9a901b0a1a2d53edef8bd452398" @@ -1203,6 +1543,189 @@ "@aws-sdk/util-utf8-node" "3.6.1" tslib "^2.0.0" +"@aws-sdk/client-cloudwatch-logs@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.1000.0.tgz#0db7a86a7d264b1a6d711be3d7a4f7316b94fc30" + integrity sha512-8/YP++CiBIh5jADEmPfBCHYWErHNYlG5Ome5h82F/yB+x6i9ARF/Y/u95Z9IHwO25CDvxTPKH0U66h7HFL8tcg== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/eventstream-serde-browser" "^4.2.10" + "@smithy/eventstream-serde-config-resolver" "^4.3.10" + "@smithy/eventstream-serde-node" "^4.2.10" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/client-codebuild@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-codebuild/-/client-codebuild-3.1000.0.tgz#f449c9bd44a3c74b0080c471c0dc5dd0721c3e75" + integrity sha512-unbWvkPuWMau1QiJbf8SpN3Jm6hx8mfTmZ1hNqpaxbj3ILHz0VIiaPxNUKZ8fUj4k00X99y7KNDW9Nt02466UQ== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/client-cognito-identity-provider@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.1000.0.tgz#1b4337c4f16a91c6d869a2959e2e1e17bc899f40" + integrity sha512-QF4pgV5gE8aIXIbfR/QMeBWGYXmHK0gCfSeCF0GFrkoH6db5v9sN+qVIFe9U5oWw7Rg+SqXKbQLo/H+vEa0Hpw== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/client-cognito-identity@3.1000.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.1000.0.tgz#38b2b8c437b50537dddefebed07a247d462b211a" + integrity sha512-7PtY49oxAo0rzkXZ1ulumtRL4QYi30Q5AMJtqJhYCHc1VZr0I2f0LHxiwovzquqUPzmTArgY6LjcPB7bkB/54w== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-cognito-identity@3.568.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.568.0.tgz#15cc44220b184154b3e5e2ec02bab32b8db2b938" @@ -1286,6 +1809,54 @@ tslib "^2.0.0" uuid "^3.0.0" +"@aws-sdk/client-dynamodb@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.1000.0.tgz#ef65f43ffd92e53be92ecebd1e00accc5875e8cb" + integrity sha512-S0M9ndVgGiupQEX9M6yLIKx2Iw1Z/lnZR1j5guuR76sqteQM6jsQseTJepq0hJ9SGGpzSwMucYJxETQDHsgFhQ== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/dynamodb-codec" "^3.972.16" + "@aws-sdk/middleware-endpoint-discovery" "^3.972.6" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + "@aws-sdk/client-firehose@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-firehose/-/client-firehose-3.6.1.tgz#87a8ef0c18267907b3ce712e6d3de8f36b0a7c7b" @@ -1323,6 +1894,52 @@ "@aws-sdk/util-utf8-node" "3.6.1" tslib "^2.0.0" +"@aws-sdk/client-iam@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-iam/-/client-iam-3.1000.0.tgz#3c0609bef6264a3d04b57e873c2c7fdfcef51e36" + integrity sha512-RR4mq7t+4Fb2iaFDTcXF6Tcigl2nSWUyH61rwtiSbRrNp9A3xSexCSw79SIAkfwsuhk8Ig/ZVt5qpRHWRj2zgA== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + "@aws-sdk/client-kinesis@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-kinesis/-/client-kinesis-3.6.1.tgz#48583cc854f9108bc8ff6168005d9a05b24bae31" @@ -1364,6 +1981,150 @@ "@aws-sdk/util-waiter" "3.6.1" tslib "^2.0.0" +"@aws-sdk/client-kinesis@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-kinesis/-/client-kinesis-3.1000.0.tgz#0f274d77b6bddb48c55b9529e56057a60fa64d02" + integrity sha512-EcE78J2R+XBD5bgwZdhYrbds2xfg1XyL5LN5pWMI8lTTf8S0idTNQKxlDpwGHIrEAPwSIOwF2WKWWeOPiUw2Lg== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/eventstream-serde-browser" "^4.2.10" + "@smithy/eventstream-serde-config-resolver" "^4.3.10" + "@smithy/eventstream-serde-node" "^4.2.10" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + +"@aws-sdk/client-lambda@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.1000.0.tgz#e8d8e279791e0373137d72c166fa656c2a215532" + integrity sha512-ofAVxy8j1qFUB8jB3yHWhy5ybYyTE6qsIVlzu+ITD0cKTLjg4xjmLaDmZA9dYpe4xSh7PSuv0ughBQMWwppOCw== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/eventstream-serde-browser" "^4.2.10" + "@smithy/eventstream-serde-config-resolver" "^4.3.10" + "@smithy/eventstream-serde-node" "^4.2.10" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + +"@aws-sdk/client-lex-model-building-service@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-lex-model-building-service/-/client-lex-model-building-service-3.1000.0.tgz#3c04ea9fa3ca86b62170e7100275cfe87da27419" + integrity sha512-z3SvIlqpFYKjwTz9q1XgEvXxTIiABrHUQYEwQ9Czj7Adr6Ua7/xifMQMnsJflWmh5eCANF9tXqPFUimIgcpNWA== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-lex-runtime-service@3.186.3": version "3.186.3" resolved "https://registry.npmjs.org/@aws-sdk/client-lex-runtime-service/-/client-lex-runtime-service-3.186.3.tgz#cc1130254d50dc1a5b85ac736e6f764b0fa145c3" @@ -1489,6 +2250,51 @@ "@aws-sdk/util-utf8-node" "3.186.0" tslib "^2.3.1" +"@aws-sdk/client-organizations@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-organizations/-/client-organizations-3.1000.0.tgz#b4647cc5fa80df75a7451fd68c305dc3e5579290" + integrity sha512-Lyl1oR9qedh4Qm+jP43NKPTvrAKnvgLq5cJ16JQlAltDLyrHLnrUpUssHwUjGXt8fBkpXnHSCbDGRKinfS/UwQ== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-personalize-events@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-personalize-events/-/client-personalize-events-3.6.1.tgz#86942bb64108cfc2f6c31a8b54aab6fa7f7be00f" @@ -1526,6 +2332,51 @@ "@aws-sdk/util-utf8-node" "3.6.1" tslib "^2.0.0" +"@aws-sdk/client-pinpoint@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-pinpoint/-/client-pinpoint-3.1000.0.tgz#ddc85f34eeb68568bf94d4b56c381df329817a3a" + integrity sha512-EDYGDRXN2mJK4EM226imTsLwXcc0CpKXw0ED7b/fvhmNlvkPcIOLFlMV9QgKqCUkLj7bLhY2CJI+BFCZk37eIQ== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-polly@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.6.1.tgz#869deb186e57fca29737bfa7af094599d7879841" @@ -1601,6 +2452,52 @@ "@aws-sdk/util-waiter" "3.6.1" tslib "^2.0.0" +"@aws-sdk/client-rekognition@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-rekognition/-/client-rekognition-3.1000.0.tgz#62ddbe79ebdcb3347f6a1113f99041f9388df7c0" + integrity sha512-XRIoLjA9qOv0b/LymZ7q55EZqJDXNDvVWrWX2xdFZKUyCFY1D/JrUZqWi9Pi7B6GTP4Ku8FJFkbe8ZjK2IbYTw== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + "@aws-sdk/client-s3@^3.25.0": version "3.468.0" resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.468.0.tgz#f1aed20a606f0ce0c66e0967cd03d3cb1c631f11" @@ -1726,6 +2623,67 @@ "@smithy/util-waiter" "^2.2.0" tslib "^2.6.2" +"@aws-sdk/client-s3@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1000.0.tgz#60bb68ff9d9ca8ff1b53abcdaa55c6ba9174ceb7" + integrity sha512-7kPy33qNGq3NfwHC0412T6LDK1bp4+eiPzetX0sVd9cpTSXuQDKpoOFnB0Njj6uZjJDcLS3n2OeyarwwgkQ0Ow== + dependencies: + "@aws-crypto/sha1-browser" "5.2.0" + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-bucket-endpoint" "^3.972.6" + "@aws-sdk/middleware-expect-continue" "^3.972.6" + "@aws-sdk/middleware-flexible-checksums" "^3.973.1" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-location-constraint" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-sdk-s3" "^3.972.15" + "@aws-sdk/middleware-ssec" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/signature-v4-multi-region" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/eventstream-serde-browser" "^4.2.10" + "@smithy/eventstream-serde-config-resolver" "^4.3.10" + "@smithy/eventstream-serde-node" "^4.2.10" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-blob-browser" "^4.2.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/hash-stream-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/md5-js" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + "@smithy/util-waiter" "^4.2.10" + tslib "^2.6.2" + "@aws-sdk/client-ssm@^3.465.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.568.0.tgz#5b68025b00ec8fdcbd4c853b93cff2b0d08f3716" @@ -2117,6 +3075,51 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/client-sts@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.1000.0.tgz#ba64493c93188322940454ce635e128898b28eb9" + integrity sha512-PMUloaoajk/YxLWh4OFC5H8wauISkeG5/OS/I0ZeptMVq36hKQmJgYFhOqcCWAm6u/88JX9XztmKCTX8CyFPVg== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/client-textract@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/client-textract/-/client-textract-3.6.1.tgz#b8972f53f0353222b4c052adc784291e602be6aa" @@ -2241,6 +3244,33 @@ fast-xml-parser "4.2.5" tslib "^2.6.2" +"@aws-sdk/core@^3.973.15": + version "3.973.15" + resolved "https://registry.npmjs.org/@aws-sdk/core/-/core-3.973.15.tgz#6ddde6765260d3feac7a3fc66927814ca1e9ffa4" + integrity sha512-AlC0oQ1/mdJ8vCIqu524j5RB7M8i8E24bbkZmya1CuiQxkY7SdIZAyw7NDNMGaNINQFq/8oGRMX0HeOfCVsl/A== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/xml-builder" "^3.972.8" + "@smithy/core" "^3.23.6" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/signature-v4" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + +"@aws-sdk/crc64-nvme@^3.972.3": + version "3.972.3" + resolved "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.3.tgz#cb005d9d4b53e0ad6a9e2f2ddf153d9f1df12da8" + integrity sha512-UExeK+EFiq5LAcbHm96CQLSia+5pvpUVSAsVApscBzayb7/6dJBJKwV4/onsk4VbWSmqxDMcfuTD+pC4RxgZHg== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-cognito-identity@3.568.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.568.0.tgz#de90542cbd01957b233f7aeafa6b226a5697d575" @@ -2252,6 +3282,17 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/credential-provider-cognito-identity@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.972.6.tgz#c692c05f8c853f4909e345a3f4ba5aea91f85a70" + integrity sha512-RJqEZYFoXkBTVCwSJuYFd311qc/Q/cBJ8BH08+ggX/rUTWw47TUEyZlxzyTlKfP7DoXG4Khu/TX+pzU6godEGQ== + dependencies: + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-env@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.186.0.tgz#55dec9c4c29ebbdff4f3bce72de9e98f7a1f92e1" @@ -2300,6 +3341,17 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/credential-provider-env@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.13.tgz#db4dcc88dc334fa4a2a1fb56f8fc4e926206258c" + integrity sha512-6ljXKIQ22WFKyIs1jbORIkGanySBHaPPTOI4OxACP5WXgbcR0nDYfqNJfXEGwCK7IzHdNbCSFsNKKs0qCexR8Q== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-http@3.568.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.568.0.tgz#7f7239bed7c23db7356ebeae5f3b3bda9f751b08" @@ -2315,6 +3367,22 @@ "@smithy/util-stream" "^2.2.0" tslib "^2.6.2" +"@aws-sdk/credential-provider-http@^3.972.15": + version "3.972.15" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.15.tgz#07eed28a2e668704d5cdc62273d550ee56723774" + integrity sha512-dJuSTreu/T8f24SHDNTjd7eQ4rabr0TzPh2UTCwYexQtzG3nTDKm1e5eIdhiroTMDkPEJeY+WPkA6F9wod/20A== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/types" "^3.973.4" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/property-provider" "^4.2.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/util-stream" "^4.5.15" + tslib "^2.6.2" + "@aws-sdk/credential-provider-imds@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.186.0.tgz#73e0f62832726c7734b4f6c50a02ab0d869c00e1" @@ -2407,6 +3475,40 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/credential-provider-ini@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.13.tgz#d9582579df3e6d4353d2da92b5a884d333efd6f7" + integrity sha512-JKSoGb7XeabZLBJptpqoZIFbROUIS65NuQnEHGOpuT9GuuZwag2qciKANiDLFiYk4u8nSrJC9JIOnWKVvPVjeA== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-env" "^3.972.13" + "@aws-sdk/credential-provider-http" "^3.972.15" + "@aws-sdk/credential-provider-login" "^3.972.13" + "@aws-sdk/credential-provider-process" "^3.972.13" + "@aws-sdk/credential-provider-sso" "^3.972.13" + "@aws-sdk/credential-provider-web-identity" "^3.972.13" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/credential-provider-imds" "^4.2.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + +"@aws-sdk/credential-provider-login@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.13.tgz#75e6541db1977cd1e95a2c4a37593038cfdd583e" + integrity sha512-RtYcrxdnJHKY8MFQGLltCURcjuMjnaQpAxPE6+/QEdDHHItMKZgabRe/KScX737F9vJMQsmJy9EmMOkCnoC1JQ== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-node@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.186.0.tgz#0be58623660b41eed3a349a89b31a01d4cc773ea" @@ -2489,6 +3591,24 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/credential-provider-node@^3.972.14": + version "3.972.14" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.14.tgz#bdf061cdd2c2c5b31f10523c0e0321639c067992" + integrity sha512-WqoC2aliIjQM/L3oFf6j+op/enT2i9Cc4UTxxMEKrJNECkq4/PlKE5BOjSYFcq6G9mz65EFbXJh7zOU4CvjSKQ== + dependencies: + "@aws-sdk/credential-provider-env" "^3.972.13" + "@aws-sdk/credential-provider-http" "^3.972.15" + "@aws-sdk/credential-provider-ini" "^3.972.13" + "@aws-sdk/credential-provider-process" "^3.972.13" + "@aws-sdk/credential-provider-sso" "^3.972.13" + "@aws-sdk/credential-provider-web-identity" "^3.972.13" + "@aws-sdk/types" "^3.973.4" + "@smithy/credential-provider-imds" "^4.2.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-process@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.186.0.tgz#e3be60983261a58c212f5c38b6fb76305bbb8ce7" @@ -2543,6 +3663,18 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/credential-provider-process@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.13.tgz#de55c07443b1c606112da885d6e02f39213ee388" + integrity sha512-rsRG0LQA4VR+jnDyuqtXi2CePYSmfm5GNL9KxiW8DSe25YwJSr06W8TdUfONAC+rjsTI+aIH2rBGG5FjMeANrw== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-sso@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.186.0.tgz#e1aa466543b3b0877d45b885a1c11b329232df22" @@ -2593,6 +3725,20 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/credential-provider-sso@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.13.tgz#29f612071633316f8638ae49983ded2527921a48" + integrity sha512-fr0UU1wx8kNHDhTQBXioc/YviSW8iXuAxHvnH7eQUtn8F8o/FU3uu6EUMvAQgyvn7Ne5QFnC0Cj0BFlwCk+RFw== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/token-providers" "3.999.0" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-provider-web-identity@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.186.0.tgz#db43f37f7827b553490dd865dbaa9a2c45f95494" @@ -2632,6 +3778,19 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/credential-provider-web-identity@^3.972.13": + version "3.972.13" + resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.13.tgz#1bc609b689108773569af74fee183f2553b76961" + integrity sha512-a6iFMh1pgUH0TdcouBppLJUfPM7Yd3R9S1xFodPtCRoLqCz2RQFA3qjA8x4112PVYXEd4/pHX2eihapq39w0rA== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/credential-providers@^3.465.0": version "3.568.0" resolved "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.568.0.tgz#7f24748300c27676d0dcafd43ef456b59077e8ec" @@ -2654,6 +3813,52 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/credential-providers@^3.996.0": + version "3.1000.0" + resolved "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.1000.0.tgz#fda16baecdf0760f968eb03db6c77e0226fc98be" + integrity sha512-J0pBgTZ2b3UCnj+NQTPtWYjrEUne2aGwq1Xuuw8P2cIMpPBYJc39e59oYoRGpNseUXqcjkh0nLtWqZREEeMvkg== + dependencies: + "@aws-sdk/client-cognito-identity" "3.1000.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/credential-provider-cognito-identity" "^3.972.6" + "@aws-sdk/credential-provider-env" "^3.972.13" + "@aws-sdk/credential-provider-http" "^3.972.15" + "@aws-sdk/credential-provider-ini" "^3.972.13" + "@aws-sdk/credential-provider-login" "^3.972.13" + "@aws-sdk/credential-provider-node" "^3.972.14" + "@aws-sdk/credential-provider-process" "^3.972.13" + "@aws-sdk/credential-provider-sso" "^3.972.13" + "@aws-sdk/credential-provider-web-identity" "^3.972.13" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/credential-provider-imds" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + +"@aws-sdk/dynamodb-codec@^3.972.16": + version "3.972.16" + resolved "https://registry.npmjs.org/@aws-sdk/dynamodb-codec/-/dynamodb-codec-3.972.16.tgz#131c6c32456e6d0699aea73170c1d4afbc43c6a2" + integrity sha512-SLo648PIVMsKjUUId2v1ig+M6Wqk3tyOtC4vIu3RiM5jyoUYBilrV+p/IVZvHdbLFHNrIWUxtqKr623sTilsGQ== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@smithy/core" "^3.23.6" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/util-base64" "^4.3.1" + tslib "^2.6.2" + +"@aws-sdk/endpoint-cache@^3.972.3": + version "3.972.3" + resolved "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.972.3.tgz#a0284f0beefd5241a3a3ef00f4c0c0e647c4e514" + integrity sha512-s5oiwOTe0ajI5y/cRMsThZsmlrZiAEcUct723O9NivR/es8fDtglbhHo7eQE4ydddCivFCm2lpNj8RPDLdL3AA== + dependencies: + mnemonist "0.38.3" + tslib "^2.6.2" + "@aws-sdk/eventstream-codec@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.186.0.tgz#9da9608866b38179edf72987f2bc3b865d11db13" @@ -2881,6 +4086,19 @@ "@smithy/util-config-provider" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/middleware-bucket-endpoint@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.6.tgz#978d9e075450856b0bd93b2473b27cb17da3ce8a" + integrity sha512-3H2bhvb7Cb/S6WFsBy/Dy9q2aegC9JmGH1inO8Lb2sWirSqpLJlZmvQHPE29h2tIxzv6el/14X/tLCQ8BQU6ZQ== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-arn-parser" "^3.972.2" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-config-provider" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/middleware-content-length@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.186.0.tgz#8cc7aeec527738c46fdaf4a48b17c5cbfdc7ce58" @@ -2899,6 +4117,18 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/middleware-endpoint-discovery@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.972.6.tgz#5943a3c9e6ac00b29fcc2ae6355e90fb45a99659" + integrity sha512-p5DYw2cpnsuT/bFA4DEBxucY/wn3TVGDZ7wonEds6EEox35I5DThCsw6aWDIN/fTpG0FMLO3q7s1PUKozWl3CQ== + dependencies: + "@aws-sdk/endpoint-cache" "^3.972.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-eventstream@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-eventstream/-/middleware-eventstream-3.186.0.tgz#64a66102ed2e182182473948f131f23dda84e729" @@ -2928,6 +4158,16 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/middleware-expect-continue@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.6.tgz#72b3975fcc95b40df6bd8e6943c82d834ab92433" + integrity sha512-QMdffpU+GkSGC+bz6WdqlclqIeCsOfgX8JFZ5xvwDtX+UTj4mIXm3uXu7Ko6dBseRcJz1FA6T9OmlAAY6JgJUg== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-flexible-checksums@3.468.0": version "3.468.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.468.0.tgz#96e26042e61724a4981edb3ba3fd2af280df57b6" @@ -2956,6 +4196,26 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/middleware-flexible-checksums@^3.973.1": + version "3.973.1" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.973.1.tgz#a1ac29407a7c00e7c007d3d97eeb1b4400f86ace" + integrity sha512-QLXsxsI6VW8LuGK+/yx699wzqP/NMCGk/hSGP+qtB+Lcff+23UlbahyouLlk+nfT7Iu021SkXBhnAuVd6IZcPw== + dependencies: + "@aws-crypto/crc32" "5.2.0" + "@aws-crypto/crc32c" "5.2.0" + "@aws-crypto/util" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/crc64-nvme" "^3.972.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/is-array-buffer" "^4.2.1" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/middleware-host-header@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.186.0.tgz#fce4f1219ce1835e2348c787d8341080b0024e34" @@ -3004,6 +4264,16 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/middleware-host-header@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.6.tgz#810928d279e60cafecd0d6c70064af61f977cb56" + integrity sha512-5XHwjPH1lHB+1q4bfC7T8Z5zZrZXfaLcjSMwTd1HPSPrCmPFMbg3UQ5vgNWcVj0xoX4HWqTGkSf2byrjlnRg5w== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-location-constraint@3.468.0": version "3.468.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.468.0.tgz#cc9ebcdabed96414fc91f4a39b3b7c08e6374187" @@ -3022,6 +4292,15 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/middleware-location-constraint@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.6.tgz#d524d2b2b294a0c92d11ed2a52274ff0014e0384" + integrity sha512-XdZ2TLwyj3Am6kvUc67vquQvs6+D8npXvXgyEUJAdkUDx5oMFJKOqpK+UpJhVDsEL068WAJl2NEGzbSik7dGJQ== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-logger@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.186.0.tgz#8a027fbbb1b8098ccc888bce51f34b000c0a0550" @@ -3065,6 +4344,15 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/middleware-logger@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.6.tgz#fcc9622ce4e29533a0c9e9d30031ff6a8ff37f60" + integrity sha512-iFnaMFMQdljAPrvsCVKYltPt2j40LQqukAbXvW7v0aL5I+1GO7bZ/W8m12WxW3gwyK5p5u1WlHg8TSAizC5cZw== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-recursion-detection@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.186.0.tgz#9d9d3212e9a954b557840bb80415987f4484487e" @@ -3104,6 +4392,17 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/middleware-recursion-detection@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.972.6.tgz#35f02c25aea55d66365dc64dbfe8c5a5b9104756" + integrity sha512-dY4v3of5EEMvik6+UDwQ96KfUFDk8m1oZDdkSc5lwi4o7rFrjnv0A+yTV+gu230iybQZnKgDLg/rt2P3H+Vscw== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@aws/lambda-invoke-store" "^0.2.2" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-retry@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.186.0.tgz#0ff9af58d73855863683991a809b40b93c753ad1" @@ -3158,6 +4457,26 @@ "@smithy/util-config-provider" "^2.3.0" tslib "^2.6.2" +"@aws-sdk/middleware-sdk-s3@^3.972.15": + version "3.972.15" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.15.tgz#c9c81d4941002c1dd764557fccf645d01d5ff7f0" + integrity sha512-WDLgssevOU5BFx1s8jA7jj6cE5HuImz28sy9jKOaVtz0AW1lYqSzotzdyiybFaBcQTs5zxXOb2pUfyMxgEKY3Q== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-arn-parser" "^3.972.2" + "@smithy/core" "^3.23.6" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/signature-v4" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/util-config-provider" "^4.2.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/middleware-sdk-sts@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.186.0.tgz#18f3d6b7b42c1345b5733ac3e3119d370a403e94" @@ -3285,6 +4604,15 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/middleware-ssec@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.6.tgz#aab297072dfcba16c01c2e5073cacf7b3f360ef2" + integrity sha512-acvMUX9jF4I2Ew+Z/EA6gfaFaz9ehci5wxBmXCZeulLuv8m+iGf6pY9uKz8TPjg39bdAz3hxoE0eLP8Qz+IYlA== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/middleware-stack@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.186.0.tgz#da3445fe74b867ee6d7eec4f0dde28aaca1125d6" @@ -3350,6 +4678,63 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/middleware-user-agent@^3.972.15": + version "3.972.15" + resolved "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.15.tgz#3cd4ad8ae03c97d04c61c9c8f7c72ddc09cd5373" + integrity sha512-ABlFVcIMmuRAwBT+8q5abAxOr7WmaINirDJBnqGY5b5jSDo00UMlg/G4a0xoAgwm6oAECeJcwkvDlxDwKf58fQ== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@smithy/core" "^3.23.6" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + +"@aws-sdk/nested-clients@^3.996.3": + version "3.996.3" + resolved "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.996.3.tgz#732babbbba9b7360036938b877c28dcfddbbc1b0" + integrity sha512-AU5TY1V29xqwg/MxmA2odwysTez+ccFAhmfRJk+QZT5HNv90UTA9qKd1J9THlsQkvmH7HWTEV1lDNxkQO5PzNw== + dependencies: + "@aws-crypto/sha256-browser" "5.2.0" + "@aws-crypto/sha256-js" "5.2.0" + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/middleware-host-header" "^3.972.6" + "@aws-sdk/middleware-logger" "^3.972.6" + "@aws-sdk/middleware-recursion-detection" "^3.972.6" + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/region-config-resolver" "^3.972.6" + "@aws-sdk/types" "^3.973.4" + "@aws-sdk/util-endpoints" "^3.996.3" + "@aws-sdk/util-user-agent-browser" "^3.972.6" + "@aws-sdk/util-user-agent-node" "^3.973.0" + "@smithy/config-resolver" "^4.4.9" + "@smithy/core" "^3.23.6" + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/hash-node" "^4.2.10" + "@smithy/invalid-dependency" "^4.2.10" + "@smithy/middleware-content-length" "^4.2.10" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-retry" "^4.4.37" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/protocol-http" "^5.3.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-body-length-node" "^4.2.2" + "@smithy/util-defaults-mode-browser" "^4.3.36" + "@smithy/util-defaults-mode-node" "^4.2.39" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@aws-sdk/node-config-provider@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.186.0.tgz#64259429d39f2ef5a76663162bf2e8db6032a322" @@ -3492,6 +4877,17 @@ "@smithy/util-middleware" "^2.2.0" tslib "^2.6.2" +"@aws-sdk/region-config-resolver@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.972.6.tgz#593df7d004d63aca07a9c5799bace7da8deb46cd" + integrity sha512-Aa5PusHLXAqLTX1UKDvI3pHQJtIsF7Q+3turCHqfz/1F61/zDMWfbTC8evjhrrYVAtz9Vsv3SJ/waSUeu7B6gw== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/config-resolver" "^4.4.9" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/service-error-classification@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.186.0.tgz#6e4e1d4b53d68bd28c28d9cf0b3b4cb6a6a59dbb" @@ -3541,6 +4937,18 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/signature-v4-multi-region@^3.996.3": + version "3.996.3" + resolved "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.3.tgz#9520661691140b8c961972aa3885e1010f21691f" + integrity sha512-gQYI/Buwp0CAGQxY7mR5VzkP56rkWq2Y1ROkFuXh5XY94DsSjJw62B3I0N0lysQmtwiL2ht2KHI9NylM/RP4FA== + dependencies: + "@aws-sdk/middleware-sdk-s3" "^3.972.15" + "@aws-sdk/types" "^3.973.4" + "@smithy/protocol-http" "^5.3.10" + "@smithy/signature-v4" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/signature-v4@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.186.0.tgz#bbd56e71af95548abaeec6307ea1dfe7bd26b4e4" @@ -3679,6 +5087,19 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/token-providers@3.999.0": + version "3.999.0" + resolved "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.999.0.tgz#746e53d46ac135903467b49fd08a36a49ef4be4f" + integrity sha512-cx0hHUlgXULfykx4rdu/ciNAJaa3AL5xz3rieCz7NKJ68MJwlj3664Y8WR5MGgxfyYJBdamnkjNSx5Kekuc0cg== + dependencies: + "@aws-sdk/core" "^3.973.15" + "@aws-sdk/nested-clients" "^3.996.3" + "@aws-sdk/types" "^3.973.4" + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/types@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.186.0.tgz#f6fb6997b6a364f399288bfd5cd494bc680ac922" @@ -3713,6 +5134,14 @@ resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.6.1.tgz#00686db69e998b521fcd4a5f81ef0960980f80c4" integrity sha512-4Dx3eRTrUHLxhFdLJL8zdNGzVsJfAxtxPYYGmIddUkO2Gj3WA1TGjdfG4XN/ClI6e1XonCHafQX3UYO/mgnH3g== +"@aws-sdk/types@^3.973.4": + version "3.973.4" + resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.973.4.tgz#7cb870b08fd83dcb83e4cae321a3108408aaa021" + integrity sha512-RW60aH26Bsc016Y9B98hC0Plx6fK5P2v/iQYwMzrSjiDh1qRMUCP6KrXHYEHe3uFvKiOC93Z9zk4BJsUi6Tj1Q== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/url-parser-native@3.6.1": version "3.6.1" resolved "https://registry.npmjs.org/@aws-sdk/url-parser-native/-/url-parser-native-3.6.1.tgz#a5e787f98aafa777e73007f9490df334ef3389a2" @@ -3755,6 +5184,13 @@ dependencies: tslib "^2.6.2" +"@aws-sdk/util-arn-parser@^3.972.2": + version "3.972.2" + resolved "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.972.2.tgz#ef18ba889e8ef35f083f1e962018bc0ce70acef3" + integrity sha512-VkykWbqMjlSgBFDyrY3nOSqupMc6ivXuGmvci6Q3NnLq5kC+mKQe2QBZ4nrWRE/jqOxeFP2uYzLtwncYYcvQDg== + dependencies: + tslib "^2.6.2" + "@aws-sdk/util-base64-browser@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.186.0.tgz#0310482752163fa819718ce9ea9250836b20346d" @@ -3886,6 +5322,17 @@ "@smithy/util-endpoints" "^1.2.0" tslib "^2.6.2" +"@aws-sdk/util-endpoints@^3.996.3": + version "3.996.3" + resolved "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.996.3.tgz#0dd4e7cbdbdb69157aa0a2f60fbcf472dbf0a139" + integrity sha512-yWIQSNiCjykLL+ezN5A+DfBb1gfXTytBxm57e64lYmwxDHNmInYHRJYYRAGWG1o77vKEiWaw4ui28e3yb1k5aQ== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-endpoints" "^3.3.1" + tslib "^2.6.2" + "@aws-sdk/util-hex-encoding@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.186.0.tgz#7ed58b923997c6265f4dce60c8704237edb98895" @@ -3984,6 +5431,16 @@ bowser "^2.11.0" tslib "^1.8.0" +"@aws-sdk/util-user-agent-browser@^3.972.6": + version "3.972.6" + resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.972.6.tgz#522b5ef758475ec4c4124cfa87c5cb79e1f8719d" + integrity sha512-Fwr/llD6GOrFgQnKaI2glhohdGuBDfHfora6iG9qsBBBR8xv1SdCSwbtf5CWlUdCw5X7g76G/9Hf0Inh0EmoxA== + dependencies: + "@aws-sdk/types" "^3.973.4" + "@smithy/types" "^4.13.0" + bowser "^2.11.0" + tslib "^2.6.2" + "@aws-sdk/util-user-agent-node@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.186.0.tgz#1ef74973442c8650c7b64ff2fd15cf3c09d8c004" @@ -4032,6 +5489,17 @@ "@aws-sdk/types" "3.6.1" tslib "^1.8.0" +"@aws-sdk/util-user-agent-node@^3.973.0": + version "3.973.0" + resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.973.0.tgz#505c37d0eba369ad81c5d550efe01a4fc1ee2523" + integrity sha512-A9J2G4Nf236e9GpaC1JnA8wRn6u6GjnOXiTwBLA6NUJhlBTIGfrTy+K1IazmF8y+4OFdW3O5TZlhyspJMqiqjA== + dependencies: + "@aws-sdk/middleware-user-agent" "^3.972.15" + "@aws-sdk/types" "^3.973.4" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@aws-sdk/util-utf8-browser@3.186.0": version "3.186.0" resolved "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.186.0.tgz#5fee6385cfc3effa2be704edc2998abfd6633082" @@ -4093,6 +5561,20 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@aws-sdk/xml-builder@^3.972.8": + version "3.972.8" + resolved "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.8.tgz#b7025b442d9f4d190a94556de6aa62dabd53651c" + integrity sha512-Ql8elcUdYCha83Ol7NznBsgN5GVZnv3vUd86fEc6waU6oUdY0T1O9NODkEEOS/Uaogr87avDrUC6DSeM4oXjZg== + dependencies: + "@smithy/types" "^4.13.0" + fast-xml-parser "5.3.6" + tslib "^2.6.2" + +"@aws/lambda-invoke-store@^0.2.2": + version "0.2.3" + resolved "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.2.3.tgz#f1137f56209ccc69c15f826242cbf37f828617dd" + integrity sha512-oLvsaPMTBejkkmHhjf09xTgk71mOqyr/409NKhRIL08If7AhVfUsJhVsx386uJaqNd42v9kWamQ9lFbkoC2dYw== + "@babel/code-frame@7.12.11": version "7.12.11" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" @@ -6611,6 +8093,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/abort-controller@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.10.tgz#bd688ed62cbd5c85cc933cd6c60c8ef05fb2e5ee" + integrity sha512-qocxM/X4XGATqQtUkbE9SPUB6wekBi+FyJOMbPj0AhvyvFGYEmOlz6VB22iMePCQsFmMIvFSeViDvA7mZJG47g== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/chunked-blob-reader-native@^2.0.1": version "2.0.1" resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-2.0.1.tgz#0599eaed8c2cd15c7ab43a1838cef1258ff27133" @@ -6627,6 +8117,14 @@ "@smithy/util-base64" "^2.3.0" tslib "^2.6.2" +"@smithy/chunked-blob-reader-native@^4.2.2": + version "4.2.2" + resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-4.2.2.tgz#9fcc884dfd6a041b8f9aa1e0aa14b5bfb4e85f16" + integrity sha512-QzzYIlf4yg0w5TQaC9VId3B3ugSk1MI/wb7tgcHtd7CBV9gNRKZrhc2EPSxSZuDy10zUZ0lomNMgkc6/VVe8xg== + dependencies: + "@smithy/util-base64" "^4.3.1" + tslib "^2.6.2" + "@smithy/chunked-blob-reader@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-2.0.0.tgz#c44fe2c780eaf77f9e5381d982ac99a880cce51b" @@ -6641,6 +8139,13 @@ dependencies: tslib "^2.6.2" +"@smithy/chunked-blob-reader@^5.2.1": + version "5.2.1" + resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-5.2.1.tgz#fda474588f3e86a918335791dd5e485e4b9ab19d" + integrity sha512-y5d4xRiD6TzeP5BWlb+Ig/VFqF+t9oANNhGeMqyzU7obw7FYgTgVi50i5JqBTeKp+TABeDIeeXFZdz65RipNtA== + dependencies: + tslib "^2.6.2" + "@smithy/config-resolver@^2.0.16", "@smithy/config-resolver@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.2.0.tgz#54f40478bb61709b396960a3535866dba5422757" @@ -6663,6 +8168,18 @@ "@smithy/util-middleware" "^2.0.8" tslib "^2.5.0" +"@smithy/config-resolver@^4.4.9": + version "4.4.9" + resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.9.tgz#a7398dd507153859a09a64dda52f4cac9279a7af" + integrity sha512-ejQvXqlcU30h7liR9fXtj7PIAau1t/sFbJpgWPfiYDs7zd16jpH0IsSXKcba2jF6ChTXvIjACs27kNMc5xxE2Q== + dependencies: + "@smithy/node-config-provider" "^4.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-config-provider" "^4.2.1" + "@smithy/util-endpoints" "^3.3.1" + "@smithy/util-middleware" "^4.2.10" + tslib "^2.6.2" + "@smithy/core@^1.4.2": version "1.4.2" resolved "https://registry.npmjs.org/@smithy/core/-/core-1.4.2.tgz#1c3ed886d403041ce5bd2d816448420c57baa19c" @@ -6677,6 +8194,22 @@ "@smithy/util-middleware" "^2.2.0" tslib "^2.6.2" +"@smithy/core@^3.23.6": + version "3.23.6" + resolved "https://registry.npmjs.org/@smithy/core/-/core-3.23.6.tgz#90de5fe442a9f529bd893b20ba0d8a8373a99ad3" + integrity sha512-4xE+0L2NrsFKpEVFlFELkIHQddBvMbQ41LRIP74dGCXnY1zQ9DgksrBcRBDJT+iOzGy4VEJIeU3hkUK5mn06kg== + dependencies: + "@smithy/middleware-serde" "^4.2.11" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-body-length-browser" "^4.2.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-stream" "^4.5.15" + "@smithy/util-utf8" "^4.2.1" + "@smithy/uuid" "^1.1.1" + tslib "^2.6.2" + "@smithy/credential-provider-imds@^2.0.0", "@smithy/credential-provider-imds@^2.1.4": version "2.1.4" resolved "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.1.4.tgz#126adf69eac333f23f8683edbfabdc2b3b2deb15" @@ -6699,6 +8232,17 @@ "@smithy/url-parser" "^2.2.0" tslib "^2.6.2" +"@smithy/credential-provider-imds@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.10.tgz#cae502b28257a110fc472a1531c19fbc4ba07037" + integrity sha512-3bsMLJJLTZGZqVGGeBVFfLzuRulVsGTj12BzRKODTHqUABpIr0jMN1vN3+u6r2OfyhAQ2pXaMZWX/swBK5I6PQ== + dependencies: + "@smithy/node-config-provider" "^4.3.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + tslib "^2.6.2" + "@smithy/eventstream-codec@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.0.15.tgz#733e638fd38e7e264bc0429dbda139bab950bd25" @@ -6719,6 +8263,16 @@ "@smithy/util-hex-encoding" "^2.2.0" tslib "^2.6.2" +"@smithy/eventstream-codec@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.10.tgz#59dd8f5482248fcb7eb855ee26c4dde3f4e4e688" + integrity sha512-A4ynrsFFfSXUHicfTcRehytppFBcY3HQxEGYiyGktPIOye3Ot7fxpiy4VR42WmtGI4Wfo6OXt/c1Ky1nUFxYYQ== + dependencies: + "@aws-crypto/crc32" "5.2.0" + "@smithy/types" "^4.13.0" + "@smithy/util-hex-encoding" "^4.2.1" + tslib "^2.6.2" + "@smithy/eventstream-serde-browser@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-2.0.15.tgz#f62c891e6f8ad59f552a92d8aa14eb6b4541d418" @@ -6737,6 +8291,15 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/eventstream-serde-browser@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.10.tgz#4e81f894b1e00527bd30bf37824d1196abe3c8ff" + integrity sha512-0xupsu9yj9oDVuQ50YCTS9nuSYhGlrwqdaKQel9y2Fz7LU9fNErVlw9N0o4pm4qqvWEGbSTI4HKc6XJfB30MVw== + dependencies: + "@smithy/eventstream-serde-universal" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/eventstream-serde-config-resolver@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-2.0.15.tgz#50e98c59aeb31a0702bad5dfab4009a15fc8b3bf" @@ -6753,6 +8316,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/eventstream-serde-config-resolver@^4.3.10": + version "4.3.10" + resolved "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.10.tgz#e71d8614178a2111f0a7fae8a3b8a88859cfb684" + integrity sha512-8kn6sinrduk0yaYHMJDsNuiFpXwQwibR7n/4CDUqn4UgaG+SeBHu5jHGFdU9BLFAM7Q4/gvr9RYxBHz9/jKrhA== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/eventstream-serde-node@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-2.0.15.tgz#8be1bd024048adcff4ccbb723c55fc42ce582d33" @@ -6771,6 +8342,15 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/eventstream-serde-node@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.10.tgz#10164d84f20f915b435e9ff55ac381e01d1d0669" + integrity sha512-uUrxPGgIffnYfvIOUmBM5i+USdEBRTdh7mLPttjphgtooxQ8CtdO1p6K5+Q4BBAZvKlvtJ9jWyrWpBJYzBKsyQ== + dependencies: + "@smithy/eventstream-serde-universal" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/eventstream-serde-universal@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-2.0.15.tgz#85cdff39abc630cb18b4d333913b7120651771ca" @@ -6789,6 +8369,15 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/eventstream-serde-universal@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.10.tgz#08ccc7a544289a3fe0b2b7f588dac56943ef3fa2" + integrity sha512-aArqzOEvcs2dK+xQVCgLbpJQGfZihw8SD4ymhkwNTtwKbnrzdhJsFDKuMQnam2kF69WzgJYOU5eJlCx+CA32bw== + dependencies: + "@smithy/eventstream-codec" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/fetch-http-handler@^2.2.4", "@smithy/fetch-http-handler@^2.5.0": version "2.5.0" resolved "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.5.0.tgz#0b8e1562807fdf91fe7dd5cde620d7a03ddc10ac" @@ -6811,6 +8400,17 @@ "@smithy/util-base64" "^2.0.1" tslib "^2.5.0" +"@smithy/fetch-http-handler@^5.3.11": + version "5.3.11" + resolved "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.11.tgz#2c2f65df2bdbf4989c13a6558e3d43855002ba5d" + integrity sha512-wbTRjOxdFuyEg0CpumjZO0hkUl+fetJFqxNROepuLIoijQh51aMBmzFLfoQdwRjxsuuS2jizzIUTjPWgd8pd7g== + dependencies: + "@smithy/protocol-http" "^5.3.10" + "@smithy/querystring-builder" "^4.2.10" + "@smithy/types" "^4.13.0" + "@smithy/util-base64" "^4.3.1" + tslib "^2.6.2" + "@smithy/hash-blob-browser@^2.0.16": version "2.0.16" resolved "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-2.0.16.tgz#6cd3686e79f3c8d96a129076073bf20d06293152" @@ -6831,6 +8431,16 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/hash-blob-browser@^4.2.11": + version "4.2.11" + resolved "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.11.tgz#9c2832ebaf98006365f3dacb683f3f110e47936b" + integrity sha512-DrcAx3PM6AEbWZxsKl6CWAGnVwiz28Wp1ZhNu+Hi4uI/6C1PIZBIaPM2VoqBDAsOWbM6ZVzOEQMxFLLdmb4eBQ== + dependencies: + "@smithy/chunked-blob-reader" "^5.2.1" + "@smithy/chunked-blob-reader-native" "^4.2.2" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/hash-node@^1.0.1": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-1.1.0.tgz#a8da64fa4b2e2c64185df92897165c8113b499b2" @@ -6861,6 +8471,16 @@ "@smithy/util-utf8" "^2.0.2" tslib "^2.5.0" +"@smithy/hash-node@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.10.tgz#5c23bd94e61a173a90d765815bbc287cf57409ce" + integrity sha512-1VzIOI5CcsvMDvP3iv1vG/RfLJVVVc67dCRyLSB2Hn9SWCZrDO3zvcIzj3BfEtqRW5kcMg5KAeVf1K3dR6nD3w== + dependencies: + "@smithy/types" "^4.13.0" + "@smithy/util-buffer-from" "^4.2.1" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/hash-stream-node@^2.0.17": version "2.0.17" resolved "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-2.0.17.tgz#90375ed9c1a586118433c925a61d39b5555bf284" @@ -6879,6 +8499,15 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@smithy/hash-stream-node@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.10.tgz#ee5f26ba61a54ba402a6f00a13c418d38005e088" + integrity sha512-w78xsYrOlwXKwN5tv1GnKIRbHb1HygSpeZMP6xDxCPGf1U/xDHjCpJu64c5T35UKyEPwa0bPeIcvU69VY3khUA== + dependencies: + "@smithy/types" "^4.13.0" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/invalid-dependency@^2.0.12", "@smithy/invalid-dependency@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.2.0.tgz#ee3d8980022cb5edb514ac187d159b3e773640f0" @@ -6895,6 +8524,14 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/invalid-dependency@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.10.tgz#7efb88b292f14843279dd774acf8a7d322f5a371" + integrity sha512-vy9KPNSFUU0ajFYk0sDZIYiUlAWGEAhRfehIr5ZkdFrRFTAuXEPUd41USuqHU6vvLX4r6Q9X7MKBco5+Il0Org== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/is-array-buffer@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-1.1.0.tgz#29948072da2b57575aa9898cda863932e842ab11" @@ -6916,6 +8553,13 @@ dependencies: tslib "^2.6.2" +"@smithy/is-array-buffer@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.2.1.tgz#10f71c410796cf108c65bb0204a98c15d0131af3" + integrity sha512-Yfu664Qbf1B4IYIsYgKoABt010daZjkaCRvdU/sPnZG6TtHOB0md0RjNdLGzxe5UIdn9js4ftPICzmkRa9RJ4Q== + dependencies: + tslib "^2.6.2" + "@smithy/md5-js@^2.0.17": version "2.0.17" resolved "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-2.0.17.tgz#784c02da6cee539f5af0e45b1eaf9beb10ed8ad6" @@ -6934,6 +8578,15 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@smithy/md5-js@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.10.tgz#2071980ff22802ca8398232075357c0d1b5b746a" + integrity sha512-Op+Dh6dPLWTjWITChFayDllIaCXRofOed8ecpggTC5fkh8yXes0vAEX7gRUfjGK+TlyxoCAA05gHbZW/zB9JwQ== + dependencies: + "@smithy/types" "^4.13.0" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/middleware-content-length@^2.0.14", "@smithy/middleware-content-length@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.2.0.tgz#a82e97bd83d8deab69e07fea4512563bedb9461a" @@ -6952,6 +8605,15 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/middleware-content-length@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.10.tgz#969af8111299d2d32f6de9bac4ca8622616fb4a3" + integrity sha512-TQZ9kX5c6XbjhaEBpvhSvMEZ0klBs1CFtOdPFwATZSbC9UeQfKHPLPN9Y+I6wZGMOavlYTOlHEPDrt42PMSH9w== + dependencies: + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/middleware-endpoint@^2.1.3", "@smithy/middleware-endpoint@^2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.5.1.tgz#1333c58304aff4d843e8ef4b85c8cb88975dd5ad" @@ -6978,6 +8640,20 @@ "@smithy/util-middleware" "^2.0.8" tslib "^2.5.0" +"@smithy/middleware-endpoint@^4.4.20": + version "4.4.20" + resolved "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.4.20.tgz#dea33d0d391a4a8095ab16cf57c8c6dc482f5123" + integrity sha512-9W6Np4ceBP3XCYAGLoMCmn8t2RRVzuD1ndWPLBbv7H9CrwM9Bprf6Up6BM9ZA/3alodg0b7Kf6ftBK9R1N04vw== + dependencies: + "@smithy/core" "^3.23.6" + "@smithy/middleware-serde" "^4.2.11" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + "@smithy/url-parser" "^4.2.10" + "@smithy/util-middleware" "^4.2.10" + tslib "^2.6.2" + "@smithy/middleware-retry@^2.0.18", "@smithy/middleware-retry@^2.3.1": version "2.3.1" resolved "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.3.1.tgz#d6fdce94f2f826642c01b4448e97a509c4556ede" @@ -7008,6 +8684,21 @@ tslib "^2.5.0" uuid "^8.3.2" +"@smithy/middleware-retry@^4.4.37": + version "4.4.37" + resolved "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.37.tgz#bda495c2aa82c61d409e4dad374047b61511067a" + integrity sha512-/1psZZllBBSQ7+qo5+hhLz7AEPGLx3Z0+e3ramMBEuPK2PfvLK4SrncDB9VegX5mBn+oP/UTDrM6IHrFjvX1ZA== + dependencies: + "@smithy/node-config-provider" "^4.3.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/service-error-classification" "^4.2.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-retry" "^4.2.10" + "@smithy/uuid" "^1.1.1" + tslib "^2.6.2" + "@smithy/middleware-serde@^2.0.12", "@smithy/middleware-serde@^2.3.0": version "2.3.0" resolved "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.3.0.tgz#a7615ba646a88b6f695f2d55de13d8158181dd13" @@ -7024,6 +8715,15 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/middleware-serde@^4.2.11": + version "4.2.11" + resolved "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.11.tgz#a60b5b62cf92888e6b3de22d956bdda29263ef45" + integrity sha512-STQdONGPwbbC7cusL60s7vOa6He6A9w2jWhoapL0mgVjmR19pr26slV+yoSP76SIssMTX/95e5nOZ6UQv6jolg== + dependencies: + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/middleware-stack@^2.0.6", "@smithy/middleware-stack@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.2.0.tgz#3fb49eae6313f16f6f30fdaf28e11a7321f34d9f" @@ -7040,6 +8740,14 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/middleware-stack@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.10.tgz#411276f45b78ed4d7d5e3cb2c4136142f456c907" + integrity sha512-pmts/WovNcE/tlyHa8z/groPeOtqtEpp61q3W0nW1nDJuMq/x+hWa/OVQBtgU0tBqupeXq0VBOLA4UZwE8I0YA== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/node-config-provider@^2.1.3", "@smithy/node-config-provider@^2.3.0": version "2.3.0" resolved "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.3.0.tgz#9fac0c94a14c5b5b8b8fa37f20c310a844ab9922" @@ -7060,6 +8768,16 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/node-config-provider@^4.3.10": + version "4.3.10" + resolved "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.10.tgz#bd537206cc3b6d1905fbc174c95f35897d98819b" + integrity sha512-UALRbJtVX34AdP2VECKVlnNgidLHA2A7YgcJzwSBg1hzmnO/bZBHl/LDQQyYifzUwp1UOODnl9JJ3KNawpUJ9w== + dependencies: + "@smithy/property-provider" "^4.2.10" + "@smithy/shared-ini-file-loader" "^4.4.5" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/node-http-handler@^2.1.8", "@smithy/node-http-handler@^2.5.0": version "2.5.0" resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.5.0.tgz#7b5e0565dd23d340380489bd5fe4316d2bed32de" @@ -7082,6 +8800,17 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/node-http-handler@^4.4.12": + version "4.4.12" + resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.12.tgz#6202ec0c41236fc7a8302b1e116aa5cd784c1a19" + integrity sha512-zo1+WKJkR9x7ZtMeMDAAsq2PufwiLDmkhcjpWPRRkmeIuOm6nq1qjFICSZbnjBvD09ei8KMo26BWxsu2BUU+5w== + dependencies: + "@smithy/abort-controller" "^4.2.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/querystring-builder" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/property-provider@^2.0.0", "@smithy/property-provider@^2.0.16": version "2.0.16" resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.0.16.tgz#0c15ea8a3e8c8e7012bf5877c79ce754f7d2c06e" @@ -7098,6 +8827,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/property-provider@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.10.tgz#06dfc15f407d42b8514b363a83504e7008f12344" + integrity sha512-5jm60P0CU7tom0eNrZ7YrkgBaoLFXzmqB0wVS+4uK8PPGmosSrLNf6rRd50UBvukztawZ7zyA8TxlrKpF5z9jw== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/protocol-http@^3.0.11": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.11.tgz#a9ea712fe7cc3375378ac68d9168a7b6cd0b6f65" @@ -7114,6 +8851,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/protocol-http@^5.3.10": + version "5.3.10" + resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.10.tgz#020a0fa6e47396ebceab01296b76990931a93d5a" + integrity sha512-2NzVWpYY0tRdfeCJLsgrR89KE3NTWT2wGulhNUxYlRmtRmPwLQwKzhrfVaiNlA9ZpJvbW7cjTVChYKgnkqXj1A== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/querystring-builder@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.0.15.tgz#aa8c889bcaef274b8345be4ddabae3bfedf2cf33" @@ -7132,6 +8877,15 @@ "@smithy/util-uri-escape" "^2.2.0" tslib "^2.6.2" +"@smithy/querystring-builder@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.10.tgz#05853f40c19c945784252b22dd6672ec0c2eab1f" + integrity sha512-HeN7kEvuzO2DmAzLukE9UryiUvejD3tMp9a1D1NJETerIfKobBUCLfviP6QEk500166eD2IATaXM59qgUI+YDA== + dependencies: + "@smithy/types" "^4.13.0" + "@smithy/util-uri-escape" "^4.2.1" + tslib "^2.6.2" + "@smithy/querystring-parser@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.0.15.tgz#46c8806a145f46636e4aee2a5d79e7ba68161a4c" @@ -7148,6 +8902,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/querystring-parser@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.10.tgz#189755d4f99dccb5b48c2cd413aba6baf9e6b636" + integrity sha512-4Mh18J26+ao1oX5wXJfWlTT+Q1OpDR8ssiC9PDOuEgVBGloqg18Fw7h5Ct8DyT9NBYwJgtJ2nLjKKFU6RP1G1Q== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/service-error-classification@^2.0.8": version "2.0.8" resolved "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.0.8.tgz#c9e421312a2def84da025c5efe6de06679c5be95" @@ -7162,6 +8924,13 @@ dependencies: "@smithy/types" "^2.12.0" +"@smithy/service-error-classification@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.10.tgz#0d142eb71106e1be8a9df691f4bb4b19b7261502" + integrity sha512-0R/+/Il5y8nB/By90o8hy/bWVYptbIfvoTYad0igYQO5RefhNCDmNzqxaMx7K1t/QWo0d6UynqpqN5cCQt1MCg== + dependencies: + "@smithy/types" "^4.13.0" + "@smithy/shared-ini-file-loader@^2.0.6", "@smithy/shared-ini-file-loader@^2.2.7": version "2.2.7" resolved "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.2.7.tgz#4a3bd469703d02c3cc8e36dcba2238c06efa12cb" @@ -7178,6 +8947,14 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/shared-ini-file-loader@^4.4.5": + version "4.4.5" + resolved "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.5.tgz#84c29da4a1462e7b6ce21b00c49f8789ae804099" + integrity sha512-pHgASxl50rrtOztgQCPmOXFjRW+mCd7ALr/3uXNzRrRoGV5G2+78GOsQ3HlQuBVHCh9o6xqMNvlIKZjWn4Euug== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/signature-v4@^2.0.0": version "2.0.17" resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.0.17.tgz#3ce17d8143f18670ca9bd5f99738dfadb3a7f3fc" @@ -7205,6 +8982,20 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@smithy/signature-v4@^5.3.10": + version "5.3.10" + resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.10.tgz#9517defc0285b9d50f1c8ad17f6f90e72f8b5976" + integrity sha512-Wab3wW8468WqTKIxI+aZe3JYO52/RYT/8sDOdzkUhjnLakLe9qoQqIcfih/qxcF4qWEFoWBszY0mj5uxffaVXA== + dependencies: + "@smithy/is-array-buffer" "^4.2.1" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-hex-encoding" "^4.2.1" + "@smithy/util-middleware" "^4.2.10" + "@smithy/util-uri-escape" "^4.2.1" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/smithy-client@^2.1.12", "@smithy/smithy-client@^2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.5.1.tgz#0fd2efff09dc65500d260e590f7541f8a387eae3" @@ -7227,6 +9018,19 @@ "@smithy/util-stream" "^2.0.23" tslib "^2.5.0" +"@smithy/smithy-client@^4.12.0": + version "4.12.0" + resolved "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.12.0.tgz#71f01aeaa089867c31a3d6452349cf4fd4c4a9e5" + integrity sha512-R8bQ9K3lCcXyZmBnQqUZJF4ChZmtWT5NLi6x5kgWx5D+/j0KorXcA0YcFg/X5TOgnTCy1tbKc6z2g2y4amFupQ== + dependencies: + "@smithy/core" "^3.23.6" + "@smithy/middleware-endpoint" "^4.4.20" + "@smithy/middleware-stack" "^4.2.10" + "@smithy/protocol-http" "^5.3.10" + "@smithy/types" "^4.13.0" + "@smithy/util-stream" "^4.5.15" + tslib "^2.6.2" + "@smithy/types@^1.2.0": version "1.2.0" resolved "https://registry.npmjs.org/@smithy/types/-/types-1.2.0.tgz#9dc65767b0ee3d6681704fcc67665d6fc9b6a34e" @@ -7248,6 +9052,13 @@ dependencies: tslib "^2.5.0" +"@smithy/types@^4.13.0": + version "4.13.0" + resolved "https://registry.npmjs.org/@smithy/types/-/types-4.13.0.tgz#9787297a07ee72ef74d4f7d93c744d10ed664c21" + integrity sha512-COuLsZILbbQsdrwKQpkkpyep7lCsByxwj7m0Mg5v66/ZTyenlfBc40/QFQ5chO0YN/PNEH1Bi3fGtfXPnYNeDw== + dependencies: + tslib "^2.6.2" + "@smithy/url-parser@^2.0.12", "@smithy/url-parser@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.2.0.tgz#6fcda6116391a4f61fef5580eb540e128359b3c0" @@ -7266,6 +9077,15 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/url-parser@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.10.tgz#9c123e4acd5074cc2f4626fc629762d9dbefca18" + integrity sha512-uypjF7fCDsRk26u3qHmFI/ePL7bxxB9vKkE+2WKEciHhz+4QtbzWiHRVNRJwU3cKhrYDYQE3b0MRFtqfLYdA4A== + dependencies: + "@smithy/querystring-parser" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-base64@^2.0.0", "@smithy/util-base64@^2.3.0": version "2.3.0" resolved "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.3.0.tgz#312dbb4d73fb94249c7261aee52de4195c2dd8e2" @@ -7283,6 +9103,15 @@ "@smithy/util-buffer-from" "^2.0.0" tslib "^2.5.0" +"@smithy/util-base64@^4.3.1": + version "4.3.1" + resolved "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.3.1.tgz#d7acc9fd3e84d1cb6c7a09866f2157457f0005c3" + integrity sha512-BKGuawX4Doq/bI/uEmg+Zyc36rJKWuin3py89PquXBIBqmbnJwBBsmKhdHfNEp0+A4TDgLmT/3MSKZ1SxHcR6w== + dependencies: + "@smithy/util-buffer-from" "^4.2.1" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/util-body-length-browser@^2.0.0", "@smithy/util-body-length-browser@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.2.0.tgz#25620645c6b62b42594ef4a93b66e6ab70e27d2c" @@ -7297,6 +9126,13 @@ dependencies: tslib "^2.5.0" +"@smithy/util-body-length-browser@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.2.1.tgz#2a2763c0df831e6071cdc38636c66fdc1cbbdd7e" + integrity sha512-SiJeLiozrAoCrgDBUgsVbmqHmMgg/2bA15AzcbcW+zan7SuyAVHN4xTSbq0GlebAIwlcaX32xacnrG488/J/6g== + dependencies: + tslib "^2.6.2" + "@smithy/util-body-length-node@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.1.0.tgz#313a5f7c5017947baf5fa018bfc22628904bbcfa" @@ -7311,6 +9147,13 @@ dependencies: tslib "^2.6.2" +"@smithy/util-body-length-node@^4.2.2": + version "4.2.2" + resolved "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.2.2.tgz#8d7a8fa83770a35312e71e711819c9e0f1a384c2" + integrity sha512-4rHqBvxtJEBvsZcFQSPQqXP2b/yy/YlB66KlcEgcH2WNoOKCKB03DSLzXmOsXjbl8dJ4OEYTn31knhdznwk7zw== + dependencies: + tslib "^2.6.2" + "@smithy/util-buffer-from@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-1.1.0.tgz#a000bd9f95c0e8d5b0edb0112f2a586daa5bed49" @@ -7335,6 +9178,14 @@ "@smithy/is-array-buffer" "^2.2.0" tslib "^2.6.2" +"@smithy/util-buffer-from@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-4.2.1.tgz#50342cde6b29a169abdf392c954472a8ec0f3755" + integrity sha512-/swhmt1qTiVkaejlmMPPDgZhEaWb/HWMGRBheaxwuVkusp/z+ErJyQxO6kaXumOciZSWlmq6Z5mNylCd33X7Ig== + dependencies: + "@smithy/is-array-buffer" "^4.2.1" + tslib "^2.6.2" + "@smithy/util-config-provider@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.0.0.tgz#4dd6a793605559d94267312fd06d0f58784b4c38" @@ -7349,6 +9200,13 @@ dependencies: tslib "^2.6.2" +"@smithy/util-config-provider@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.2.1.tgz#1e1fe89f31f0039e3b6f8820606842410c5e1509" + integrity sha512-462id/00U8JWFw6qBuTSWfN5TxOHvDu4WliI97qOIOnuC/g+NDAknTU8eoGXEPlLkRVgWEr03jJBLV4o2FL8+A== + dependencies: + tslib "^2.6.2" + "@smithy/util-defaults-mode-browser@^2.0.16", "@smithy/util-defaults-mode-browser@^2.2.1": version "2.2.1" resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.2.1.tgz#9db31416daf575d2963c502e0528cfe8055f0c4e" @@ -7371,6 +9229,16 @@ bowser "^2.11.0" tslib "^2.5.0" +"@smithy/util-defaults-mode-browser@^4.3.36": + version "4.3.36" + resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.36.tgz#a5c9f4943a62de4edeead9e52df85e255e82dfd4" + integrity sha512-R0smq7EHQXRVMxkAxtH5akJ/FvgAmNF6bUy/GwY/N20T4GrwjT633NFm0VuRpC+8Bbv8R9A0DoJ9OiZL/M3xew== + dependencies: + "@smithy/property-provider" "^4.2.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-defaults-mode-node@^2.0.21", "@smithy/util-defaults-mode-node@^2.3.1": version "2.3.1" resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.3.1.tgz#4613210a3d107aadb3f85bd80cb71c796dd8bf0a" @@ -7397,6 +9265,19 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/util-defaults-mode-node@^4.2.39": + version "4.2.39" + resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.39.tgz#40c73cddd46c66c49674ee3780cbc1b77dd08f6e" + integrity sha512-otWuoDm35btJV1L8MyHrPl462B07QCdMTktKc7/yM+Psv6KbED/ziXiHnmr7yPHUjfIwE9S8Max0LO24Mo3ZVg== + dependencies: + "@smithy/config-resolver" "^4.4.9" + "@smithy/credential-provider-imds" "^4.2.10" + "@smithy/node-config-provider" "^4.3.10" + "@smithy/property-provider" "^4.2.10" + "@smithy/smithy-client" "^4.12.0" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-endpoints@^1.0.2", "@smithy/util-endpoints@^1.2.0": version "1.2.0" resolved "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-1.2.0.tgz#b8b805f47e8044c158372f69b88337703117665d" @@ -7415,6 +9296,15 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/util-endpoints@^3.3.1": + version "3.3.1" + resolved "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.3.1.tgz#eeaa1e010c29bdacdd6833e5ef163f868d0f11f6" + integrity sha512-xyctc4klmjmieQiF9I1wssBWleRV0RhJ2DpO8+8yzi2LO1Z+4IWOZNGZGNj4+hq9kdo+nyfrRLmQTzc16Op2Vg== + dependencies: + "@smithy/node-config-provider" "^4.3.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-hex-encoding@^1.0.1": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-1.1.0.tgz#b5ba919aa076a3fd5e93e368e34ae2b732fa2090" @@ -7436,6 +9326,13 @@ dependencies: tslib "^2.6.2" +"@smithy/util-hex-encoding@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-4.2.1.tgz#cec87c87492c9bac6b70bb749d3948938d40b81b" + integrity sha512-c1hHtkgAWmE35/50gmdKajgGAKV3ePJ7t6UtEmpfCWJmQE9BQAQPz0URUVI89eSkcDqCtzqllxzG28IQoZPvwA== + dependencies: + tslib "^2.6.2" + "@smithy/util-middleware@^2.0.5", "@smithy/util-middleware@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.2.0.tgz#80cfad40f6cca9ffe42a5899b5cb6abd53a50006" @@ -7452,6 +9349,14 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/util-middleware@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.10.tgz#41ba94329f010ab34c325ad747480565ade43ad9" + integrity sha512-LxaQIWLp4y0r72eA8mwPNQ9va4h5KeLM0I3M/HV9klmFaY2kN766wf5vsTzmaOpNNb7GgXAd9a25P3h8T49PSA== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-retry@^2.0.5", "@smithy/util-retry@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.2.0.tgz#e8e019537ab47ba6b2e87e723ec51ee223422d85" @@ -7470,6 +9375,15 @@ "@smithy/types" "^2.7.0" tslib "^2.5.0" +"@smithy/util-retry@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.10.tgz#8c9f16520238cdc109eb6fba7d8752e5f28ceb5b" + integrity sha512-HrBzistfpyE5uqTwiyLsFHscgnwB0kgv8vySp7q5kZ0Eltn/tjosaSGGDj/jJ9ys7pWzIP/icE2d+7vMKXLv7A== + dependencies: + "@smithy/service-error-classification" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-stream@^2.0.23": version "2.0.23" resolved "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.0.23.tgz#468ad29913d091092317cfea2d8ac5b866326a07" @@ -7498,6 +9412,20 @@ "@smithy/util-utf8" "^2.3.0" tslib "^2.6.2" +"@smithy/util-stream@^4.5.15": + version "4.5.15" + resolved "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.15.tgz#2a8fa6a519d985fe4e7f1d5724142e14be9c68a3" + integrity sha512-OlOKnaqnkU9X+6wEkd7mN+WB7orPbCVDauXOj22Q7VtiTkvy7ZdSsOg4QiNAZMgI4OkvNf+/VLUC3VXkxuWJZw== + dependencies: + "@smithy/fetch-http-handler" "^5.3.11" + "@smithy/node-http-handler" "^4.4.12" + "@smithy/types" "^4.13.0" + "@smithy/util-base64" "^4.3.1" + "@smithy/util-buffer-from" "^4.2.1" + "@smithy/util-hex-encoding" "^4.2.1" + "@smithy/util-utf8" "^4.2.1" + tslib "^2.6.2" + "@smithy/util-uri-escape@^2.0.0": version "2.0.0" resolved "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz#19955b1a0f517a87ae77ac729e0e411963dfda95" @@ -7512,6 +9440,13 @@ dependencies: tslib "^2.6.2" +"@smithy/util-uri-escape@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-4.2.1.tgz#93327b2f4327cce46d590d095f79482afdea421d" + integrity sha512-YmiUDn2eo2IOiWYYvGQkgX5ZkBSiTQu4FlDo5jNPpAxng2t6Sjb6WutnZV9l6VR4eJul1ABmCrnWBC9hKHQa6Q== + dependencies: + tslib "^2.6.2" + "@smithy/util-utf8@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-1.1.0.tgz#b791ab1e3f694374edfe22811e39dd8424a1be69" @@ -7536,6 +9471,14 @@ "@smithy/util-buffer-from" "^2.0.0" tslib "^2.5.0" +"@smithy/util-utf8@^4.2.1": + version "4.2.1" + resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.2.1.tgz#ef71fdae30b82ba1b94b005ee42c8e6e6315a52c" + integrity sha512-DSIwNaWtmzrNQHv8g7DBGR9mulSit65KSj5ymGEIAknmIN8IpbZefEep10LaMG/P/xquwbmJ1h9ectz8z6mV6g== + dependencies: + "@smithy/util-buffer-from" "^4.2.1" + tslib "^2.6.2" + "@smithy/util-waiter@^2.0.15": version "2.0.15" resolved "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-2.0.15.tgz#b02a42bf1b82f07973d1756a0ee10fafa1fbf58e" @@ -7554,6 +9497,22 @@ "@smithy/types" "^2.12.0" tslib "^2.6.2" +"@smithy/util-waiter@^4.2.10": + version "4.2.10" + resolved "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.10.tgz#8144eca7212651fc878b3358dc233a68d91d7282" + integrity sha512-4eTWph/Lkg1wZEDAyObwme0kmhEb7J/JjibY2znJdrYRgKbKqB7YoEhhJVJ4R1g/SYih4zuwX7LpJaM8RsnTVg== + dependencies: + "@smithy/abort-controller" "^4.2.10" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + +"@smithy/uuid@^1.1.1": + version "1.1.1" + resolved "https://registry.npmjs.org/@smithy/uuid/-/uuid-1.1.1.tgz#cafae26b6a7642752b5d4368e33c5363fe818cf2" + integrity sha512-dSfDCeihDmZlV2oyr0yWPTUfh07suS+R5OB+FZGiv/hHyK3hrFBW5rR1UYjfa57vBsrP9lciFkRPzebaV1Qujw== + dependencies: + tslib "^2.6.2" + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -8655,38 +10614,6 @@ aws-cdk-lib@^2.189.1, aws-cdk-lib@~2.187.0: table "^6.9.0" yaml "1.10.2" -aws-sdk@2.1414.0: - version "2.1414.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1414.0.tgz#5888319adba0e98fc95f7b6044bb598edcbf6713" - integrity sha512-WhqTWiTZRUxWITvUG5VMPYGdCLNAm4zOTDIiotbErR9x+uDExk2CAGbXE8HH11+tD8PhZVXyukymSiG+7rJMMg== - dependencies: - buffer "4.9.2" - events "1.1.1" - ieee754 "1.1.13" - jmespath "0.16.0" - querystring "0.2.0" - sax "1.2.1" - url "0.10.3" - util "^0.12.4" - uuid "8.0.0" - xml2js "0.5.0" - -aws-sdk@^2.1413.0, aws-sdk@^2.1465.0: - version "2.1514.0" - resolved "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1514.0.tgz#e13eefdaff667ba0c87d03280b7ce03150b03944" - integrity sha512-ZQE5kHhJozwBB+Zaa21Gglm2pSQVU+8fFZNOn4pr+Kc1scYPlmVBPR3a0w19Vc4HNXPzjApAk2G4xMvzZDktAw== - dependencies: - buffer "4.9.2" - events "1.1.1" - ieee754 "1.1.13" - jmespath "0.16.0" - querystring "0.2.0" - sax "1.2.1" - url "0.10.3" - util "^0.12.4" - uuid "8.0.0" - xml2js "0.5.0" - axe-core@=4.7.0: version "4.7.0" resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf" @@ -10588,11 +12515,6 @@ eventemitter3@^4.0.4: resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== -events@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== - events@3.3.0, events@^3.1.0: version "3.3.0" resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" @@ -10752,6 +12674,13 @@ fast-xml-parser@4.2.5, fast-xml-parser@^4.2.5, fast-xml-parser@^4.4.1: dependencies: strnum "^1.0.5" +fast-xml-parser@5.3.6: + version "5.3.6" + resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.3.6.tgz#85a69117ca156b1b3c52e426495b6de266cb6a4b" + integrity sha512-QNI3sAvSvaOiaMl8FYU4trnEzCwiRr8XMWgAHzlrWpTSj+QaCSvOf1h82OEP1s4hiAXhnbXSyFWCf4ldZzZRVA== + dependencies: + strnum "^2.1.2" + fastq@^1.6.0: version "1.15.0" resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" @@ -11665,11 +13594,6 @@ idb@5.0.6: resolved "https://registry.npmjs.org/idb/-/idb-5.0.6.tgz#8c94624f5a8a026abe3bef3c7166a5febd1cadc1" integrity sha512-/PFvOWPzRcEPmlDt5jEvzVZVs0wyd/EvGvkDIcbBpGuMMLQKrTPG0TxvE2UJtgZtCQCmOtM2QD7yQJBVEjKGOw== -ieee754@1.1.13: - version "1.1.13" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== - ieee754@^1.1.13, ieee754@^1.1.4: version "1.2.1" resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -11901,14 +13825,6 @@ is-absolute@^1.0.0: is-relative "^1.0.0" is-windows "^1.0.1" -is-arguments@^1.0.4: - version "1.1.1" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" - integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - is-array-buffer@^3.0.1, is-array-buffer@^3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe" @@ -12025,7 +13941,7 @@ is-generator-fn@^2.0.0: resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-generator-function@^1.0.10, is-generator-function@^1.0.7: +is-generator-function@^1.0.10: version "1.0.10" resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== @@ -12170,7 +14086,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.3, is-typed-array@^1.1.9: +is-typed-array@^1.1.10, is-typed-array@^1.1.12, is-typed-array@^1.1.9: version "1.1.12" resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz#d0bab5686ef4a76f7a73097b95470ab199c57d4a" integrity sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg== @@ -12813,11 +14729,6 @@ jju@~1.4.0: resolved "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" integrity sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA== -jmespath@0.16.0: - version "0.16.0" - resolved "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076" - integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw== - js-cookie@^2.2.1: version "2.2.1" resolved "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8" @@ -13607,6 +15518,13 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== +mnemonist@0.38.3: + version "0.38.3" + resolved "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz#35ec79c1c1f4357cfda2fe264659c2775ccd7d9d" + integrity sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw== + dependencies: + obliterator "^1.6.1" + mock-fs@^5.4.0: version "5.5.0" resolved "https://registry.npmjs.org/mock-fs/-/mock-fs-5.5.0.tgz#94a46d299aaa588e735a201cbe823c876e91f385" @@ -14062,6 +15980,11 @@ object.values@^1.1.6, object.values@^1.1.7: define-properties "^1.2.0" es-abstract "^1.22.1" +obliterator@^1.6.1: + version "1.6.1" + resolved "https://registry.npmjs.org/obliterator/-/obliterator-1.6.1.tgz#dea03e8ab821f6c4d96a299e17aef6a3af994ef3" + integrity sha512-9WXswnqINnnhOG/5SLimUlzuU1hFJUc8zkwyD59Sd+dPOMf05PmnYG/d6Q7HZ+KmgkZJa1PxRso6QdM3sTNHig== + once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -15142,11 +17065,6 @@ safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sax@1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" - integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA== - sax@>=0.6.0: version "1.3.0" resolved "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0" @@ -15644,6 +17562,11 @@ strnum@^1.0.5: resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.1.2.tgz#57bca4fbaa6f271081715dbc9ed7cee5493e28e4" integrity sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA== +strnum@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/strnum/-/strnum-2.1.2.tgz#a5e00ba66ab25f9cafa3726b567ce7a49170937a" + integrity sha512-l63NF9y/cLROq/yqKXSLtcMeeyOfnSQlfMSlzFt/K73oIaD8DGaQWd7Z34X9GPiKqP5rbSh84Hl4bOlLcjiSrQ== + strong-log-transformer@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" @@ -16311,14 +18234,6 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@0.10.3: - version "0.10.3" - resolved "https://registry.npmjs.org/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" - integrity sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ== - dependencies: - punycode "1.3.2" - querystring "0.2.0" - url@0.11.0: version "0.11.0" resolved "https://registry.npmjs.org/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -16352,17 +18267,6 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util@^0.12.4: - version "0.12.5" - resolved "https://registry.npmjs.org/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" - integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== - dependencies: - inherits "^2.0.3" - is-arguments "^1.0.4" - is-generator-function "^1.0.7" - is-typed-array "^1.1.3" - which-typed-array "^1.1.2" - uuid@3.4.0, uuid@3.x, uuid@^3.0.0, uuid@^3.2.1, uuid@^3.4.0: version "3.4.0" resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" @@ -16373,11 +18277,6 @@ uuid@7.0.1: resolved "https://registry.npmjs.org/uuid/-/uuid-7.0.1.tgz#95ed6ff3d8c881cbf85f0f05cc3915ef994818ef" integrity sha512-yqjRXZzSJm9Dbl84H2VDHpM3zMjzSJQ+hn6C4zqd5ilW+7P4ZmLEEqwho9LjP+tGuZlF4xrHQXT0h9QZUS/pWA== -uuid@8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" - integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== - uuid@9.0.1, uuid@^9.0.1: version "9.0.1" resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" @@ -16615,7 +18514,7 @@ which-pm-runs@^1.0.0: resolved "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.1.0.tgz#35ccf7b1a0fce87bd8b92a478c9d045785d3bf35" integrity sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA== -which-typed-array@^1.1.11, which-typed-array@^1.1.13, which-typed-array@^1.1.2, which-typed-array@^1.1.9: +which-typed-array@^1.1.11, which-typed-array@^1.1.13, which-typed-array@^1.1.9: version "1.1.13" resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz#870cd5be06ddb616f504e7b039c4c24898184d36" integrity sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow== From 2d7bf66cd38dce1d685fabe039e8cbaf2a799d8e Mon Sep 17 00:00:00 2001 From: Otavio Macedo <288203+otaviomacedo@users.noreply.github.com> Date: Wed, 4 Mar 2026 09:54:59 +0000 Subject: [PATCH 39/56] chore: increase iOS canary timeout This test trigger a GitHub workflow that is very reliable, and normally completes within the specified 25 min timeout. But we have seen cases recently where it took as long as 36 min to complete. Increasing the timeout to avoid unnecessary canary failures. --- .codebuild/scripts/run-ios-modelgen-e2e-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.codebuild/scripts/run-ios-modelgen-e2e-test.sh b/.codebuild/scripts/run-ios-modelgen-e2e-test.sh index 3809fe609..b6e830d8d 100755 --- a/.codebuild/scripts/run-ios-modelgen-e2e-test.sh +++ b/.codebuild/scripts/run-ios-modelgen-e2e-test.sh @@ -52,7 +52,7 @@ main() { latest_run_id=$(get_latest_run_id) echo "Latest run ID: $latest_run_id" run_status=$(get_run_status "$latest_run_id") - timeout=$((SECONDS + 1500)) # 1500 seconds = 25 minutes + timeout=$((SECONDS + 2400)) # 2400 seconds = 40 minutes # Continuously check for status until completion while [[ "$run_status" != "completed" && "$SECONDS" -lt "$timeout" ]]; do From 95122397661b7e19952f795d457df01ea5aad907 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Wed, 4 Mar 2026 14:54:02 +0100 Subject: [PATCH 40/56] fix(amplify-codegen-e2e-tests): update Yarn GPG key installation for Android e2e tests (#993) --- .codebuild/run_android_modelgen_e2e_test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.codebuild/run_android_modelgen_e2e_test.yml b/.codebuild/run_android_modelgen_e2e_test.yml index ef6567923..6cfc929af 100644 --- a/.codebuild/run_android_modelgen_e2e_test.yml +++ b/.codebuild/run_android_modelgen_e2e_test.yml @@ -13,6 +13,8 @@ phases: commands: # Corretto PGP Key has expired. Fetch the renewed key. https://github.com/corretto/corretto-21/issues/83 - sudo apt-key del A122542AB04F24E3 && sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys A122542AB04F24E3 + # Debian Yarn GPG has expired. Fetch the renewed key. https://github.com/yarnpkg/yarn/issues/9218 + - curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - - sudo apt update - yes | sudo apt install android-sdk - export ANDROID_HOME=/usr/lib/android-sdk From f494ef0265dab8fbf0175b9954dd1193703210c1 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Thu, 5 Mar 2026 15:46:37 +0100 Subject: [PATCH 41/56] fix: upgrade tar to 7.5.9 to resolve security vulnerabilities (#990) - Add tar@^7.5.8 resolution to force all dependencies to use secure version - Fixes CVE-2026-26960: Arbitrary file read/write via hardlink escape - Fixes CVE-2026-24842: Arbitrary file creation via hardlink path traversal - Fixes CVE-2026-23950: Race condition on macOS APFS - Fixes CVE-2026-23745: File overwrite via insufficient path sanitization The resolution approach is used because lerna 5.1.6 transitively depends on tar@^6.1.0 through @lerna/pack-directory. Using resolutions ensures all tar instances use the patched version without requiring a lerna major upgrade. --- dependency_licenses.txt | 193 ++++++++++++++++++++++++++++++++++------ package.json | 6 +- yarn.lock | 55 ++++++++---- 3 files changed, 209 insertions(+), 45 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index f6b67ecc3..8a1f48bad 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -4701,6 +4701,26 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----- +The following software may be included in this product: @isaacs/fs-minipass, chownr, color-support, dezalgo, fs-minipass, ignore-walk, ini, isexe, json-stringify-nice, json-stringify-safe, lru-cache, minimatch, minipass-collect, minipass-flush, minipass-pipeline, minipass-sized, mute-stream, nopt, npm-packlist, once, proto-list, read, readdir-scoped-modules, rimraf, semver, which, wrappy, yallist. A copy of the source code may be downloaded from https://github.com/npm/fs-minipass.git (@isaacs/fs-minipass), git://github.com/isaacs/chownr.git (chownr), git+https://github.com/isaacs/color-support.git (color-support), https://github.com/npm/dezalgo (dezalgo), git+https://github.com/npm/fs-minipass.git (fs-minipass), git+https://github.com/isaacs/ignore-walk.git (ignore-walk), https://github.com/npm/ini.git (ini), git+https://github.com/isaacs/isexe.git (isexe), https://github.com/isaacs/json-stringify-nice (json-stringify-nice), git://github.com/isaacs/json-stringify-safe (json-stringify-safe), git://github.com/isaacs/node-lru-cache.git (lru-cache), git://github.com/isaacs/minimatch.git (minimatch), git+https://github.com/isaacs/minipass-flush.git (minipass-flush), git+https://github.com/isaacs/minipass-sized.git (minipass-sized), git://github.com/isaacs/mute-stream (mute-stream), https://github.com/npm/nopt.git (nopt), https://github.com/npm/npm-packlist.git (npm-packlist), git://github.com/isaacs/once (once), https://github.com/isaacs/proto-list (proto-list), git://github.com/isaacs/read.git (read), https://github.com/npm/readdir-scoped-modules (readdir-scoped-modules), git://github.com/isaacs/rimraf.git (rimraf), git+https://github.com/npm/node-semver.git (semver), git://github.com/isaacs/node-which.git (which), https://github.com/npm/wrappy (wrappy), git+https://github.com/isaacs/yallist.git (yallist). This software contains the following license and notice below: + +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR +IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +----- + The following software may be included in this product: @isaacs/string-locale-compare, common-ancestor-path, inflight, mkdirp-infer-owner, promise-all-reject-late, promise-call-limit, promzard, walk-up-path. A copy of the source code may be downloaded from git+https://github.com/isaacs/string-locale-compare (@isaacs/string-locale-compare), git+https://github.com/isaacs/common-ancestor-path (common-ancestor-path), https://github.com/npm/inflight.git (inflight), git+https://github.com/isaacs/mkdirp-infer-owner (mkdirp-infer-owner), git+https://github.com/isaacs/promise-call-limit (promise-call-limit), git://github.com/isaacs/promzard (promzard), git+https://github.com/isaacs/walk-up-path (walk-up-path). This software contains the following license and notice below: The ISC License @@ -10271,23 +10291,71 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----- -The following software may be included in this product: chownr, color-support, dezalgo, fs-minipass, ignore-walk, ini, isexe, json-stringify-nice, json-stringify-safe, lru-cache, minimatch, minipass-collect, minipass-flush, minipass-pipeline, minipass-sized, mute-stream, nopt, npm-packlist, once, proto-list, read, readdir-scoped-modules, rimraf, semver, tar, which, wrappy, yallist. A copy of the source code may be downloaded from git://github.com/isaacs/chownr.git (chownr), git+https://github.com/isaacs/color-support.git (color-support), https://github.com/npm/dezalgo (dezalgo), git+https://github.com/npm/fs-minipass.git (fs-minipass), git+https://github.com/isaacs/ignore-walk.git (ignore-walk), https://github.com/npm/ini.git (ini), git+https://github.com/isaacs/isexe.git (isexe), https://github.com/isaacs/json-stringify-nice (json-stringify-nice), git://github.com/isaacs/json-stringify-safe (json-stringify-safe), git://github.com/isaacs/node-lru-cache.git (lru-cache), git://github.com/isaacs/minimatch.git (minimatch), git+https://github.com/isaacs/minipass-flush.git (minipass-flush), git+https://github.com/isaacs/minipass-sized.git (minipass-sized), git://github.com/isaacs/mute-stream (mute-stream), https://github.com/npm/nopt.git (nopt), https://github.com/npm/npm-packlist.git (npm-packlist), git://github.com/isaacs/once (once), https://github.com/isaacs/proto-list (proto-list), git://github.com/isaacs/read.git (read), https://github.com/npm/readdir-scoped-modules (readdir-scoped-modules), git://github.com/isaacs/rimraf.git (rimraf), git+https://github.com/npm/node-semver.git (semver), https://github.com/isaacs/node-tar.git (tar), git://github.com/isaacs/node-which.git (which), https://github.com/npm/wrappy (wrappy), git+https://github.com/isaacs/yallist.git (yallist). This software contains the following license and notice below: +The following software may be included in this product: chownr, yallist. A copy of the source code may be downloaded from git://github.com/isaacs/chownr.git (chownr), git+https://github.com/isaacs/yallist.git (yallist). This software contains the following license and notice below: -The ISC License +All packages under `src/` are licensed according to the terms in +their respective `LICENSE` or `LICENSE.md` files. -Copyright (c) Isaac Z. Schlueter and Contributors +The remainder of this project is licensed under the Blue Oak +Model License, as follows: -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. +----- -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# Blue Oak Model License + +Version 1.0.0 + +## Purpose + +This license gives everyone as much permission to work with +this software as possible, while protecting contributors +from liability. + +## Acceptance + +In order to receive this license, you must agree to its +rules. The rules of this license are both obligations +under that agreement and conditions to your license. +You must not do anything with this software that triggers +a rule that you cannot or will not follow. + +## Copyright + +Each contributor licenses you to do everything with this +software that would otherwise infringe that contributor's +copyright in it. + +## Notices + +You must ensure that everyone who gets a copy of +any part of this software from you, with or without +changes, also gets the text of this license or a link to +. + +## Excuse + +If anyone notifies you in writing that you have not +complied with [Notices](#notices), you can keep your +license by taking all practical steps to comply within 30 +days after the notice. If you do not do so, your license +ends immediately. + +## Patent + +Each contributor licenses you to do everything with this +software that would otherwise infringe any patent claims +they can license or become able to license. + +## Reliability + +No contributor can revoke this license. + +## No Liability + +***As far as the law allows, this software comes as is, +without any warranty or condition, and no contributor +will be liable to anyone for any damages related to this +software or this license, under any kind of legal claim.*** ----- @@ -17455,23 +17523,63 @@ THE SOFTWARE. ----- -The following software may be included in this product: minipass. A copy of the source code may be downloaded from git+https://github.com/isaacs/minipass.git. This software contains the following license and notice below: +The following software may be included in this product: minipass, tar. A copy of the source code may be downloaded from https://github.com/isaacs/minipass (minipass), https://github.com/isaacs/node-tar.git (tar). This software contains the following license and notice below: -The ISC License +# Blue Oak Model License -Copyright (c) 2017-2022 npm, Inc., Isaac Z. Schlueter, and Contributors +Version 1.0.0 -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. +## Purpose -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +This license gives everyone as much permission to work with +this software as possible, while protecting contributors +from liability. + +## Acceptance + +In order to receive this license, you must agree to its +rules. The rules of this license are both obligations +under that agreement and conditions to your license. +You must not do anything with this software that triggers +a rule that you cannot or will not follow. + +## Copyright + +Each contributor licenses you to do everything with this +software that would otherwise infringe that contributor's +copyright in it. + +## Notices + +You must ensure that everyone who gets a copy of +any part of this software from you, with or without +changes, also gets the text of this license or a link to +. + +## Excuse + +If anyone notifies you in writing that you have not +complied with [Notices](#notices), you can keep your +license by taking all practical steps to comply within 30 +days after the notice. If you do not do so, your license +ends immediately. + +## Patent + +Each contributor licenses you to do everything with this +software that would otherwise infringe any patent claims +they can license or become able to license. + +## Reliability + +No contributor can revoke this license. + +## No Liability + +***As far as the law allows, this software comes as is, +without any warranty or condition, and no contributor +will be liable to anyone for any damages related to this +software or this license, under any kind of legal claim.*** ----- @@ -17479,7 +17587,7 @@ The following software may be included in this product: minipass. A copy of the The ISC License -Copyright (c) 2017-2023 npm, Inc., Isaac Z. Schlueter, and Contributors +Copyright (c) 2017-2022 npm, Inc., Isaac Z. Schlueter, and Contributors Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above @@ -17565,6 +17673,37 @@ The following software may be included in this product: minizlib. A copy of the Minizlib was created by Isaac Z. Schlueter. It is a derivative work of the Node.js project. +""" +Copyright (c) 2017-2023 Isaac Z. Schlueter and Contributors +Copyright (c) 2017-2023 Node.js contributors. All rights reserved. +Copyright (c) 2017-2023 Joyent, Inc. and other Node contributors. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +""" + +----- + +The following software may be included in this product: minizlib. A copy of the source code may be downloaded from git+https://github.com/isaacs/minizlib.git. This software contains the following license and notice below: + +Minizlib was created by Isaac Z. Schlueter. +It is a derivative work of the Node.js project. + """ Copyright Isaac Z. Schlueter and Contributors Copyright Node.js contributors. All rights reserved. diff --git a/package.json b/package.json index 2cf37c5e9..c00fde4f3 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,8 @@ "author": "Amazon Web Services", "license": "Apache-2.0", "dependencies": { - "lerna": "^5.1.6" + "lerna": "^5.1.6", + "tar": "^7.5.8" }, "workspaces": [ "packages/*" @@ -143,7 +144,8 @@ "minimist": "^1.2.6", "node-fetch": "^2.6.7", "parse-url": "^8.1.0", - "xml2js": "0.5.0" + "tar": "^7.5.8", + "xml2js": "0.5.0" }, "config": { "commitizen": { diff --git a/yarn.lock b/yarn.lock index e90f7b79e..424218333 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6629,6 +6629,13 @@ resolved "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== +"@isaacs/fs-minipass@^4.0.0": + version "4.0.1" + resolved "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32" + integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w== + dependencies: + minipass "^7.0.4" + "@isaacs/string-locale-compare@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz#291c227e93fd407a96ecd59879a35809120e432b" @@ -11142,6 +11149,11 @@ chownr@^2.0.0: resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== +chownr@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4" + integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g== + ci-info@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -12909,7 +12921,7 @@ fs-extra@~7.0.1: jsonfile "^4.0.0" universalify "^0.1.0" -fs-minipass@^2.0.0, fs-minipass@^2.1.0: +fs-minipass@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== @@ -15484,12 +15496,12 @@ minipass@^3.0.0, minipass@^3.1.1, minipass@^3.1.6: dependencies: yallist "^4.0.0" -minipass@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" - integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== +minipass@^7.0.4, minipass@^7.1.2: + version "7.1.3" + resolved "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" + integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== -minizlib@^2.1.1, minizlib@^2.1.2: +minizlib@^2.1.2: version "2.1.2" resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== @@ -15497,6 +15509,13 @@ minizlib@^2.1.1, minizlib@^2.1.2: minipass "^3.0.0" yallist "^4.0.0" +minizlib@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz#6ad76c3a8f10227c9b51d1c9ac8e30b27f5a251c" + integrity sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw== + dependencies: + minipass "^7.1.2" + mkdirp-infer-owner@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" @@ -17665,17 +17684,16 @@ tar-stream@~2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: - version "6.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" - integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== +tar@^6.1.0, tar@^6.1.11, tar@^6.1.2, tar@^7.5.8: + version "7.5.9" + resolved "https://registry.npmjs.org/tar/-/tar-7.5.9.tgz#817ac12a54bc4362c51340875b8985d7dc9724b8" + integrity sha512-BTLcK0xsDh2+PUe9F6c2TlRp4zOOBMTkoQHQIWSIzI0R7KG46uEwq4OPk2W7bZcprBMsuaeFsqwYr7pjh6CuHg== dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^5.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" + "@isaacs/fs-minipass" "^4.0.0" + chownr "^3.0.0" + minipass "^7.1.2" + minizlib "^3.1.0" + yallist "^5.0.0" teeny-request@7.1.1: version "7.1.1" @@ -18738,6 +18756,11 @@ yallist@^4.0.0: resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yallist@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" + integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw== + yaml@1.10.2, yaml@^1.10.0: version "1.10.2" resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" From 0b2e61c0a8808dad7604836682c0798ed572af15 Mon Sep 17 00:00:00 2001 From: Otavio Macedo <288203+otaviomacedo@users.noreply.github.com> Date: Fri, 6 Mar 2026 08:50:22 +0000 Subject: [PATCH 42/56] chore: increase iOS canary timeout Increasing the timeout again, to deal with increased latency in recent workflow runs --- .codebuild/scripts/run-ios-modelgen-e2e-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.codebuild/scripts/run-ios-modelgen-e2e-test.sh b/.codebuild/scripts/run-ios-modelgen-e2e-test.sh index b6e830d8d..00211c30c 100755 --- a/.codebuild/scripts/run-ios-modelgen-e2e-test.sh +++ b/.codebuild/scripts/run-ios-modelgen-e2e-test.sh @@ -52,7 +52,7 @@ main() { latest_run_id=$(get_latest_run_id) echo "Latest run ID: $latest_run_id" run_status=$(get_run_status "$latest_run_id") - timeout=$((SECONDS + 2400)) # 2400 seconds = 40 minutes + timeout=$((SECONDS + 4800)) # 4800 seconds = 1 hour and 20 minutes # Continuously check for status until completion while [[ "$run_status" != "completed" && "$SECONDS" -lt "$timeout" ]]; do From 12bf4d5a8b92ea4c5027d39d2d637beebf757a49 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Fri, 6 Mar 2026 12:15:59 +0100 Subject: [PATCH 43/56] fix(amplify-codegen-e2e-core): use platform-specific spawning to resolve node-pty faults in linux (#995) --- .../src/categories/codegen.ts | 50 +++++++++++++++---- 1 file changed, 41 insertions(+), 9 deletions(-) diff --git a/packages/amplify-codegen-e2e-core/src/categories/codegen.ts b/packages/amplify-codegen-e2e-core/src/categories/codegen.ts index 82582441c..10073592d 100644 --- a/packages/amplify-codegen-e2e-core/src/categories/codegen.ts +++ b/packages/amplify-codegen-e2e-core/src/categories/codegen.ts @@ -1,5 +1,6 @@ import { AmplifyFrontend, singleSelect } from '../utils'; import { getCLIPath, nspawn as spawn } from '..'; +import { spawn as nodeSpawn } from 'child_process'; export function generateModels(cwd: string, outputDir?: string, settings: { errMessage?: string } = {}): Promise { return new Promise((resolve, reject) => { @@ -20,15 +21,46 @@ export function generateModels(cwd: string, outputDir?: string, settings: { errM }); } -export const generateModelsWithOptions = (cwd: string, options: Record): Promise => new Promise((resolve, reject) => { - spawn(getCLIPath(), ['codegen', 'models', ...(Object.entries(options).flat())], { cwd, stripColors: true }).run((err: Error) => { - if (!err) { - resolve(); - } else { - reject(err); - } - }); -}); +export const generateModelsWithOptions = async (cwd: string, options: Record): Promise => { + const flatOptions = Object.entries(options).flat(); + const command = ['codegen', 'models', ...flatOptions]; + + if (process.platform !== 'win32') { + console.log('generateModelsWithOptions: Using child_process on Unix systems'); + + await new Promise((resolve, reject) => { + const childProcess = nodeSpawn(getCLIPath(), command, { + cwd, + stdio: 'inherit', + env: { + ...process.env, + NODE_OPTIONS: '--max_old_space_size=4096', + } + }); + + // Handle process completion + childProcess.on('close', (code) => { + console.log('generateModelsWithOptions: Process closed with code', code); + if (code === 0) { + resolve(); + } else { + reject(new Error(`Process exited with code ${code}`)); + } + }); + + // Handle process errors + childProcess.on('error', (error) => { + console.log('generateModelsWithOptions: Process error', error.message); + reject(error); + }); + }); + } else { + console.log('generateModelsWithOptions: Using node-pty on Windows'); + + const spawnProcess = spawn(getCLIPath(), command, { cwd, stripColors: true }); + await spawnProcess.runAsync(); + } +}; export function generateStatementsAndTypes(cwd: string, errorMessage?: string) : Promise { return new Promise((resolve, reject) => { From 6ef95d5b419be8ba7f80c74fb3e89c039ef6392d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Mar 2026 17:37:28 +0000 Subject: [PATCH 44/56] build(deps): bump tar from 7.5.9 to 7.5.10 Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.9 to 7.5.10. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v7.5.9...v7.5.10) --- updated-dependencies: - dependency-name: tar dependency-version: 7.5.10 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 424218333..cd92992ab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17685,9 +17685,9 @@ tar-stream@~2.2.0: readable-stream "^3.1.1" tar@^6.1.0, tar@^6.1.11, tar@^6.1.2, tar@^7.5.8: - version "7.5.9" - resolved "https://registry.npmjs.org/tar/-/tar-7.5.9.tgz#817ac12a54bc4362c51340875b8985d7dc9724b8" - integrity sha512-BTLcK0xsDh2+PUe9F6c2TlRp4zOOBMTkoQHQIWSIzI0R7KG46uEwq4OPk2W7bZcprBMsuaeFsqwYr7pjh6CuHg== + version "7.5.10" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.10.tgz#2281541123f5507db38bc6eb22619f4bbaef73ad" + integrity sha512-8mOPs1//5q/rlkNSPcCegA6hiHJYDmSLEI8aMH/CdSQJNWztHC9WHNam5zdQlfpTwB9Xp7IBEsHfV5LKMJGVAw== dependencies: "@isaacs/fs-minipass" "^4.0.0" chownr "^3.0.0" From 9d45c763c006400f62648dc94e762ec92d506cd8 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Fri, 6 Mar 2026 17:42:21 +0100 Subject: [PATCH 45/56] fix(amplify-codegen): add tmp resolution to fix CVE-2025-54798 (arbitrary file write) (#1002) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Dependency trace: - lerna@5.6.2 → @nrwl/devkit@15.9.7 → tmp@~0.2.1 (resolved to 0.2.1) - lerna@5.6.2 → nx@15.9.7 → tmp@~0.2.1 (resolved to 0.2.1) Direct parent analysis: - lerna@5.6.2 is the latest and final release in the 5.x line. - @nrwl/devkit and nx 15.9.7 both specify tmp@~0.2.1, which DOES accept tmp@0.2.4+ (the fixed version), but the lockfile had resolved to 0.2.1 (the latest at the time the lockfile was created). - No bump of lerna within its major resolves this since 5.6.2 is already latest. Resolution 'tmp': '^0.2.4' forces all instances to 0.2.5 (latest 0.2.x), fixing the CVE. The ~0.2.1 range in both @nrwl/devkit and nx accepts this. --- dependency_licenses.txt | 2 +- package.json | 3 ++- yarn.lock | 22 ++++------------------ 3 files changed, 7 insertions(+), 20 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 8a1f48bad..a84a61119 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -7111,7 +7111,7 @@ SOFTWARE. ----- -The following software may be included in this product: arrify, decamelize, detect-indent, escape-string-regexp, find-up, git-remote-origin-url, is-plain-obj, is-text-path, load-json-file, locate-path, map-obj, modify-values, object-assign, os-tmpdir, p-finally, p-locate, p-try, path-exists, path-is-absolute, pify, repeating, strip-bom, temp-dir, trim-right. A copy of the source code may be downloaded from https://github.com/sindresorhus/arrify.git (arrify), https://github.com/sindresorhus/decamelize.git (decamelize), https://github.com/sindresorhus/detect-indent.git (detect-indent), https://github.com/sindresorhus/escape-string-regexp.git (escape-string-regexp), https://github.com/sindresorhus/find-up.git (find-up), https://github.com/sindresorhus/git-remote-origin-url.git (git-remote-origin-url), https://github.com/sindresorhus/is-plain-obj.git (is-plain-obj), https://github.com/sindresorhus/is-text-path.git (is-text-path), https://github.com/sindresorhus/load-json-file.git (load-json-file), https://github.com/sindresorhus/locate-path.git (locate-path), https://github.com/sindresorhus/map-obj.git (map-obj), https://github.com/sindresorhus/modify-values.git (modify-values), https://github.com/sindresorhus/object-assign.git (object-assign), https://github.com/sindresorhus/os-tmpdir.git (os-tmpdir), https://github.com/sindresorhus/p-finally.git (p-finally), https://github.com/sindresorhus/p-locate.git (p-locate), https://github.com/sindresorhus/p-try.git (p-try), https://github.com/sindresorhus/path-exists.git (path-exists), https://github.com/sindresorhus/path-is-absolute.git (path-is-absolute), https://github.com/sindresorhus/pify.git (pify), https://github.com/sindresorhus/repeating.git (repeating), https://github.com/sindresorhus/strip-bom.git (strip-bom), https://github.com/sindresorhus/temp-dir.git (temp-dir), https://github.com/sindresorhus/trim-right.git (trim-right). This software contains the following license and notice below: +The following software may be included in this product: arrify, decamelize, detect-indent, escape-string-regexp, find-up, git-remote-origin-url, is-plain-obj, is-text-path, load-json-file, locate-path, map-obj, modify-values, object-assign, p-finally, p-locate, p-try, path-exists, path-is-absolute, pify, repeating, strip-bom, temp-dir, trim-right. A copy of the source code may be downloaded from https://github.com/sindresorhus/arrify.git (arrify), https://github.com/sindresorhus/decamelize.git (decamelize), https://github.com/sindresorhus/detect-indent.git (detect-indent), https://github.com/sindresorhus/escape-string-regexp.git (escape-string-regexp), https://github.com/sindresorhus/find-up.git (find-up), https://github.com/sindresorhus/git-remote-origin-url.git (git-remote-origin-url), https://github.com/sindresorhus/is-plain-obj.git (is-plain-obj), https://github.com/sindresorhus/is-text-path.git (is-text-path), https://github.com/sindresorhus/load-json-file.git (load-json-file), https://github.com/sindresorhus/locate-path.git (locate-path), https://github.com/sindresorhus/map-obj.git (map-obj), https://github.com/sindresorhus/modify-values.git (modify-values), https://github.com/sindresorhus/object-assign.git (object-assign), https://github.com/sindresorhus/p-finally.git (p-finally), https://github.com/sindresorhus/p-locate.git (p-locate), https://github.com/sindresorhus/p-try.git (p-try), https://github.com/sindresorhus/path-exists.git (path-exists), https://github.com/sindresorhus/path-is-absolute.git (path-is-absolute), https://github.com/sindresorhus/pify.git (pify), https://github.com/sindresorhus/repeating.git (repeating), https://github.com/sindresorhus/strip-bom.git (strip-bom), https://github.com/sindresorhus/temp-dir.git (temp-dir), https://github.com/sindresorhus/trim-right.git (trim-right). This software contains the following license and notice below: The MIT License (MIT) diff --git a/package.json b/package.json index c00fde4f3..1cb01edc0 100644 --- a/package.json +++ b/package.json @@ -145,7 +145,8 @@ "node-fetch": "^2.6.7", "parse-url": "^8.1.0", "tar": "^7.5.8", - "xml2js": "0.5.0" + "xml2js": "0.5.0", + "tmp": "^0.2.4" }, "config": { "commitizen": { diff --git a/yarn.lock b/yarn.lock index cd92992ab..5043e16a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16094,11 +16094,6 @@ ora@^5.4.1: strip-ansi "^6.0.0" wcwidth "^1.0.1" -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== - p-finally@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" @@ -17780,19 +17775,10 @@ title-case@^3.0.3: dependencies: tslib "^2.0.3" -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmp@~0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" - integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== - dependencies: - rimraf "^3.0.0" +tmp@^0.0.33, tmp@^0.2.4, tmp@~0.2.1: + version "0.2.5" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" + integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== tmpl@1.0.5: version "1.0.5" From 1697098c0fc307e8aee8eb524a987cf842ef8c4d Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Fri, 6 Mar 2026 18:05:14 +0100 Subject: [PATCH 46/56] fix: bump js-yaml to 3.14.2/4.1.1 to resolve CVE-2025-64718 (#997) Updates js-yaml from 3.14.1 to 3.14.2 and 4.1.0 to 4.1.1 to fix prototype pollution in merge (<<) keys (CVE-2025-64718). Resolves Dependabot alerts #95, #96. --- dependency_licenses.txt | 52 ++++++++++++++++++++--------------------- package.json | 2 ++ yarn.lock | 17 ++++---------- 3 files changed, 33 insertions(+), 38 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index a84a61119..93e4beadf 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -6466,6 +6466,32 @@ SOFTWARE. The following software may be included in this product: argparse. A copy of the source code may be downloaded from https://github.com/nodeca/argparse.git. This software contains the following license and notice below: +(The MIT License) + +Copyright (C) 2012 by Vitaly Puzrin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +----- + +The following software may be included in this product: argparse. A copy of the source code may be downloaded from https://github.com/nodeca/argparse.git. This software contains the following license and notice below: + A. HISTORY OF THE SOFTWARE ========================== @@ -6723,32 +6749,6 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ----- -The following software may be included in this product: argparse. A copy of the source code may be downloaded from https://github.com/nodeca/argparse.git. This software contains the following license and notice below: - -(The MIT License) - -Copyright (C) 2012 by Vitaly Puzrin - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - ------ - The following software may be included in this product: argv. This software contains the following license and notice below: The MIT License diff --git a/package.json b/package.json index 1cb01edc0..e1317cf41 100644 --- a/package.json +++ b/package.json @@ -140,6 +140,8 @@ "form-data": "^4.0.4", "glob-parent": "^6.0.2", "graphql": "15.8.0", + "**/codecov/**/js-yaml": "^3.14.2", + "**/nx/**/js-yaml": "^4.1.1", "lodash": "^4.17.21", "minimist": "^1.2.6", "node-fetch": "^2.6.7", diff --git a/yarn.lock b/yarn.lock index 5043e16a2..c8e7e35d2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14751,22 +14751,15 @@ js-cookie@^2.2.1: resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@3.14.1, js-yaml@^3.10.0, js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== +js-yaml@3.14.1, js-yaml@^3.13.1, js-yaml@^3.14.2: + version "3.14.2" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.2.tgz#77485ce1dd7f33c061fd1b16ecea23b55fcb04b0" + integrity sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg== dependencies: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@4.1.0: - version "4.1.0" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== - dependencies: - argparse "^2.0.1" - -js-yaml@^4.0.0, js-yaml@^4.1.0: +js-yaml@4.1.0, js-yaml@^3.10.0, js-yaml@^4.0.0, js-yaml@^4.1.0, js-yaml@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== From f36e75bbacd6095fe0df6346271c906bb7875eb9 Mon Sep 17 00:00:00 2001 From: Galib Sarayev Date: Fri, 6 Mar 2026 10:40:34 +0000 Subject: [PATCH 47/56] fix: bump immutable to ^4.3.8 to resolve CVE-2026-29063 Adds a resolution to upgrade immutable from 3.7.6 to 4.3.8 to fix Prototype Pollution vulnerability (CVE-2026-29063). The package is a transitive dependency of @ardatan/relay-compiler. Resolves Dependabot alert #136. --- dependency_licenses.txt | 45 +++++++++++++++++------------------------ package.json | 1 + yarn.lock | 8 ++++---- 3 files changed, 23 insertions(+), 31 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 93e4beadf..435f19ec7 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -15577,38 +15577,29 @@ SOFTWARE. ----- -The following software may be included in this product: immutable. A copy of the source code may be downloaded from git://github.com/facebook/immutable-js.git. This software contains the following license and notice below: +The following software may be included in this product: immutable. A copy of the source code may be downloaded from git://github.com/immutable-js/immutable-js.git. This software contains the following license and notice below: -BSD License - -For Immutable JS software - -Copyright (c) 2014-2015, Facebook, Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: +MIT License - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. +Copyright (c) 2014-present, Lee Byron and other contributors. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: - * Neither the name Facebook nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ----- diff --git a/package.json b/package.json index e1317cf41..f1b4c859c 100644 --- a/package.json +++ b/package.json @@ -142,6 +142,7 @@ "graphql": "15.8.0", "**/codecov/**/js-yaml": "^3.14.2", "**/nx/**/js-yaml": "^4.1.1", + "immutable": "^4.3.8", "lodash": "^4.17.21", "minimist": "^1.2.6", "node-fetch": "^2.6.7", diff --git a/yarn.lock b/yarn.lock index c8e7e35d2..73793950f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13655,10 +13655,10 @@ immutable-tuple@^0.4.9: resolved "https://registry.npmjs.org/immutable-tuple/-/immutable-tuple-0.4.10.tgz#e0b1625384f514084a7a84b749a3bb26e9179929" integrity sha512-45jheDbc3Kr5Cw8EtDD+4woGRUV0utIrJBZT8XH0TPZRfm8tzT0/sLGGzyyCCFqFMG5Pv5Igf3WY/arn6+8V9Q== -immutable@~3.7.6: - version "3.7.6" - resolved "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" - integrity sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw== +immutable@^4.3.8, immutable@~3.7.6: + version "4.3.8" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.8.tgz#02d183c7727fb2bb1d5d0380da0d779dce9296a7" + integrity sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw== import-fresh@^3.0.0, import-fresh@^3.2.1, import-fresh@^3.3.0: version "3.3.0" From eae703a02ce816d44825e192622b704733db4c55 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Mon, 9 Mar 2026 10:55:23 +0100 Subject: [PATCH 48/56] fix: bump fast-xml-parser to 5.3.8 to resolve CVE-2026-27942 (#999) Adds a resolution to upgrade fast-xml-parser from 5.3.6 to 5.3.8 to fix stack overflow in XMLBuilder with preserveOrder (CVE-2026-27942). Transitive dependency of @aws-sdk/xml-builder. Resolves Dependabot alert #134. --- package.json | 1 + yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index e1317cf41..df8930612 100644 --- a/package.json +++ b/package.json @@ -131,6 +131,7 @@ "resolutions": { "**/@aws-amplify/amplify-codegen-e2e-tests/**/cookie": "^0.7.0", "**/@aws-amplify/amplify-codegen-e2e-tests/**/fast-xml-parser": "^4.4.1", + "**/@aws-sdk/xml-builder/**/fast-xml-parser": "5.3.8", "@octokit/plugin-paginate-rest": "^9.2.2", "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", diff --git a/yarn.lock b/yarn.lock index c8e7e35d2..37f441664 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12686,10 +12686,10 @@ fast-xml-parser@4.2.5, fast-xml-parser@^4.2.5, fast-xml-parser@^4.4.1: dependencies: strnum "^1.0.5" -fast-xml-parser@5.3.6: - version "5.3.6" - resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.3.6.tgz#85a69117ca156b1b3c52e426495b6de266cb6a4b" - integrity sha512-QNI3sAvSvaOiaMl8FYU4trnEzCwiRr8XMWgAHzlrWpTSj+QaCSvOf1h82OEP1s4hiAXhnbXSyFWCf4ldZzZRVA== +fast-xml-parser@5.3.6, fast-xml-parser@5.3.8: + version "5.3.8" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-5.3.8.tgz#b5bc2045620d1b9cf342a2aa4d72391ef0b36a9e" + integrity sha512-53jIF4N6u/pxvaL1eb/hEZts/cFLWZ92eCfLrNyCI0k38lettCG/Bs40W9pPwoPXyHQlKu2OUbQtiEIZK/J6Vw== dependencies: strnum "^2.1.2" From 8ec6645dafb8ee6f96430a3dfd647a6d4c6adc36 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Mon, 9 Mar 2026 11:00:40 +0100 Subject: [PATCH 49/56] fix(amplify-codegen): add minimatch resolution to fix CVE-2026-26996 (ReDoS) (#1001) All direct parents (eslint@7.32.0, jest@27.5.1, lerna@5.6.2, copyfiles@2.4.1, codecov@3.8.3, @commitlint/config-lerna-scopes@17.8.1) are already at their latest versions within their current major. Their semver ranges (^3.0.x) accept minimatch@3.1.3+, but the lockfile had resolved to 3.1.2 (the latest at the time). Additionally, nx@15 (via lerna@5) pinned minimatch@3.0.5. No amount of bumping direct parents within their current majors changes this. Resolution 'minimatch': '^3.1.3' forces all instances to 3.1.5 (latest 3.x), eliminating all three vulnerable versions (3.0.5, 3.1.2, 5.1.6). --- dependency_licenses.txt | 20 -------------------- package.json | 3 ++- yarn.lock | 23 ++++++++--------------- 3 files changed, 10 insertions(+), 36 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 435f19ec7..508d3f218 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -17468,26 +17468,6 @@ THE SOFTWARE. ----- -The following software may be included in this product: minimatch. A copy of the source code may be downloaded from git://github.com/isaacs/minimatch.git. This software contains the following license and notice below: - -The ISC License - -Copyright (c) 2011-2023 Isaac Z. Schlueter and Contributors - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ------ - The following software may be included in this product: minimist-options. A copy of the source code may be downloaded from https://github.com/vadimdemedes/minimist-options.git. This software contains the following license and notice below: The MIT License (MIT) diff --git a/package.json b/package.json index 188d6d1cd..2744d7682 100644 --- a/package.json +++ b/package.json @@ -150,7 +150,8 @@ "parse-url": "^8.1.0", "tar": "^7.5.8", "xml2js": "0.5.0", - "tmp": "^0.2.4" + "tmp": "^0.2.4", + "minimatch": "^3.1.3" }, "config": { "commitizen": { diff --git a/yarn.lock b/yarn.lock index c6abf4322..508d83f79 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15400,24 +15400,17 @@ min-indent@^1.0.0: resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@3.0.5: - version "3.0.5" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz#4da8f1290ee0f0f8e83d60ca69f8f134068604a3" - integrity sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw== - dependencies: - brace-expansion "^1.1.7" - -minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== +minimatch@3.0.5, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.3, minimatch@^5.0.1: + version "3.1.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e" + integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1: - version "5.1.6" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== +minimatch@^5.1.7: + version "5.1.9" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.9.tgz#1293ef15db0098b394540e8f9f744f9fda8dee4b" + integrity sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw== dependencies: brace-expansion "^2.0.1" From e649b64a23dc3a5a64628b1f7a4dc5df377e5783 Mon Sep 17 00:00:00 2001 From: Galib Sarayev Date: Fri, 6 Mar 2026 11:09:32 +0000 Subject: [PATCH 50/56] fix: bump @smithy/config-resolver to ^4.4.0 for defense-in-depth region validation Adds a resolution to upgrade @smithy/config-resolver from 2.x to 4.x to adopt defense-in-depth enhancement for region parameter value validation in AWS SDK for JavaScript v3. Resolves Dependabot alert #99. --- dependency_licenses.txt | 2 +- package.json | 1 + yarn.lock | 88 +++++++++++++++++++++++++++-------------- 3 files changed, 60 insertions(+), 31 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 93e4beadf..2659f97ce 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -2132,7 +2132,7 @@ Apache License ----- -The following software may be included in this product: @aws-sdk/abort-controller, @aws-sdk/config-resolver, @aws-sdk/crc64-nvme, @aws-sdk/credential-provider-env, @aws-sdk/credential-provider-imds, @aws-sdk/credential-provider-ini, @aws-sdk/credential-provider-node, @aws-sdk/credential-providers, @aws-sdk/dynamodb-codec, @aws-sdk/fetch-http-handler, @aws-sdk/hash-node, @aws-sdk/is-array-buffer, @aws-sdk/lib-storage, @aws-sdk/md5-js, @aws-sdk/middleware-content-length, @aws-sdk/middleware-signing, @aws-sdk/middleware-stack, @aws-sdk/node-http-handler, @aws-sdk/property-provider, @aws-sdk/region-config-resolver, @aws-sdk/shared-ini-file-loader, @aws-sdk/signature-v4, @aws-sdk/token-providers, @aws-sdk/types, @aws-sdk/util-arn-parser, @aws-sdk/util-base64-browser, @aws-sdk/util-base64-node, @aws-sdk/util-body-length-browser, @aws-sdk/util-body-length-node, @aws-sdk/util-buffer-from, @aws-sdk/util-endpoints, @aws-sdk/util-hex-encoding, @aws-sdk/util-locate-window, @aws-sdk/util-uri-escape, @aws-sdk/util-utf8-browser, @aws-sdk/util-utf8-node, @aws-sdk/util-waiter, @aws-sdk/xml-builder, @smithy/abort-controller, @smithy/chunked-blob-reader, @smithy/chunked-blob-reader-native, @smithy/config-resolver, @smithy/credential-provider-imds, @smithy/fetch-http-handler, @smithy/hash-blob-browser, @smithy/hash-node, @smithy/hash-stream-node, @smithy/is-array-buffer, @smithy/md5-js, @smithy/middleware-content-length, @smithy/middleware-endpoint, @smithy/middleware-stack, @smithy/node-http-handler, @smithy/property-provider, @smithy/shared-ini-file-loader, @smithy/signature-v4, @smithy/util-base64, @smithy/util-body-length-browser, @smithy/util-body-length-node, @smithy/util-buffer-from, @smithy/util-hex-encoding, @smithy/util-stream, @smithy/util-uri-escape, @smithy/util-utf8, @smithy/util-waiter, @smithy/uuid. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/abort-controller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/crc64-nvme), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-env), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-imds), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-ini), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/dynamodb-codec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/fetch-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/hash-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/is-array-buffer), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/lib-storage), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/md5-js), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-content-length), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-signing), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-stack), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/property-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/region-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/shared-ini-file-loader), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/token-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/types), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-arn-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-buffer-from), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-endpoints), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-hex-encoding), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-locate-window), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-uri-escape), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-waiter), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/xml-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/abort-controller), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader-native), https://github.com/awslabs/smithy-typescript.git (@smithy/config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/credential-provider-imds), https://github.com/awslabs/smithy-typescript.git (@smithy/fetch-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-blob-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-node), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-stream-node), https://github.com/awslabs/smithy-typescript.git (@smithy/is-array-buffer), https://github.com/awslabs/smithy-typescript.git (@smithy/md5-js), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-content-length), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-endpoint), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-stack), https://github.com/awslabs/smithy-typescript.git (@smithy/node-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/property-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/shared-ini-file-loader), https://github.com/awslabs/smithy-typescript.git (@smithy/signature-v4), https://github.com/awslabs/smithy-typescript.git (@smithy/util-base64), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-node), https://github.com/awslabs/smithy-typescript.git (@smithy/util-buffer-from), https://github.com/awslabs/smithy-typescript.git (@smithy/util-hex-encoding), https://github.com/awslabs/smithy-typescript.git (@smithy/util-stream), https://github.com/awslabs/smithy-typescript.git (@smithy/util-uri-escape), https://github.com/awslabs/smithy-typescript.git (@smithy/util-utf8), https://github.com/awslabs/smithy-typescript.git (@smithy/util-waiter), https://github.com/smithy-lang/smithy-typescript.git (@smithy/uuid). This software contains the following license and notice below: +The following software may be included in this product: @aws-sdk/abort-controller, @aws-sdk/config-resolver, @aws-sdk/crc64-nvme, @aws-sdk/credential-provider-env, @aws-sdk/credential-provider-imds, @aws-sdk/credential-provider-ini, @aws-sdk/credential-provider-node, @aws-sdk/credential-providers, @aws-sdk/dynamodb-codec, @aws-sdk/fetch-http-handler, @aws-sdk/hash-node, @aws-sdk/is-array-buffer, @aws-sdk/lib-storage, @aws-sdk/md5-js, @aws-sdk/middleware-content-length, @aws-sdk/middleware-signing, @aws-sdk/middleware-stack, @aws-sdk/node-http-handler, @aws-sdk/property-provider, @aws-sdk/region-config-resolver, @aws-sdk/shared-ini-file-loader, @aws-sdk/signature-v4, @aws-sdk/token-providers, @aws-sdk/types, @aws-sdk/util-arn-parser, @aws-sdk/util-base64-browser, @aws-sdk/util-base64-node, @aws-sdk/util-body-length-browser, @aws-sdk/util-body-length-node, @aws-sdk/util-buffer-from, @aws-sdk/util-endpoints, @aws-sdk/util-hex-encoding, @aws-sdk/util-locate-window, @aws-sdk/util-uri-escape, @aws-sdk/util-utf8-browser, @aws-sdk/util-utf8-node, @aws-sdk/util-waiter, @aws-sdk/xml-builder, @smithy/abort-controller, @smithy/chunked-blob-reader, @smithy/chunked-blob-reader-native, @smithy/config-resolver, @smithy/credential-provider-imds, @smithy/fetch-http-handler, @smithy/hash-blob-browser, @smithy/hash-node, @smithy/hash-stream-node, @smithy/is-array-buffer, @smithy/md5-js, @smithy/middleware-content-length, @smithy/middleware-endpoint, @smithy/middleware-stack, @smithy/node-http-handler, @smithy/property-provider, @smithy/shared-ini-file-loader, @smithy/signature-v4, @smithy/util-base64, @smithy/util-body-length-browser, @smithy/util-body-length-node, @smithy/util-buffer-from, @smithy/util-hex-encoding, @smithy/util-stream, @smithy/util-uri-escape, @smithy/util-utf8, @smithy/util-waiter, @smithy/uuid. A copy of the source code may be downloaded from https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/abort-controller), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/crc64-nvme), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-env), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-imds), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-ini), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-provider-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/credential-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/dynamodb-codec), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/fetch-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/hash-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/is-array-buffer), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/lib-storage), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/md5-js), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-content-length), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-signing), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/middleware-stack), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/node-http-handler), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/property-provider), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/region-config-resolver), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/shared-ini-file-loader), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/signature-v4), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/token-providers), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/types), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-arn-parser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-base64-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-body-length-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-buffer-from), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-endpoints), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-hex-encoding), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-locate-window), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-uri-escape), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-browser), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-utf8-node), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/util-waiter), https://github.com/aws/aws-sdk-js-v3.git (@aws-sdk/xml-builder), https://github.com/awslabs/smithy-typescript.git (@smithy/abort-controller), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader), https://github.com/awslabs/smithy-typescript.git (@smithy/chunked-blob-reader-native), https://github.com/smithy-lang/smithy-typescript.git (@smithy/config-resolver), https://github.com/awslabs/smithy-typescript.git (@smithy/credential-provider-imds), https://github.com/awslabs/smithy-typescript.git (@smithy/fetch-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-blob-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-node), https://github.com/awslabs/smithy-typescript.git (@smithy/hash-stream-node), https://github.com/awslabs/smithy-typescript.git (@smithy/is-array-buffer), https://github.com/awslabs/smithy-typescript.git (@smithy/md5-js), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-content-length), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-endpoint), https://github.com/awslabs/smithy-typescript.git (@smithy/middleware-stack), https://github.com/awslabs/smithy-typescript.git (@smithy/node-http-handler), https://github.com/awslabs/smithy-typescript.git (@smithy/property-provider), https://github.com/awslabs/smithy-typescript.git (@smithy/shared-ini-file-loader), https://github.com/awslabs/smithy-typescript.git (@smithy/signature-v4), https://github.com/awslabs/smithy-typescript.git (@smithy/util-base64), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-browser), https://github.com/awslabs/smithy-typescript.git (@smithy/util-body-length-node), https://github.com/awslabs/smithy-typescript.git (@smithy/util-buffer-from), https://github.com/awslabs/smithy-typescript.git (@smithy/util-hex-encoding), https://github.com/awslabs/smithy-typescript.git (@smithy/util-stream), https://github.com/awslabs/smithy-typescript.git (@smithy/util-uri-escape), https://github.com/awslabs/smithy-typescript.git (@smithy/util-utf8), https://github.com/awslabs/smithy-typescript.git (@smithy/util-waiter), https://github.com/smithy-lang/smithy-typescript.git (@smithy/uuid). This software contains the following license and notice below: Apache License Version 2.0, January 2004 diff --git a/package.json b/package.json index df8930612..78066195e 100644 --- a/package.json +++ b/package.json @@ -132,6 +132,7 @@ "**/@aws-amplify/amplify-codegen-e2e-tests/**/cookie": "^0.7.0", "**/@aws-amplify/amplify-codegen-e2e-tests/**/fast-xml-parser": "^4.4.1", "**/@aws-sdk/xml-builder/**/fast-xml-parser": "5.3.8", + "@smithy/config-resolver": "^4.4.0", "@octokit/plugin-paginate-rest": "^9.2.2", "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", diff --git a/yarn.lock b/yarn.lock index 37f441664..f27dcf4ab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8153,38 +8153,16 @@ dependencies: tslib "^2.6.2" -"@smithy/config-resolver@^2.0.16", "@smithy/config-resolver@^2.2.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.2.0.tgz#54f40478bb61709b396960a3535866dba5422757" - integrity sha512-fsiMgd8toyUba6n1WRmr+qACzXltpdDkPTAaDqc8QqPBUzO+/JKwL6bUBseHVi8tu9l+3JOK+tSf7cay+4B3LA== - dependencies: - "@smithy/node-config-provider" "^2.3.0" - "@smithy/types" "^2.12.0" - "@smithy/util-config-provider" "^2.3.0" - "@smithy/util-middleware" "^2.2.0" - tslib "^2.6.2" - -"@smithy/config-resolver@^2.0.20", "@smithy/config-resolver@^2.0.21": - version "2.0.21" - resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.0.21.tgz#97cb1c71f3c8c453fb01169545f98414b3414d7f" - integrity sha512-rlLIGT+BeqjnA6C2FWumPRJS1UW07iU5ZxDHtFuyam4W65gIaOFMjkB90ofKCIh+0mLVQrQFrl/VLtQT/6FWTA== +"@smithy/config-resolver@^2.0.16", "@smithy/config-resolver@^2.0.20", "@smithy/config-resolver@^2.0.21", "@smithy/config-resolver@^2.2.0", "@smithy/config-resolver@^4.4.0", "@smithy/config-resolver@^4.4.9": + version "4.4.10" + resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-4.4.10.tgz#22529a2e8c23d979f69c3abca8d984c69d06ce4c" + integrity sha512-IRTkd6ps0ru+lTWnfnsbXzW80A8Od8p3pYiZnW98K2Hb20rqfsX7VTlfUwhrcOeSSy68Gn9WBofwPuw3e5CCsg== dependencies: - "@smithy/node-config-provider" "^2.1.8" - "@smithy/types" "^2.7.0" - "@smithy/util-config-provider" "^2.0.0" - "@smithy/util-middleware" "^2.0.8" - tslib "^2.5.0" - -"@smithy/config-resolver@^4.4.9": - version "4.4.9" - resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.9.tgz#a7398dd507153859a09a64dda52f4cac9279a7af" - integrity sha512-ejQvXqlcU30h7liR9fXtj7PIAau1t/sFbJpgWPfiYDs7zd16jpH0IsSXKcba2jF6ChTXvIjACs27kNMc5xxE2Q== - dependencies: - "@smithy/node-config-provider" "^4.3.10" + "@smithy/node-config-provider" "^4.3.11" "@smithy/types" "^4.13.0" - "@smithy/util-config-provider" "^4.2.1" - "@smithy/util-endpoints" "^3.3.1" - "@smithy/util-middleware" "^4.2.10" + "@smithy/util-config-provider" "^4.2.2" + "@smithy/util-endpoints" "^3.3.2" + "@smithy/util-middleware" "^4.2.11" tslib "^2.6.2" "@smithy/core@^1.4.2": @@ -8785,6 +8763,16 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" +"@smithy/node-config-provider@^4.3.11": + version "4.3.11" + resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-4.3.11.tgz#a6d246b67c10c6873169bae46e6d04261d548402" + integrity sha512-xD17eE7kaLgBBGf5CZQ58hh2YmwK1Z0O8YhffwB/De2jsL0U3JklmhVYJ9Uf37OtUDLF2gsW40Xwwag9U869Gg== + dependencies: + "@smithy/property-provider" "^4.2.11" + "@smithy/shared-ini-file-loader" "^4.4.6" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/node-http-handler@^2.1.8", "@smithy/node-http-handler@^2.5.0": version "2.5.0" resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.5.0.tgz#7b5e0565dd23d340380489bd5fe4316d2bed32de" @@ -8842,6 +8830,14 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" +"@smithy/property-provider@^4.2.11": + version "4.2.11" + resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-4.2.11.tgz#7a1b16ae2083272f80e380ee7948ddc103301db1" + integrity sha512-14T1V64o6/ndyrnl1ze1ZhyLzIeYNN47oF/QU6P5m82AEtyOkMJTb0gO1dPubYjyyKuPD6OSVMPDKe+zioOnCg== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/protocol-http@^3.0.11": version "3.0.11" resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.0.11.tgz#a9ea712fe7cc3375378ac68d9168a7b6cd0b6f65" @@ -8962,6 +8958,14 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" +"@smithy/shared-ini-file-loader@^4.4.6": + version "4.4.6" + resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.6.tgz#435dc6d907bc8c6f795212e944000de063b2cfe1" + integrity sha512-IB/M5I8G0EeXZTHsAxpx51tMQ5R719F3aq+fjEB6VtNcCHDc0ajFDIGDZw+FW9GxtEkgTduiPpjveJdA/CX7sw== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/signature-v4@^2.0.0": version "2.0.17" resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.0.17.tgz#3ce17d8143f18670ca9bd5f99738dfadb3a7f3fc" @@ -9214,6 +9218,13 @@ dependencies: tslib "^2.6.2" +"@smithy/util-config-provider@^4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@smithy/util-config-provider/-/util-config-provider-4.2.2.tgz#52ebf9d8942838d18bc5fb1520de1e8699d7aad6" + integrity sha512-dWU03V3XUprJwaUIFVv4iOnS1FC9HnMHDfUrlNDSh4315v0cWyaIErP8KiqGVbf5z+JupoVpNM7ZB3jFiTejvQ== + dependencies: + tslib "^2.6.2" + "@smithy/util-defaults-mode-browser@^2.0.16", "@smithy/util-defaults-mode-browser@^2.2.1": version "2.2.1" resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.2.1.tgz#9db31416daf575d2963c502e0528cfe8055f0c4e" @@ -9312,6 +9323,15 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" +"@smithy/util-endpoints@^3.3.2": + version "3.3.2" + resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-3.3.2.tgz#a81ee98a2596248f6cdedc868d13cb6b9ea497b2" + integrity sha512-+4HFLpE5u29AbFlTdlKIT7jfOzZ8PDYZKTb3e+AgLz986OYwqTourQ5H+jg79/66DB69Un1+qKecLnkZdAsYcA== + dependencies: + "@smithy/node-config-provider" "^4.3.11" + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-hex-encoding@^1.0.1": version "1.1.0" resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-1.1.0.tgz#b5ba919aa076a3fd5e93e368e34ae2b732fa2090" @@ -9364,6 +9384,14 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" +"@smithy/util-middleware@^4.2.11": + version "4.2.11" + resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-4.2.11.tgz#d2a89893fc2dfd500de412c5f7c7961716855f4d" + integrity sha512-r3dtF9F+TpSZUxpOVVtPfk09Rlo4lT6ORBqEvX3IBT6SkQAdDSVKR5GcfmZbtl7WKhKnmb3wbDTQ6ibR2XHClw== + dependencies: + "@smithy/types" "^4.13.0" + tslib "^2.6.2" + "@smithy/util-retry@^2.0.5", "@smithy/util-retry@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.2.0.tgz#e8e019537ab47ba6b2e87e723ec51ee223422d85" From 4fa375eba46cab8597afbb4d374b20fa789bc203 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Mon, 9 Mar 2026 13:17:51 +0100 Subject: [PATCH 51/56] fix(amplify-codegen): resolve http-proxy-agent@7 to eliminate @tootallnate/once (CVE-2026-3449) (#1004) Instead of pinning @tootallnate/once to a vulnerable v2.0.0, resolve http-proxy-agent to v7 which dropped the @tootallnate/once dependency entirely. This forces all consumers (codecov/teeny-request, jest/jsdom, lerna/make-fetch-happen) to use http-proxy-agent@7.0.0 which only depends on agent-base@7 and debug@4. This completely removes @tootallnate/once from the dependency tree, fully resolving CVE-2026-3449 without the ESM/CJS compatibility issues of @tootallnate/once@3.0.1. --- dependency_licenses.txt | 34 ++++--------------------------- package.json | 3 ++- yarn.lock | 44 +---------------------------------------- 3 files changed, 7 insertions(+), 74 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index f37019329..8a97cb2d4 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -5461,32 +5461,6 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ----- -The following software may be included in this product: @tootallnate/once. A copy of the source code may be downloaded from git://github.com/TooTallNate/once.git. This software contains the following license and notice below: - -MIT License - -Copyright (c) 2020 Nathan Rajlich - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - ------ - The following software may be included in this product: @tootallnate/quickjs-emscripten. A copy of the source code may be downloaded from https://github.com/justjake/quickjs-emscripten. This software contains the following license and notice below: MIT License @@ -17860,11 +17834,11 @@ OTHER DEALINGS IN THE SOFTWARE. ----- -The following software may be included in this product: ms. A copy of the source code may be downloaded from https://github.com/vercel/ms.git. This software contains the following license and notice below: +The following software may be included in this product: ms. A copy of the source code may be downloaded from https://github.com/zeit/ms.git. This software contains the following license and notice below: The MIT License (MIT) -Copyright (c) 2020 Vercel, Inc. +Copyright (c) 2016 Zeit, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -17886,11 +17860,11 @@ SOFTWARE. ----- -The following software may be included in this product: ms. A copy of the source code may be downloaded from https://github.com/zeit/ms.git. This software contains the following license and notice below: +The following software may be included in this product: ms. A copy of the source code may be downloaded from https://github.com/vercel/ms.git. This software contains the following license and notice below: The MIT License (MIT) -Copyright (c) 2016 Zeit, Inc. +Copyright (c) 2020 Vercel, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/package.json b/package.json index 4d2550cfd..a4c8e924f 100644 --- a/package.json +++ b/package.json @@ -152,7 +152,8 @@ "tar": "^7.5.8", "xml2js": "0.5.0", "tmp": "^0.2.4", - "minimatch": "^3.1.3" + "minimatch": "^3.1.3", + "http-proxy-agent": "^7.0.0" }, "config": { "commitizen": { diff --git a/yarn.lock b/yarn.lock index 4ab2b5f2f..64e0f8cef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9548,16 +9548,6 @@ dependencies: tslib "^2.6.2" -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - -"@tootallnate/once@2": - version "2.0.0" - resolved "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" - integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== - "@tootallnate/quickjs-emscripten@^0.23.0": version "0.23.0" resolved "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz#db4ecfd499a9765ab24002c3b696d02e6d32a12c" @@ -10867,13 +10857,6 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -brace-expansion@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" - integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== - dependencies: - balanced-match "^1.0.0" - braces@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -13530,25 +13513,7 @@ http-cache-semantics@^4.1.0: resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== -http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - -http-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" - integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== - dependencies: - "@tootallnate/once" "2" - agent-base "6" - debug "4" - -http-proxy-agent@^7.0.0: +http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1, http-proxy-agent@^5.0.0, http-proxy-agent@^7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz#e9096c5afd071a3fce56e6252bb321583c124673" integrity sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ== @@ -15435,13 +15400,6 @@ minimatch@3.0.5, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch dependencies: brace-expansion "^1.1.7" -minimatch@^5.1.7: - version "5.1.9" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.9.tgz#1293ef15db0098b394540e8f9f744f9fda8dee4b" - integrity sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw== - dependencies: - brace-expansion "^2.0.1" - minimist-options@4.1.0: version "4.1.0" resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" From 97e84de93ba565dd74c0e732f39ba1d7a0438891 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Mon, 13 Apr 2026 23:29:18 +0200 Subject: [PATCH 52/56] fix: use AMPLIFY_NODE_VERSION consistently across all CI functions & make cleanup resilient (#1020) --- .../src/cleanup-e2e-resources.ts | 364 +++++++++++++----- shared-scripts.sh | 14 + 2 files changed, 284 insertions(+), 94 deletions(-) diff --git a/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts b/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts index 5e8275c57..c2087e05c 100644 --- a/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts +++ b/packages/amplify-codegen-e2e-tests/src/cleanup-e2e-resources.ts @@ -104,17 +104,77 @@ type AWSAccountInfo = { sessionToken: string; }; +type CleanupAccountSummary = { + accountId: string; + accountIndex: number; + deletedApps: number; + deletedStacks: number; + deletedBuckets: number; + deletedRoles: number; + skippedStacks: number; + skippedBuckets: number; + skippedReason?: string; +}; + +const createAccountSummary = (accountId: string, accountIndex: number): CleanupAccountSummary => ({ + accountId, + accountIndex, + deletedApps: 0, + deletedStacks: 0, + deletedBuckets: 0, + deletedRoles: 0, + skippedStacks: 0, + skippedBuckets: 0, +}); + +const cleanupSummaries: CleanupAccountSummary[] = []; + const BUCKET_TEST_REGEX = /test/; const IAM_TEST_REGEX = /-RotateE2eAwsToken-e2eTestContextRole|-integtest|^amplify-/; const STALE_DURATION_MS = 2 * 60 * 60 * 1000; // 2 hours in milliseconds const isCI = (): boolean => process.env.CI && process.env.CODEBUILD ? true : false; -/* - * Exit on expired token as all future requests will fail. - */ + +class ExpiredTokenError extends Error { + constructor(message = 'Token expired for this account') { + super(message); + this.name = 'ExpiredTokenError'; + } +} + +const isExpiredTokenError = (e: any): boolean => { + return e?.name === 'ExpiredTokenException' || e?.name === 'InvalidToken' || e?.code === 'ExpiredTokenException' || e?.code === 'InvalidToken'; +}; + +const isStackDoesNotExistError = (e: any): boolean => { + return e?.name === 'ValidationError' && e?.message?.includes('does not exist'); +}; + +const isNonJsonResponseError = (e: any): boolean => { + return e instanceof SyntaxError || (e?.name === 'SyntaxError' && e?.message?.includes('Unexpected token')); +}; + +const isNetworkError = (e: any): boolean => { + const code = e?.code || e?.name || ''; + return ['ETIMEDOUT', 'ECONNREFUSED', 'ECONNRESET', 'EPIPE', 'EAI_AGAIN', 'NetworkingError', 'TimeoutError'].includes(code) + || e?.message?.includes('connect ETIMEDOUT') + || e?.message?.includes('ECONNREFUSED') + || e?.message?.includes('ECONNRESET'); +}; + +const isNoSuchBucketError = (e: any): boolean => { + return e?.name === 'NoSuchBucket' || e?.Code === 'NoSuchBucket' || e?.message?.includes('The specified bucket does not exist'); +}; + +const isStackInProgressError = (e: any): boolean => { + const msg = e?.message || ''; + return msg.includes('UPDATE_IN_PROGRESS') || msg.includes('DELETE_IN_PROGRESS') || msg.includes('CREATE_IN_PROGRESS') + || msg.includes('cannot be deleted while in status'); +}; + const handleExpiredTokenException = (): void => { - console.log('Token expired. Exiting...'); - process.exit(); + console.log('Token expired for this account. Skipping remaining operations for this account.'); + throw new ExpiredTokenError(); }; /** @@ -264,26 +324,33 @@ const getJobId = (tags: Tag[] = []): string | undefined => { */ const getStackDetails = async (stackName: string, account: AWSAccountInfo, region: string): Promise => { const cfnClient = new CloudFormationClient(getAWSConfig(account, region)); - const stack = await cfnClient.send(new DescribeStacksCommand({ StackName: stackName })); - const tags = stack.Stacks.length && stack.Stacks[0].Tags; - const stackStatus = stack.Stacks[0].StackStatus; - let resourcesFailedToDelete: string[] = []; - if (stackStatus === 'DELETE_FAILED') { - // TODO: We need to investigate if we should go ahead and remove the resources to prevent account getting cluttered - const resources = await cfnClient.send(new ListStackResourcesCommand({ StackName: stackName })); - resourcesFailedToDelete = resources.StackResourceSummaries.filter(r => r.ResourceStatus === 'DELETE_FAILED').map( - r => r.LogicalResourceId, - ); + try { + const stack = await cfnClient.send(new DescribeStacksCommand({ StackName: stackName })); + const tags = stack.Stacks.length && stack.Stacks[0].Tags; + const stackStatus = stack.Stacks[0].StackStatus; + let resourcesFailedToDelete: string[] = []; + if (stackStatus === 'DELETE_FAILED') { + const resources = await cfnClient.send(new ListStackResourcesCommand({ StackName: stackName })); + resourcesFailedToDelete = resources.StackResourceSummaries.filter(r => r.ResourceStatus === 'DELETE_FAILED').map( + r => r.LogicalResourceId, + ); + } + const jobId = getJobId(tags); + return { + stackName, + stackStatus, + resourcesFailedToDelete, + region, + tags: tags.reduce((acc, tag) => ({ ...acc, [tag.Key]: tag.Value }), {}), + jobId + }; + } catch (e) { + if (isStackDoesNotExistError(e)) { + console.log(`Stack ${stackName} does not exist in ${region}. Skipping.`); + return; + } + throw e; } - const jobId = getJobId(tags); - return { - stackName, - stackStatus, - resourcesFailedToDelete, - region, - tags: tags.reduce((acc, tag) => ({ ...acc, [tag.Key]: tag.Value }), {}), - jobId - }; }; const getStacks = async (account: AWSAccountInfo, region: string, regionsEnabled: string[]): Promise => { @@ -336,12 +403,20 @@ const getJobCodeBuildDetails = async (jobIds: string[]): Promise => { return []; } const client = getCodeBuildClient(); - try { - const { builds } = await client.send(new BatchGetBuildsCommand({ ids: jobIds })); - return builds; - } catch(e) { - console.log(e); + const allBuilds: Build[] = []; + const BATCH_SIZE = 100; + for (let i = 0; i < jobIds.length; i += BATCH_SIZE) { + const batch = jobIds.slice(i, i + BATCH_SIZE); + try { + const { builds } = await client.send(new BatchGetBuildsCommand({ ids: batch })); + if (builds) { + allBuilds.push(...builds); + } + } catch (e) { + console.log(`Failed to get CodeBuild details for batch starting at index ${i}:`, e); + } } + return allBuilds; }; const getBucketRegion = async (account: AWSAccountInfo, bucketName: string): Promise => { @@ -376,17 +451,15 @@ const getS3Buckets = async (account: AWSAccountInfo): Promise => }); } } catch (e) { - // TODO: Why do we process the bucket even with these particular errors? if (e.name === 'NoSuchTagSet' || e.name === 'NoSuchBucket') { result.push({ name: bucket.Name, region: region ?? 'us-east-1', }); - } else if (e.name === 'InvalidToken') { - // We see some buckets in some accounts that were somehow created in an opt-in region different from the one to which the account is - // actually opted in. We don't quite know how this happened, but for now, we'll make a note of the inconsistency and continue - // processing the rest of the buckets. + } else if (e.name === 'InvalidToken' || isExpiredTokenError(e)) { console.error(`Skipping processing ${account.accountId}, bucket ${bucket.Name}`, e); + } else if (isNonJsonResponseError(e)) { + console.warn(`Received non-JSON response for bucket ${bucket.Name}. Skipping.`, e.message); } else { throw e; } @@ -500,36 +573,37 @@ const mergeResourcesByCCIJob = async ( return result; }; -const deleteAmplifyApps = async (account: AWSAccountInfo, accountIndex: number, apps: AmplifyAppInfo[]): Promise => { - await Promise.all(apps.map(app => deleteAmplifyApp(account, accountIndex, app))); +const deleteAmplifyApps = async (account: AWSAccountInfo, accountIndex: number, apps: AmplifyAppInfo[], summary: CleanupAccountSummary): Promise => { + await Promise.all(apps.map(app => deleteAmplifyApp(account, accountIndex, app, summary))); }; -const deleteAmplifyApp = async (account: AWSAccountInfo, accountIndex: number, app: AmplifyAppInfo): Promise => { +const deleteAmplifyApp = async (account: AWSAccountInfo, accountIndex: number, app: AmplifyAppInfo, summary: CleanupAccountSummary): Promise => { const { name, appId, region } = app; console.log(`${generateAccountInfo(account, accountIndex)} Deleting App ${name}(${appId})`); const amplifyClient = new AmplifyClient(getAWSConfig(account, region)); try { await amplifyClient.send(new DeleteAppCommand({ appId })); + summary.deletedApps++; } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting Amplify App ${appId} failed with the following error`, e); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } }; -const deleteIamRoles = async (account: AWSAccountInfo, accountIndex: number, roles: IamRoleInfo[]): Promise => { +const deleteIamRoles = async (account: AWSAccountInfo, accountIndex: number, roles: IamRoleInfo[], summary: CleanupAccountSummary): Promise => { // Sending consecutive delete role requests is throwing Rate limit exceeded exception. // We introduce a brief delay between batches const batchSize = 20; for (var i = 0; i < roles.length; i += batchSize) { const rolesToDelete = roles.slice(i, i + batchSize); - await Promise.all(rolesToDelete.map(role => deleteIamRole(account, accountIndex, role))); + await Promise.all(rolesToDelete.map(role => deleteIamRole(account, accountIndex, role, summary))); await sleep(5000); } }; -const deleteIamRole = async (account: AWSAccountInfo, accountIndex: number, role: IamRoleInfo): Promise => { +const deleteIamRole = async (account: AWSAccountInfo, accountIndex: number, role: IamRoleInfo, summary: CleanupAccountSummary): Promise => { const { name: roleName } = role; try { console.log(`${generateAccountInfo(account, accountIndex)} Deleting Iam Role ${roleName}`); @@ -537,9 +611,10 @@ const deleteIamRole = async (account: AWSAccountInfo, accountIndex: number, role await deleteAttachedRolePolicies(account, accountIndex, roleName); await deleteRolePolicies(account, accountIndex, roleName); await iamClient.send(new DeleteRoleCommand({ RoleName: roleName })); + summary.deletedRoles++; } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting iam role ${roleName} failed with error ${e.message}`); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } @@ -567,7 +642,7 @@ const detachIamAttachedRolePolicy = async ( await iamClient.send(new DetachRolePolicyCommand({ RoleName: roleName, PolicyArn: policy.PolicyArn })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Detach iam role policy ${policy.PolicyName} failed with error ${e.message}`); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } @@ -595,17 +670,17 @@ const deleteIamRolePolicy = async ( await iamClient.send(new DeleteRolePolicyCommand({ RoleName: roleName, PolicyName: policyName })); } catch (e) { console.log(`${generateAccountInfo(account, accountIndex)} Deleting iam role policy ${policyName} failed with error ${e.message}`); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } }; -const deleteBuckets = async (account: AWSAccountInfo, accountIndex: number, buckets: S3BucketInfo[]): Promise => { - await Promise.all(buckets.map(bucket => deleteBucket(account, accountIndex, bucket))); +const deleteBuckets = async (account: AWSAccountInfo, accountIndex: number, buckets: S3BucketInfo[], summary: CleanupAccountSummary): Promise => { + await Promise.all(buckets.map(bucket => deleteBucket(account, accountIndex, bucket, summary))); }; -const deleteBucket = async (account: AWSAccountInfo, accountIndex: number, bucket: S3BucketInfo): Promise => { +const deleteBucket = async (account: AWSAccountInfo, accountIndex: number, bucket: S3BucketInfo, summary: CleanupAccountSummary): Promise => { const { name } = bucket; try { console.log(`${generateAccountInfo(account, accountIndex)} Deleting S3 Bucket ${name}`); @@ -615,19 +690,25 @@ const deleteBucket = async (account: AWSAccountInfo, accountIndex: number, bucke ...(awsConfig as object), }); await deleteS3Bucket(name, regionalizedS3Client); + summary.deletedBuckets++; } catch (e) { + if (isNoSuchBucketError(e)) { + console.log(`${generateAccountInfo(account, accountIndex)} Bucket ${name} does not exist. Already deleted. Skipping.`); + summary.skippedBuckets++; + return; + } console.log(`${generateAccountInfo(account, accountIndex)} Deleting bucket ${name} failed with error ${e.message}`); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } }; -const deleteCfnStacks = async (account: AWSAccountInfo, accountIndex: number, stacks: StackInfo[]): Promise => { - await Promise.all(stacks.map(stack => deleteCfnStack(account, accountIndex, stack))); +const deleteCfnStacks = async (account: AWSAccountInfo, accountIndex: number, stacks: StackInfo[], summary: CleanupAccountSummary): Promise => { + await Promise.all(stacks.map(stack => deleteCfnStack(account, accountIndex, stack, summary))); }; -const deleteCfnStack = async (account: AWSAccountInfo, accountIndex: number, stack: StackInfo): Promise => { +const deleteCfnStack = async (account: AWSAccountInfo, accountIndex: number, stack: StackInfo, summary: CleanupAccountSummary): Promise => { const { stackName, region, resourcesFailedToDelete } = stack; const resourceToRetain = resourcesFailedToDelete.length ? resourcesFailedToDelete : undefined; console.log(`${generateAccountInfo(account, accountIndex)} Deleting CloudFormation stack ${stackName}`); @@ -635,9 +716,19 @@ const deleteCfnStack = async (account: AWSAccountInfo, accountIndex: number, sta const cfnClient = new CloudFormationClient(getAWSConfig(account, region)); await cfnClient.send(new DeleteStackCommand({ StackName: stackName, RetainResources: resourceToRetain })); await waitUntilStackDeleteComplete({ client: cfnClient, maxWaitTime: 3600 }, { StackName: stackName }); + summary.deletedStacks++; } catch (e) { + if (isStackDoesNotExistError(e)) { + console.log(`${generateAccountInfo(account, accountIndex)} Stack ${stackName} does not exist. Already deleted. Skipping.`); + return; + } + if (isStackInProgressError(e)) { + console.log(`${generateAccountInfo(account, accountIndex)} Stack ${stackName} is currently in progress. Skipping.`); + summary.skippedStacks++; + return; + } console.log(`Deleting CloudFormation stack ${stackName} failed with error ${e.message}`); - if (e.code === 'ExpiredTokenException') { + if (isExpiredTokenError(e)) { handleExpiredTokenException(); } } @@ -657,23 +748,24 @@ const deleteResources = async ( account: AWSAccountInfo, accountIndex: number, staleResources: Record, + summary: CleanupAccountSummary, ): Promise => { for (const jobId of Object.keys(staleResources)) { const resources = staleResources[jobId]; if (resources.amplifyApps) { - await deleteAmplifyApps(account, accountIndex, Object.values(resources.amplifyApps)); + await deleteAmplifyApps(account, accountIndex, Object.values(resources.amplifyApps), summary); } if (resources.stacks) { - await deleteCfnStacks(account, accountIndex, Object.values(resources.stacks)); + await deleteCfnStacks(account, accountIndex, Object.values(resources.stacks), summary); } if (resources.buckets) { - await deleteBuckets(account, accountIndex, Object.values(resources.buckets)); + await deleteBuckets(account, accountIndex, Object.values(resources.buckets), summary); } if (resources.roles) { - await deleteIamRoles(account, accountIndex, Object.values(resources.roles)); + await deleteIamRoles(account, accountIndex, Object.values(resources.roles), summary); } } }; @@ -732,28 +824,34 @@ const getAccountsToCleanup = async (): Promise => { }); try { const orgAccounts = await orgApi.send(new ListAccountsCommand({})); - const accountCredentialPromises = orgAccounts.Accounts.map(async account => { - if (account.Id === parentAccountIdentity.Account) { + const accountCredentialPromises = orgAccounts.Accounts.map(async (account): Promise => { + try { + if (account.Id === parentAccountIdentity.Account) { + return { + accountId: account.Id, + ...e2eParentAccountCred + }; + } + const randomNumber = Math.floor(Math.random() * 100000); + const assumeRoleRes = await stsClientForE2E.send(new AssumeRoleCommand({ + RoleArn: `arn:aws:iam::${account.Id}:role/OrganizationAccountAccessRole`, + RoleSessionName: `testSession${randomNumber}`, + // One hour + DurationSeconds: 1 * 60 * 60, + })); return { accountId: account.Id, - ...e2eParentAccountCred + accessKeyId: assumeRoleRes.Credentials.AccessKeyId, + secretAccessKey: assumeRoleRes.Credentials.SecretAccessKey, + sessionToken: assumeRoleRes.Credentials.SessionToken, }; + } catch (e) { + console.warn(`Failed to assume role for account ${account.Id}. Skipping.`, e.message); + return null; } - const randomNumber = Math.floor(Math.random() * 100000); - const assumeRoleRes = await stsClientForE2E.send(new AssumeRoleCommand({ - RoleArn: `arn:aws:iam::${account.Id}:role/OrganizationAccountAccessRole`, - RoleSessionName: `testSession${randomNumber}`, - // One hour - DurationSeconds: 1 * 60 * 60, - })); - return { - accountId: account.Id, - accessKeyId: assumeRoleRes.Credentials.AccessKeyId, - secretAccessKey: assumeRoleRes.Credentials.SecretAccessKey, - sessionToken: assumeRoleRes.Credentials.SessionToken, - }; }); - return await Promise.all(accountCredentialPromises); + const results = await Promise.all(accountCredentialPromises); + return results.filter((acct): acct is AWSAccountInfo => acct !== null); } catch (e) { console.error(e); console.log('Error assuming child account role. This could be because the script is already running from within a child account. Running on current AWS account only.'); @@ -767,26 +865,48 @@ const getAccountsToCleanup = async (): Promise => { }; const cleanupAccount = async (account: AWSAccountInfo, accountIndex: number, filterPredicate: JobFilterPredicate): Promise => { - const regionsEnabled = await getRegionsEnabled(account); - - const appPromises = AWS_REGIONS_TO_RUN_TESTS.map(region => getAmplifyApps(account, region, regionsEnabled)); - const stackPromises = AWS_REGIONS_TO_RUN_TESTS.map(region => getStacks(account, region, regionsEnabled)); - const bucketPromise = getS3Buckets(account); - const orphanBucketPromise = getOrphanS3TestBuckets(account); - const orphanIamRolesPromise = getOrphanTestIamRoles(account); - - const apps = (await Promise.all(appPromises)).flat(); - const stacks = (await Promise.all(stackPromises)).flat(); - const buckets = await bucketPromise; - const orphanBuckets = await orphanBucketPromise; - const orphanIamRoles = await orphanIamRolesPromise; - - const allResources = await mergeResourcesByCCIJob(apps, stacks, buckets, orphanBuckets, orphanIamRoles); - const staleResources = _.pickBy(allResources, filterPredicate); - - generateReport(staleResources, accountIndex); - await deleteResources(account, accountIndex, staleResources); - console.log(`${generateAccountInfo(account, accountIndex)} Cleanup done!`); + const summary = createAccountSummary(account.accountId, accountIndex); + cleanupSummaries.push(summary); + try { + const regionsEnabled = await getRegionsEnabled(account); + + const appPromises = AWS_REGIONS_TO_RUN_TESTS.map(region => getAmplifyApps(account, region, regionsEnabled)); + const stackPromises = AWS_REGIONS_TO_RUN_TESTS.map(region => getStacks(account, region, regionsEnabled)); + const bucketPromise = getS3Buckets(account); + const orphanBucketPromise = getOrphanS3TestBuckets(account); + const orphanIamRolesPromise = getOrphanTestIamRoles(account); + + const apps = (await Promise.all(appPromises)).flat(); + const stacks = (await Promise.all(stackPromises)).flat(); + const buckets = await bucketPromise; + const orphanBuckets = await orphanBucketPromise; + const orphanIamRoles = await orphanIamRolesPromise; + + const allResources = await mergeResourcesByCCIJob(apps, stacks, buckets, orphanBuckets, orphanIamRoles); + const staleResources = _.pickBy(allResources, filterPredicate); + + generateReport(staleResources, accountIndex); + await deleteResources(account, accountIndex, staleResources, summary); + console.log(`${generateAccountInfo(account, accountIndex)} Cleanup done!`); + } catch (e) { + if (e instanceof ExpiredTokenError || isExpiredTokenError(e)) { + console.warn(`${generateAccountInfo(account, accountIndex)} Auth token expired or invalid. Skipping this account.`); + summary.skippedReason = 'auth token expired'; + return; + } + if (isNonJsonResponseError(e)) { + console.warn(`${generateAccountInfo(account, accountIndex)} Received non-JSON response from AWS API. Skipping this account.`, e.message); + summary.skippedReason = 'non-JSON response'; + return; + } + if (isNetworkError(e)) { + console.warn(`${generateAccountInfo(account, accountIndex)} Network error encountered. Skipping this account.`, e.message); + summary.skippedReason = 'network error'; + return; + } + console.error(`${generateAccountInfo(account, accountIndex)} Cleanup failed with unexpected error:`, e); + summary.skippedReason = 'unexpected error'; + } }; const generateAccountInfo = (account: AWSAccountInfo, accountIndex: number): string => { @@ -828,4 +948,60 @@ const cleanup = async (): Promise => { console.log('Done cleaning all accounts!'); }; -cleanup(); +const printCleanupSummary = (): void => { + console.log('\n=== Cleanup Summary ==='); + const totals = { apps: 0, stacks: 0, buckets: 0, roles: 0, skippedStacks: 0, skippedBuckets: 0, skippedAccounts: 0 }; + + for (const s of cleanupSummaries) { + const prefix = `[ACCOUNT ${s.accountIndex}][${s.accountId}]`; + if (s.skippedReason) { + console.log(`${prefix} Skipped (${s.skippedReason})`); + totals.skippedAccounts++; + continue; + } + const deleted = s.deletedApps + s.deletedStacks + s.deletedBuckets + s.deletedRoles; + const skipped = s.skippedStacks + s.skippedBuckets; + if (deleted === 0 && skipped === 0) { + console.log(`${prefix} No resources to clean up`); + continue; + } + const parts: string[] = []; + if (s.deletedApps) parts.push(`${s.deletedApps} app${s.deletedApps !== 1 ? 's' : ''}`); + if (s.deletedStacks) parts.push(`${s.deletedStacks} stack${s.deletedStacks !== 1 ? 's' : ''}`); + if (s.deletedBuckets) parts.push(`${s.deletedBuckets} bucket${s.deletedBuckets !== 1 ? 's' : ''}`); + if (s.deletedRoles) parts.push(`${s.deletedRoles} role${s.deletedRoles !== 1 ? 's' : ''}`); + const skippedParts: string[] = []; + if (s.skippedStacks) skippedParts.push(`${s.skippedStacks} stack${s.skippedStacks !== 1 ? 's' : ''} (in progress)`); + if (s.skippedBuckets) skippedParts.push(`${s.skippedBuckets} bucket${s.skippedBuckets !== 1 ? 's' : ''} (not found)`); + let line = `${prefix} Deleted: ${parts.length ? parts.join(', ') : 'none'}`; + if (skippedParts.length) line += ` | Skipped: ${skippedParts.join(', ')}`; + console.log(line); + + totals.apps += s.deletedApps; + totals.stacks += s.deletedStacks; + totals.buckets += s.deletedBuckets; + totals.roles += s.deletedRoles; + totals.skippedStacks += s.skippedStacks; + totals.skippedBuckets += s.skippedBuckets; + } + + const totalParts: string[] = [ + `${totals.apps} app${totals.apps !== 1 ? 's' : ''} deleted`, + `${totals.stacks} stack${totals.stacks !== 1 ? 's' : ''} deleted`, + `${totals.buckets} bucket${totals.buckets !== 1 ? 's' : ''} deleted`, + `${totals.roles} role${totals.roles !== 1 ? 's' : ''} deleted`, + ]; + const totalSkipped = totals.skippedStacks + totals.skippedBuckets + totals.skippedAccounts; + if (totalSkipped) totalParts.push(`${totalSkipped} skipped`); + console.log(`Total: ${totalParts.join(', ')}`); + console.log(''); +}; + +cleanup() + .catch((e) => { + console.log(`Cleanup encountered an error but completing gracefully: ${e.message}`); + }) + .finally(() => { + printCleanupSummary(); + process.exit(0); + }); diff --git a/shared-scripts.sh b/shared-scripts.sh index c975a8811..89a1baac8 100644 --- a/shared-scripts.sh +++ b/shared-scripts.sh @@ -155,6 +155,7 @@ function _buildWindows { # used when build is not necessary for codebuild project function _installLinux { _setShell + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION echo "Linux Install" yarn run production-install storeCacheForLinuxBuildJob @@ -163,36 +164,42 @@ function _installLinux { function _testLinux { echo "Run Unit Test Linux" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION yarn test-ci } function _testWindows { echo "Run Unit Test Windows" loadCacheFromWindowsBuildJob + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION yarn test-ci } function _verifyAPIExtract { echo "Verify API Extract" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION yarn verify-api-extract } function _verifyDependencyLicensesExtract { echo "Verify Dependency Licenses Extract" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION yarn verify-dependency-licenses-extract } function _lint { echo "Lint" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION chmod +x .codebuild/scripts/lint_pr.sh && ./.codebuild/scripts/lint_pr.sh } function _publishToLocalRegistry { echo "Publish To Local Registry" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION if [ -z "$BRANCH_NAME" ]; then if [ -z "$CODEBUILD_WEBHOOK_TRIGGER" ]; then export BRANCH_NAME="$(git symbolic-ref HEAD --short 2>/dev/null)" @@ -274,6 +281,7 @@ function _setupE2ETestsLinux { echo "Setup E2E Tests Linux" loadCacheFromLinuxBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION _installCLIFromLocalRegistry _loadTestAccountCredentials _setShell @@ -283,6 +291,7 @@ function _setupE2ETestsWindows { echo "Setup E2E Tests Windows" loadCacheFromWindowsBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache windows + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION _installCLIFromLocalRegistry windows _loadTestAccountCredentials _setShell @@ -292,6 +301,7 @@ function _setupGen2E2ETestsLinux { echo "Setup Gen2 E2E Tests Linux" loadCacheFromLinuxBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION _loadTestAccountCredentials _setShell } @@ -300,6 +310,7 @@ function _setupGen2E2ETestsWindows { echo "Setup Gen2 E2E Tests Windows" loadCacheFromWindowsBuildJob loadCache verdaccio-cache $CODEBUILD_SRC_DIR/../verdaccio-cache windows + _setupNodeVersionWindows $AMPLIFY_NODE_VERSION _loadTestAccountCredentials _setShell } @@ -339,6 +350,7 @@ function _scanArtifacts { function _cleanupE2EResources { echo "Cleanup E2E resources" loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION cd packages/amplify-codegen-e2e-tests echo "Running clean up script" build_batch_arn=$(aws codebuild batch-get-builds --ids $CODEBUILD_BUILD_ID | jq -r -c '.builds[0].buildBatchArn') @@ -500,6 +512,7 @@ function runGen2E2eTest { function _deploy { _setShell + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION echo "Deploy" echo "Authenticate with NPM" PUBLISH_TOKEN=$(echo "$NPM_PUBLISH_TOKEN" | jq -r '.token') @@ -509,6 +522,7 @@ function _deploy { function _deprecate { loadCacheFromLinuxBuildJob + _setupNodeVersionLinux $AMPLIFY_NODE_VERSION echo "Deprecate" echo "creating private package manifest" From 26ad8af9bde8664a5c2cc06c17982457f5803860 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Tue, 14 Apr 2026 14:25:26 +0200 Subject: [PATCH 53/56] fix(amplify-codegen): remove interactive mwinit call from cloud-pr.sh (#1022) --- scripts/cloud-pr.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/scripts/cloud-pr.sh b/scripts/cloud-pr.sh index 35c4a1cde..7797ac7e4 100755 --- a/scripts/cloud-pr.sh +++ b/scripts/cloud-pr.sh @@ -6,12 +6,6 @@ source $scriptDir/.env set printf 'What is your PR number ? ' read PR_NUMBER -if [[ -n $USE_FIDO_KEY ]] ; then - mwinit -s -f -else - mwinit -fi - ada cred update --profile=AmplifyAPIE2EProd --account=$E2E_ACCOUNT_PROD --role=CodebuildDeveloper --provider=isengard --once RESULT=$(aws codebuild start-build-batch \ --profile=AmplifyAPIE2EProd \ From 9e11644cd36ea5fc79af3b7f8b4d9b132f3badf0 Mon Sep 17 00:00:00 2001 From: sarayev <126112721+sarayev@users.noreply.github.com> Date: Tue, 14 Apr 2026 23:04:43 +0200 Subject: [PATCH 54/56] fix: resolve critical dependabot security vulnerabilities (#1019) * fix: resolve critical dependabot security vulnerabilities - Bump axios from 1.13.5 to 1.15.0 via yarn resolution (fixes CVE for SSRF via NO_PROXY bypass and cloud metadata exfiltration via header injection chain) - Bump handlebars from 4.7.7 to 4.7.9 in graphql-docs-generator direct dependency (fixes JavaScript Injection via AST Type Confusion) - Add handlebars >=4.7.9 yarn resolution to force patched version in transitive dependency via lerna > conventional-changelog-writer Resolves Dependabot alerts #156, #164, #178, #179 * chore: remove unintended packageManager field --- dependency_licenses.txt | 2 +- package.json | 3 +- packages/graphql-docs-generator/package.json | 2 +- yarn.lock | 37 ++++++++------------ 4 files changed, 19 insertions(+), 25 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index 8a97cb2d4..b72e1c978 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -14743,7 +14743,7 @@ SOFTWARE. ----- -The following software may be included in this product: handlebars. A copy of the source code may be downloaded from https://github.com/wycats/handlebars.js.git. This software contains the following license and notice below: +The following software may be included in this product: handlebars. A copy of the source code may be downloaded from https://github.com/handlebars-lang/handlebars.js.git. This software contains the following license and notice below: Copyright (C) 2011-2019 by Yehuda Katz diff --git a/package.json b/package.json index a4c8e924f..599a6a941 100644 --- a/package.json +++ b/package.json @@ -137,11 +137,12 @@ "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", "aws-cdk-lib": "^2.189.1", - "axios": "^1.7.4", + "axios": "^1.15.0", "cross-fetch": "^2.2.6", "form-data": "^4.0.4", "glob-parent": "^6.0.2", "graphql": "15.8.0", + "handlebars": ">=4.7.9", "**/codecov/**/js-yaml": "^3.14.2", "**/nx/**/js-yaml": "^4.1.1", "immutable": "^4.3.8", diff --git a/packages/graphql-docs-generator/package.json b/packages/graphql-docs-generator/package.json index e2d5ea7b6..4593af2af 100644 --- a/packages/graphql-docs-generator/package.json +++ b/packages/graphql-docs-generator/package.json @@ -34,7 +34,7 @@ }, "dependencies": { "graphql": "^15.5.0", - "handlebars": "4.7.7", + "handlebars": "4.7.9", "yargs": "^15.1.0" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 64e0f8cef..00a51979a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10644,14 +10644,14 @@ axe-core@=4.7.0: resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf" integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== -axios@1.6.0, axios@^1.0.0, axios@^1.7.4: - version "1.13.5" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.5.tgz#5e464688fa127e11a660a2c49441c009f6567a43" - integrity sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q== +axios@1.6.0, axios@^1.0.0, axios@^1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.15.0.tgz#0fcee91ef03d386514474904b27863b2c683bf4f" + integrity sha512-wWyJDlAatxk30ZJer+GeCWS209sA42X+N5jU2jy6oHTp7ufw8uzUTVFBX9+wTfAlhiJXGS0Bq7X6efruWjuK9Q== dependencies: follow-redirects "^1.15.11" form-data "^4.0.5" - proxy-from-env "^1.1.0" + proxy-from-env "^2.1.0" axobject-query@^3.2.1: version "3.2.1" @@ -13351,22 +13351,10 @@ graphql@15.8.0, graphql@^15.5.0, graphql@^15.8.0: resolved "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz#33410e96b012fa3bdb1091cc99a94769db212b38" integrity sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw== -handlebars@4.7.7: - version "4.7.7" - resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" - integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== - dependencies: - minimist "^1.2.5" - neo-async "^2.6.0" - source-map "^0.6.1" - wordwrap "^1.0.0" - optionalDependencies: - uglify-js "^3.1.4" - -handlebars@^4.7.7: - version "4.7.8" - resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" - integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== +handlebars@4.7.9, handlebars@>=4.7.9, handlebars@^4.7.7: + version "4.7.9" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.9.tgz#6f139082ab58dc4e5a0e51efe7db5ae890d56a0f" + integrity sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ== dependencies: minimist "^1.2.5" neo-async "^2.6.2" @@ -15577,7 +15565,7 @@ negotiator@^0.6.3: resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -neo-async@^2.6.0, neo-async@^2.6.2: +neo-async@^2.6.2: version "2.6.2" resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== @@ -16590,6 +16578,11 @@ proxy-from-env@^1.1.0: resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== +proxy-from-env@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-2.1.0.tgz#a7487568adad577cfaaa7e88c49cab3ab3081aba" + integrity sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA== + psl@^1.1.33: version "1.9.0" resolved "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" From 6783a0870a056235fd920f430e9c12e79a7c1a26 Mon Sep 17 00:00:00 2001 From: Jon Wire Date: Wed, 20 May 2026 11:54:02 -0500 Subject: [PATCH 55/56] chore: batch dependabot updates 2026-05-15 (#1028) * build(deps): bump tar from 7.5.10 to 7.5.11 Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.10 to 7.5.11. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v7.5.10...v7.5.11) --- updated-dependencies: - dependency-name: tar dependency-version: 7.5.11 dependency-type: direct:production ... Signed-off-by: dependabot[bot] * build(deps): bump yauzl from 3.2.0 to 3.2.1 Bumps [yauzl](https://github.com/thejoshwolfe/yauzl) from 3.2.0 to 3.2.1. - [Commits](https://github.com/thejoshwolfe/yauzl/compare/3.2.0...3.2.1) --- updated-dependencies: - dependency-name: yauzl dependency-version: 3.2.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump flatted from 3.3.2 to 3.4.2 Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.2 to 3.4.2. - [Commits](https://github.com/WebReflection/flatted/compare/v3.3.2...v3.4.2) --- updated-dependencies: - dependency-name: flatted dependency-version: 3.4.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump lodash-es from 4.17.23 to 4.18.1 Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1) --- updated-dependencies: - dependency-name: lodash-es dependency-version: 4.18.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump basic-ftp from 5.2.0 to 5.2.2 Bumps [basic-ftp](https://github.com/patrickjuchli/basic-ftp) from 5.2.0 to 5.2.2. - [Release notes](https://github.com/patrickjuchli/basic-ftp/releases) - [Changelog](https://github.com/patrickjuchli/basic-ftp/blob/master/CHANGELOG.md) - [Commits](https://github.com/patrickjuchli/basic-ftp/compare/v5.2.0...v5.2.2) --- updated-dependencies: - dependency-name: basic-ftp dependency-version: 5.2.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump lodash from 4.17.23 to 4.18.1 Bumps [lodash](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.18.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] * build(deps): bump brace-expansion from 1.1.12 to 1.1.14 Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.12 to 1.1.14. - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](https://github.com/juliangruber/brace-expansion/compare/v1.1.12...v1.1.14) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 1.1.14 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump follow-redirects from 1.15.11 to 1.16.0 Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.11 to 1.16.0. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.11...v1.16.0) --- updated-dependencies: - dependency-name: follow-redirects dependency-version: 1.16.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] * build(deps): bump uuid from 7.0.1 to 14.0.0 Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.1 to 14.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.1...v14.0.0) --- updated-dependencies: - dependency-name: uuid dependency-version: 14.0.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] * build(deps): bump uuid in /packages/amplify-codegen-e2e-core Bumps [uuid](https://github.com/uuidjs/uuid) from 7.0.1 to 14.0.0. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v7.0.1...v14.0.0) --- updated-dependencies: - dependency-name: uuid dependency-version: 14.0.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] * build(deps): bump axios from 1.15.0 to 1.16.0 Bumps [axios](https://github.com/axios/axios) from 1.15.0 to 1.16.0. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.15.0...v1.16.0) --- updated-dependencies: - dependency-name: axios dependency-version: 1.16.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] * chore: update dependency licenses * fix: revert uuid to 9.0.1 (v14 is ESM-only, breaks Jest) --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: svidgen --- dependency_licenses.txt | 145 +++++------ package.json | 2 +- .../amplify-codegen-e2e-core/package.json | 2 +- yarn.lock | 235 ++++++++++-------- 4 files changed, 189 insertions(+), 195 deletions(-) diff --git a/dependency_licenses.txt b/dependency_licenses.txt index b72e1c978..f4ebba861 100644 --- a/dependency_licenses.txt +++ b/dependency_licenses.txt @@ -1,7 +1,7 @@ ----- -The following software may be included in this product: @ampproject/remapping, @aws-crypto/ie11-detection, @aws-crypto/sha1-browser, @aws-crypto/sha256-browser, @aws-crypto/sha256-universal, @aws-crypto/supports-web-crypto, @hutson/parse-repository-url, ejs, spdx-correct, teeny-request, validate-npm-package-license. A copy of the source code may be downloaded from git+https://github.com/ampproject/remapping.git (@ampproject/remapping), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/ie11-detection), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha1-browser), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha256-browser), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha256-universal), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/supports-web-crypto), https://gitlab.com/hyper-expanse/open-source/parse-repository-url.git (@hutson/parse-repository-url), git://github.com/mde/ejs.git (ejs), https://github.com/jslicense/spdx-correct.js.git (spdx-correct), https://github.com/googleapis/teeny-request.git (teeny-request), https://github.com/kemitchell/validate-npm-package-license.js.git (validate-npm-package-license). This software contains the following license and notice below: +The following software may be included in this product: @ampproject/remapping, @aws-cdk/cloud-assembly-api, @aws-crypto/ie11-detection, @aws-crypto/sha1-browser, @aws-crypto/sha256-browser, @aws-crypto/sha256-universal, @aws-crypto/supports-web-crypto, @hutson/parse-repository-url, ejs, spdx-correct, teeny-request, validate-npm-package-license. A copy of the source code may be downloaded from git+https://github.com/ampproject/remapping.git (@ampproject/remapping), https://github.com/aws/aws-cdk-cli (@aws-cdk/cloud-assembly-api), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/ie11-detection), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha1-browser), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha256-browser), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/sha256-universal), git@github.com:aws/aws-sdk-js-crypto-helpers.git (@aws-crypto/supports-web-crypto), https://gitlab.com/hyper-expanse/open-source/parse-repository-url.git (@hutson/parse-repository-url), git://github.com/mde/ejs.git (ejs), https://github.com/jslicense/spdx-correct.js.git (spdx-correct), https://github.com/googleapis/teeny-request.git (teeny-request), https://github.com/kemitchell/validate-npm-package-license.js.git (validate-npm-package-license). This software contains the following license and notice below: Apache License Version 2.0, January 2004 @@ -7734,19 +7734,62 @@ Copyright 2018-2026 Amazon.com, Inc. or its affiliates. All Rights Reserved. The AWS CDK includes the following third-party software/licensing: ** minimatch - https://www.npmjs.com/package/minimatch -Copyright (c) Isaac Z. Schlueter and Contributors -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. +Blue Oak Model License -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +Version 1.0.0 + +Purpose + +This license gives everyone as much permission to work with +this software as possible, while protecting contributors +from liability. + +Acceptance + +In order to receive this license, you must agree to its +rules. The rules of this license are both obligations +under that agreement and conditions to your license. +You must not do anything with this software that triggers +a rule that you cannot or will not follow. + +Copyright + +Each contributor licenses you to do everything with this +software that would otherwise infringe that contributor's +copyright in it. + +Notices + +You must ensure that everyone who gets a copy of +any part of this software from you, with or without +changes, also gets the text of this license or a link to +https://blueoakcouncil.org/license/1.0.0. + +Excuse + +If anyone notifies you in writing that you have not +complied with Notices, you can keep your +license by taking all practical steps to comply within 30 +days after the notice. If you do not do so, your license +ends immediately. + +Patent + +Each contributor licenses you to do everything with this +software that would otherwise infringe any patent claims +they can license or become able to license. + +Reliability + +No contributor can revoke this license. + +No Liability + +As far as the law allows, this software comes as is, +without any warranty or condition, and no contributor +will be liable to anyone for any damages related to this +software or this license, under any kind of legal claim. ---------------- @@ -8010,7 +8053,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ---------------- ** brace-expansion - https://www.npmjs.com/package/brace-expansion -Copyright (c) 2013 Julian Gruber +Copyright Julian Gruber +TypeScript port Copyright Isaac Z. Schlueter Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -8033,29 +8077,8 @@ SOFTWARE. ---------------- ** balanced-match - https://www.npmjs.com/package/balanced-match -Copyright (c) 2013 Julian Gruber - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - ----------------- - -** concat-map - https://www.npmjs.com/package/concat-map +Original code Copyright Julian Gruber +Port to TypeScript Copyright Isaac Z. Schlueter Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -14131,7 +14154,7 @@ THE SOFTWARE. ----- -The following software may be included in this product: fs-extra. A copy of the source code may be downloaded from https://github.com/jprichardson/node-fs-extra. This software contains the following license and notice below: +The following software may be included in this product: fs-extra. A copy of the source code may be downloaded from git+https://github.com/jprichardson/node-fs-extra.git. This software contains the following license and notice below: (The MIT License) @@ -17468,7 +17491,7 @@ THE SOFTWARE. ----- -The following software may be included in this product: minipass, tar. A copy of the source code may be downloaded from https://github.com/isaacs/minipass (minipass), https://github.com/isaacs/node-tar.git (tar). This software contains the following license and notice below: +The following software may be included in this product: minipass, sax, tar. A copy of the source code may be downloaded from https://github.com/isaacs/minipass (minipass), git+ssh://git@github.com/isaacs/sax-js.git (sax), https://github.com/isaacs/node-tar.git (tar). This software contains the following license and notice below: # Blue Oak Model License @@ -19936,52 +19959,6 @@ SOFTWARE. ----- -The following software may be included in this product: sax. A copy of the source code may be downloaded from git://github.com/isaacs/sax-js.git. This software contains the following license and notice below: - -The ISC License - -Copyright (c) 2010-2022 Isaac Z. Schlueter and Contributors - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -==== - -`String.fromCodePoint` by Mathias Bynens used according to terms of MIT -License, as follows: - -Copyright (c) 2010-2022 Mathias Bynens - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE - LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION - OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION - WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - ------ - The following software may be included in this product: setimmediate. A copy of the source code may be downloaded from https://github.com/YuzuJS/setImmediate.git. This software contains the following license and notice below: Copyright (c) 2012 Barnesandnoble.com, llc, Donavon West, and Domenic Denicola diff --git a/package.json b/package.json index 599a6a941..838ccdaa0 100644 --- a/package.json +++ b/package.json @@ -137,7 +137,7 @@ "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", "aws-cdk-lib": "^2.189.1", - "axios": "^1.15.0", + "axios": "^1.16.0", "cross-fetch": "^2.2.6", "form-data": "^4.0.4", "glob-parent": "^6.0.2", diff --git a/packages/amplify-codegen-e2e-core/package.json b/packages/amplify-codegen-e2e-core/package.json index daa62b6dc..e295518a6 100644 --- a/packages/amplify-codegen-e2e-core/package.json +++ b/packages/amplify-codegen-e2e-core/package.json @@ -49,7 +49,7 @@ "rimraf": "^3.0.0", "strip-ansi": "^6.0.0", "throat": "^5.0.0", - "uuid": "7.0.1" + "uuid": "9.0.1" }, "devDependencies": { "@types/ini": "^1.3.31" diff --git a/yarn.lock b/yarn.lock index 00a51979a..c66d2f0b8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -836,23 +836,31 @@ fast-xml-parser "^4.2.5" tslib "^1.8.0" -"@aws-cdk/asset-awscli-v1@2.2.261": - version "2.2.261" - resolved "https://registry.yarnpkg.com/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.261.tgz#3e578c7f6dbf00282cafb01e4315ed2025a89f1f" - integrity sha512-XkKvgG/OxrEYtVTt2Q9gaD58Qn90fnX/dNczL4k6myeii7UgAGPmqh+I+1uKohCWGKIKd+4Gz2xWBL/tPi4YIA== +"@aws-cdk/asset-awscli-v1@2.2.273": + version "2.2.273" + resolved "https://registry.yarnpkg.com/@aws-cdk/asset-awscli-v1/-/asset-awscli-v1-2.2.273.tgz#81efd05df3f44c5e604f1d43c4b48e12874b0bd3" + integrity sha512-X57HYUtHt9BQrlrzUNcMyRsDUCoakYNnY6qh5lNwRCHPtQoTfXmuISkfLk0AjLkcbS5lw1LLTQFiQhTDXfiTvg== -"@aws-cdk/asset-node-proxy-agent-v6@^2.1.0": - version "2.1.0" - resolved "https://registry.npmjs.org/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.0.tgz#6d3c7860354d4856a7e75375f2f0ecab313b4989" - integrity sha512-7bY3J8GCVxLupn/kNmpPc5VJz8grx+4RKfnnJiO1LG+uxkZfANZG3RMHhE+qQxxwkyQ9/MfPtTpf748UhR425A== +"@aws-cdk/asset-node-proxy-agent-v6@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@aws-cdk/asset-node-proxy-agent-v6/-/asset-node-proxy-agent-v6-2.1.1.tgz#184f980024d67ad60bdc52ab88c59c73fa070346" + integrity sha512-We4bmHaowOPHr+IQR4/FyTGjRfjgBj4ICMjtqmJeBDWad3Q/6St12NT07leNtyuukv2qMhtSZJQorD8KpKTwRA== -"@aws-cdk/cloud-assembly-schema@^48.20.0": - version "48.20.0" - resolved "https://registry.yarnpkg.com/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-48.20.0.tgz#a2b60373cfbe228f901f62f0d7e2c5e2fe40702d" - integrity sha512-+eeiav9LY4wbF/EFuCt/vfvi/Zoxo8bf94PW5clbMraChEliq83w4TbRVy0jB9jE0v1ooFTtIjSQkowSPkfISg== +"@aws-cdk/cloud-assembly-api@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@aws-cdk/cloud-assembly-api/-/cloud-assembly-api-2.2.1.tgz#43884b6637c002731115ff922bd256dd8b231ef5" + integrity sha512-24ARpDQzF39UTickUgDH6RIs5otPG4aaKJZ93XUSNwiPSR9T+h7gXSF982+NZVYK+7SetQaqrVbm4lcF6dmXWw== dependencies: jsonschema "~1.4.1" - semver "^7.7.2" + semver "^7.7.4" + +"@aws-cdk/cloud-assembly-schema@^53.0.0": + version "53.14.0" + resolved "https://registry.yarnpkg.com/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-53.14.0.tgz#aed5fed83657ed904937296616ae2a5f2c109f21" + integrity sha512-prx2sbFfKrVf3NNXMOmWq6lsIBeWQDIqMTILLAddGiidn9j7OnLUubknWpJlLozMveTvQELdI++nUwq6jwCm9g== + dependencies: + jsonschema "~1.4.1" + semver "^7.7.4" "@aws-crypto/crc32@2.0.0": version "2.0.0" @@ -8154,15 +8162,15 @@ tslib "^2.6.2" "@smithy/config-resolver@^2.0.16", "@smithy/config-resolver@^2.0.20", "@smithy/config-resolver@^2.0.21", "@smithy/config-resolver@^2.2.0", "@smithy/config-resolver@^4.4.0", "@smithy/config-resolver@^4.4.9": - version "4.4.10" - resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-4.4.10.tgz#22529a2e8c23d979f69c3abca8d984c69d06ce4c" - integrity sha512-IRTkd6ps0ru+lTWnfnsbXzW80A8Od8p3pYiZnW98K2Hb20rqfsX7VTlfUwhrcOeSSy68Gn9WBofwPuw3e5CCsg== + version "4.4.15" + resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-4.4.15.tgz#38c396181d7ac41f2906c8c72f557ce366254cef" + integrity sha512-BJdMBY5YO9iHh+lPLYdHv6LbX+J8IcPCYMl1IJdBt2KDWNHwONHrPVHk3ttYBqJd9wxv84wlbN0f7GlQzcQtNQ== dependencies: - "@smithy/node-config-provider" "^4.3.11" - "@smithy/types" "^4.13.0" + "@smithy/node-config-provider" "^4.3.13" + "@smithy/types" "^4.14.0" "@smithy/util-config-provider" "^4.2.2" - "@smithy/util-endpoints" "^3.3.2" - "@smithy/util-middleware" "^4.2.11" + "@smithy/util-endpoints" "^3.4.0" + "@smithy/util-middleware" "^4.2.13" tslib "^2.6.2" "@smithy/core@^1.4.2": @@ -8763,14 +8771,14 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" -"@smithy/node-config-provider@^4.3.11": - version "4.3.11" - resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-4.3.11.tgz#a6d246b67c10c6873169bae46e6d04261d548402" - integrity sha512-xD17eE7kaLgBBGf5CZQ58hh2YmwK1Z0O8YhffwB/De2jsL0U3JklmhVYJ9Uf37OtUDLF2gsW40Xwwag9U869Gg== +"@smithy/node-config-provider@^4.3.13": + version "4.3.13" + resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-4.3.13.tgz#a65c696a38a0c2e7012652b1c1138799882b12bc" + integrity sha512-iGxQ04DsKXLckbgnX4ipElrOTk+IHgTyu0q0WssZfYhDm9CQWHmu6cOeI5wmWRxpXbBDhIIfXMWz5tPEtcVqbw== dependencies: - "@smithy/property-provider" "^4.2.11" - "@smithy/shared-ini-file-loader" "^4.4.6" - "@smithy/types" "^4.13.0" + "@smithy/property-provider" "^4.2.13" + "@smithy/shared-ini-file-loader" "^4.4.8" + "@smithy/types" "^4.14.0" tslib "^2.6.2" "@smithy/node-http-handler@^2.1.8", "@smithy/node-http-handler@^2.5.0": @@ -8830,12 +8838,12 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" -"@smithy/property-provider@^4.2.11": - version "4.2.11" - resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-4.2.11.tgz#7a1b16ae2083272f80e380ee7948ddc103301db1" - integrity sha512-14T1V64o6/ndyrnl1ze1ZhyLzIeYNN47oF/QU6P5m82AEtyOkMJTb0gO1dPubYjyyKuPD6OSVMPDKe+zioOnCg== +"@smithy/property-provider@^4.2.13": + version "4.2.13" + resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-4.2.13.tgz#4859f887414f2c251517125258870a70509f8bbd" + integrity sha512-bGzUCthxRmezuxkbu9wD33wWg9KX3hJpCXpQ93vVkPrHn9ZW6KNNdY5xAUWNuRCwQ+VyboFuWirG1lZhhkcyRQ== dependencies: - "@smithy/types" "^4.13.0" + "@smithy/types" "^4.14.0" tslib "^2.6.2" "@smithy/protocol-http@^3.0.11": @@ -8958,12 +8966,12 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" -"@smithy/shared-ini-file-loader@^4.4.6": - version "4.4.6" - resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.6.tgz#435dc6d907bc8c6f795212e944000de063b2cfe1" - integrity sha512-IB/M5I8G0EeXZTHsAxpx51tMQ5R719F3aq+fjEB6VtNcCHDc0ajFDIGDZw+FW9GxtEkgTduiPpjveJdA/CX7sw== +"@smithy/shared-ini-file-loader@^4.4.8": + version "4.4.8" + resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.8.tgz#c45099e8aea8f48af97d05be91ab6ae93d105ae7" + integrity sha512-VZCZx2bZasxdqxVgEAhREvDSlkatTPnkdWy1+Kiy8w7kYPBosW0V5IeDwzDUMvWBt56zpK658rx1cOBFOYaPaw== dependencies: - "@smithy/types" "^4.13.0" + "@smithy/types" "^4.14.0" tslib "^2.6.2" "@smithy/signature-v4@^2.0.0": @@ -9070,6 +9078,13 @@ dependencies: tslib "^2.6.2" +"@smithy/types@^4.14.0": + version "4.14.0" + resolved "https://registry.yarnpkg.com/@smithy/types/-/types-4.14.0.tgz#72fb6fd315f2eff7d4878142db2d1db4ef94f9bc" + integrity sha512-OWgntFLW88kx2qvf/c/67Vno1yuXm/f9M7QFAtVkkO29IJXGBIg0ycEaBTH0kvCtwmvZxRujrgP5a86RvsXJAQ== + dependencies: + tslib "^2.6.2" + "@smithy/url-parser@^2.0.12", "@smithy/url-parser@^2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.2.0.tgz#6fcda6116391a4f61fef5580eb540e128359b3c0" @@ -9323,13 +9338,13 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" -"@smithy/util-endpoints@^3.3.2": - version "3.3.2" - resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-3.3.2.tgz#a81ee98a2596248f6cdedc868d13cb6b9ea497b2" - integrity sha512-+4HFLpE5u29AbFlTdlKIT7jfOzZ8PDYZKTb3e+AgLz986OYwqTourQ5H+jg79/66DB69Un1+qKecLnkZdAsYcA== +"@smithy/util-endpoints@^3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-3.4.0.tgz#e66c4b34ad4cc1ef52864e3ba667b5e7f9109456" + integrity sha512-QQHGPKkw6NPcU6TJ1rNEEa201srPtZiX4k61xL163vvs9sTqW/XKz+UEuJ00uvPqoN+5Rs4Ka1UJ7+Mp03IXJw== dependencies: - "@smithy/node-config-provider" "^4.3.11" - "@smithy/types" "^4.13.0" + "@smithy/node-config-provider" "^4.3.13" + "@smithy/types" "^4.14.0" tslib "^2.6.2" "@smithy/util-hex-encoding@^1.0.1": @@ -9384,12 +9399,12 @@ "@smithy/types" "^4.13.0" tslib "^2.6.2" -"@smithy/util-middleware@^4.2.11": - version "4.2.11" - resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-4.2.11.tgz#d2a89893fc2dfd500de412c5f7c7961716855f4d" - integrity sha512-r3dtF9F+TpSZUxpOVVtPfk09Rlo4lT6ORBqEvX3IBT6SkQAdDSVKR5GcfmZbtl7WKhKnmb3wbDTQ6ibR2XHClw== +"@smithy/util-middleware@^4.2.13": + version "4.2.13" + resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-4.2.13.tgz#fda5518f95cc3f4a3086d9ee46cc42797baaedf8" + integrity sha512-GTooyrlmRTqvUen4eK7/K1p6kryF7bnDfq6XsAbIsf2mo51B/utaH+XThY6dKgNCWzMAaH/+OLmqaBuLhLWRow== dependencies: - "@smithy/types" "^4.13.0" + "@smithy/types" "^4.14.0" tslib "^2.6.2" "@smithy/util-retry@^2.0.5", "@smithy/util-retry@^2.2.0": @@ -10620,37 +10635,39 @@ aws-appsync@^4.1.10: uuid "3.x" aws-cdk-lib@^2.189.1, aws-cdk-lib@~2.187.0: - version "2.235.1" - resolved "https://registry.yarnpkg.com/aws-cdk-lib/-/aws-cdk-lib-2.235.1.tgz#99ecb8cebb8f5a508db52a19c8d02a915d8a23ba" - integrity sha512-qKAsbunxtveIOIaeJSBgH2PZgdIiPkKtfsa+BxeNDOv2idw6Oa0dJW3Q0sdu8XBopY1KZI2Owrg8r56BOyyohA== - dependencies: - "@aws-cdk/asset-awscli-v1" "2.2.261" - "@aws-cdk/asset-node-proxy-agent-v6" "^2.1.0" - "@aws-cdk/cloud-assembly-schema" "^48.20.0" + version "2.249.0" + resolved "https://registry.yarnpkg.com/aws-cdk-lib/-/aws-cdk-lib-2.249.0.tgz#f9d67f6f383d42becbe8db4861d7dbfc865d9ed0" + integrity sha512-SRb6TpPtsaywyoihMAYKBKB6O4RwSKK4VMLZwZF4xAJ+bBv5TaQKyXw4gQvoktLvCs1Bnluci0F66VBMD4bIRw== + dependencies: + "@aws-cdk/asset-awscli-v1" "2.2.273" + "@aws-cdk/asset-node-proxy-agent-v6" "^2.1.1" + "@aws-cdk/cloud-assembly-api" "^2.2.0" + "@aws-cdk/cloud-assembly-schema" "^53.0.0" "@balena/dockerignore" "^1.0.2" case "1.6.3" fs-extra "^11.3.3" ignore "^5.3.2" jsonschema "^1.5.0" mime-types "^2.1.35" - minimatch "^3.1.2" + minimatch "^10.2.3" punycode "^2.3.1" - semver "^7.7.3" + semver "^7.7.4" table "^6.9.0" - yaml "1.10.2" + yaml "1.10.3" axe-core@=4.7.0: version "4.7.0" resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz#34ba5a48a8b564f67e103f0aa5768d76e15bbbbf" integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== -axios@1.6.0, axios@^1.0.0, axios@^1.15.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.15.0.tgz#0fcee91ef03d386514474904b27863b2c683bf4f" - integrity sha512-wWyJDlAatxk30ZJer+GeCWS209sA42X+N5jU2jy6oHTp7ufw8uzUTVFBX9+wTfAlhiJXGS0Bq7X6efruWjuK9Q== +axios@1.6.0, axios@^1.0.0, axios@^1.16.0: + version "1.16.1" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.16.1.tgz#517e29291d19d6e8cf919ff264f4fe157261ba12" + integrity sha512-caYkukvroVPO8KrzuJEb50Hm07KwfBZPEC3VeFHTsqWHvKTsy54hjJz9BS/cdaypROE2rH6xvm9mHX4fgWkr3A== dependencies: - follow-redirects "^1.15.11" + follow-redirects "^1.16.0" form-data "^4.0.5" + https-proxy-agent "^5.0.1" proxy-from-env "^2.1.0" axobject-query@^3.2.1: @@ -12691,9 +12708,9 @@ fast-url-parser@^1.1.3: punycode "^1.3.2" fast-xml-parser@4.2.5, fast-xml-parser@^4.2.5, fast-xml-parser@^4.4.1: - version "4.5.4" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.4.tgz#64e52ddf1308001893bd225d5b1768840511c797" - integrity sha512-jE8ugADnYOBsu1uaoayVl1tVKAMNOXyjwvv2U6udEA2ORBhDooJDWoGxTkhd4Qn4yh59JVVt/pKXtjPwx9OguQ== + version "4.5.6" + resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.5.6.tgz#4ff57d4aca13a2d11aa42ad460495cf00f32b655" + integrity sha512-Yd4vkROfJf8AuJrDIVMVmYfULKmIJszVsMv7Vo71aocsKgFxpdlpSHXSaInvyYfgw2PRuObQSW2GFpVMUjxu9A== dependencies: strnum "^1.0.5" @@ -12849,19 +12866,19 @@ flat@^5.0.2: integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flatted@^3.2.9: - version "3.3.2" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz#adba1448a9841bec72b42c532ea23dbbedef1a27" - integrity sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA== + version "3.4.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.4.2.tgz#f5c23c107f0f37de8dbdf24f13722b3b98d52726" + integrity sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA== fn.name@1.x.x: version "1.1.0" resolved "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz#26cad8017967aea8731bc42961d04a3d5988accc" integrity sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw== -follow-redirects@^1.15.11: - version "1.15.11" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" - integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== +follow-redirects@^1.16.0: + version "1.16.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.16.0.tgz#28474a159d3b9d11ef62050a14ed60e4df6d61bc" + integrity sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw== for-each@^0.3.3: version "0.3.3" @@ -12871,9 +12888,9 @@ for-each@^0.3.3: is-callable "^1.1.3" form-data@^3.0.0, form-data@^4.0.4, form-data@^4.0.5: - version "4.0.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" - integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== + version "4.0.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" + integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -12906,9 +12923,9 @@ fs-extra@^11.0.0, fs-extra@^11.1.0: universalify "^2.0.0" fs-extra@^11.3.3: - version "11.3.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.3.tgz#a27da23b72524e81ac6c3815cc0179b8c74c59ee" - integrity sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg== + version "11.3.4" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.4.tgz#ab6934eca8bcf6f7f6b82742e33591f86301d6fc" + integrity sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" @@ -13509,9 +13526,9 @@ http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1, http-proxy-agent@^5.0.0, http- agent-base "^7.1.0" debug "^4.3.4" -https-proxy-agent@^5.0.0: +https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" @@ -15063,9 +15080,9 @@ locate-path@^6.0.0: p-locate "^5.0.0" lodash-es@^4.17.4, lodash-es@^4.2.1: - version "4.17.23" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.23.tgz#58c4360fd1b5d33afc6c0bbd3d1149349b1138e0" - integrity sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg== + version "4.18.1" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.18.1.tgz#b962eeb80d9d983a900bf342961fb7418ca10b1d" + integrity sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A== lodash.camelcase@^4.3.0: version "4.3.0" @@ -15148,9 +15165,9 @@ lodash.upperfirst@^4.3.1: integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.7.0, lodash@~4.17.0, lodash@~4.17.15: - version "4.17.23" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" - integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== + version "4.18.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.18.1.tgz#ff2b66c1f6326d59513de2407bf881439812771c" + integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q== log-symbols@^3.0.0: version "3.0.0" @@ -15381,7 +15398,7 @@ min-indent@^1.0.0: resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -minimatch@3.0.5, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.3, minimatch@^5.0.1: +minimatch@3.0.5, minimatch@^10.2.3, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.3, minimatch@^5.0.1: version "3.1.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e" integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== @@ -17045,9 +17062,9 @@ safe-stable-stringify@^2.2.0, safe-stable-stringify@^2.3.1: integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== sax@>=0.6.0: - version "1.3.0" - resolved "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0" - integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA== + version "1.6.0" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.6.0.tgz#da59637629307b97e7c4cb28e080a7bc38560d5b" + integrity sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA== saxes@^5.0.1: version "5.0.1" @@ -17088,10 +17105,10 @@ semver@^7.2.1: resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== -semver@^7.7.2, semver@^7.7.3: - version "7.7.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" - integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== +semver@^7.7.4: + version "7.7.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.4.tgz#28464e36060e991fa7a11d0279d2d3f3b57a7e8a" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== sentence-case@^3.0.4: version "3.0.4" @@ -17645,9 +17662,9 @@ tar-stream@~2.2.0: readable-stream "^3.1.1" tar@^6.1.0, tar@^6.1.11, tar@^6.1.2, tar@^7.5.8: - version "7.5.10" - resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.10.tgz#2281541123f5507db38bc6eb22619f4bbaef73ad" - integrity sha512-8mOPs1//5q/rlkNSPcCegA6hiHJYDmSLEI8aMH/CdSQJNWztHC9WHNam5zdQlfpTwB9Xp7IBEsHfV5LKMJGVAw== + version "7.5.11" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.11.tgz#1250fae45d98806b36d703b30973fa8e0a6d8868" + integrity sha512-ChjMH33/KetonMTAtpYdgUFr0tbz69Fp2v7zWxQfYZX4g5ZN2nOBXm1R2xyA+lMIKrLKIoKAwFj93jE/avX9cQ== dependencies: "@isaacs/fs-minipass" "^4.0.0" chownr "^3.0.0" @@ -18241,11 +18258,6 @@ uuid@3.4.0, uuid@3.x, uuid@^3.0.0, uuid@^3.2.1, uuid@^3.4.0: resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/uuid/-/uuid-7.0.1.tgz#95ed6ff3d8c881cbf85f0f05cc3915ef994818ef" - integrity sha512-yqjRXZzSJm9Dbl84H2VDHpM3zMjzSJQ+hn6C4zqd5ilW+7P4ZmLEEqwho9LjP+tGuZlF4xrHQXT0h9QZUS/pWA== - uuid@9.0.1, uuid@^9.0.1: version "9.0.1" resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" @@ -18661,7 +18673,7 @@ xml-name-validator@^3.0.0: xml2js@0.5.0: version "0.5.0" - resolved "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz#d9440631fbb2ed800203fad106f2724f62c493b7" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.5.0.tgz#d9440631fbb2ed800203fad106f2724f62c493b7" integrity sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA== dependencies: sax ">=0.6.0" @@ -18674,7 +18686,7 @@ xml@^1.0.1: xmlbuilder@~11.0.0: version "11.0.1" - resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== xmlchars@^2.2.0: @@ -18712,7 +18724,12 @@ yallist@^5.0.0: resolved "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw== -yaml@1.10.2, yaml@^1.10.0: +yaml@1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.3.tgz#76e407ed95c42684fb8e14641e5de62fe65bbcb3" + integrity sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA== + +yaml@^1.10.0: version "1.10.2" resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== @@ -18789,9 +18806,9 @@ yargs@^17.0.0, yargs@^17.1.1, yargs@^17.6.2: yargs-parser "^21.1.1" yauzl@^3.1.3: - version "3.2.0" - resolved "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz#7b6cb548f09a48a6177ea0be8ece48deb7da45c0" - integrity sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w== + version "3.2.1" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-3.2.1.tgz#d35befb9a0fdd328da41926be895ade2de14dbe7" + integrity sha512-k1isifdbpNSFEHFJ1ZY4YDewv0IH9FR61lDetaRMD3j2ae3bIXGV+7c+LHCqtQGofSd8PIyV4X6+dHMAnSr60A== dependencies: buffer-crc32 "~0.2.3" pend "~1.2.0" From 891ca29c219aba2cf124c868986e23ac4b379b23 Mon Sep 17 00:00:00 2001 From: jvh-aws Date: Thu, 16 Jul 2026 23:37:16 +0200 Subject: [PATCH 56/56] fix(appsync-modelgen-plugin): map identityPool provider to IAM in generated Dart code (#1033) --- .../visitors/appsync-dart-visitor.test.ts | 50 +++++++++++++++++++ .../src/visitors/appsync-dart-visitor.ts | 3 +- 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/packages/appsync-modelgen-plugin/src/__tests__/visitors/appsync-dart-visitor.test.ts b/packages/appsync-modelgen-plugin/src/__tests__/visitors/appsync-dart-visitor.test.ts index 2a5fb53e5..11386fe7b 100644 --- a/packages/appsync-modelgen-plugin/src/__tests__/visitors/appsync-dart-visitor.test.ts +++ b/packages/appsync-modelgen-plugin/src/__tests__/visitors/appsync-dart-visitor.test.ts @@ -259,6 +259,56 @@ describe('AppSync Dart Visitor', () => { const generatedCode = visitor.generate(); expect(generatedCode).toMatchSnapshot(); }) + + it('should map identityPool provider to IAM in generated Dart code', () => { + const schema = /* GraphQL */ ` + type IdentityPoolModel + @model + @auth( + rules: [ + { allow: private, provider: "identityPool" } + { allow: owner } + ] + ) { + id: ID! + name: String! + } + `; + + const visitor = getVisitor({ + schema, + selectedType: 'IdentityPoolModel', + isTimestampFieldsAdded: true, + }); + + const generatedCode = visitor.generate(); + expect(generatedCode).toContain('AuthRuleProvider.IAM'); + expect(generatedCode).not.toContain('AuthRuleProvider.IDENTITYPOOL'); + }); + + it('should map iam provider to IAM in generated Dart code (unchanged behavior)', () => { + const schema = /* GraphQL */ ` + type IamModel + @model + @auth( + rules: [ + { allow: private, provider: "iam" } + ] + ) { + id: ID! + name: String! + } + `; + + const visitor = getVisitor({ + schema, + selectedType: 'IamModel', + isTimestampFieldsAdded: true, + }); + + const generatedCode = visitor.generate(); + expect(generatedCode).toContain('AuthRuleProvider.IAM'); + }); }); describe('Model with Connection Directive', () => { diff --git a/packages/appsync-modelgen-plugin/src/visitors/appsync-dart-visitor.ts b/packages/appsync-modelgen-plugin/src/visitors/appsync-dart-visitor.ts index 118621779..d80799a97 100644 --- a/packages/appsync-modelgen-plugin/src/visitors/appsync-dart-visitor.ts +++ b/packages/appsync-modelgen-plugin/src/visitors/appsync-dart-visitor.ts @@ -960,7 +960,8 @@ export class AppSyncModelDartVisitor< return ''; } if (rule.provider) { - authRule.push(`provider: ${DART_AMPLIFY_CORE_TYPES.AuthRuleProvider}.${rule.provider.toUpperCase()}`); + const provider = (rule.provider as string) === 'identityPool' ? 'iam' : rule.provider; + authRule.push(`provider: ${DART_AMPLIFY_CORE_TYPES.AuthRuleProvider}.${provider.toUpperCase()}`); } authRule.push( [