@cdklabs/cdk-ecs-codedeploy 0.0.437 → 0.0.439

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 (399) 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-types/endpoint/bdd.d.ts +2 -0
  11. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/endpoint/bdd.d.ts +2 -0
  12. package/node_modules/@aws-sdk/client-codedeploy/package.json +34 -34
  13. package/node_modules/@aws-sdk/core/dist-cjs/index.js +72 -61
  14. package/node_modules/@aws-sdk/core/dist-cjs/submodules/client/index.js +3 -0
  15. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +70 -61
  16. package/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js +2 -0
  17. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/ProtocolLib.js +11 -10
  18. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/UnionSerde.js +4 -1
  19. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +4 -5
  20. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +2 -1
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +6 -4
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +15 -10
  23. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/SinglePassJsonShapeSerializer.js +2 -1
  24. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js +17 -17
  25. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/AwsQueryProtocol.js +3 -8
  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 +2 -2
  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/setFeature.d.ts +1 -1
  30. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonShapeSerializer.d.ts +2 -2
  31. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +1 -1
  32. package/node_modules/@aws-sdk/core/package.json +14 -12
  33. package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
  34. package/node_modules/@aws-sdk/credential-provider-http/package.json +10 -10
  35. package/node_modules/@aws-sdk/credential-provider-ini/package.json +14 -14
  36. package/node_modules/@aws-sdk/credential-provider-login/package.json +8 -8
  37. package/node_modules/@aws-sdk/credential-provider-node/package.json +12 -12
  38. package/node_modules/@aws-sdk/credential-provider-process/package.json +6 -6
  39. package/node_modules/@aws-sdk/credential-provider-sso/package.json +8 -8
  40. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +7 -7
  41. package/node_modules/@aws-sdk/middleware-host-header/package.json +4 -4
  42. package/node_modules/@aws-sdk/middleware-logger/package.json +3 -3
  43. package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +4 -4
  44. package/node_modules/@aws-sdk/middleware-sdk-s3/LICENSE +201 -0
  45. package/node_modules/@aws-sdk/middleware-sdk-s3/README.md +4 -0
  46. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/index.js +581 -0
  47. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.browser.js +11 -0
  48. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.js +7 -0
  49. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/bucket-endpoint-middleware.js +36 -0
  50. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/check-content-length-header.js +32 -0
  51. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/index.js +9 -0
  52. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/protocol/S3RestXmlProtocol.js +25 -0
  53. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-endpoint-middleware.js +41 -0
  54. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-middleware.js +42 -0
  55. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-expires-middleware.js +33 -0
  56. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCache.js +39 -0
  57. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCacheEntry.js +14 -0
  58. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityProviderImpl.js +49 -0
  59. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/SignatureV4S3Express.js +41 -0
  60. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/constants.js +13 -0
  61. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressHttpSigningMiddleware.js +38 -0
  62. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressMiddleware.js +41 -0
  63. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/signS3Express.js +7 -0
  64. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/index.js +7 -0
  65. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentity.js +1 -0
  66. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentityProvider.js +1 -0
  67. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3Configuration.js +17 -0
  68. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/throw-200-exceptions.js +51 -0
  69. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.browser.js +8 -0
  70. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.js +4 -0
  71. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/validate-bucket-name.js +25 -0
  72. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/bucket-endpoint-middleware.d.ts +13 -0
  73. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/check-content-length-header.d.ts +16 -0
  74. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/index.d.ts +9 -0
  75. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/protocol/S3RestXmlProtocol.d.ts +20 -0
  76. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-endpoint-middleware.d.ts +10 -0
  77. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-middleware.d.ts +20 -0
  78. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-expires-middleware.d.ts +26 -0
  79. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCache.d.ts +16 -0
  80. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +16 -0
  81. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +32 -0
  82. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/SignatureV4S3Express.d.ts +17 -0
  83. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/constants.d.ts +37 -0
  84. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +27 -0
  85. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressMiddleware.d.ts +32 -0
  86. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/signS3Express.d.ts +9 -0
  87. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/index.d.ts +9 -0
  88. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentity.d.ts +6 -0
  89. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +12 -0
  90. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3Configuration.d.ts +79 -0
  91. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/throw-200-exceptions.d.ts +21 -0
  92. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.browser.d.ts +4 -0
  93. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.d.ts +5 -0
  94. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/bucket-endpoint-middleware.d.ts +9 -0
  95. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/check-content-length-header.d.ts +13 -0
  96. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/index.d.ts +9 -0
  97. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/protocol/S3RestXmlProtocol.d.ts +15 -0
  98. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-endpoint-middleware.d.ts +6 -0
  99. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-middleware.d.ts +17 -0
  100. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-expires-middleware.d.ts +14 -0
  101. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCache.d.ts +14 -0
  102. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +12 -0
  103. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +31 -0
  104. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/SignatureV4S3Express.d.ts +19 -0
  105. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/constants.d.ts +11 -0
  106. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +40 -0
  107. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressMiddleware.d.ts +27 -0
  108. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/signS3Express.d.ts +21 -0
  109. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/index.d.ts +17 -0
  110. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentity.d.ts +2 -0
  111. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +8 -0
  112. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3Configuration.d.ts +33 -0
  113. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/throw-200-exceptions.d.ts +19 -0
  114. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.browser.d.ts +1 -0
  115. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.d.ts +2 -0
  116. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/validate-bucket-name.d.ts +13 -0
  117. package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/validate-bucket-name.d.ts +14 -0
  118. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +79 -0
  119. package/node_modules/@aws-sdk/middleware-user-agent/package.json +8 -8
  120. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/bdd.js +100 -0
  121. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/endpointResolver.js +2 -2
  122. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/bdd.js +90 -0
  123. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/endpointResolver.js +2 -2
  124. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/bdd.js +80 -0
  125. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/endpointResolver.js +2 -2
  126. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/bdd.js +80 -0
  127. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/endpointResolver.js +2 -2
  128. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/STSClient.js +1 -0
  129. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/auth/httpAuthSchemeProvider.js +87 -5
  130. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/bdd.js +150 -0
  131. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/endpointResolver.js +2 -2
  132. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/models/errors.js +1 -0
  133. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.js +6 -0
  134. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.shared.js +7 -0
  135. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/bdd.js +97 -0
  136. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/endpointResolver.js +3 -3
  137. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/bdd.js +87 -0
  138. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/endpointResolver.js +3 -3
  139. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/bdd.js +77 -0
  140. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/endpointResolver.js +3 -3
  141. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/bdd.js +77 -0
  142. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/endpointResolver.js +3 -3
  143. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STSClient.js +1 -0
  144. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/auth/httpAuthSchemeProvider.js +88 -4
  145. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/bdd.js +147 -0
  146. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/endpointResolver.js +3 -3
  147. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/models/errors.js +1 -0
  148. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.js +7 -1
  149. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.shared.js +8 -1
  150. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
  151. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/bdd.d.ts +2 -0
  152. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/bdd.d.ts +2 -0
  153. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
  154. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/auth/httpAuthSchemeProvider.d.ts +15 -7
  155. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/bdd.d.ts +2 -0
  156. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/models/errors.d.ts +1 -0
  157. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +3 -2
  158. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +10 -4
  159. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +3 -2
  160. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.shared.d.ts +3 -1
  161. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
  162. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/bdd.d.ts +2 -0
  163. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/bdd.d.ts +2 -0
  164. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
  165. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/auth/httpAuthSchemeProvider.d.ts +20 -9
  166. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/bdd.d.ts +2 -0
  167. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/models/errors.d.ts +1 -0
  168. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +11 -5
  169. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +35 -16
  170. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +11 -5
  171. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +8 -1
  172. package/node_modules/@aws-sdk/nested-clients/package.json +33 -32
  173. package/node_modules/@aws-sdk/region-config-resolver/package.json +5 -5
  174. package/node_modules/@aws-sdk/signature-v4-multi-region/LICENSE +201 -0
  175. package/node_modules/@aws-sdk/signature-v4-multi-region/README.md +32 -0
  176. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js +121 -0
  177. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/SignatureV4MultiRegion.js +112 -0
  178. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/index.js +2 -0
  179. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/signature-v4-crt-container.js +3 -0
  180. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/SignatureV4MultiRegion.d.ts +35 -0
  181. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/index.d.ts +5 -0
  182. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/signature-v4-crt-container.d.ts +28 -0
  183. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/SignatureV4MultiRegion.d.ts +41 -0
  184. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/index.d.ts +2 -0
  185. package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/signature-v4-crt-container.d.ts +20 -0
  186. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +61 -0
  187. package/node_modules/@aws-sdk/token-providers/package.json +7 -7
  188. package/node_modules/@aws-sdk/types/package.json +2 -2
  189. package/node_modules/@aws-sdk/util-arn-parser/LICENSE +201 -0
  190. package/node_modules/@aws-sdk/util-arn-parser/README.md +4 -0
  191. package/node_modules/@aws-sdk/util-arn-parser/dist-cjs/index.js +27 -0
  192. package/node_modules/@aws-sdk/util-arn-parser/dist-es/index.js +21 -0
  193. package/node_modules/@aws-sdk/util-arn-parser/dist-types/index.d.ts +32 -0
  194. package/node_modules/@aws-sdk/util-arn-parser/dist-types/ts3.4/index.d.ts +14 -0
  195. package/node_modules/@aws-sdk/util-arn-parser/package.json +55 -0
  196. package/node_modules/@aws-sdk/util-endpoints/package.json +5 -5
  197. package/node_modules/@aws-sdk/util-user-agent-browser/package.json +3 -3
  198. package/node_modules/@aws-sdk/util-user-agent-node/package.json +5 -5
  199. package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.js +0 -2
  200. package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +0 -2
  201. package/node_modules/@aws-sdk/xml-builder/package.json +3 -3
  202. package/node_modules/@nodable/entities/README.md +41 -0
  203. package/node_modules/@nodable/entities/package.json +54 -0
  204. package/node_modules/@nodable/entities/src/EntityDecoder.js +543 -0
  205. package/node_modules/@nodable/entities/src/EntityEncoder.js +194 -0
  206. package/node_modules/@nodable/entities/src/entities.js +1177 -0
  207. package/node_modules/@nodable/entities/src/entityTries.js +49 -0
  208. package/node_modules/@nodable/entities/src/index.d.ts +264 -0
  209. package/node_modules/@nodable/entities/src/index.js +29 -0
  210. package/node_modules/@smithy/config-resolver/package.json +5 -5
  211. package/node_modules/@smithy/core/dist-cjs/index.js +2 -1
  212. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +32 -14
  213. package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.js +2 -2
  214. package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.js +16 -8
  215. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +17 -10
  216. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +6 -1
  217. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +6 -3
  218. package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/DefaultIdentityProviderConfig.js +2 -1
  219. package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +23 -11
  220. package/node_modules/@smithy/core/dist-es/submodules/cbor/parseCborBody.js +9 -3
  221. package/node_modules/@smithy/core/dist-es/submodules/endpoints/toEndpointV1.js +2 -2
  222. package/node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js +16 -8
  223. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +9 -4
  224. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +8 -6
  225. package/node_modules/@smithy/core/dist-es/submodules/schema/TypeRegistry.js +6 -1
  226. package/node_modules/@smithy/core/dist-es/submodules/serde/parse-utils.js +6 -3
  227. package/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js +2 -1
  228. package/node_modules/@smithy/core/dist-types/submodules/schema/TypeRegistry.d.ts +1 -1
  229. package/node_modules/@smithy/core/package.json +7 -7
  230. package/node_modules/@smithy/credential-provider-imds/package.json +5 -5
  231. package/node_modules/@smithy/fetch-http-handler/package.json +5 -5
  232. package/node_modules/@smithy/hash-node/package.json +2 -2
  233. package/node_modules/@smithy/invalid-dependency/package.json +2 -2
  234. package/node_modules/@smithy/middleware-content-length/package.json +3 -3
  235. package/node_modules/@smithy/middleware-endpoint/package.json +8 -8
  236. package/node_modules/@smithy/middleware-retry/package.json +9 -9
  237. package/node_modules/@smithy/middleware-serde/package.json +4 -4
  238. package/node_modules/@smithy/middleware-stack/package.json +2 -2
  239. package/node_modules/@smithy/node-config-provider/package.json +4 -4
  240. package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +208 -102
  241. package/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +50 -0
  242. package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +83 -41
  243. package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +32 -18
  244. package/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +44 -43
  245. package/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +46 -0
  246. package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +32 -14
  247. package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +32 -8
  248. package/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +14 -6
  249. package/node_modules/@smithy/node-http-handler/package.json +5 -5
  250. package/node_modules/@smithy/property-provider/package.json +2 -2
  251. package/node_modules/@smithy/protocol-http/package.json +2 -2
  252. package/node_modules/@smithy/querystring-builder/package.json +2 -2
  253. package/node_modules/@smithy/querystring-parser/package.json +2 -2
  254. package/node_modules/@smithy/service-error-classification/dist-cjs/index.js +6 -0
  255. package/node_modules/@smithy/service-error-classification/dist-es/index.js +5 -0
  256. package/node_modules/@smithy/service-error-classification/dist-types/index.d.ts +6 -0
  257. package/node_modules/@smithy/service-error-classification/package.json +2 -2
  258. package/node_modules/@smithy/shared-ini-file-loader/package.json +2 -2
  259. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +11 -5
  260. package/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js +11 -5
  261. package/node_modules/@smithy/signature-v4/dist-types/SignatureV4.d.ts +3 -3
  262. package/node_modules/@smithy/signature-v4/package.json +4 -4
  263. package/node_modules/@smithy/smithy-client/dist-cjs/index.js +8 -1
  264. package/node_modules/@smithy/smithy-client/dist-es/command.js +8 -1
  265. package/node_modules/@smithy/smithy-client/package.json +7 -7
  266. package/node_modules/@smithy/types/dist-types/connection/config.d.ts +5 -0
  267. package/node_modules/@smithy/types/dist-types/signature.d.ts +20 -3
  268. package/node_modules/@smithy/types/package.json +1 -1
  269. package/node_modules/@smithy/url-parser/package.json +3 -3
  270. package/node_modules/@smithy/util-defaults-mode-browser/package.json +4 -4
  271. package/node_modules/@smithy/util-defaults-mode-node/package.json +7 -7
  272. package/node_modules/@smithy/util-endpoints/dist-cjs/index.js +79 -71
  273. package/node_modules/@smithy/util-endpoints/dist-es/decideEndpoint.js +4 -3
  274. package/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js +2 -1
  275. package/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js +8 -13
  276. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js +9 -7
  277. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js +12 -8
  278. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js +14 -13
  279. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js +7 -4
  280. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js +10 -8
  281. package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js +4 -4
  282. package/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js +5 -5
  283. package/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js +4 -4
  284. package/node_modules/@smithy/util-endpoints/dist-types/bdd/BinaryDecisionDiagram.d.ts +2 -2
  285. package/node_modules/@smithy/util-endpoints/dist-types/types/shared.d.ts +3 -3
  286. package/node_modules/@smithy/util-endpoints/dist-types/utils/endpointFunctions.d.ts +2 -15
  287. package/node_modules/@smithy/util-endpoints/dist-types/utils/evaluateCondition.d.ts +6 -3
  288. package/node_modules/@smithy/util-endpoints/dist-types/utils/evaluateConditions.d.ts +3 -3
  289. package/node_modules/@smithy/util-endpoints/dist-types/utils/getEndpointHeaders.d.ts +1 -1
  290. package/node_modules/@smithy/util-endpoints/dist-types/utils/getEndpointProperties.d.ts +2 -2
  291. package/node_modules/@smithy/util-endpoints/dist-types/utils/getReferenceValue.d.ts +2 -2
  292. package/node_modules/@smithy/util-endpoints/package.json +3 -3
  293. package/node_modules/@smithy/util-middleware/package.json +2 -2
  294. package/node_modules/@smithy/util-retry/dist-cjs/index.js +20 -10
  295. package/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js +20 -10
  296. package/node_modules/@smithy/util-retry/dist-types/StandardRetryStrategy.d.ts +12 -4
  297. package/node_modules/@smithy/util-retry/package.json +3 -3
  298. package/node_modules/@smithy/util-stream/package.json +4 -4
  299. package/node_modules/@smithy/util-waiter/dist-cjs/index.js +59 -34
  300. package/node_modules/@smithy/util-waiter/dist-es/poller.js +61 -34
  301. package/node_modules/@smithy/util-waiter/dist-types/createWaiter.d.ts +1 -1
  302. package/node_modules/@smithy/util-waiter/dist-types/poller.d.ts +2 -1
  303. package/node_modules/@smithy/util-waiter/dist-types/waiter.d.ts +13 -13
  304. package/node_modules/@smithy/util-waiter/package.json +3 -3
  305. package/node_modules/fast-xml-builder/package.json +1 -1
  306. package/node_modules/fast-xml-builder/src/fxb.js +6 -2
  307. package/node_modules/fast-xml-builder/src/orderedJs2Xml.js +16 -2
  308. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/CHANGELOG.md +53 -0
  309. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/README.md +8 -28
  310. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js +2 -0
  311. package/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +1 -0
  312. package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -0
  313. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxp.d.cts +172 -6
  314. package/node_modules/fast-xml-parser/lib/fxp.min.js +2 -0
  315. package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -0
  316. package/node_modules/fast-xml-parser/lib/fxparser.min.js +2 -0
  317. package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -0
  318. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/package.json +5 -4
  319. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/fxp.d.ts +162 -3
  320. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/DocTypeReader.js +2 -5
  321. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/OptionsBuilder.js +15 -11
  322. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/OrderedObjParser.js +168 -244
  323. package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/XMLParser.js +1 -1
  324. package/package.json +5 -5
  325. package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/ruleset.js +0 -7
  326. package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/ruleset.js +0 -4
  327. package/node_modules/@aws-sdk/client-codedeploy/dist-types/endpoint/ruleset.d.ts +0 -2
  328. package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/endpoint/ruleset.d.ts +0 -2
  329. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/ruleset.js +0 -146
  330. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/ruleset.js +0 -133
  331. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/ruleset.js +0 -106
  332. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/ruleset.js +0 -106
  333. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/ruleset.js +0 -145
  334. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/ruleset.js +0 -143
  335. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/ruleset.js +0 -130
  336. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/ruleset.js +0 -103
  337. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/ruleset.js +0 -103
  338. package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/ruleset.js +0 -142
  339. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
  340. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/ruleset.d.ts +0 -2
  341. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/ruleset.d.ts +0 -2
  342. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
  343. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/ruleset.d.ts +0 -2
  344. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
  345. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/ruleset.d.ts +0 -2
  346. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/ruleset.d.ts +0 -2
  347. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
  348. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/ruleset.d.ts +0 -2
  349. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js +0 -2
  350. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +0 -1
  351. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.cjs +0 -1
  352. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js +0 -2
  353. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js.map +0 -1
  354. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js +0 -2
  355. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js.map +0 -1
  356. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/pem.d.cts +0 -148
  357. package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/pem.d.ts +0 -135
  358. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/LICENSE +0 -0
  359. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxvalidator.min.js +0 -0
  360. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxvalidator.min.js.map +0 -0
  361. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/cli.js +0 -0
  362. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/man.js +0 -0
  363. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/read.js +0 -0
  364. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/fxp.js +0 -0
  365. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/ignoreAttributes.js +0 -0
  366. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/util.js +0 -0
  367. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/CharsSymbol.js +0 -0
  368. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/EntitiesParser.js +0 -0
  369. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OptionsBuilder.js +0 -0
  370. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/BaseOutputBuilder.js +0 -0
  371. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsArrBuilder.js +0 -0
  372. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsMinArrBuilder.js +0 -0
  373. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsObjBuilder.js +0 -0
  374. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/ParserOptionsBuilder.js +0 -0
  375. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/Report.js +0 -0
  376. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/TagPath.js +0 -0
  377. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/TagPathMatcher.js +0 -0
  378. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XMLParser.js +0 -0
  379. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/Xml2JsParser.js +0 -0
  380. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XmlPartReader.js +0 -0
  381. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XmlSpecialTagsReader.js +0 -0
  382. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/inputSource/BufferSource.js +0 -0
  383. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/inputSource/StringSource.js +0 -0
  384. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/EntitiesParser.js +0 -0
  385. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/booleanParser.js +0 -0
  386. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/booleanParserExt.js +0 -0
  387. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/currency.js +0 -0
  388. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/join.js +0 -0
  389. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/number.js +0 -0
  390. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/trim.js +0 -0
  391. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/validator.js +0 -0
  392. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlbuilder/json2xml.js +0 -0
  393. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/node2json.js +0 -0
  394. /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/xmlNode.js +0 -0
  395. /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/CHANGELOG.md +0 -0
  396. /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/LICENSE +0 -0
  397. /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/README.md +0 -0
  398. /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/package.json +0 -0
  399. /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/strnum.js +0 -0
@@ -1,32 +1,46 @@
1
+ import { ClientHttp2SessionRef } from "./http2/ClientHttp2SessionRef";
1
2
  export class NodeHttp2ConnectionPool {
2
3
  sessions = [];
4
+ maxConcurrency = 0;
3
5
  constructor(sessions) {
4
- this.sessions = sessions ?? [];
6
+ this.sessions = (sessions ?? []).map((session) => new ClientHttp2SessionRef(session));
5
7
  }
6
8
  poll() {
7
- if (this.sessions.length > 0) {
8
- return this.sessions.shift();
9
+ let cleanup = false;
10
+ for (const session of this.sessions) {
11
+ if (session.deref().destroyed) {
12
+ cleanup = true;
13
+ continue;
14
+ }
15
+ if (!this.maxConcurrency || session.useCount() < this.maxConcurrency) {
16
+ return session;
17
+ }
18
+ }
19
+ if (cleanup) {
20
+ for (const session of this.sessions) {
21
+ if (session.deref().destroyed) {
22
+ this.remove(session);
23
+ }
24
+ }
9
25
  }
10
26
  }
11
- offerLast(session) {
12
- this.sessions.push(session);
13
- }
14
- contains(session) {
15
- return this.sessions.includes(session);
27
+ offerLast(ref) {
28
+ this.sessions.push(ref);
16
29
  }
17
- remove(session) {
18
- this.sessions = this.sessions.filter((s) => s !== session);
30
+ remove(ref) {
31
+ const ix = this.sessions.indexOf(ref);
32
+ if (ix > -1) {
33
+ this.sessions.splice(ix, 1);
34
+ }
19
35
  }
20
36
  [Symbol.iterator]() {
21
37
  return this.sessions[Symbol.iterator]();
22
38
  }
23
- destroy(connection) {
24
- for (const session of this.sessions) {
25
- if (session === connection) {
26
- if (!session.destroyed) {
27
- session.destroy();
28
- }
29
- }
30
- }
39
+ setMaxConcurrency(maxConcurrency) {
40
+ this.maxConcurrency = maxConcurrency;
41
+ }
42
+ destroy(ref) {
43
+ this.remove(ref);
44
+ ref.destroy();
31
45
  }
32
46
  }
@@ -33,15 +33,17 @@ export class NodeHttp2Handler {
33
33
  destroy() {
34
34
  this.connectionManager.destroy();
35
35
  }
36
- async handle(request, { abortSignal, requestTimeout } = {}) {
36
+ async handle(request, { abortSignal, requestTimeout, isEventStream } = {}) {
37
37
  if (!this.config) {
38
38
  this.config = await this.configProvider;
39
- this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);
40
- if (this.config.maxConcurrentStreams) {
41
- this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);
39
+ const { disableConcurrentStreams, maxConcurrentStreams } = this.config;
40
+ this.connectionManager.setDisableConcurrentStreams(disableConcurrentStreams ?? false);
41
+ if (maxConcurrentStreams) {
42
+ this.connectionManager.setMaxConcurrentStreams(maxConcurrentStreams);
42
43
  }
43
44
  }
44
45
  const { requestTimeout: configRequestTimeout, disableConcurrentStreams } = this.config;
46
+ const useIsolatedSession = disableConcurrentStreams || isEventStream;
45
47
  const effectiveRequestTimeout = requestTimeout ?? configRequestTimeout;
46
48
  return new Promise((_resolve, _reject) => {
47
49
  let fulfilled = false;
@@ -69,18 +71,22 @@ export class NodeHttp2Handler {
69
71
  }
70
72
  const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
71
73
  const requestContext = { destination: new URL(authority) };
72
- const session = this.connectionManager.lease(requestContext, {
74
+ const connectConfig = {
73
75
  requestTimeout: this.config?.sessionTimeout,
74
- disableConcurrentStreams: disableConcurrentStreams || false,
75
- });
76
+ isEventStream,
77
+ };
78
+ const ref = useIsolatedSession
79
+ ? this.connectionManager.createIsolatedSession(requestContext, connectConfig)
80
+ : this.connectionManager.lease(requestContext, connectConfig);
81
+ const session = ref.deref();
76
82
  const rejectWithDestroy = (err) => {
77
- if (disableConcurrentStreams) {
78
- this.destroySession(session);
83
+ if (useIsolatedSession) {
84
+ ref.destroy();
79
85
  }
80
86
  fulfilled = true;
81
87
  reject(err);
82
88
  };
83
- const queryString = buildQueryString(query || {});
89
+ const queryString = buildQueryString(query ?? {});
84
90
  let path = request.path;
85
91
  if (queryString) {
86
92
  path += `?${queryString}`;
@@ -88,28 +94,14 @@ export class NodeHttp2Handler {
88
94
  if (request.fragment) {
89
95
  path += `#${request.fragment}`;
90
96
  }
91
- const req = session.request({
97
+ const clientHttp2Stream = session.request({
92
98
  ...request.headers,
93
99
  [constants.HTTP2_HEADER_PATH]: path,
94
100
  [constants.HTTP2_HEADER_METHOD]: method,
95
101
  });
96
- session.ref();
97
- req.on("response", (headers) => {
98
- const httpResponse = new HttpResponse({
99
- statusCode: headers[":status"] || -1,
100
- headers: getTransformedHeaders(headers),
101
- body: req,
102
- });
103
- fulfilled = true;
104
- resolve({ response: httpResponse });
105
- if (disableConcurrentStreams) {
106
- session.close();
107
- this.connectionManager.deleteSession(authority, session);
108
- }
109
- });
110
102
  if (effectiveRequestTimeout) {
111
- req.setTimeout(effectiveRequestTimeout, () => {
112
- req.close();
103
+ clientHttp2Stream.setTimeout(effectiveRequestTimeout, () => {
104
+ clientHttp2Stream.close();
113
105
  const timeoutError = new Error(`Stream timed out because of no activity for ${effectiveRequestTimeout} ms`);
114
106
  timeoutError.name = "TimeoutError";
115
107
  rejectWithDestroy(timeoutError);
@@ -117,36 +109,50 @@ export class NodeHttp2Handler {
117
109
  }
118
110
  if (abortSignal) {
119
111
  const onAbort = () => {
120
- req.close();
112
+ clientHttp2Stream.close();
121
113
  const abortError = buildAbortError(abortSignal);
122
114
  rejectWithDestroy(abortError);
123
115
  };
124
116
  if (typeof abortSignal.addEventListener === "function") {
125
117
  const signal = abortSignal;
126
118
  signal.addEventListener("abort", onAbort, { once: true });
127
- req.once("close", () => signal.removeEventListener("abort", onAbort));
119
+ clientHttp2Stream.once("close", () => signal.removeEventListener("abort", onAbort));
128
120
  }
129
121
  else {
130
122
  abortSignal.onabort = onAbort;
131
123
  }
132
124
  }
133
- req.on("frameError", (type, code, id) => {
125
+ clientHttp2Stream.on("frameError", (type, code, id) => {
134
126
  rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));
135
127
  });
136
- req.on("error", rejectWithDestroy);
137
- req.on("aborted", () => {
138
- rejectWithDestroy(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`));
128
+ clientHttp2Stream.on("error", rejectWithDestroy);
129
+ clientHttp2Stream.on("aborted", () => {
130
+ rejectWithDestroy(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${clientHttp2Stream.rstCode}.`));
131
+ });
132
+ clientHttp2Stream.on("response", (headers) => {
133
+ const httpResponse = new HttpResponse({
134
+ statusCode: headers[":status"] ?? -1,
135
+ headers: getTransformedHeaders(headers),
136
+ body: clientHttp2Stream,
137
+ });
138
+ fulfilled = true;
139
+ resolve({ response: httpResponse });
140
+ if (useIsolatedSession) {
141
+ session.close();
142
+ }
139
143
  });
140
- req.on("close", () => {
141
- session.unref();
142
- if (disableConcurrentStreams) {
143
- session.destroy();
144
+ clientHttp2Stream.on("close", () => {
145
+ if (useIsolatedSession) {
146
+ ref.destroy();
147
+ }
148
+ else {
149
+ this.connectionManager.release(requestContext, ref);
144
150
  }
145
151
  if (!fulfilled) {
146
152
  rejectWithDestroy(new Error("Unexpected error: http2 request did not get a response"));
147
153
  }
148
154
  });
149
- writeRequestBodyPromise = writeRequestBody(req, request, effectiveRequestTimeout);
155
+ writeRequestBodyPromise = writeRequestBody(clientHttp2Stream, request, effectiveRequestTimeout);
150
156
  });
151
157
  }
152
158
  updateHttpClientConfig(key, value) {
@@ -161,9 +167,4 @@ export class NodeHttp2Handler {
161
167
  httpHandlerConfigs() {
162
168
  return this.config ?? {};
163
169
  }
164
- destroySession(session) {
165
- if (!session.destroyed) {
166
- session.destroy();
167
- }
168
- }
169
170
  }
@@ -0,0 +1,46 @@
1
+ import type { ClientHttp2Session } from "node:http2";
2
+ /**
3
+ * Shared access ref counter for ClientHttp2Session, where owners are
4
+ * in-flight requests.
5
+ *
6
+ * @internal
7
+ * @since 4.6.0
8
+ */
9
+ export declare class ClientHttp2SessionRef {
10
+ readonly id: number;
11
+ /**
12
+ * Total calls to retain for this session.
13
+ */
14
+ total: number;
15
+ /**
16
+ * Max ref count observed.
17
+ */
18
+ max: number;
19
+ private readonly session;
20
+ private refs;
21
+ constructor(session: ClientHttp2Session);
22
+ /**
23
+ * Signal that the session is entering a request span and has an additional owning request.
24
+ * This must be called when beginning a request using the session.
25
+ */
26
+ retain(): void;
27
+ /**
28
+ * Release reference to session, to be called when it exits request span, indicating one fewer owning request.
29
+ * When reaching zero, the session is unref'd.
30
+ * This must be called when concluding a request using the session.
31
+ */
32
+ free(): void;
33
+ /**
34
+ * Access the session (don't call ref/unref on it).
35
+ */
36
+ deref(): ClientHttp2Session;
37
+ /**
38
+ * Allow open refs to free on their own.
39
+ */
40
+ close(): void;
41
+ destroy(): void;
42
+ /**
43
+ * @returns the current number of active references (in-flight requests).
44
+ */
45
+ useCount(): number;
46
+ }
@@ -1,24 +1,42 @@
1
- import type { RequestContext } from "@smithy/types";
2
- import type { ConnectConfiguration } from "@smithy/types";
3
- import type { ConnectionManager, ConnectionManagerConfiguration } from "@smithy/types";
4
- import type { ClientHttp2Session } from "node:http2";
1
+ import type { ConnectConfiguration, ConnectionManager, ConnectionManagerConfiguration, RequestContext } from "@smithy/types";
2
+ import { ClientHttp2SessionRef } from "./http2/ClientHttp2SessionRef";
5
3
  /**
6
- * @public
4
+ * This class previously implemented the ConnectionManager<ClientHttp2Session> interface,
5
+ * but this class isn't exported from this package, except as a private property of NodeHttp2Handler.
6
+ *
7
+ * @since 4.6.0
8
+ * @internal
7
9
  */
8
- export declare class NodeHttp2ConnectionManager implements ConnectionManager<ClientHttp2Session> {
9
- constructor(config: ConnectionManagerConfiguration);
10
+ export declare class NodeHttp2ConnectionManager implements ConnectionManager<ClientHttp2SessionRef> {
10
11
  private config;
11
- private readonly sessionCache;
12
- lease(requestContext: RequestContext, connectionConfiguration: ConnectConfiguration): ClientHttp2Session;
12
+ private readonly connectionPools;
13
+ constructor(config: ConnectionManagerConfiguration);
14
+ /**
15
+ * Acquire a session for making a request.
16
+ */
17
+ lease(requestContext: RequestContext, connectionConfiguration: ConnectConfiguration): ClientHttp2SessionRef;
13
18
  /**
14
- * Delete a session from the connection pool.
15
- * @param authority The authority of the session to delete.
16
- * @param session The session to delete.
19
+ * Signal that a request using this session has completed.
20
+ *
21
+ * The session remains in its pool for reuse.
22
+ * This method is not called for isolated sessions.
17
23
  */
18
- deleteSession(authority: string, session: ClientHttp2Session): void;
19
- release(requestContext: RequestContext, session: ClientHttp2Session): void;
24
+ release(_requestContext: RequestContext, ref: ClientHttp2SessionRef): void;
25
+ /**
26
+ * Create an isolated session that isn't part of the connection pools.
27
+ * For use in event-streams or when concurrency is turned off.
28
+ */
29
+ createIsolatedSession(requestContext: RequestContext, connectionConfiguration: ConnectConfiguration): ClientHttp2SessionRef;
20
30
  destroy(): void;
21
31
  setMaxConcurrentStreams(maxConcurrentStreams: number): void;
22
32
  setDisableConcurrentStreams(disableConcurrentStreams: boolean): void;
33
+ /**
34
+ * @internal
35
+ * @returns a snapshot of the state of all connection pools and their sessions.
36
+ */
37
+ debug(): Record<string, any>;
38
+ private removeFromPoolAndClose;
39
+ private removeFromPoolAndCheckedDestroy;
40
+ private getPool;
23
41
  private getUrlString;
24
42
  }
@@ -1,12 +1,36 @@
1
1
  import type { ConnectionPool } from "@smithy/types";
2
2
  import type { ClientHttp2Session } from "node:http2";
3
- export declare class NodeHttp2ConnectionPool implements ConnectionPool<ClientHttp2Session> {
4
- private sessions;
3
+ import { ClientHttp2SessionRef } from "./http2/ClientHttp2SessionRef";
4
+ /**
5
+ * These are keyed by URL, therefore all sessions within this class' state
6
+ * are for the same URL.
7
+ *
8
+ * Sessions remain in the pool for their entire lifetime (until destroyed or
9
+ * removed). The pool tracks capacity via each session's ref count.
10
+ *
11
+ * Interface implementation changed from ConnectionPool<ClientHttp2Session>.
12
+ * @since 4.6.0
13
+ * @internal
14
+ */
15
+ export declare class NodeHttp2ConnectionPool implements ConnectionPool<ClientHttp2SessionRef> {
16
+ private readonly sessions;
17
+ private maxConcurrency;
5
18
  constructor(sessions?: ClientHttp2Session[]);
6
- poll(): ClientHttp2Session | void;
7
- offerLast(session: ClientHttp2Session): void;
8
- contains(session: ClientHttp2Session): boolean;
9
- remove(session: ClientHttp2Session): void;
10
- [Symbol.iterator](): ArrayIterator<ClientHttp2Session>;
11
- destroy(connection: ClientHttp2Session): void;
19
+ /**
20
+ * Find a session with available capacity (refs < maxConcurrency).
21
+ * Returns undefined if all sessions are at capacity or the pool is empty.
22
+ */
23
+ poll(): ClientHttp2SessionRef | undefined;
24
+ /**
25
+ * Add a session to the pool.
26
+ */
27
+ offerLast(ref: ClientHttp2SessionRef): void;
28
+ remove(ref: ClientHttp2SessionRef): void;
29
+ [Symbol.iterator](): ArrayIterator<ClientHttp2SessionRef>;
30
+ setMaxConcurrency(maxConcurrency: number): void;
31
+ /**
32
+ * This is unused, but part of the interface.
33
+ * @deprecated
34
+ */
35
+ destroy(ref: ClientHttp2SessionRef): void;
12
36
  }
@@ -32,6 +32,18 @@ export interface NodeHttp2HandlerOptions {
32
32
  */
33
33
  maxConcurrentStreams?: number;
34
34
  }
35
+ /**
36
+ * This is derived from the smithyContext object. This signals to the NodeHttp2Handler specifically
37
+ * that the connection pool should not be used to acquire a connection. The event stream should
38
+ * have its own new connection.
39
+ *
40
+ * This does not apply to WebSocket event streams, since there is no pooling.
41
+ *
42
+ * @internal
43
+ */
44
+ type EventStreamSignal = {
45
+ isEventStream?: boolean;
46
+ };
35
47
  /**
36
48
  * A request handler using the node:http2 package.
37
49
  * @public
@@ -50,14 +62,10 @@ export declare class NodeHttp2Handler implements HttpHandler<NodeHttp2HandlerOpt
50
62
  static create(instanceOrOptions?: HttpHandler<any> | NodeHttp2HandlerOptions | Provider<NodeHttp2HandlerOptions | void>): HttpHandler<any> | NodeHttp2Handler;
51
63
  constructor(options?: NodeHttp2HandlerOptions | Provider<NodeHttp2HandlerOptions | void>);
52
64
  destroy(): void;
53
- handle(request: HttpRequest, { abortSignal, requestTimeout }?: HttpHandlerOptions): Promise<{
65
+ handle(request: HttpRequest, { abortSignal, requestTimeout, isEventStream }?: HttpHandlerOptions & EventStreamSignal): Promise<{
54
66
  response: HttpResponse;
55
67
  }>;
56
68
  updateHttpClientConfig(key: keyof NodeHttp2HandlerOptions, value: NodeHttp2HandlerOptions[typeof key]): void;
57
69
  httpHandlerConfigs(): NodeHttp2HandlerOptions;
58
- /**
59
- * Destroys a session.
60
- * @param session - the session to destroy.
61
- */
62
- private destroySession;
63
70
  }
71
+ export {};
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/node-http-handler",
3
- "version": "4.5.2",
3
+ "version": "4.6.1",
4
4
  "description": "Provides a way to make requests",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:types' 'yarn:build:es:cjs'",
@@ -26,13 +26,13 @@
26
26
  "module": "./dist-es/index.js",
27
27
  "types": "./dist-types/index.d.ts",
28
28
  "dependencies": {
29
- "@smithy/protocol-http": "^5.3.13",
30
- "@smithy/querystring-builder": "^4.2.13",
31
- "@smithy/types": "^4.14.0",
29
+ "@smithy/protocol-http": "^5.3.14",
30
+ "@smithy/querystring-builder": "^4.2.14",
31
+ "@smithy/types": "^4.14.1",
32
32
  "tslib": "^2.6.2"
33
33
  },
34
34
  "devDependencies": {
35
- "@smithy/abort-controller": "^4.2.13",
35
+ "@smithy/abort-controller": "^4.2.14",
36
36
  "@types/node": "^18.11.9",
37
37
  "concurrently": "7.0.0",
38
38
  "downlevel-dts": "0.10.1",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/property-provider",
3
- "version": "4.2.13",
3
+ "version": "4.2.14",
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 property-provider",
@@ -23,7 +23,7 @@
23
23
  "license": "Apache-2.0",
24
24
  "sideEffects": false,
25
25
  "dependencies": {
26
- "@smithy/types": "^4.14.0",
26
+ "@smithy/types": "^4.14.1",
27
27
  "tslib": "^2.6.2"
28
28
  },
29
29
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/protocol-http",
3
- "version": "5.3.13",
3
+ "version": "5.3.14",
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 protocol-http",
@@ -24,7 +24,7 @@
24
24
  "license": "Apache-2.0",
25
25
  "sideEffects": false,
26
26
  "dependencies": {
27
- "@smithy/types": "^4.14.0",
27
+ "@smithy/types": "^4.14.1",
28
28
  "tslib": "^2.6.2"
29
29
  },
30
30
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/querystring-builder",
3
- "version": "4.2.13",
3
+ "version": "4.2.14",
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 querystring-builder",
@@ -22,7 +22,7 @@
22
22
  "license": "Apache-2.0",
23
23
  "sideEffects": false,
24
24
  "dependencies": {
25
- "@smithy/types": "^4.14.0",
25
+ "@smithy/types": "^4.14.1",
26
26
  "@smithy/util-uri-escape": "^4.2.2",
27
27
  "tslib": "^2.6.2"
28
28
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/querystring-parser",
3
- "version": "4.2.13",
3
+ "version": "4.2.14",
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 querystring-parser",
@@ -23,7 +23,7 @@
23
23
  "license": "Apache-2.0",
24
24
  "sideEffects": false,
25
25
  "dependencies": {
26
- "@smithy/types": "^4.14.0",
26
+ "@smithy/types": "^4.14.1",
27
27
  "tslib": "^2.6.2"
28
28
  },
29
29
  "engines": {
@@ -51,11 +51,13 @@ const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||
51
51
  error.$retryable?.throttling == true;
52
52
  const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||
53
53
  isClockSkewCorrectedError(error) ||
54
+ (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
54
55
  TRANSIENT_ERROR_CODES.includes(error.name) ||
55
56
  NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
56
57
  NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
57
58
  TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
58
59
  isBrowserNetworkError(error) ||
60
+ isNodeJsHttp2TransientError(error) ||
59
61
  (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
60
62
  const isServerError = (error) => {
61
63
  if (error.$metadata?.httpStatusCode !== undefined) {
@@ -67,10 +69,14 @@ const isServerError = (error) => {
67
69
  }
68
70
  return false;
69
71
  };
72
+ function isNodeJsHttp2TransientError(error) {
73
+ return error.code === "ERR_HTTP2_STREAM_ERROR" && error.message.includes("NGHTTP2_REFUSED_STREAM");
74
+ }
70
75
 
71
76
  exports.isBrowserNetworkError = isBrowserNetworkError;
72
77
  exports.isClockSkewCorrectedError = isClockSkewCorrectedError;
73
78
  exports.isClockSkewError = isClockSkewError;
79
+ exports.isNodeJsHttp2TransientError = isNodeJsHttp2TransientError;
74
80
  exports.isRetryableByTrait = isRetryableByTrait;
75
81
  exports.isServerError = isServerError;
76
82
  exports.isThrottlingError = isThrottlingError;
@@ -21,11 +21,13 @@ export const isThrottlingError = (error) => error.$metadata?.httpStatusCode ===
21
21
  error.$retryable?.throttling == true;
22
22
  export const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||
23
23
  isClockSkewCorrectedError(error) ||
24
+ (error.name === "InvalidSignatureException" && error.message?.includes("Signature expired")) ||
24
25
  TRANSIENT_ERROR_CODES.includes(error.name) ||
25
26
  NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || "") ||
26
27
  NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
27
28
  TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
28
29
  isBrowserNetworkError(error) ||
30
+ isNodeJsHttp2TransientError(error) ||
29
31
  (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
30
32
  export const isServerError = (error) => {
31
33
  if (error.$metadata?.httpStatusCode !== undefined) {
@@ -37,3 +39,6 @@ export const isServerError = (error) => {
37
39
  }
38
40
  return false;
39
41
  };
42
+ export function isNodeJsHttp2TransientError(error) {
43
+ return error.code === "ERR_HTTP2_STREAM_ERROR" && error.message.includes("NGHTTP2_REFUSED_STREAM");
44
+ }
@@ -22,3 +22,9 @@ export declare const isThrottlingError: (error: SdkError) => boolean;
22
22
  */
23
23
  export declare const isTransientError: (error: SdkError, depth?: number) => boolean;
24
24
  export declare const isServerError: (error: SdkError) => boolean;
25
+ /**
26
+ * @internal
27
+ */
28
+ export declare function isNodeJsHttp2TransientError(error: Error & {
29
+ code?: string;
30
+ }): boolean;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/service-error-classification",
3
- "version": "4.2.13",
3
+ "version": "4.3.1",
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 service-error-classification",
@@ -54,6 +54,6 @@
54
54
  "directory": ".release/package"
55
55
  },
56
56
  "dependencies": {
57
- "@smithy/types": "^4.14.0"
57
+ "@smithy/types": "^4.14.1"
58
58
  }
59
59
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@smithy/shared-ini-file-loader",
3
- "version": "4.4.8",
3
+ "version": "4.4.9",
4
4
  "dependencies": {
5
- "@smithy/types": "^4.14.0",
5
+ "@smithy/types": "^4.14.1",
6
6
  "tslib": "^2.6.2"
7
7
  },
8
8
  "devDependencies": {
@@ -448,7 +448,7 @@ class SignatureV4 extends SignatureV4Base {
448
448
  return this.signRequest(toSign, options);
449
449
  }
450
450
  }
451
- async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService }) {
451
+ async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService, eventStreamCredentials, }) {
452
452
  const region = signingRegion ?? (await this.regionProvider());
453
453
  const { shortDate, longDate } = this.formatDate(signingDate);
454
454
  const scope = createScope(shortDate, region, signingService ?? this.service);
@@ -464,9 +464,14 @@ class SignatureV4 extends SignatureV4Base {
464
464
  hashedHeaders,
465
465
  hashedPayload,
466
466
  ].join("\n");
467
- return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
467
+ return this.signString(stringToSign, {
468
+ signingDate,
469
+ signingRegion: region,
470
+ signingService,
471
+ eventStreamCredentials,
472
+ });
468
473
  }
469
- async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService }) {
474
+ async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService, eventStreamCredentials }) {
470
475
  const promise = this.signEvent({
471
476
  headers: this.headerFormatter.format(signableMessage.message.headers),
472
477
  payload: signableMessage.message.body,
@@ -475,13 +480,14 @@ class SignatureV4 extends SignatureV4Base {
475
480
  signingRegion,
476
481
  signingService,
477
482
  priorSignature: signableMessage.priorSignature,
483
+ eventStreamCredentials,
478
484
  });
479
485
  return promise.then((signature) => {
480
486
  return { message: signableMessage.message, signature };
481
487
  });
482
488
  }
483
- async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService } = {}) {
484
- const credentials = await this.credentialProvider();
489
+ async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService, eventStreamCredentials, } = {}) {
490
+ const credentials = eventStreamCredentials ?? (await this.credentialProvider());
485
491
  this.validateResolvedCredentials(credentials);
486
492
  const region = signingRegion ?? (await this.regionProvider());
487
493
  const { shortDate } = this.formatDate(signingDate);