@cdk8s/awscdk-resolver 0.0.539 → 0.0.540
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.
- package/.jsii +3 -3
- package/lib/resolve.js +1 -1
- package/node_modules/@aws-sdk/client-cloudformation/dist-cjs/endpoint/bdd.js +52 -0
- package/node_modules/@aws-sdk/client-cloudformation/dist-cjs/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/client-cloudformation/dist-es/endpoint/bdd.js +49 -0
- package/node_modules/@aws-sdk/client-cloudformation/dist-es/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/client-cloudformation/dist-types/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/client-cloudformation/package.json +5 -5
- package/node_modules/@aws-sdk/core/dist-cjs/index.js +18 -10
- package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +18 -10
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +6 -4
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +6 -3
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/SinglePassJsonShapeSerializer.js +2 -1
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/QueryShapeSerializer.js +2 -1
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeSerializer.js +4 -2
- package/node_modules/@aws-sdk/core/package.json +1 -1
- package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-http/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +9 -9
- package/node_modules/@aws-sdk/credential-provider-login/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
- package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-sdk-s3/LICENSE +201 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/README.md +4 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/index.js +597 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/bucket-endpoint-middleware.js +36 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/check-content-length-header.js +32 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/index.js +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/protocol/S3RestXmlProtocol.js +25 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-endpoint-middleware.js +41 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/region-redirect-middleware.js +42 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-expires-middleware.js +33 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCache.js +39 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityCacheEntry.js +14 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/S3ExpressIdentityProviderImpl.js +49 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/classes/SignatureV4S3Express.js +41 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/constants.js +13 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressHttpSigningMiddleware.js +38 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/s3ExpressMiddleware.js +41 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/functions/signS3Express.js +7 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/index.js +7 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentity.js +1 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3-express/interfaces/S3ExpressIdentityProvider.js +1 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/s3Configuration.js +17 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/throw-200-exceptions.js +67 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/validate-bucket-name.js +25 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/bucket-endpoint-middleware.d.ts +13 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/check-content-length-header.d.ts +16 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/index.d.ts +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/protocol/S3RestXmlProtocol.d.ts +20 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-endpoint-middleware.d.ts +10 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/region-redirect-middleware.d.ts +20 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-expires-middleware.d.ts +26 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCache.d.ts +16 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +16 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +32 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/classes/SignatureV4S3Express.d.ts +17 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/constants.d.ts +37 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +27 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/s3ExpressMiddleware.d.ts +32 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/functions/signS3Express.d.ts +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/index.d.ts +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentity.d.ts +6 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +12 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/s3Configuration.d.ts +79 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/throw-200-exceptions.d.ts +20 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/bucket-endpoint-middleware.d.ts +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/check-content-length-header.d.ts +13 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/index.d.ts +9 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/protocol/S3RestXmlProtocol.d.ts +15 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-endpoint-middleware.d.ts +6 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/region-redirect-middleware.d.ts +17 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-expires-middleware.d.ts +14 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCache.d.ts +14 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityCacheEntry.d.ts +12 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/S3ExpressIdentityProviderImpl.d.ts +31 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/classes/SignatureV4S3Express.d.ts +19 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/constants.d.ts +11 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressHttpSigningMiddleware.d.ts +40 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/s3ExpressMiddleware.d.ts +27 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/functions/signS3Express.d.ts +21 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/index.d.ts +17 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentity.d.ts +2 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3-express/interfaces/S3ExpressIdentityProvider.d.ts +8 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/s3Configuration.d.ts +33 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/throw-200-exceptions.d.ts +17 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/validate-bucket-name.d.ts +13 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/validate-bucket-name.d.ts +14 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +72 -0
- package/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/bdd.js +100 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/bdd.js +90 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/bdd.js +80 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/bdd.js +80 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/STSClient.js +1 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/auth/httpAuthSchemeProvider.js +87 -5
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/bdd.js +150 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.js +6 -0
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/runtimeConfig.shared.js +7 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/bdd.js +97 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/bdd.js +87 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/bdd.js +77 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/bdd.js +77 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STSClient.js +1 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/auth/httpAuthSchemeProvider.js +88 -4
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/bdd.js +147 -0
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.js +7 -1
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.shared.js +8 -1
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/auth/httpAuthSchemeProvider.d.ts +15 -7
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +3 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +10 -4
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +3 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.shared.d.ts +3 -1
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/auth/httpAuthSchemeProvider.d.ts +20 -9
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +11 -5
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +35 -16
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +11 -5
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +8 -1
- package/node_modules/@aws-sdk/nested-clients/package.json +5 -4
- package/node_modules/@aws-sdk/signature-v4-multi-region/LICENSE +201 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/README.md +32 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js +121 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/SignatureV4MultiRegion.js +112 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/index.js +2 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-es/signature-v4-crt-container.js +3 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/SignatureV4MultiRegion.d.ts +35 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/index.d.ts +5 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/signature-v4-crt-container.d.ts +28 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/SignatureV4MultiRegion.d.ts +41 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/index.d.ts +2 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/dist-types/ts3.4/signature-v4-crt-container.d.ts +20 -0
- package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +61 -0
- package/node_modules/@aws-sdk/token-providers/package.json +3 -3
- package/node_modules/@aws-sdk/util-arn-parser/LICENSE +201 -0
- package/node_modules/@aws-sdk/util-arn-parser/README.md +4 -0
- package/node_modules/@aws-sdk/util-arn-parser/dist-cjs/index.js +27 -0
- package/node_modules/@aws-sdk/util-arn-parser/dist-es/index.js +21 -0
- package/node_modules/@aws-sdk/util-arn-parser/dist-types/index.d.ts +32 -0
- package/node_modules/@aws-sdk/util-arn-parser/dist-types/ts3.4/index.d.ts +14 -0
- package/node_modules/@aws-sdk/util-arn-parser/package.json +55 -0
- package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
- package/node_modules/@smithy/config-resolver/package.json +2 -2
- package/node_modules/@smithy/core/dist-cjs/index.js +2 -1
- package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +32 -14
- package/node_modules/@smithy/core/dist-cjs/submodules/endpoints/index.js +2 -2
- package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.js +16 -8
- package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +17 -10
- package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +6 -1
- package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +6 -3
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/DefaultIdentityProviderConfig.js +2 -1
- package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +23 -11
- package/node_modules/@smithy/core/dist-es/submodules/cbor/parseCborBody.js +9 -3
- package/node_modules/@smithy/core/dist-es/submodules/endpoints/toEndpointV1.js +2 -2
- package/node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js +16 -8
- package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +9 -4
- package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +8 -6
- package/node_modules/@smithy/core/dist-es/submodules/schema/TypeRegistry.js +6 -1
- package/node_modules/@smithy/core/dist-es/submodules/serde/parse-utils.js +6 -3
- package/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js +2 -1
- package/node_modules/@smithy/core/dist-types/submodules/schema/TypeRegistry.d.ts +1 -1
- package/node_modules/@smithy/core/package.json +2 -2
- package/node_modules/@smithy/middleware-endpoint/package.json +3 -3
- package/node_modules/@smithy/middleware-retry/package.json +5 -5
- package/node_modules/@smithy/middleware-serde/package.json +2 -2
- package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +188 -93
- package/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +45 -0
- package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +71 -35
- package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +32 -18
- package/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +41 -40
- package/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +42 -0
- package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +34 -14
- package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +32 -8
- package/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +0 -5
- package/node_modules/@smithy/node-http-handler/package.json +1 -1
- package/node_modules/@smithy/service-error-classification/dist-cjs/index.js +5 -0
- package/node_modules/@smithy/service-error-classification/dist-es/index.js +4 -0
- package/node_modules/@smithy/service-error-classification/dist-types/index.d.ts +6 -0
- package/node_modules/@smithy/service-error-classification/package.json +1 -1
- package/node_modules/@smithy/smithy-client/package.json +4 -4
- package/node_modules/@smithy/util-defaults-mode-browser/package.json +2 -2
- package/node_modules/@smithy/util-defaults-mode-node/package.json +3 -3
- package/node_modules/@smithy/util-endpoints/dist-cjs/index.js +65 -53
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js +9 -7
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js +12 -8
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js +14 -13
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js +7 -4
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js +10 -8
- package/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js +4 -4
- package/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js +5 -5
- package/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js +4 -4
- package/node_modules/@smithy/util-endpoints/dist-types/types/shared.d.ts +3 -3
- package/node_modules/@smithy/util-endpoints/dist-types/utils/endpointFunctions.d.ts +2 -15
- package/node_modules/@smithy/util-endpoints/dist-types/utils/evaluateCondition.d.ts +6 -3
- package/node_modules/@smithy/util-endpoints/dist-types/utils/evaluateConditions.d.ts +3 -3
- package/node_modules/@smithy/util-endpoints/dist-types/utils/getEndpointHeaders.d.ts +1 -1
- package/node_modules/@smithy/util-endpoints/dist-types/utils/getEndpointProperties.d.ts +2 -2
- package/node_modules/@smithy/util-endpoints/dist-types/utils/getReferenceValue.d.ts +2 -2
- package/node_modules/@smithy/util-endpoints/package.json +1 -1
- package/node_modules/@smithy/util-retry/package.json +2 -2
- package/node_modules/@smithy/util-stream/package.json +2 -2
- package/package.json +3 -3
- package/node_modules/@aws-sdk/client-cloudformation/dist-cjs/endpoint/ruleset.js +0 -7
- package/node_modules/@aws-sdk/client-cloudformation/dist-es/endpoint/ruleset.js +0 -4
- package/node_modules/@aws-sdk/client-cloudformation/dist-types/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/client-cloudformation/dist-types/ts3.4/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/endpoint/ruleset.js +0 -146
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/endpoint/ruleset.js +0 -133
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/endpoint/ruleset.js +0 -106
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/endpoint/ruleset.js +0 -106
- package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/endpoint/ruleset.js +0 -145
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/cognito-identity/endpoint/ruleset.js +0 -143
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/ruleset.js +0 -130
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/ruleset.js +0 -103
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/ruleset.js +0 -103
- package/node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/ruleset.js +0 -142
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/endpoint/ruleset.d.ts +0 -2
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
import http2 from "node:http2";
|
|
2
|
+
import { ClientHttp2SessionRef } from "./http2/ClientHttp2SessionRef";
|
|
2
3
|
import { NodeHttp2ConnectionPool } from "./node-http2-connection-pool";
|
|
3
4
|
export class NodeHttp2ConnectionManager {
|
|
5
|
+
config;
|
|
6
|
+
connectionPools = new Map();
|
|
4
7
|
constructor(config) {
|
|
5
8
|
this.config = config;
|
|
6
9
|
if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {
|
|
7
10
|
throw new RangeError("maxConcurrency must be greater than zero.");
|
|
8
11
|
}
|
|
9
12
|
}
|
|
10
|
-
config;
|
|
11
|
-
sessionCache = new Map();
|
|
12
13
|
lease(requestContext, connectionConfiguration) {
|
|
13
14
|
const url = this.getUrlString(requestContext);
|
|
14
|
-
const
|
|
15
|
-
if (
|
|
16
|
-
const
|
|
17
|
-
if (
|
|
18
|
-
|
|
15
|
+
const pool = this.getPool(url);
|
|
16
|
+
if (!this.config.disableConcurrency && !connectionConfiguration.isEventStream) {
|
|
17
|
+
const available = pool.poll();
|
|
18
|
+
if (available) {
|
|
19
|
+
available.retain();
|
|
20
|
+
return available;
|
|
19
21
|
}
|
|
20
22
|
}
|
|
21
|
-
const
|
|
23
|
+
const ref = new ClientHttp2SessionRef(http2.connect(url));
|
|
24
|
+
const session = ref.deref();
|
|
22
25
|
if (this.config.maxConcurrency) {
|
|
23
26
|
session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {
|
|
24
27
|
if (err) {
|
|
@@ -29,47 +32,48 @@ export class NodeHttp2ConnectionManager {
|
|
|
29
32
|
}
|
|
30
33
|
});
|
|
31
34
|
}
|
|
32
|
-
session.unref();
|
|
33
35
|
const destroySessionCb = () => {
|
|
34
36
|
session.destroy();
|
|
35
|
-
this.
|
|
37
|
+
this.removeFromPool(url, ref);
|
|
36
38
|
};
|
|
37
39
|
session.on("goaway", destroySessionCb);
|
|
38
40
|
session.on("error", destroySessionCb);
|
|
39
41
|
session.on("frameError", destroySessionCb);
|
|
40
|
-
session.on("close", () => this.
|
|
42
|
+
session.on("close", () => this.removeFromPool(url, ref));
|
|
41
43
|
if (connectionConfiguration.requestTimeout) {
|
|
42
44
|
session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);
|
|
43
45
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return session;
|
|
46
|
+
pool.offerLast(ref);
|
|
47
|
+
ref.retain();
|
|
48
|
+
return ref;
|
|
48
49
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
if (!existingConnectionPool) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
if (!existingConnectionPool.contains(session)) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
existingConnectionPool.remove(session);
|
|
58
|
-
this.sessionCache.set(authority, existingConnectionPool);
|
|
50
|
+
release(_requestContext, ref) {
|
|
51
|
+
ref.free();
|
|
59
52
|
}
|
|
60
|
-
|
|
61
|
-
const
|
|
62
|
-
|
|
53
|
+
createIsolatedSession(requestContext, connectionConfiguration) {
|
|
54
|
+
const url = this.getUrlString(requestContext);
|
|
55
|
+
const ref = new ClientHttp2SessionRef(http2.connect(url));
|
|
56
|
+
const session = ref.deref();
|
|
57
|
+
session.settings({ maxConcurrentStreams: 1 });
|
|
58
|
+
const destroySession = () => {
|
|
59
|
+
session.destroy();
|
|
60
|
+
};
|
|
61
|
+
session.on("goaway", destroySession);
|
|
62
|
+
session.on("error", destroySession);
|
|
63
|
+
session.on("frameError", destroySession);
|
|
64
|
+
session.on("close", destroySession);
|
|
65
|
+
if (connectionConfiguration.requestTimeout) {
|
|
66
|
+
session.setTimeout(connectionConfiguration.requestTimeout, destroySession);
|
|
67
|
+
}
|
|
68
|
+
ref.retain();
|
|
69
|
+
return ref;
|
|
63
70
|
}
|
|
64
71
|
destroy() {
|
|
65
|
-
for (const [
|
|
66
|
-
for (const session of connectionPool) {
|
|
67
|
-
|
|
68
|
-
session.destroy();
|
|
69
|
-
}
|
|
70
|
-
connectionPool.remove(session);
|
|
72
|
+
for (const [url, connectionPool] of this.connectionPools) {
|
|
73
|
+
for (const session of [...connectionPool]) {
|
|
74
|
+
session.destroy();
|
|
71
75
|
}
|
|
72
|
-
this.
|
|
76
|
+
this.connectionPools.delete(url);
|
|
73
77
|
}
|
|
74
78
|
}
|
|
75
79
|
setMaxConcurrentStreams(maxConcurrentStreams) {
|
|
@@ -77,10 +81,42 @@ export class NodeHttp2ConnectionManager {
|
|
|
77
81
|
throw new RangeError("maxConcurrentStreams must be greater than zero.");
|
|
78
82
|
}
|
|
79
83
|
this.config.maxConcurrency = maxConcurrentStreams;
|
|
84
|
+
for (const pool of this.connectionPools.values()) {
|
|
85
|
+
pool.setMaxConcurrency(maxConcurrentStreams);
|
|
86
|
+
}
|
|
80
87
|
}
|
|
81
88
|
setDisableConcurrentStreams(disableConcurrentStreams) {
|
|
82
89
|
this.config.disableConcurrency = disableConcurrentStreams;
|
|
83
90
|
}
|
|
91
|
+
debug() {
|
|
92
|
+
const pools = {};
|
|
93
|
+
for (const [url, pool] of this.connectionPools) {
|
|
94
|
+
const sessions = [];
|
|
95
|
+
for (const ref of pool) {
|
|
96
|
+
sessions.push({
|
|
97
|
+
id: ref.id,
|
|
98
|
+
active: ref.useCount(),
|
|
99
|
+
maxConcurrent: ref.max,
|
|
100
|
+
totalRequests: ref.total,
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
pools[url] = { sessions };
|
|
104
|
+
}
|
|
105
|
+
return pools;
|
|
106
|
+
}
|
|
107
|
+
removeFromPool(authority, ref) {
|
|
108
|
+
this.connectionPools.get(authority)?.remove(ref);
|
|
109
|
+
}
|
|
110
|
+
getPool(url) {
|
|
111
|
+
if (!this.connectionPools.has(url)) {
|
|
112
|
+
const pool = new NodeHttp2ConnectionPool();
|
|
113
|
+
if (this.config.maxConcurrency) {
|
|
114
|
+
pool.setMaxConcurrency(this.config.maxConcurrency);
|
|
115
|
+
}
|
|
116
|
+
this.connectionPools.set(url, pool);
|
|
117
|
+
}
|
|
118
|
+
return this.connectionPools.get(url);
|
|
119
|
+
}
|
|
84
120
|
getUrlString(request) {
|
|
85
121
|
return request.destination.toString();
|
|
86
122
|
}
|
|
@@ -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
|
-
|
|
8
|
-
|
|
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(
|
|
12
|
-
this.sessions.push(
|
|
13
|
-
}
|
|
14
|
-
contains(session) {
|
|
15
|
-
return this.sessions.includes(session);
|
|
27
|
+
offerLast(ref) {
|
|
28
|
+
this.sessions.push(ref);
|
|
16
29
|
}
|
|
17
|
-
remove(
|
|
18
|
-
|
|
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
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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
|
}
|
|
@@ -36,12 +36,14 @@ export class NodeHttp2Handler {
|
|
|
36
36
|
async handle(request, { abortSignal, requestTimeout, isEventStream } = {}) {
|
|
37
37
|
if (!this.config) {
|
|
38
38
|
this.config = await this.configProvider;
|
|
39
|
-
this.
|
|
40
|
-
|
|
41
|
-
|
|
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,13 +71,17 @@ export class NodeHttp2Handler {
|
|
|
69
71
|
}
|
|
70
72
|
const authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : ""}`;
|
|
71
73
|
const requestContext = { destination: new URL(authority) };
|
|
72
|
-
const
|
|
74
|
+
const connectConfig = {
|
|
73
75
|
requestTimeout: this.config?.sessionTimeout,
|
|
74
76
|
isEventStream,
|
|
75
|
-
}
|
|
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 (
|
|
78
|
-
|
|
83
|
+
if (useIsolatedSession) {
|
|
84
|
+
ref.destroy();
|
|
79
85
|
}
|
|
80
86
|
fulfilled = true;
|
|
81
87
|
reject(err);
|
|
@@ -88,28 +94,14 @@ export class NodeHttp2Handler {
|
|
|
88
94
|
if (request.fragment) {
|
|
89
95
|
path += `#${request.fragment}`;
|
|
90
96
|
}
|
|
91
|
-
const
|
|
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
|
-
|
|
112
|
-
|
|
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
|
-
|
|
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
|
-
|
|
119
|
+
clientHttp2Stream.once("close", () => signal.removeEventListener("abort", onAbort));
|
|
128
120
|
}
|
|
129
121
|
else {
|
|
130
122
|
abortSignal.onabort = onAbort;
|
|
131
123
|
}
|
|
132
124
|
}
|
|
133
|
-
|
|
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
|
-
|
|
137
|
-
|
|
138
|
-
rejectWithDestroy(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${
|
|
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
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
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(
|
|
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,42 @@
|
|
|
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
|
+
destroy(): void;
|
|
38
|
+
/**
|
|
39
|
+
* @returns the current number of active references (in-flight requests).
|
|
40
|
+
*/
|
|
41
|
+
useCount(): number;
|
|
42
|
+
}
|
package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts
CHANGED
|
@@ -1,24 +1,44 @@
|
|
|
1
|
-
import type { RequestContext } from "@smithy/types";
|
|
2
|
-
import
|
|
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
|
-
*
|
|
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<
|
|
9
|
-
constructor(config: ConnectionManagerConfiguration);
|
|
10
|
+
export declare class NodeHttp2ConnectionManager implements ConnectionManager<ClientHttp2SessionRef> {
|
|
10
11
|
private config;
|
|
11
|
-
private readonly
|
|
12
|
-
|
|
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;
|
|
18
|
+
/**
|
|
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.
|
|
23
|
+
*/
|
|
24
|
+
release(_requestContext: RequestContext, ref: ClientHttp2SessionRef): void;
|
|
13
25
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* @param session The session to delete.
|
|
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.
|
|
17
28
|
*/
|
|
18
|
-
|
|
19
|
-
release(requestContext: RequestContext, session: ClientHttp2Session): void;
|
|
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
|
+
/**
|
|
39
|
+
* Remove a session from the pools. Does not destroy it.
|
|
40
|
+
*/
|
|
41
|
+
private removeFromPool;
|
|
42
|
+
private getPool;
|
|
23
43
|
private getUrlString;
|
|
24
44
|
}
|
|
@@ -1,12 +1,36 @@
|
|
|
1
1
|
import type { ConnectionPool } from "@smithy/types";
|
|
2
2
|
import type { ClientHttp2Session } from "node:http2";
|
|
3
|
-
|
|
4
|
-
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
}
|
|
@@ -67,10 +67,5 @@ export declare class NodeHttp2Handler implements HttpHandler<NodeHttp2HandlerOpt
|
|
|
67
67
|
}>;
|
|
68
68
|
updateHttpClientConfig(key: keyof NodeHttp2HandlerOptions, value: NodeHttp2HandlerOptions[typeof key]): void;
|
|
69
69
|
httpHandlerConfigs(): NodeHttp2HandlerOptions;
|
|
70
|
-
/**
|
|
71
|
-
* Destroys a session.
|
|
72
|
-
* @param session - the session to destroy.
|
|
73
|
-
*/
|
|
74
|
-
private destroySession;
|
|
75
70
|
}
|
|
76
71
|
export {};
|
|
@@ -56,6 +56,7 @@ const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||
|
|
|
56
56
|
NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
|
|
57
57
|
TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
|
|
58
58
|
isBrowserNetworkError(error) ||
|
|
59
|
+
isNodeJsHttp2TransientError(error) ||
|
|
59
60
|
(error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
|
|
60
61
|
const isServerError = (error) => {
|
|
61
62
|
if (error.$metadata?.httpStatusCode !== undefined) {
|
|
@@ -67,10 +68,14 @@ const isServerError = (error) => {
|
|
|
67
68
|
}
|
|
68
69
|
return false;
|
|
69
70
|
};
|
|
71
|
+
function isNodeJsHttp2TransientError(error) {
|
|
72
|
+
return error.code === "ERR_HTTP2_STREAM_ERROR" && error.message.includes("NGHTTP2_REFUSED_STREAM");
|
|
73
|
+
}
|
|
70
74
|
|
|
71
75
|
exports.isBrowserNetworkError = isBrowserNetworkError;
|
|
72
76
|
exports.isClockSkewCorrectedError = isClockSkewCorrectedError;
|
|
73
77
|
exports.isClockSkewError = isClockSkewError;
|
|
78
|
+
exports.isNodeJsHttp2TransientError = isNodeJsHttp2TransientError;
|
|
74
79
|
exports.isRetryableByTrait = isRetryableByTrait;
|
|
75
80
|
exports.isServerError = isServerError;
|
|
76
81
|
exports.isThrottlingError = isThrottlingError;
|
|
@@ -26,6 +26,7 @@ export const isTransientError = (error, depth = 0) => isRetryableByTrait(error)
|
|
|
26
26
|
NODEJS_NETWORK_ERROR_CODES.includes(error?.code || "") ||
|
|
27
27
|
TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||
|
|
28
28
|
isBrowserNetworkError(error) ||
|
|
29
|
+
isNodeJsHttp2TransientError(error) ||
|
|
29
30
|
(error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));
|
|
30
31
|
export const isServerError = (error) => {
|
|
31
32
|
if (error.$metadata?.httpStatusCode !== undefined) {
|
|
@@ -37,3 +38,6 @@ export const isServerError = (error) => {
|
|
|
37
38
|
}
|
|
38
39
|
return false;
|
|
39
40
|
};
|
|
41
|
+
export function isNodeJsHttp2TransientError(error) {
|
|
42
|
+
return error.code === "ERR_HTTP2_STREAM_ERROR" && error.message.includes("NGHTTP2_REFUSED_STREAM");
|
|
43
|
+
}
|
|
@@ -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.
|
|
3
|
+
"version": "4.3.0",
|
|
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",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smithy/smithy-client",
|
|
3
|
-
"version": "4.12.
|
|
3
|
+
"version": "4.12.12",
|
|
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 smithy-client",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"license": "Apache-2.0",
|
|
27
27
|
"sideEffects": false,
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@smithy/core": "^3.23.
|
|
30
|
-
"@smithy/middleware-endpoint": "^4.4.
|
|
29
|
+
"@smithy/core": "^3.23.16",
|
|
30
|
+
"@smithy/middleware-endpoint": "^4.4.31",
|
|
31
31
|
"@smithy/middleware-stack": "^4.2.14",
|
|
32
32
|
"@smithy/protocol-http": "^5.3.14",
|
|
33
33
|
"@smithy/types": "^4.14.1",
|
|
34
|
-
"@smithy/util-stream": "^4.5.
|
|
34
|
+
"@smithy/util-stream": "^4.5.24",
|
|
35
35
|
"tslib": "^2.6.2"
|
|
36
36
|
},
|
|
37
37
|
"engines": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smithy/util-defaults-mode-browser",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.48",
|
|
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.
|
|
27
|
+
"@smithy/smithy-client": "^4.12.12",
|
|
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.
|
|
3
|
+
"version": "4.2.53",
|
|
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",
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
"license": "Apache-2.0",
|
|
24
24
|
"sideEffects": false,
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@smithy/config-resolver": "^4.4.
|
|
26
|
+
"@smithy/config-resolver": "^4.4.17",
|
|
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.
|
|
30
|
+
"@smithy/smithy-client": "^4.12.12",
|
|
31
31
|
"@smithy/types": "^4.14.1",
|
|
32
32
|
"tslib": "^2.6.2"
|
|
33
33
|
},
|