@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.
- package/.jsii +3 -3
- package/lib/api-canary/index.js +1 -1
- package/lib/ecs-appspec/index.js +1 -1
- package/lib/ecs-deployment/index.js +1 -1
- package/lib/ecs-patterns/application-load-balanced-codedeployed-fargate-service.js +1 -1
- package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/bdd.js +49 -0
- package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/endpointResolver.js +2 -2
- package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/bdd.js +46 -0
- package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/endpointResolver.js +3 -3
- package/node_modules/@aws-sdk/client-codedeploy/dist-types/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/client-codedeploy/dist-types/ts3.4/endpoint/bdd.d.ts +2 -0
- package/node_modules/@aws-sdk/client-codedeploy/package.json +34 -34
- package/node_modules/@aws-sdk/core/dist-cjs/index.js +72 -61
- package/node_modules/@aws-sdk/core/dist-cjs/submodules/client/index.js +3 -0
- package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +70 -61
- package/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js +2 -0
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/ProtocolLib.js +11 -10
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/UnionSerde.js +4 -1
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +4 -5
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +2 -1
- 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 +15 -10
- 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/json/parseJsonBody.js +17 -17
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/AwsQueryProtocol.js +3 -8
- 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/AwsRestXmlProtocol.js +2 -2
- package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeSerializer.js +4 -2
- package/node_modules/@aws-sdk/core/dist-types/submodules/client/setFeature.d.ts +1 -1
- package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonShapeSerializer.d.ts +2 -2
- package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +1 -1
- package/node_modules/@aws-sdk/core/package.json +14 -12
- package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
- package/node_modules/@aws-sdk/credential-provider-http/package.json +10 -10
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +14 -14
- package/node_modules/@aws-sdk/credential-provider-login/package.json +8 -8
- package/node_modules/@aws-sdk/credential-provider-node/package.json +12 -12
- package/node_modules/@aws-sdk/credential-provider-process/package.json +6 -6
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +8 -8
- package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +7 -7
- package/node_modules/@aws-sdk/middleware-host-header/package.json +4 -4
- package/node_modules/@aws-sdk/middleware-logger/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +4 -4
- 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 +581 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.browser.js +11 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/toStream.js +7 -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 +51 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.browser.js +8 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-es/toStream.js +4 -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 +21 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.browser.d.ts +4 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/toStream.d.ts +5 -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 +19 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.browser.d.ts +1 -0
- package/node_modules/@aws-sdk/middleware-sdk-s3/dist-types/ts3.4/toStream.d.ts +2 -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 +79 -0
- package/node_modules/@aws-sdk/middleware-user-agent/package.json +8 -8
- 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/models/errors.js +1 -0
- 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/models/errors.js +1 -0
- 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/models/errors.d.ts +1 -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/models/errors.d.ts +1 -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 +33 -32
- package/node_modules/@aws-sdk/region-config-resolver/package.json +5 -5
- 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 +7 -7
- package/node_modules/@aws-sdk/types/package.json +2 -2
- 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-endpoints/package.json +5 -5
- package/node_modules/@aws-sdk/util-user-agent-browser/package.json +3 -3
- package/node_modules/@aws-sdk/util-user-agent-node/package.json +5 -5
- package/node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/package.json +3 -3
- package/node_modules/@nodable/entities/README.md +41 -0
- package/node_modules/@nodable/entities/package.json +54 -0
- package/node_modules/@nodable/entities/src/EntityDecoder.js +543 -0
- package/node_modules/@nodable/entities/src/EntityEncoder.js +194 -0
- package/node_modules/@nodable/entities/src/entities.js +1177 -0
- package/node_modules/@nodable/entities/src/entityTries.js +49 -0
- package/node_modules/@nodable/entities/src/index.d.ts +264 -0
- package/node_modules/@nodable/entities/src/index.js +29 -0
- package/node_modules/@smithy/config-resolver/package.json +5 -5
- 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 +7 -7
- package/node_modules/@smithy/credential-provider-imds/package.json +5 -5
- package/node_modules/@smithy/fetch-http-handler/package.json +5 -5
- package/node_modules/@smithy/hash-node/package.json +2 -2
- package/node_modules/@smithy/invalid-dependency/package.json +2 -2
- package/node_modules/@smithy/middleware-content-length/package.json +3 -3
- package/node_modules/@smithy/middleware-endpoint/package.json +8 -8
- package/node_modules/@smithy/middleware-retry/package.json +9 -9
- package/node_modules/@smithy/middleware-serde/package.json +4 -4
- package/node_modules/@smithy/middleware-stack/package.json +2 -2
- package/node_modules/@smithy/node-config-provider/package.json +4 -4
- package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +208 -102
- package/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +50 -0
- package/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +83 -41
- 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 +44 -43
- package/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +46 -0
- package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +32 -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 +14 -6
- package/node_modules/@smithy/node-http-handler/package.json +5 -5
- package/node_modules/@smithy/property-provider/package.json +2 -2
- package/node_modules/@smithy/protocol-http/package.json +2 -2
- package/node_modules/@smithy/querystring-builder/package.json +2 -2
- package/node_modules/@smithy/querystring-parser/package.json +2 -2
- package/node_modules/@smithy/service-error-classification/dist-cjs/index.js +6 -0
- package/node_modules/@smithy/service-error-classification/dist-es/index.js +5 -0
- package/node_modules/@smithy/service-error-classification/dist-types/index.d.ts +6 -0
- package/node_modules/@smithy/service-error-classification/package.json +2 -2
- package/node_modules/@smithy/shared-ini-file-loader/package.json +2 -2
- package/node_modules/@smithy/signature-v4/dist-cjs/index.js +11 -5
- package/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js +11 -5
- package/node_modules/@smithy/signature-v4/dist-types/SignatureV4.d.ts +3 -3
- package/node_modules/@smithy/signature-v4/package.json +4 -4
- package/node_modules/@smithy/smithy-client/dist-cjs/index.js +8 -1
- package/node_modules/@smithy/smithy-client/dist-es/command.js +8 -1
- package/node_modules/@smithy/smithy-client/package.json +7 -7
- package/node_modules/@smithy/types/dist-types/connection/config.d.ts +5 -0
- package/node_modules/@smithy/types/dist-types/signature.d.ts +20 -3
- package/node_modules/@smithy/types/package.json +1 -1
- package/node_modules/@smithy/url-parser/package.json +3 -3
- package/node_modules/@smithy/util-defaults-mode-browser/package.json +4 -4
- package/node_modules/@smithy/util-defaults-mode-node/package.json +7 -7
- package/node_modules/@smithy/util-endpoints/dist-cjs/index.js +79 -71
- package/node_modules/@smithy/util-endpoints/dist-es/decideEndpoint.js +4 -3
- package/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js +2 -1
- package/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js +8 -13
- 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/bdd/BinaryDecisionDiagram.d.ts +2 -2
- 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 +3 -3
- package/node_modules/@smithy/util-middleware/package.json +2 -2
- package/node_modules/@smithy/util-retry/dist-cjs/index.js +20 -10
- package/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js +20 -10
- package/node_modules/@smithy/util-retry/dist-types/StandardRetryStrategy.d.ts +12 -4
- package/node_modules/@smithy/util-retry/package.json +3 -3
- package/node_modules/@smithy/util-stream/package.json +4 -4
- package/node_modules/@smithy/util-waiter/dist-cjs/index.js +59 -34
- package/node_modules/@smithy/util-waiter/dist-es/poller.js +61 -34
- package/node_modules/@smithy/util-waiter/dist-types/createWaiter.d.ts +1 -1
- package/node_modules/@smithy/util-waiter/dist-types/poller.d.ts +2 -1
- package/node_modules/@smithy/util-waiter/dist-types/waiter.d.ts +13 -13
- package/node_modules/@smithy/util-waiter/package.json +3 -3
- package/node_modules/fast-xml-builder/package.json +1 -1
- package/node_modules/fast-xml-builder/src/fxb.js +6 -2
- package/node_modules/fast-xml-builder/src/orderedJs2Xml.js +16 -2
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/CHANGELOG.md +53 -0
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/README.md +8 -28
- package/node_modules/fast-xml-parser/lib/fxbuilder.min.js +2 -0
- package/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +1 -0
- package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -0
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxp.d.cts +172 -6
- package/node_modules/fast-xml-parser/lib/fxp.min.js +2 -0
- package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -0
- package/node_modules/fast-xml-parser/lib/fxparser.min.js +2 -0
- package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -0
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/package.json +5 -4
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/fxp.d.ts +162 -3
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/DocTypeReader.js +2 -5
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/OptionsBuilder.js +15 -11
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/OrderedObjParser.js +168 -244
- package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/XMLParser.js +1 -1
- package/package.json +5 -5
- package/node_modules/@aws-sdk/client-codedeploy/dist-cjs/endpoint/ruleset.js +0 -7
- package/node_modules/@aws-sdk/client-codedeploy/dist-es/endpoint/ruleset.js +0 -4
- package/node_modules/@aws-sdk/client-codedeploy/dist-types/endpoint/ruleset.d.ts +0 -2
- package/node_modules/@aws-sdk/client-codedeploy/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
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxbuilder.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.cjs +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxp.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js +0 -2
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/fxparser.min.js.map +0 -1
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/lib/pem.d.cts +0 -148
- package/node_modules/@aws-sdk/xml-builder/node_modules/fast-xml-parser/src/pem.d.ts +0 -135
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/LICENSE +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxvalidator.min.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/lib/fxvalidator.min.js.map +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/cli.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/man.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/cli/read.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/fxp.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/ignoreAttributes.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/util.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/CharsSymbol.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/EntitiesParser.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OptionsBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/BaseOutputBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsArrBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsMinArrBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/JsObjBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/OutputBuilders/ParserOptionsBuilder.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/Report.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/TagPath.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/TagPathMatcher.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XMLParser.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/Xml2JsParser.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XmlPartReader.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/XmlSpecialTagsReader.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/inputSource/BufferSource.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/inputSource/StringSource.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/EntitiesParser.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/booleanParser.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/booleanParserExt.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/currency.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/join.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/number.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/v6/valueParsers/trim.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/validator.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlbuilder/json2xml.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/node2json.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/fast-xml-parser → fast-xml-parser}/src/xmlparser/xmlNode.js +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/CHANGELOG.md +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/LICENSE +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/README.md +0 -0
- /package/node_modules/{@aws-sdk/xml-builder/node_modules/strnum → strnum}/package.json +0 -0
- /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
|
-
|
|
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
|
}
|
|
@@ -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.
|
|
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,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
|
|
74
|
+
const connectConfig = {
|
|
73
75
|
requestTimeout: this.config?.sessionTimeout,
|
|
74
|
-
|
|
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 (
|
|
78
|
-
|
|
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
|
|
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,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
|
+
}
|
package/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts
CHANGED
|
@@ -1,24 +1,42 @@
|
|
|
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;
|
|
13
18
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
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
|
-
|
|
19
|
-
|
|
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
|
-
|
|
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
|
}
|
|
@@ -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.
|
|
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.
|
|
30
|
-
"@smithy/querystring-builder": "^4.2.
|
|
31
|
-
"@smithy/types": "^4.14.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
57
|
+
"@smithy/types": "^4.14.1"
|
|
58
58
|
}
|
|
59
59
|
}
|
|
@@ -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, {
|
|
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);
|