@cdklabs/cdk-ecs-codedeploy 0.0.438 → 0.0.440

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/.jsii +3 -3
  2. package/lib/api-canary/index.js +1 -1
  3. package/lib/ecs-appspec/index.js +1 -1
  4. package/lib/ecs-deployment/index.js +1 -1
  5. package/lib/ecs-patterns/application-load-balanced-codedeployed-fargate-service.js +1 -1
  6. package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/bdd.js +49 -0
  7. package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/endpointResolver.js +2 -2
  8. package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/bdd.js +46 -0
  9. package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/endpointResolver.js +3 -3
  10. package/node_modules/@aws-sdk/client-codedeploy/dist-es/waiters/waitForDeploymentSuccessful.js +1 -1
  11. package/node_modules/@aws-sdk/client-codedeploy/dist-types/CodeDeploy.d.ts +1 -1
  12. package/node_modules/@aws-sdk/client-codedeploy/dist-types/endpoint/bdd.d.ts +2 -0
  13. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/CodeDeploy.d.ts +1 -1
  14. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/endpoint/bdd.d.ts +2 -0
  15. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/waiters/waitForDeploymentSuccessful.d.ts +9 -3
  16. package/node_modules/@aws-sdk/client-codedeploy/dist-types/waiters/waitForDeploymentSuccessful.d.ts +4 -3
  17. package/node_modules/@aws-sdk/client-codedeploy/package.json +19 -19
  18. package/node_modules/@aws-sdk/core/dist-cjs/index.js +35 -17
  19. package/node_modules/@aws-sdk/core/dist-cjs/submodules/client/index.js +18 -6
  20. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +18 -11
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js +15 -6
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js +2 -0
  23. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +6 -4
  24. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +6 -3
  25. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/SinglePassJsonShapeSerializer.js +2 -1
  26. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/QueryShapeSerializer.js +2 -1
  27. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/AwsRestXmlProtocol.js +0 -1
  28. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeSerializer.js +4 -2
  29. package/node_modules/@aws-sdk/core/dist-types/submodules/client/emitWarningIfUnsupportedVersion.d.ts +1 -2
  30. package/node_modules/@aws-sdk/core/dist-types/submodules/client/setFeature.d.ts +1 -1
  31. package/node_modules/@aws-sdk/core/package.json +7 -5
  32. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  33. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  34. package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
  35. package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
  36. package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
  37. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  38. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  39. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  40. package/node_modules/@aws-sdk/middleware-sdk-s3/LICENSE +201 -0
  41. package/node_modules/@aws-sdk/middleware-sdk-s3/README.md +4 -0
  42. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/index.js +581 -0
  43. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.browser.js +11 -0
  44. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.js +7 -0
  45. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/bucket-endpoint-middleware.js +36 -0
  46. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/check-content-length-header.js +32 -0
  47. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/index.js +9 -0
  48. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/protocol/S3RestXmlProtocol.js +25 -0
  49. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-endpoint-middleware.js +41 -0
  50. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-middleware.js +42 -0
  51. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-expires-middleware.js +33 -0
  52. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCache.js +39 -0
  53. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCacheEntry.js +14 -0
  54. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityProviderImpl.js +49 -0
  55. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/SignatureV4S3Express.js +41 -0
  56. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/constants.js +13 -0
  57. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressHttpSigningMiddleware.js +38 -0
  58. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressMiddleware.js +41 -0
  59. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/signS3Express.js +7 -0
  60. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/index.js +7 -0
  61. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentity.js +1 -0
  62. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentityProvider.js +1 -0
  63. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3Configuration.js +17 -0
  64. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/throw-200-exceptions.js +51 -0
  65. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.browser.js +8 -0
  66. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.js +4 -0
  67. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/validate-bucket-name.js +25 -0
  68. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/bucket-endpoint-middleware.d.ts +13 -0
  69. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/check-content-length-header.d.ts +16 -0
  70. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/index.d.ts +9 -0
  71. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/protocol/S3RestXmlProtocol.d.ts +20 -0
  72. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-endpoint-middleware.d.ts +10 -0
  73. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-middleware.d.ts +20 -0
  74. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-expires-middleware.d.ts +26 -0
  75. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCache.d.ts +16 -0
  76. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +16 -0
  77. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +32 -0
  78. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/SignatureV4S3Express.d.ts +17 -0
  79. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/constants.d.ts +37 -0
  80. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +27 -0
  81. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressMiddleware.d.ts +32 -0
  82. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/signS3Express.d.ts +9 -0
  83. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/index.d.ts +9 -0
  84. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentity.d.ts +6 -0
  85. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +12 -0
  86. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3Configuration.d.ts +79 -0
  87. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/throw-200-exceptions.d.ts +21 -0
  88. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.browser.d.ts +4 -0
  89. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.d.ts +5 -0
  90. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/bucket-endpoint-middleware.d.ts +9 -0
  91. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/check-content-length-header.d.ts +13 -0
  92. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/index.d.ts +9 -0
  93. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/protocol/S3RestXmlProtocol.d.ts +15 -0
  94. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-endpoint-middleware.d.ts +6 -0
  95. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-middleware.d.ts +17 -0
  96. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-expires-middleware.d.ts +14 -0
  97. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCache.d.ts +14 -0
  98. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +12 -0
  99. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +31 -0
  100. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/SignatureV4S3Express.d.ts +19 -0
  101. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/constants.d.ts +11 -0
  102. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +40 -0
  103. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressMiddleware.d.ts +27 -0
  104. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/signS3Express.d.ts +21 -0
  105. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/index.d.ts +17 -0
  106. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentity.d.ts +2 -0
  107. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +8 -0
  108. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3Configuration.d.ts +33 -0
  109. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/throw-200-exceptions.d.ts +19 -0
  110. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.browser.d.ts +1 -0
  111. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.d.ts +2 -0
  112. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/validate-bucket-name.d.ts +13 -0
  113. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/validate-bucket-name.d.ts +14 -0
  114. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +79 -0
  115. package/node_modules/@aws-sdk/middleware-user-agent/package.json +5 -5
  116. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/bdd.js +100 -0
  117. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/endpointResolver.js +2 -2
  118. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/bdd.js +90 -0
  119. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/endpointResolver.js +2 -2
  120. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/bdd.js +80 -0
  121. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/endpointResolver.js +2 -2
  122. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/bdd.js +80 -0
  123. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/endpointResolver.js +2 -2
  124. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/STSClient.js +1 -0
  125. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/auth/httpAuthSchemeProvider.js +87 -5
  126. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/bdd.js +150 -0
  127. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/endpointResolver.js +2 -2
  128. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/models/errors.js +1 -0
  129. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.js +6 -0
  130. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.shared.js +7 -0
  131. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/bdd.js +97 -0
  132. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/endpointResolver.js +3 -3
  133. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/bdd.js +87 -0
  134. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/endpointResolver.js +3 -3
  135. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/bdd.js +77 -0
  136. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/endpointResolver.js +3 -3
  137. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/bdd.js +77 -0
  138. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/endpointResolver.js +3 -3
  139. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STSClient.js +1 -0
  140. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/auth/httpAuthSchemeProvider.js +88 -4
  141. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/bdd.js +147 -0
  142. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/endpointResolver.js +3 -3
  143. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/models/errors.js +1 -0
  144. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.js +7 -1
  145. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.shared.js +8 -1
  146. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
  147. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/bdd.d.ts +2 -0
  148. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/bdd.d.ts +2 -0
  149. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
  150. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/auth/httpAuthSchemeProvider.d.ts +15 -7
  151. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/bdd.d.ts +2 -0
  152. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/models/errors.d.ts +1 -0
  153. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +3 -2
  154. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +10 -4
  155. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +3 -2
  156. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.shared.d.ts +3 -1
  157. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
  158. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/bdd.d.ts +2 -0
  159. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/bdd.d.ts +2 -0
  160. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
  161. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/auth/httpAuthSchemeProvider.d.ts +20 -9
  162. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/bdd.d.ts +2 -0
  163. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/models/errors.d.ts +1 -0
  164. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +11 -5
  165. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +35 -16
  166. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +11 -5
  167. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +8 -1
  168. package/node_modules/@aws-sdk/nested-clients/package.json +18 -17
  169. package/node_modules/@aws-sdk/region-config-resolver/package.json +2 -2
  170. package/node_modules/@aws-sdk/signature-v4-multi-region/LICENSE +201 -0
  171. package/node_modules/@aws-sdk/signature-v4-multi-region/README.md +32 -0
  172. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js +121 -0
  173. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/SignatureV4MultiRegion.js +112 -0
  174. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/index.js +2 -0
  175. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/signature-v4-crt-container.js +3 -0
  176. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/SignatureV4MultiRegion.d.ts +35 -0
  177. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/index.d.ts +5 -0
  178. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/signature-v4-crt-container.d.ts +28 -0
  179. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/SignatureV4MultiRegion.d.ts +41 -0
  180. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/index.d.ts +2 -0
  181. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/signature-v4-crt-container.d.ts +20 -0
  182. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +61 -0
  183. package/node_modules/@aws-sdk/token-providers/package.json +3 -3
  184. package/node_modules/@aws-sdk/util-arn-parser/LICENSE +201 -0
  185. package/node_modules/@aws-sdk/util-arn-parser/README.md +4 -0
  186. package/node_modules/@aws-sdk/util-arn-parser/dist-cjs/index.js +27 -0
  187. package/node_modules/@aws-sdk/util-arn-parser/dist-es/index.js +21 -0
  188. package/node_modules/@aws-sdk/util-arn-parser/dist-types/index.d.ts +32 -0
  189. package/node_modules/@aws-sdk/util-arn-parser/dist-types/ts3.4/index.d.ts +14 -0
  190. package/node_modules/@aws-sdk/util-arn-parser/package.json +55 -0
  191. package/node_modules/@aws-sdk/util-endpoints/package.json +2 -2
  192. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  193. package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-external/nodable_entities.js +336 -0
  194. package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.js +26 -2
  195. package/node_modules/@aws-sdk/xml-builder/dist-es/xml-external/nodable_entities.js +332 -0
  196. package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +26 -2
  197. package/node_modules/@aws-sdk/xml-builder/dist-types/ts3.4/xml-external/nodable_entities.d.ts +66 -0
  198. package/node_modules/@aws-sdk/xml-builder/dist-types/xml-external/nodable_entities.d.ts +65 -0
  199. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/CHANGELOG.md +61 -0
  200. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/README.md +8 -28
  201. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js +1 -1
  202. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +1 -1
  203. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
  204. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.d.cts +172 -6
  205. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
  206. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
  207. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
  208. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
  209. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/package.json +5 -4
  210. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/fxp.d.ts +162 -3
  211. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +2 -5
  212. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +15 -11
  213. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +174 -245
  214. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +2 -2
  215. package/node_modules/@aws-sdk/xml-builder/package.json +3 -2
  216. package/node_modules/@nodable/entities/README.md +41 -0
  217. package/node_modules/@nodable/entities/package.json +54 -0
  218. package/node_modules/@nodable/entities/src/EntityDecoder.js +543 -0
  219. package/node_modules/@nodable/entities/src/EntityEncoder.js +194 -0
  220. package/node_modules/@nodable/entities/src/entities.js +1177 -0
  221. package/node_modules/@nodable/entities/src/entityTries.js +49 -0
  222. package/node_modules/@nodable/entities/src/index.d.ts +264 -0
  223. package/node_modules/@nodable/entities/src/index.js +29 -0
  224. package/node_modules/@smithy/core/package.json +2 -2
  225. package/node_modules/@smithy/middleware-endpoint/package.json +3 -3
  226. package/node_modules/@smithy/middleware-retry/package.json +5 -5
  227. package/node_modules/@smithy/middleware-serde/package.json +2 -2
  228. package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +27 -16
  229. package/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +5 -0
  230. package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +22 -16
  231. package/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +4 -0
  232. package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +2 -4
  233. package/node_modules/@smithy/node-http-handler/package.json +1 -1
  234. package/node_modules/@smithy/service-error-classification/dist-cjs/index.js +1 -0
  235. package/node_modules/@smithy/service-error-classification/dist-es/index.js +1 -0
  236. package/node_modules/@smithy/service-error-classification/package.json +1 -1
  237. package/node_modules/@smithy/smithy-client/package.json +4 -4
  238. package/node_modules/@smithy/util-defaults-mode-browser/package.json +2 -2
  239. package/node_modules/@smithy/util-defaults-mode-node/package.json +2 -2
  240. package/node_modules/@smithy/util-retry/dist-cjs/index.js +27 -13
  241. package/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js +5 -2
  242. package/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js +2 -1
  243. package/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js +20 -10
  244. package/node_modules/@smithy/util-retry/dist-types/StandardRetryStrategy.d.ts +12 -4
  245. package/node_modules/@smithy/util-retry/package.json +3 -3
  246. package/node_modules/@smithy/util-stream/package.json +2 -2
  247. package/node_modules/@smithy/util-waiter/dist-cjs/index.js +59 -34
  248. package/node_modules/@smithy/util-waiter/dist-es/poller.js +61 -34
  249. package/node_modules/@smithy/util-waiter/dist-types/createWaiter.d.ts +1 -1
  250. package/node_modules/@smithy/util-waiter/dist-types/poller.d.ts +2 -1
  251. package/node_modules/@smithy/util-waiter/dist-types/waiter.d.ts +13 -13
  252. package/node_modules/@smithy/util-waiter/package.json +1 -1
  253. package/node_modules/fast-xml-builder/CHANGELOG.md +13 -0
  254. package/node_modules/fast-xml-builder/lib/fxb.cjs +1 -1
  255. package/node_modules/fast-xml-builder/lib/fxb.min.js +1 -1
  256. package/node_modules/fast-xml-builder/lib/fxb.min.js.map +1 -1
  257. package/node_modules/fast-xml-builder/package.json +1 -1
  258. package/node_modules/fast-xml-builder/src/fxb.js +7 -8
  259. package/node_modules/fast-xml-builder/src/orderedJs2Xml.js +6 -7
  260. package/node_modules/fast-xml-builder/src/util.js +16 -0
  261. package/package.json +3 -3
  262. package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/ruleset.js +0 -7
  263. package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/ruleset.js +0 -4
  264. package/node_modules/@aws-sdk/client-codedeploy/dist-types/endpoint/ruleset.d.ts +0 -2
  265. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/endpoint/ruleset.d.ts +0 -2
  266. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/ruleset.js +0 -146
  267. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/ruleset.js +0 -133
  268. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/ruleset.js +0 -106
  269. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/ruleset.js +0 -106
  270. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/ruleset.js +0 -145
  271. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/ruleset.js +0 -143
  272. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/ruleset.js +0 -130
  273. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/ruleset.js +0 -103
  274. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/ruleset.js +0 -103
  275. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/ruleset.js +0 -142
  276. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
  277. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/ruleset.d.ts +0 -2
  278. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/ruleset.d.ts +0 -2
  279. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
  280. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/ruleset.d.ts +0 -2
  281. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
  282. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/ruleset.d.ts +0 -2
  283. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/ruleset.d.ts +0 -2
  284. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
  285. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/ruleset.d.ts +0 -2
  286. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/pem.d.cts +0 -148
  287. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/pem.d.ts +0 -135
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-browser",
3
- "version": "4.3.48",
3
+ "version": "4.3.49",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:types' 'yarn:build:es:cjs'",
6
6
  "build:es:cjs": "yarn g:tsc -p tsconfig.es.json && node ../../scripts/inline util-defaults-mode-browser",
@@ -24,7 +24,7 @@
24
24
  "sideEffects": false,
25
25
  "dependencies": {
26
26
  "@smithy/property-provider": "^4.2.14",
27
- "@smithy/smithy-client": "^4.12.12",
27
+ "@smithy/smithy-client": "^4.12.13",
28
28
  "@smithy/types": "^4.14.1",
29
29
  "tslib": "^2.6.2"
30
30
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-node",
3
- "version": "4.2.53",
3
+ "version": "4.2.54",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:types' 'yarn:build:es:cjs'",
6
6
  "build:es:cjs": "yarn g:tsc -p tsconfig.es.json && node ../../scripts/inline util-defaults-mode-node",
@@ -27,7 +27,7 @@
27
27
  "@smithy/credential-provider-imds": "^4.2.14",
28
28
  "@smithy/node-config-provider": "^4.3.14",
29
29
  "@smithy/property-provider": "^4.2.14",
30
- "@smithy/smithy-client": "^4.12.12",
30
+ "@smithy/smithy-client": "^4.12.13",
31
31
  "@smithy/types": "^4.14.1",
32
32
  "tslib": "^2.6.2"
33
33
  },
@@ -70,9 +70,10 @@ class DefaultRateLimiter {
70
70
  return;
71
71
  }
72
72
  this.refillTokenBucket();
73
- if (amount > this.availableTokens) {
73
+ while (amount > this.availableTokens) {
74
74
  const delay = ((amount - this.availableTokens) / this.fillRate) * 1000;
75
75
  await new Promise((resolve) => DefaultRateLimiter.setTimeoutFn(resolve, delay));
76
+ this.refillTokenBucket();
76
77
  }
77
78
  this.availableTokens = this.availableTokens - amount;
78
79
  }
@@ -187,6 +188,11 @@ class DefaultRetryToken {
187
188
  }
188
189
  }
189
190
 
191
+ const refusal = {
192
+ incompatible: 1,
193
+ attempts: 2,
194
+ capacity: 3,
195
+ };
190
196
  class StandardRetryStrategy {
191
197
  mode = exports.RETRY_MODES.STANDARD;
192
198
  capacity = INITIAL_RETRY_TOKENS;
@@ -214,8 +220,10 @@ class StandardRetryStrategy {
214
220
  }
215
221
  async refreshRetryTokenForRetry(token, errorInfo) {
216
222
  const maxAttempts = await this.getMaxAttempts();
217
- const shouldRetry = this.shouldRetry(token, errorInfo, maxAttempts);
218
- if (shouldRetry || token.isLongPoll?.()) {
223
+ const retryCode = this.retryCode(token, errorInfo, maxAttempts);
224
+ const shouldRetry = retryCode === 0;
225
+ const isLongPoll = token.isLongPoll?.();
226
+ if (shouldRetry || isLongPoll) {
219
227
  const errorType = errorInfo.errorType;
220
228
  this.retryBackoffStrategy.setDelayBase(errorType === "THROTTLING" ? Retry.throttlingDelay() : this.baseDelay);
221
229
  const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
@@ -224,7 +232,9 @@ class StandardRetryStrategy {
224
232
  retryDelay = Math.max(delayFromErrorType, Math.min(errorInfo.retryAfterHint.getTime() - Date.now(), delayFromErrorType + 5_000));
225
233
  }
226
234
  if (!shouldRetry) {
227
- throw Object.assign(new Error("No retry token available"), { $backoff: Retry.v2026 ? retryDelay : 0 });
235
+ throw Object.assign(new Error("No retry token available"), {
236
+ $backoff: Retry.v2026 && retryCode === refusal.capacity && isLongPoll ? retryDelay : 0,
237
+ });
228
238
  }
229
239
  else {
230
240
  const capacityCost = this.getCapacityCost(errorType);
@@ -240,6 +250,9 @@ class StandardRetryStrategy {
240
250
  getCapacity() {
241
251
  return this.capacity;
242
252
  }
253
+ async maxAttempts() {
254
+ return this.maxAttemptsProvider();
255
+ }
243
256
  async getMaxAttempts() {
244
257
  try {
245
258
  return await this.maxAttemptsProvider();
@@ -249,11 +262,12 @@ class StandardRetryStrategy {
249
262
  return DEFAULT_MAX_ATTEMPTS;
250
263
  }
251
264
  }
252
- shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
265
+ retryCode(tokenToRenew, errorInfo, maxAttempts) {
253
266
  const attempts = tokenToRenew.getRetryCount() + 1;
254
- return (attempts < maxAttempts &&
255
- this.capacity >= this.getCapacityCost(errorInfo.errorType) &&
256
- this.isRetryableError(errorInfo.errorType));
267
+ const retryableStatus = this.isRetryableError(errorInfo.errorType) ? 0 : refusal.incompatible;
268
+ const attemptStatus = attempts < maxAttempts ? 0 : refusal.attempts;
269
+ const capacityStatus = this.capacity >= this.getCapacityCost(errorInfo.errorType) ? 0 : refusal.capacity;
270
+ return retryableStatus || attemptStatus || capacityStatus;
257
271
  }
258
272
  getCapacityCost(errorType) {
259
273
  return errorType === Retry.modifiedCostType() ? Retry.throttlingCost() : Retry.cost();
@@ -261,9 +275,6 @@ class StandardRetryStrategy {
261
275
  isRetryableError(errorType) {
262
276
  return errorType === "THROTTLING" || errorType === "TRANSIENT";
263
277
  }
264
- async maxAttempts() {
265
- return this.maxAttemptsProvider();
266
- }
267
278
  }
268
279
 
269
280
  class AdaptiveRetryStrategy {
@@ -281,12 +292,15 @@ class AdaptiveRetryStrategy {
281
292
  : new StandardRetryStrategy(maxAttemptsProvider);
282
293
  }
283
294
  async acquireInitialRetryToken(retryTokenScope) {
295
+ const token = await this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
284
296
  await this.rateLimiter.getSendToken();
285
- return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
297
+ return token;
286
298
  }
287
299
  async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
288
300
  this.rateLimiter.updateClientSendingRate(errorInfo);
289
- return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
301
+ const token = await this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
302
+ await this.rateLimiter.getSendToken();
303
+ return token;
290
304
  }
291
305
  recordSuccess(token) {
292
306
  this.rateLimiter.updateClientSendingRate({});
@@ -16,12 +16,15 @@ export class AdaptiveRetryStrategy {
16
16
  : new StandardRetryStrategy(maxAttemptsProvider);
17
17
  }
18
18
  async acquireInitialRetryToken(retryTokenScope) {
19
+ const token = await this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
19
20
  await this.rateLimiter.getSendToken();
20
- return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);
21
+ return token;
21
22
  }
22
23
  async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {
23
24
  this.rateLimiter.updateClientSendingRate(errorInfo);
24
- return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
25
+ const token = await this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);
26
+ await this.rateLimiter.getSendToken();
27
+ return token;
25
28
  }
26
29
  recordSuccess(token) {
27
30
  this.rateLimiter.updateClientSendingRate({});
@@ -59,9 +59,10 @@ export class DefaultRateLimiter {
59
59
  return;
60
60
  }
61
61
  this.refillTokenBucket();
62
- if (amount > this.availableTokens) {
62
+ while (amount > this.availableTokens) {
63
63
  const delay = ((amount - this.availableTokens) / this.fillRate) * 1000;
64
64
  await new Promise((resolve) => DefaultRateLimiter.setTimeoutFn(resolve, delay));
65
+ this.refillTokenBucket();
65
66
  }
66
67
  this.availableTokens = this.availableTokens - amount;
67
68
  }
@@ -3,6 +3,11 @@ import { INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT } from "./constants";
3
3
  import { DefaultRetryBackoffStrategy } from "./DefaultRetryBackoffStrategy";
4
4
  import { DefaultRetryToken } from "./DefaultRetryToken";
5
5
  import { Retry } from "./retries-2026-config";
6
+ const refusal = {
7
+ incompatible: 1,
8
+ attempts: 2,
9
+ capacity: 3,
10
+ };
6
11
  export class StandardRetryStrategy {
7
12
  mode = RETRY_MODES.STANDARD;
8
13
  capacity = INITIAL_RETRY_TOKENS;
@@ -30,8 +35,10 @@ export class StandardRetryStrategy {
30
35
  }
31
36
  async refreshRetryTokenForRetry(token, errorInfo) {
32
37
  const maxAttempts = await this.getMaxAttempts();
33
- const shouldRetry = this.shouldRetry(token, errorInfo, maxAttempts);
34
- if (shouldRetry || token.isLongPoll?.()) {
38
+ const retryCode = this.retryCode(token, errorInfo, maxAttempts);
39
+ const shouldRetry = retryCode === 0;
40
+ const isLongPoll = token.isLongPoll?.();
41
+ if (shouldRetry || isLongPoll) {
35
42
  const errorType = errorInfo.errorType;
36
43
  this.retryBackoffStrategy.setDelayBase(errorType === "THROTTLING" ? Retry.throttlingDelay() : this.baseDelay);
37
44
  const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());
@@ -40,7 +47,9 @@ export class StandardRetryStrategy {
40
47
  retryDelay = Math.max(delayFromErrorType, Math.min(errorInfo.retryAfterHint.getTime() - Date.now(), delayFromErrorType + 5_000));
41
48
  }
42
49
  if (!shouldRetry) {
43
- throw Object.assign(new Error("No retry token available"), { $backoff: Retry.v2026 ? retryDelay : 0 });
50
+ throw Object.assign(new Error("No retry token available"), {
51
+ $backoff: Retry.v2026 && retryCode === refusal.capacity && isLongPoll ? retryDelay : 0,
52
+ });
44
53
  }
45
54
  else {
46
55
  const capacityCost = this.getCapacityCost(errorType);
@@ -56,6 +65,9 @@ export class StandardRetryStrategy {
56
65
  getCapacity() {
57
66
  return this.capacity;
58
67
  }
68
+ async maxAttempts() {
69
+ return this.maxAttemptsProvider();
70
+ }
59
71
  async getMaxAttempts() {
60
72
  try {
61
73
  return await this.maxAttemptsProvider();
@@ -65,11 +77,12 @@ export class StandardRetryStrategy {
65
77
  return DEFAULT_MAX_ATTEMPTS;
66
78
  }
67
79
  }
68
- shouldRetry(tokenToRenew, errorInfo, maxAttempts) {
80
+ retryCode(tokenToRenew, errorInfo, maxAttempts) {
69
81
  const attempts = tokenToRenew.getRetryCount() + 1;
70
- return (attempts < maxAttempts &&
71
- this.capacity >= this.getCapacityCost(errorInfo.errorType) &&
72
- this.isRetryableError(errorInfo.errorType));
82
+ const retryableStatus = this.isRetryableError(errorInfo.errorType) ? 0 : refusal.incompatible;
83
+ const attemptStatus = attempts < maxAttempts ? 0 : refusal.attempts;
84
+ const capacityStatus = this.capacity >= this.getCapacityCost(errorInfo.errorType) ? 0 : refusal.capacity;
85
+ return retryableStatus || attemptStatus || capacityStatus;
73
86
  }
74
87
  getCapacityCost(errorType) {
75
88
  return errorType === Retry.modifiedCostType() ? Retry.throttlingCost() : Retry.cost();
@@ -77,7 +90,4 @@ export class StandardRetryStrategy {
77
90
  isRetryableError(errorType) {
78
91
  return errorType === "THROTTLING" || errorType === "TRANSIENT";
79
92
  }
80
- async maxAttempts() {
81
- return this.maxAttemptsProvider();
82
- }
83
93
  }
@@ -36,13 +36,21 @@ export declare class StandardRetryStrategy implements RetryStrategyV2 {
36
36
  * @returns the current available retry capacity.
37
37
  */
38
38
  getCapacity(): number;
39
- private getMaxAttempts;
40
- private shouldRetry;
41
- private getCapacityCost;
42
- private isRetryableError;
43
39
  /**
44
40
  * There is an existing integration which accesses this field.
45
41
  * @deprecated
46
42
  */
47
43
  maxAttempts(): Promise<number>;
44
+ private getMaxAttempts;
45
+ /**
46
+ * 0 - OK to retry.
47
+ * 1 - error is not classified as retryable.
48
+ * 2 - attempt count exhausted.
49
+ * 3 - no capacity left (retry tokens exhausted).
50
+ *
51
+ * @returns 0 or the number of the highest priority (lowest integer) reason why retry is not possible.
52
+ */
53
+ private retryCode;
54
+ private getCapacityCost;
55
+ private isRetryableError;
48
56
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-retry",
3
- "version": "4.3.3",
3
+ "version": "4.3.8",
4
4
  "description": "Shared retry utilities to be used in middleware packages.",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -30,7 +30,7 @@
30
30
  "license": "Apache-2.0",
31
31
  "sideEffects": false,
32
32
  "dependencies": {
33
- "@smithy/service-error-classification": "^4.3.0",
33
+ "@smithy/service-error-classification": "^4.3.1",
34
34
  "@smithy/types": "^4.14.1",
35
35
  "tslib": "^2.6.2"
36
36
  },
@@ -67,4 +67,4 @@
67
67
  "publishConfig": {
68
68
  "directory": ".release/package"
69
69
  }
70
- }
70
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-stream",
3
- "version": "4.5.24",
3
+ "version": "4.5.25",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:types' 'yarn:build:es:cjs'",
6
6
  "build:es:cjs": "yarn g:tsc -p tsconfig.es.json && node ../../scripts/inline util-stream",
@@ -29,7 +29,7 @@
29
29
  "sideEffects": false,
30
30
  "dependencies": {
31
31
  "@smithy/fetch-http-handler": "^5.3.17",
32
- "@smithy/node-http-handler": "^4.6.0",
32
+ "@smithy/node-http-handler": "^4.6.1",
33
33
  "@smithy/types": "^4.14.1",
34
34
  "@smithy/util-base64": "^4.3.2",
35
35
  "@smithy/util-buffer-from": "^4.2.2",
@@ -52,39 +52,27 @@ const checkExceptions = (result) => {
52
52
  return result;
53
53
  };
54
54
 
55
- const exponentialBackoffWithJitter = (minDelay, maxDelay, attemptCeiling, attempt) => {
56
- if (attempt > attemptCeiling)
57
- return maxDelay;
58
- const delay = minDelay * 2 ** (attempt - 1);
59
- return randomInRange(minDelay, delay);
60
- };
61
- const randomInRange = (min, max) => min + Math.random() * (max - min);
62
55
  const runPolling = async ({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }, input, acceptorChecks) => {
63
56
  const observedResponses = {};
64
- const { state, reason } = await acceptorChecks(client, input);
65
- if (reason) {
66
- const message = createMessageFromResponse(reason);
67
- observedResponses[message] |= 0;
68
- observedResponses[message] += 1;
69
- }
70
- if (state !== exports.WaiterState.RETRY) {
71
- return { state, reason, observedResponses };
72
- }
73
- let currentAttempt = 1;
57
+ const [minDelayMs, maxDelayMs] = [minDelay * 1000, maxDelay * 1000];
58
+ let currentAttempt = 0;
74
59
  const waitUntil = Date.now() + maxWaitTime * 1000;
75
- const attemptCeiling = Math.log(maxDelay / minDelay) / Math.log(2) + 1;
60
+ const warn403Time = Date.now() + 60_000;
61
+ let didWarn403 = false;
76
62
  while (true) {
77
- if (abortController?.signal?.aborted || abortSignal?.aborted) {
78
- const message = "AbortController signal aborted.";
79
- observedResponses[message] |= 0;
80
- observedResponses[message] += 1;
81
- return { state: exports.WaiterState.ABORTED, observedResponses };
82
- }
83
- const delay = exponentialBackoffWithJitter(minDelay, maxDelay, attemptCeiling, currentAttempt);
84
- if (Date.now() + delay * 1000 > waitUntil) {
85
- return { state: exports.WaiterState.TIMEOUT, observedResponses };
63
+ if (currentAttempt > 0) {
64
+ const delayMs = exponentialBackoffWithJitter(minDelayMs, maxDelayMs, currentAttempt, waitUntil);
65
+ if (abortController?.signal?.aborted || abortSignal?.aborted) {
66
+ const message = "AbortController signal aborted.";
67
+ observedResponses[message] |= 0;
68
+ observedResponses[message] += 1;
69
+ return { state: exports.WaiterState.ABORTED, observedResponses };
70
+ }
71
+ if (Date.now() + delayMs > waitUntil) {
72
+ return { state: exports.WaiterState.TIMEOUT, observedResponses };
73
+ }
74
+ await sleep(delayMs / 1_000);
86
75
  }
87
- await sleep(delay);
88
76
  const { state, reason } = await acceptorChecks(client, input);
89
77
  if (reason) {
90
78
  const message = createMessageFromResponse(reason);
@@ -92,23 +80,60 @@ const runPolling = async ({ minDelay, maxDelay, maxWaitTime, abortController, cl
92
80
  observedResponses[message] += 1;
93
81
  }
94
82
  if (state !== exports.WaiterState.RETRY) {
95
- return { state, reason, observedResponses };
83
+ return { state, reason, final: reason, observedResponses };
96
84
  }
97
85
  currentAttempt += 1;
86
+ if (!didWarn403 && Date.now() >= warn403Time) {
87
+ checkWarn403(observedResponses, client);
88
+ didWarn403 = true;
89
+ }
90
+ }
91
+ };
92
+ const checkWarn403 = (observedResponses = {}, client) => {
93
+ const orderedErrors = Object.keys(observedResponses);
94
+ let count403 = 0;
95
+ for (const response of orderedErrors) {
96
+ const n = observedResponses[response] | 0;
97
+ if (response.startsWith("403:")) {
98
+ count403 += n;
99
+ }
100
+ }
101
+ const clientLogger = client?.config?.logger;
102
+ const warningLogger = typeof clientLogger?.warn === "function" && !clientLogger.constructor?.name?.includes?.("NoOpLogger")
103
+ ? clientLogger
104
+ : console;
105
+ if (count403 >= 3 || orderedErrors[orderedErrors.length - 1].startsWith("403:")) {
106
+ warningLogger.warn(`@smithy/util-waiter WARN - 403 status code encountered during waiter polling.`);
98
107
  }
99
108
  };
100
109
  const createMessageFromResponse = (reason) => {
110
+ const status = reason?.$response?.statusCode ?? reason?.$metadata?.httpStatusCode;
101
111
  if (reason?.$responseBodyText) {
102
- return `Deserialization error for body: ${reason.$responseBodyText}`;
112
+ return `${status ? status + ": " : ""}Deserialization error for body: ${reason.$responseBodyText}`;
103
113
  }
104
- if (reason?.$metadata?.httpStatusCode) {
105
- if (reason.$response || reason.message) {
106
- return `${reason.$response?.statusCode ?? reason.$metadata.httpStatusCode ?? "Unknown"}: ${reason.message}`;
114
+ if (status) {
115
+ if (reason?.$response || reason?.message) {
116
+ return `${status ?? "Unknown"}: ${reason?.message}`;
107
117
  }
108
- return `${reason.$metadata.httpStatusCode}: OK`;
118
+ return `${status}: OK`;
109
119
  }
110
120
  return String(reason?.message ?? JSON.stringify(reason, getCircularReplacer()) ?? "Unknown");
111
121
  };
122
+ const exponentialBackoffWithJitter = (minDelayMs, maxDelayMs, attempt, waitUntil) => {
123
+ const attemptCountCeiling = Math.log(maxDelayMs / minDelayMs) / Math.log(2) + 1;
124
+ if (attempt > attemptCountCeiling) {
125
+ return maxDelayMs;
126
+ }
127
+ const delay = minDelayMs * 2 ** (attempt - 1);
128
+ const capped = Math.min(delay, maxDelayMs);
129
+ const waitFor = randomInRange(minDelayMs, capped);
130
+ if (Date.now() + waitFor > waitUntil) {
131
+ const timeRemaining = waitUntil - Date.now();
132
+ return Math.max(0, timeRemaining - 500);
133
+ }
134
+ return waitFor;
135
+ };
136
+ const randomInRange = (min, max) => min + Math.random() * (max - min);
112
137
 
113
138
  const validateWaiterOptions = (options) => {
114
139
  if (options.maxWaitTime <= 0) {
@@ -1,39 +1,27 @@
1
1
  import { getCircularReplacer } from "./circularReplacer";
2
2
  import { sleep } from "./utils/sleep";
3
3
  import { WaiterState } from "./waiter";
4
- const exponentialBackoffWithJitter = (minDelay, maxDelay, attemptCeiling, attempt) => {
5
- if (attempt > attemptCeiling)
6
- return maxDelay;
7
- const delay = minDelay * 2 ** (attempt - 1);
8
- return randomInRange(minDelay, delay);
9
- };
10
- const randomInRange = (min, max) => min + Math.random() * (max - min);
11
4
  export const runPolling = async ({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }, input, acceptorChecks) => {
12
5
  const observedResponses = {};
13
- const { state, reason } = await acceptorChecks(client, input);
14
- if (reason) {
15
- const message = createMessageFromResponse(reason);
16
- observedResponses[message] |= 0;
17
- observedResponses[message] += 1;
18
- }
19
- if (state !== WaiterState.RETRY) {
20
- return { state, reason, observedResponses };
21
- }
22
- let currentAttempt = 1;
6
+ const [minDelayMs, maxDelayMs] = [minDelay * 1000, maxDelay * 1000];
7
+ let currentAttempt = 0;
23
8
  const waitUntil = Date.now() + maxWaitTime * 1000;
24
- const attemptCeiling = Math.log(maxDelay / minDelay) / Math.log(2) + 1;
9
+ const warn403Time = Date.now() + 60_000;
10
+ let didWarn403 = false;
25
11
  while (true) {
26
- if (abortController?.signal?.aborted || abortSignal?.aborted) {
27
- const message = "AbortController signal aborted.";
28
- observedResponses[message] |= 0;
29
- observedResponses[message] += 1;
30
- return { state: WaiterState.ABORTED, observedResponses };
12
+ if (currentAttempt > 0) {
13
+ const delayMs = exponentialBackoffWithJitter(minDelayMs, maxDelayMs, currentAttempt, waitUntil);
14
+ if (abortController?.signal?.aborted || abortSignal?.aborted) {
15
+ const message = "AbortController signal aborted.";
16
+ observedResponses[message] |= 0;
17
+ observedResponses[message] += 1;
18
+ return { state: WaiterState.ABORTED, observedResponses };
19
+ }
20
+ if (Date.now() + delayMs > waitUntil) {
21
+ return { state: WaiterState.TIMEOUT, observedResponses };
22
+ }
23
+ await sleep(delayMs / 1_000);
31
24
  }
32
- const delay = exponentialBackoffWithJitter(minDelay, maxDelay, attemptCeiling, currentAttempt);
33
- if (Date.now() + delay * 1000 > waitUntil) {
34
- return { state: WaiterState.TIMEOUT, observedResponses };
35
- }
36
- await sleep(delay);
37
25
  const { state, reason } = await acceptorChecks(client, input);
38
26
  if (reason) {
39
27
  const message = createMessageFromResponse(reason);
@@ -41,20 +29,59 @@ export const runPolling = async ({ minDelay, maxDelay, maxWaitTime, abortControl
41
29
  observedResponses[message] += 1;
42
30
  }
43
31
  if (state !== WaiterState.RETRY) {
44
- return { state, reason, observedResponses };
32
+ return { state, reason, final: reason, observedResponses };
45
33
  }
46
34
  currentAttempt += 1;
35
+ if (!didWarn403 && Date.now() >= warn403Time) {
36
+ checkWarn403(observedResponses, client);
37
+ didWarn403 = true;
38
+ }
39
+ }
40
+ };
41
+ const checkWarn403 = (observedResponses = {}, client) => {
42
+ const orderedErrors = Object.keys(observedResponses);
43
+ let maxCount = 0;
44
+ let count403 = 0;
45
+ for (const response of orderedErrors) {
46
+ const n = observedResponses[response] | 0;
47
+ maxCount = Math.max(n, maxCount);
48
+ if (response.startsWith("403:")) {
49
+ count403 += n;
50
+ }
51
+ }
52
+ const clientLogger = client?.config?.logger;
53
+ const warningLogger = typeof clientLogger?.warn === "function" && !clientLogger.constructor?.name?.includes?.("NoOpLogger")
54
+ ? clientLogger
55
+ : console;
56
+ if (count403 >= 3 || orderedErrors[orderedErrors.length - 1].startsWith("403:")) {
57
+ warningLogger.warn(`@smithy/util-waiter WARN - 403 status code encountered during waiter polling.`);
47
58
  }
48
59
  };
49
60
  const createMessageFromResponse = (reason) => {
61
+ const status = reason?.$response?.statusCode ?? reason?.$metadata?.httpStatusCode;
50
62
  if (reason?.$responseBodyText) {
51
- return `Deserialization error for body: ${reason.$responseBodyText}`;
63
+ return `${status ? status + ": " : ""}Deserialization error for body: ${reason.$responseBodyText}`;
52
64
  }
53
- if (reason?.$metadata?.httpStatusCode) {
54
- if (reason.$response || reason.message) {
55
- return `${reason.$response?.statusCode ?? reason.$metadata.httpStatusCode ?? "Unknown"}: ${reason.message}`;
65
+ if (status) {
66
+ if (reason?.$response || reason?.message) {
67
+ return `${status ?? "Unknown"}: ${reason?.message}`;
56
68
  }
57
- return `${reason.$metadata.httpStatusCode}: OK`;
69
+ return `${status}: OK`;
58
70
  }
59
71
  return String(reason?.message ?? JSON.stringify(reason, getCircularReplacer()) ?? "Unknown");
60
72
  };
73
+ const exponentialBackoffWithJitter = (minDelayMs, maxDelayMs, attempt, waitUntil) => {
74
+ const attemptCountCeiling = Math.log(maxDelayMs / minDelayMs) / Math.log(2) + 1;
75
+ if (attempt > attemptCountCeiling) {
76
+ return maxDelayMs;
77
+ }
78
+ const delay = minDelayMs * 2 ** (attempt - 1);
79
+ const capped = Math.min(delay, maxDelayMs);
80
+ const waitFor = randomInRange(minDelayMs, capped);
81
+ if (Date.now() + waitFor > waitUntil) {
82
+ const timeRemaining = waitUntil - Date.now();
83
+ return Math.max(0, timeRemaining - 500);
84
+ }
85
+ return waitFor;
86
+ };
87
+ const randomInRange = (min, max) => min + Math.random() * (max - min);
@@ -8,4 +8,4 @@ import type { WaiterOptions, WaiterResult } from "./waiter";
8
8
  *
9
9
  * @internal
10
10
  */
11
- export declare const createWaiter: <Client, Input>(options: WaiterOptions<Client>, input: Input, acceptorChecks: (client: Client, input: Input) => Promise<WaiterResult>) => Promise<WaiterResult>;
11
+ export declare const createWaiter: <Client, Input, Reason = any>(options: WaiterOptions<Client>, input: Input, acceptorChecks: (client: Client, input: Input) => Promise<WaiterResult<Reason>>) => Promise<WaiterResult<Reason>>;
@@ -2,9 +2,10 @@ import type { WaiterOptions, WaiterResult } from "./waiter";
2
2
  /**
3
3
  * Function that runs polling as part of waiters. This will make one inital attempt and then
4
4
  * subsequent attempts with an increasing delay.
5
+ *
5
6
  * @param params - options passed to the waiter.
6
7
  * @param client - AWS SDK Client
7
8
  * @param input - client input
8
9
  * @param acceptorChecks - function that checks the acceptor states on each poll.
9
10
  */
10
- export declare const runPolling: <Client, Input>({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }: WaiterOptions<Client>, input: Input, acceptorChecks: (client: Client, input: Input) => Promise<WaiterResult>) => Promise<WaiterResult>;
11
+ export declare const runPolling: <Client, Input, Reason = any>({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }: WaiterOptions<Client>, input: Input, acceptorChecks: (client: Client, input: Input) => Promise<WaiterResult<Reason>>) => Promise<WaiterResult<Reason>>;
@@ -1,9 +1,5 @@
1
- import type { WaiterConfiguration as WaiterConfiguration__ } from "@smithy/types";
2
- /**
3
- * @internal
4
- */
5
- export interface WaiterConfiguration<T> extends WaiterConfiguration__<T> {
6
- }
1
+ import type { WaiterConfiguration } from "@smithy/types";
2
+ export { WaiterConfiguration };
7
3
  /**
8
4
  * @internal
9
5
  */
@@ -16,7 +12,7 @@ export declare const waiterServiceDefaults: {
16
12
  */
17
13
  export type WaiterOptions<Client> = WaiterConfiguration<Client> & Required<Pick<WaiterConfiguration<Client>, "minDelay" | "maxDelay">>;
18
14
  /**
19
- * @internal
15
+ * @public
20
16
  */
21
17
  export declare enum WaiterState {
22
18
  ABORTED = "ABORTED",
@@ -26,14 +22,19 @@ export declare enum WaiterState {
26
22
  TIMEOUT = "TIMEOUT"
27
23
  }
28
24
  /**
29
- * @internal
25
+ * @public
30
26
  */
31
- export type WaiterResult = {
27
+ export type WaiterResult<R = any> = {
32
28
  state: WaiterState;
33
29
  /**
34
- * (optional) Indicates a reason for why a waiter has reached its state.
30
+ * @deprecated because this was untyped as `any`, new code should use the field 'final',
31
+ * which is the same value, but typed.
35
32
  */
36
33
  reason?: any;
34
+ /**
35
+ * (optional) Indicates a reason for why a waiter has reached its state.
36
+ */
37
+ final?: R;
37
38
  /**
38
39
  * Responses observed by the waiter during its polling, where the value
39
40
  * is the count.
@@ -41,9 +42,8 @@ export type WaiterResult = {
41
42
  observedResponses?: Record<string, number>;
42
43
  };
43
44
  /**
44
- * @internal
45
- *
46
45
  * Handles and throws exceptions resulting from the waiterResult
46
+ * @internal
47
47
  * @param result - WaiterResult
48
48
  */
49
- export declare const checkExceptions: (result: WaiterResult) => WaiterResult;
49
+ export declare const checkExceptions: <R>(result: WaiterResult<R>) => WaiterResult<R>;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-waiter",
3
- "version": "4.2.16",
3
+ "version": "4.3.0",
4
4
  "description": "Shared utilities for client waiters for the AWS SDK",
5
5
  "dependencies": {
6
6
  "@smithy/types": "^4.14.1",
@@ -1,3 +1,16 @@
1
+
2
+
3
+
4
+ **1.1.7** (2026--05-04)
5
+ - fix security issues when attribute value contains quotes
6
+
7
+ **1.1.6** (2026--05-04)
8
+ - fix security issues related to comment
9
+ - skip comment with null value
10
+
11
+ **1.1.5** (2026-04-17)
12
+ - fix security issues related to comment and cdata
13
+
1
14
  **1.1.4** (2026-03-16)
2
15
  - support maxNestedTags option
3
16