@kensio/yulin 1.21.2 → 1.21.4
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/dist/service/athena/engine/sim-athena-column-types.d.ts +2 -0
- package/dist/service/athena/engine/sim-athena-column-types.js +4 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.d.ts +7 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.js +51 -0
- package/dist/service/athena/engine/sim-athena-engine-result.js +5 -0
- package/dist/service/athena/engine/sim-athena-engine-run.d.ts +22 -2
- package/dist/service/athena/engine/sim-athena-engine-run.js +21 -31
- package/dist/service/athena/engine/sim-athena-loaded-tables.d.ts +10 -0
- package/dist/service/athena/engine/sim-athena-loaded-tables.js +35 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.d.ts +25 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.js +39 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.d.ts +13 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.js +57 -0
- package/dist/service/athena/engine/sim-athena-query-engine.d.ts +23 -5
- package/dist/service/athena/engine/sim-athena-query-engine.js +31 -10
- package/dist/service/athena/engine/sim-athena-record-reader.d.ts +12 -6
- package/dist/service/athena/engine/sim-athena-record-reader.js +28 -53
- package/dist/service/athena/engine/sim-athena-sql-translation.d.ts +15 -9
- package/dist/service/athena/engine/sim-athena-sql-translation.js +25 -13
- package/dist/service/athena/engine/sim-athena-sqlite-values.d.ts +5 -0
- package/dist/service/athena/engine/sim-athena-sqlite-values.js +24 -1
- package/dist/service/athena/engine/sim-athena-table-objects.d.ts +7 -2
- package/dist/service/athena/engine/sim-athena-table-objects.js +8 -4
- package/dist/service/athena/engine/sim-athena-table-rows.js +4 -3
- package/dist/service/athena/engine/sim-athena-turn-down.d.ts +26 -0
- package/dist/service/athena/engine/sim-athena-turn-down.js +43 -0
- package/dist/service/athena/execution/sim-athena-query-completion.d.ts +3 -1
- package/dist/service/athena/execution/sim-athena-query-completion.js +7 -1
- package/dist/service/athena/index.d.ts +1 -1
- package/dist/service/athena/index.js +1 -1
- package/dist/service/athena/result/sim-athena-query-answer.d.ts +12 -0
- package/dist/service/athena/result/sim-athena-query-answer.js +26 -4
- package/dist/service/athena/sim-athena-answered-query.fixture.d.ts +2 -0
- package/dist/service/athena/sim-athena-answered-query.fixture.js +1 -0
- package/dist/service/athena/sim-athena-engine.fixture.d.ts +20 -0
- package/dist/service/athena/sim-athena-engine.fixture.js +34 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +23 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +37 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +2 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +7 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +13 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +6 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +7 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.d.ts +50 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.js +71 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +6 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +7 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.d.ts +9 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.js +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.d.ts +42 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.js +69 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.d.ts +62 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.js +89 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.d.ts +31 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.js +59 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.d.ts +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.js +19 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.d.ts +17 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.js +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.d.ts +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.js +13 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.d.ts +45 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.js +52 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.d.ts +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.js +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.d.ts +54 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.js +49 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.d.ts +35 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.js +1 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.d.ts +53 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.js +83 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.d.ts +32 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.d.ts +38 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.js +80 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +12 -12
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.d.ts +22 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.d.ts +27 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.js +35 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +6 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +11 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +15 -1
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.d.ts +48 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.d.ts +23 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.js +52 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts +3 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +8 -4
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +18 -6
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +22 -7
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +1 -1
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.d.ts +25 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.d.ts +31 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.js +37 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.d.ts +36 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.js +1 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.d.ts +26 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.js +39 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.d.ts +31 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.js +52 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.d.ts +22 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.js +34 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +17 -1
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +8 -15
- package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts +21 -0
- package/dist/service/cloudformation/error/sim-cloudformation.error.js +25 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.d.ts +7 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.js +3 -1
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.d.ts +9 -0
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.js +12 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +4 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +10 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.d.ts +44 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.js +33 -0
- package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts +9 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +15 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +21 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +9 -7
- package/dist/service/cloudformation/resource/sim-cfn-resource.js +11 -11
- package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +19 -0
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +3 -3
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +3 -3
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +9 -0
- package/dist/service/cloudformation/resource/update/sim-cfn-resource-update-validator.d.ts +26 -0
- package/dist/service/cloudformation/resource/update/sim-cfn-resource-update-validator.js +55 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.d.ts +37 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.js +77 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.d.ts +51 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.js +10 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.js +34 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.d.ts +21 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.js +31 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.d.ts +14 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.js +1 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.js +58 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.js +89 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.js +65 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.js +60 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.js +50 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.js +30 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.js +44 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.js +43 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.js +67 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.js +61 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts +4 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js +12 -5
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-api-event.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.d.ts +26 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.js +88 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts +12 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js +1 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js +8 -5
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js +23 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts +9 -2
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js +5 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts +6 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js +7 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.d.ts +19 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.js +69 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts +5 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js +3 -1
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.d.ts +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.js +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js +1 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts +6 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js +2 -4
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.d.ts +31 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.js +17 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js +11 -6
- package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +20 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-api.d.ts +4 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-api.js +6 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.d.ts +10 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.js +94 -0
- package/dist/service/cloudformation/sim-cloudformation.d.ts +31 -0
- package/dist/service/cloudformation/sim-cloudformation.js +56 -9
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.d.ts +20 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.js +23 -0
- package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts +6 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.d.ts +30 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.js +24 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +51 -3
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +84 -6
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +28 -16
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +59 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +3 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.d.ts +18 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.js +30 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +25 -14
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +41 -24
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +16 -1
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +27 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +7 -1
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.d.ts +12 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.js +29 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.d.ts +28 -0
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.js +39 -0
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.d.ts +25 -1
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.js +43 -11
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.d.ts +7 -0
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.js +29 -3
- package/dist/service/cloudformation/template/sim-cfn-command-template.d.ts +40 -0
- package/dist/service/cloudformation/template/sim-cfn-command-template.js +45 -0
- package/dist/service/cloudformation/template/sim-cfn-template.d.ts +7 -0
- package/dist/service/cloudformation/template/sim-cfn-template.js +15 -1
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +2 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js +49 -0
- package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.js +1 -0
- package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.js +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +1 -1
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.d.ts +5 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.js +17 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +5 -5
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +24 -8
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +5 -0
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +15 -0
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-update-validator.d.ts +24 -0
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-update-validator.js +38 -0
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.d.ts +11 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.js +20 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query.js +2 -0
- package/dist/service/dynamodb/command/query/sim-dynamodb-unsimulated-query-input.js +0 -1
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.d.ts +14 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.js +16 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.d.ts +17 -0
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.js +39 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.d.ts +28 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.js +50 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan.js +12 -5
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.d.ts +3 -3
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.js +3 -4
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.d.ts +5 -16
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.js +4 -21
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.d.ts +15 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.js +18 -1
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.d.ts +13 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.js +15 -0
- package/dist/service/dynamodb/table/sim-dynamodb-index-update.js +1 -2
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +2 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +5 -3
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.d.ts +21 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.js +37 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +6 -0
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +5 -1
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +2 -3
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +10 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +2 -6
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.js +49 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.js +57 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts +7 -0
- package/dist/service/lambda/command/function-url/function-url-input.js +9 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js +10 -13
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js +2 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.d.ts +13 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.js +12 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +2 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js +1 -1
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js +8 -12
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js +4 -3
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts +2 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js +4 -3
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts +4 -6
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js +6 -6
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts +3 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts +22 -3
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js +39 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts +7 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js +14 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts +9 -15
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js +9 -16
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts +10 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js +22 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.d.ts +23 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.js +18 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts +12 -13
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js +24 -17
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.d.ts +64 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.js +86 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +8 -1
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js +7 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +11 -1
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +13 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.d.ts +39 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.d.ts +56 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.js +110 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.d.ts +5 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.js +7 -1
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.js +6 -0
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts +6 -1
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js +8 -6
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts +10 -8
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js +18 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +8 -2
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +2 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +2 -11
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +13 -39
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +7 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +13 -7
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.d.ts +23 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.js +42 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.d.ts +12 -4
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.js +15 -5
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +7 -0
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +6 -2
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.d.ts +26 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.js +84 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.d.ts +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.js +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +6 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +1 -2
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts +6 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js +19 -6
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.d.ts +15 -0
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.js +18 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.d.ts +12 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.js +28 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.d.ts +46 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.js +104 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.d.ts +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.js +27 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.d.ts +43 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.js +112 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.d.ts +57 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.js +79 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.d.ts +10 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.js +15 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.d.ts +11 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.js +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.d.ts +50 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.js +43 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts +17 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js +12 -1
- package/dist/service/lambda/function/logging/sim-lambda-output.d.ts +56 -0
- package/dist/service/lambda/function/logging/sim-lambda-output.js +62 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts +8 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js +27 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +11 -9
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +15 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.d.ts +22 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.js +17 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.js +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +2 -1
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js +16 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.js +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.d.ts +50 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.js +96 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts +14 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js +27 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +10 -0
- package/dist/service/lambda/sim-lambda-commands.js +11 -0
- package/dist/service/lambda/sim-lambda.d.ts +12 -0
- package/dist/service/lambda/sim-lambda.js +13 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.d.ts +67 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.js +69 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +4 -31
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +7 -6
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +5 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +8 -4
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts +1 -14
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js +16 -8
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.d.ts +41 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.js +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +14 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +32 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.d.ts +33 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.js +48 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.d.ts +16 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.js +44 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +8 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +27 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +5 -0
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +0 -3
- package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +3 -0
- package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -2
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.d.ts +84 -0
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.js +115 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +10 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +18 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.d.ts +41 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.js +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +11 -83
- package/dist/service/s3/bucket/sim-s3-bucket.js +14 -83
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts +6 -0
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.js +20 -6
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.d.ts +58 -0
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.js +73 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +19 -1
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +20 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.js +44 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +6 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +5 -4
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +12 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.js +30 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +14 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +41 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +3 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +7 -10
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +6 -1
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +5 -0
- package/dist/service/s3/command/copy-object/copy-object-builder.d.ts +10 -1
- package/dist/service/s3/command/copy-object/copy-object-builder.js +17 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +11 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +2 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.command.d.ts +5 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.handler.js +7 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.d.ts +19 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.d.ts +30 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.js +38 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.d.ts +23 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.js +1 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.js +42 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.d.ts +29 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.js +49 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.d.ts +22 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.js +30 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.d.ts +24 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.js +39 -0
- package/dist/service/s3/command/get-object/get-object-authorizer.d.ts +11 -8
- package/dist/service/s3/command/get-object/get-object-authorizer.js +26 -34
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +7 -3
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +2 -1
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +4 -0
- package/dist/service/s3/command/get-object/get-object.handler.js +13 -7
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.d.ts +29 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.js +1 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.d.ts +21 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.js +33 -0
- package/dist/service/s3/command/head-object/head-object-loader.js +2 -0
- package/dist/service/s3/command/head-object/head-object.command.d.ts +2 -1
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js +18 -0
- package/dist/service/s3/command/list-multipart-uploads/list-multipart-uploads.handler.js +1 -2
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +1 -2
- package/dist/service/s3/command/list-objects/list-objects-page-builder.d.ts +5 -0
- package/dist/service/s3/command/list-objects/list-objects-page-builder.js +11 -6
- package/dist/service/s3/command/list-objects/list-objects.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects/list-objects.handler.js +5 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.d.ts +6 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.js +11 -5
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.handler.js +5 -0
- package/dist/service/s3/command/list-parts/list-parts.handler.js +3 -3
- package/dist/service/s3/command/multipart/sim-s3-multipart-access.js +1 -1
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.js +41 -0
- package/dist/service/s3/command/put-object/put-object-builder.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object-builder.js +10 -1
- package/dist/service/s3/command/put-object/put-object.command.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object.handler.js +2 -1
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.d.ts +37 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.js +1 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.js +46 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +6 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.d.ts +61 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.js +49 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.d.ts +30 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.js +27 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.d.ts +26 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.js +34 -0
- package/dist/service/s3/error/sim-s3-upload.error.d.ts +41 -0
- package/dist/service/s3/error/sim-s3-upload.error.js +47 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -34
- package/dist/service/s3/error/sim-s3.error.js +26 -40
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts +10 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.d.ts +3 -2
- package/dist/service/s3/notification/event/sim-s3-event-records.js +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +33 -8
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +23 -9
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +5 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +6 -0
- package/dist/service/s3/object/s3-key-encoding.d.ts +12 -0
- package/dist/service/s3/object/s3-key-encoding.js +14 -0
- package/dist/service/s3/object/s3-listing-encoding.d.ts +42 -0
- package/dist/service/s3/object/s3-listing-encoding.js +75 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +40 -0
- package/dist/service/s3/object/s3-object-response-headers.js +49 -2
- package/dist/service/s3/object/s3-object-storage-report.d.ts +19 -0
- package/dist/service/s3/object/s3-object-storage-report.js +18 -0
- package/dist/service/s3/object/s3-object-summary.d.ts +2 -10
- package/dist/service/s3/object/s3-object-summary.js +1 -10
- package/dist/service/s3/object/s3-object-tags.d.ts +61 -0
- package/dist/service/s3/object/s3-object-tags.js +77 -0
- package/dist/service/s3/object/s3-object.d.ts +49 -0
- package/dist/service/s3/object/s3-object.js +52 -1
- package/dist/service/s3/object/s3-server-side-encryption.d.ts +30 -0
- package/dist/service/s3/object/s3-server-side-encryption.js +42 -0
- package/dist/service/s3/object/s3-storage-class.d.ts +45 -0
- package/dist/service/s3/object/s3-storage-class.js +67 -0
- package/dist/service/s3/object/s3-write-metadata.d.ts +17 -3
- package/dist/service/s3/object/s3-write-metadata.js +43 -0
- package/dist/service/s3/object/s3-write-storage.d.ts +27 -0
- package/dist/service/s3/object/s3-write-storage.js +21 -0
- package/dist/service/s3/object/s3-write-tagging.d.ts +24 -0
- package/dist/service/s3/object/s3-write-tagging.js +19 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +12 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +2 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.d.ts +9 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.js +23 -0
- package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js +22 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts +4 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js +10 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.d.ts +7 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.js +30 -0
- package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts +4 -2
- package/dist/service/s3/serve/api/sim-s3-api-head-output.js +8 -2
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +0 -6
- package/dist/service/s3/serve/api/sim-s3-api-input.js +2 -13
- package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-listing.js +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +16 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +34 -7
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +18 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +21 -2
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +22 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.d.ts +5 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js +16 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.d.ts +6 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.js +55 -11
- package/dist/service/s3/serve/api/sim-s3-api-routes.js +2 -2
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.d.ts +9 -0
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.js +14 -0
- package/dist/service/s3/serve/api/sim-s3-api.d.ts +7 -1
- package/dist/service/s3/serve/api/sim-s3-api.js +7 -1
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +1 -5
- package/dist/service/s3/serve/sim-s3-rest-controller.js +3 -17
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts +3 -0
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js +8 -1
- package/dist/service/s3/serve/sim-s3-rest-upload.d.ts +20 -0
- package/dist/service/s3/serve/sim-s3-rest-upload.js +30 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +2 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js +3 -0
- package/dist/service/s3/sim-s3-commands.d.ts +4 -0
- package/dist/service/s3/sim-s3-commands.js +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts +11 -4
- package/dist/service/s3/sim-s3-operations.js +17 -4
- package/dist/service/s3/sim-s3-tagging-operations.d.ts +21 -0
- package/dist/service/s3/sim-s3-tagging-operations.js +25 -0
- package/dist/service/s3/sim-s3.d.ts +12 -0
- package/dist/service/s3/sim-s3.js +13 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.d.ts +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.js +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.d.ts +9 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.js +24 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +5 -4
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +5 -3
- package/dist/service/s3/upload/sim-s3-completed-upload.js +5 -1
- package/dist/service/s3/upload/sim-s3-multipart-upload.d.ts +18 -0
- package/dist/service/s3/upload/sim-s3-multipart-upload.js +8 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts +6 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js +5 -0
- package/dist/util/background/background-clock-waits.d.ts +52 -0
- package/dist/util/background/background-clock-waits.js +76 -0
- package/dist/util/background/background-jitter.js +1 -0
- package/dist/util/background/background-pending-tasks.d.ts +55 -0
- package/dist/util/background/background-pending-tasks.js +117 -0
- package/dist/util/background/background-settled-tasks.d.ts +4 -1
- package/dist/util/background/background-settled-tasks.js +4 -1
- package/dist/util/background/background.d.ts +43 -0
- package/dist/util/background/background.js +27 -19
- package/dist/util/background/non-deterministic-background.d.ts +12 -0
- package/dist/util/background/non-deterministic-background.js +24 -20
- package/dist/util/clock/sim-clock-control.js +23 -2
- package/docs/services/apigateway/README.md +3 -1
- package/docs/services/athena/README.md +126 -3
- package/docs/services/cloudformation/README.md +775 -65
- package/docs/services/cognito/README.md +5 -0
- package/docs/services/dynamodb/README.md +86 -11
- package/docs/services/lambda/README.md +603 -39
- package/docs/services/s3/README.md +688 -57
- package/package.json +8 -2
|
@@ -10,12 +10,10 @@ import { SimLambdaDestinationTopic } from "./deliver/sim-lambda-destination-topi
|
|
|
10
10
|
* built: reaching another service while this one is being constructed is a
|
|
11
11
|
* cycle with no bottom to it.
|
|
12
12
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* a destination needs no resource policy on real AWS either, so nothing about
|
|
18
|
-
* the destination itself has to be set up for a record to arrive.
|
|
13
|
+
* Every delivery uses the source function's execution Role as its caller. The
|
|
14
|
+
* destination service applies its ordinary IAM checks to that Role before it
|
|
15
|
+
* changes any state.
|
|
16
|
+
* @see https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html
|
|
19
17
|
*/
|
|
20
18
|
export class SimAwsLambdaDestinations {
|
|
21
19
|
simAws;
|
|
@@ -58,6 +56,7 @@ export class SimAwsLambdaDestinations {
|
|
|
58
56
|
arn: request.targetArn,
|
|
59
57
|
body: JSON.stringify(request.payload),
|
|
60
58
|
sourceFunctionArn: request.sourceFunctionArn,
|
|
59
|
+
sourceFunctionRoleArn: request.sourceFunctionRoleArn,
|
|
61
60
|
};
|
|
62
61
|
await (request.targetArn.service === "sqs"
|
|
63
62
|
? this.queue.deliver(send)
|
|
@@ -69,6 +68,7 @@ export class SimAwsLambdaDestinations {
|
|
|
69
68
|
arn: request.destinationArn,
|
|
70
69
|
body: JSON.stringify(request.record),
|
|
71
70
|
sourceFunctionArn: request.sourceFunctionArn,
|
|
71
|
+
sourceFunctionRoleArn: request.sourceFunctionRoleArn,
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
74
|
scopeOf(arn) {
|
|
@@ -11,6 +11,8 @@ export interface SimLambdaDestinationDeliveryRequest {
|
|
|
11
11
|
* delivery is attributed to.
|
|
12
12
|
*/
|
|
13
13
|
readonly sourceFunctionArn: string;
|
|
14
|
+
/** The execution Role Lambda uses to deliver this record. */
|
|
15
|
+
readonly sourceFunctionRoleArn: string;
|
|
14
16
|
}
|
|
15
17
|
/**
|
|
16
18
|
* One asynchronous invocation's event on its way to a dead-letter target.
|
|
@@ -23,6 +25,7 @@ export interface SimLambdaDeadLetterRequest {
|
|
|
23
25
|
readonly targetArn: SimLambdaDestinationArn;
|
|
24
26
|
readonly payload: unknown;
|
|
25
27
|
readonly sourceFunctionArn: string;
|
|
28
|
+
readonly sourceFunctionRoleArn: string;
|
|
26
29
|
}
|
|
27
30
|
/**
|
|
28
31
|
* Everywhere a simulated function's asynchronous invocation results can go.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SimLambdaStreamCascadeGuard } from "../../stream/sim-lambda-stream-cascade-guard.js";
|
|
2
2
|
import { countSimLambdaKinesisIteratorAge } from "../sim-lambda-stream-iterator-age.js";
|
|
3
|
-
import {
|
|
3
|
+
import { simLambdaKinesisStreamRecordTimes } from "../sim-lambda-stream-record-times.js";
|
|
4
4
|
import { SimLambdaStreamBatchResponse } from "../sim-lambda-stream-batch-response.js";
|
|
5
5
|
import { SimLambdaKinesisStreamEventBuilder } from "./sim-lambda-kinesis-stream-event.js";
|
|
6
6
|
/**
|
|
@@ -50,22 +50,17 @@ export class SimLambdaKinesisStreamDelivery {
|
|
|
50
50
|
return this.cascade.noteRecordWritten();
|
|
51
51
|
}
|
|
52
52
|
async handled(simFunction, records) {
|
|
53
|
+
const times = simLambdaKinesisStreamRecordTimes(records);
|
|
53
54
|
try {
|
|
54
|
-
return this.batchResponse.handled(
|
|
55
|
+
return this.batchResponse.handled(times, await simFunction.invoke(this.eventBuilder.of(records)));
|
|
55
56
|
}
|
|
56
57
|
catch {
|
|
57
58
|
// As on real Lambda, the handler error goes to the function's logs. What
|
|
58
59
|
// the stream sees is the batch being tried again.
|
|
59
|
-
return this.batchResponse.failed();
|
|
60
|
+
return this.batchResponse.failed(times);
|
|
60
61
|
}
|
|
61
62
|
finally {
|
|
62
63
|
countSimLambdaKinesisIteratorAge(simFunction, records);
|
|
63
64
|
}
|
|
64
65
|
}
|
|
65
66
|
}
|
|
66
|
-
/**
|
|
67
|
-
* The sequence numbers this batch's records can be named by.
|
|
68
|
-
*/
|
|
69
|
-
function sequenceNumbersOf(records) {
|
|
70
|
-
return simLambdaStreamSequenceNumbers(records.map((one) => one.SequenceNumber));
|
|
71
|
-
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SimLambdaStreamCascadeGuard } from "../stream/sim-lambda-stream-cascade-guard.js";
|
|
2
2
|
import { SimLambdaDynamoDbStreamEventBuilder } from "./sim-lambda-dynamodb-stream-event.js";
|
|
3
3
|
import { countSimLambdaDynamoDbIteratorAge } from "./sim-lambda-stream-iterator-age.js";
|
|
4
|
-
import {
|
|
4
|
+
import { simLambdaDynamoDbStreamRecordTimes } from "./sim-lambda-stream-record-times.js";
|
|
5
5
|
import { SimLambdaStreamBatchResponse } from "./sim-lambda-stream-batch-response.js";
|
|
6
6
|
/**
|
|
7
7
|
* Hands one batch of stream records to a function and says what became of it.
|
|
@@ -49,22 +49,17 @@ export class SimLambdaDynamoDbStreamDelivery {
|
|
|
49
49
|
return this.cascade.noteRecordWritten();
|
|
50
50
|
}
|
|
51
51
|
async handled(simFunction, records) {
|
|
52
|
+
const times = simLambdaDynamoDbStreamRecordTimes(records);
|
|
52
53
|
try {
|
|
53
|
-
return this.batchResponse.handled(
|
|
54
|
+
return this.batchResponse.handled(times, await simFunction.invoke(this.eventBuilder.of(records)));
|
|
54
55
|
}
|
|
55
56
|
catch {
|
|
56
57
|
// As on real Lambda, the handler error goes to the function's logs. What
|
|
57
58
|
// the table sees is the batch being tried again.
|
|
58
|
-
return this.batchResponse.failed();
|
|
59
|
+
return this.batchResponse.failed(times);
|
|
59
60
|
}
|
|
60
61
|
finally {
|
|
61
62
|
countSimLambdaDynamoDbIteratorAge(simFunction, records);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
}
|
|
65
|
-
/**
|
|
66
|
-
* The sequence numbers this batch's records can be named by.
|
|
67
|
-
*/
|
|
68
|
-
function sequenceNumbersOf(records) {
|
|
69
|
-
return simLambdaStreamSequenceNumbers(records.map((one) => one.dynamodb?.SequenceNumber));
|
|
70
|
-
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { SimLambdaEventSourceStreamPosition } from "../stream/sim-lambda-event-source-streams.js";
|
|
2
|
+
import type { SimLambdaStreamRecordTime } from "./sim-lambda-stream-record-times.js";
|
|
2
3
|
/**
|
|
3
4
|
* What became of one batch of stream records handed to a function.
|
|
4
5
|
*
|
|
@@ -7,24 +8,42 @@ import type { SimLambdaEventSourceStreamPosition } from "../stream/sim-lambda-ev
|
|
|
7
8
|
* batch does not split. The mapping holds one place on the shard, so the answer
|
|
8
9
|
* is one place: either the batch is finished with, or reading goes back to a
|
|
9
10
|
* record and everything from there is delivered again.
|
|
11
|
+
*
|
|
12
|
+
* The batch's own records travel with the answer, because what happens to a
|
|
13
|
+
* batch that failed depends on them: they carry the names it can be sent back
|
|
14
|
+
* to and the instants its records are aged from.
|
|
10
15
|
*/
|
|
11
16
|
export declare class SimLambdaStreamBatchOutcome {
|
|
12
17
|
readonly isHandled: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* The records the batch carried, in stream order.
|
|
20
|
+
*/
|
|
21
|
+
readonly records: readonly SimLambdaStreamRecordTime[];
|
|
13
22
|
private readonly rewindTo;
|
|
14
23
|
private constructor();
|
|
15
24
|
/**
|
|
16
25
|
* A batch the function took in full.
|
|
17
26
|
*/
|
|
18
|
-
static handled(): SimLambdaStreamBatchOutcome;
|
|
27
|
+
static handled(records: readonly SimLambdaStreamRecordTime[]): SimLambdaStreamBatchOutcome;
|
|
19
28
|
/**
|
|
20
29
|
* A batch the function did not take, which is read again from where it was.
|
|
21
30
|
*/
|
|
22
|
-
static failed(): SimLambdaStreamBatchOutcome;
|
|
31
|
+
static failed(records: readonly SimLambdaStreamRecordTime[]): SimLambdaStreamBatchOutcome;
|
|
23
32
|
/**
|
|
24
33
|
* A batch the function reported failing partway through, which is read again
|
|
25
34
|
* from the record it named.
|
|
26
35
|
*/
|
|
27
|
-
static failedFrom(sequenceNumber: string): SimLambdaStreamBatchOutcome;
|
|
36
|
+
static failedFrom(records: readonly SimLambdaStreamRecordTime[], sequenceNumber: string): SimLambdaStreamBatchOutcome;
|
|
37
|
+
/**
|
|
38
|
+
* Where in the batch the next delivery starts, as a position in the records
|
|
39
|
+
* the batch carried.
|
|
40
|
+
*
|
|
41
|
+
* A batch that failed whole starts at the first record. One the function
|
|
42
|
+
* reported on starts at the record it named, which the batch response has
|
|
43
|
+
* already checked was in the batch, so a name that is not there is the whole
|
|
44
|
+
* batch again rather than a guess.
|
|
45
|
+
*/
|
|
46
|
+
get retryIndex(): number;
|
|
28
47
|
/**
|
|
29
48
|
* Where the next read starts when the batch goes back.
|
|
30
49
|
*
|
|
@@ -6,32 +6,62 @@
|
|
|
6
6
|
* batch does not split. The mapping holds one place on the shard, so the answer
|
|
7
7
|
* is one place: either the batch is finished with, or reading goes back to a
|
|
8
8
|
* record and everything from there is delivered again.
|
|
9
|
+
*
|
|
10
|
+
* The batch's own records travel with the answer, because what happens to a
|
|
11
|
+
* batch that failed depends on them: they carry the names it can be sent back
|
|
12
|
+
* to and the instants its records are aged from.
|
|
9
13
|
*/
|
|
10
14
|
export class SimLambdaStreamBatchOutcome {
|
|
11
15
|
isHandled;
|
|
16
|
+
/**
|
|
17
|
+
* The records the batch carried, in stream order.
|
|
18
|
+
*/
|
|
19
|
+
records;
|
|
12
20
|
rewindTo;
|
|
13
|
-
constructor(
|
|
14
|
-
this.isHandled = isHandled;
|
|
15
|
-
this.
|
|
21
|
+
constructor(properties) {
|
|
22
|
+
this.isHandled = properties.isHandled;
|
|
23
|
+
this.records = properties.records;
|
|
24
|
+
this.rewindTo = properties.rewindTo;
|
|
16
25
|
}
|
|
17
26
|
/**
|
|
18
27
|
* A batch the function took in full.
|
|
19
28
|
*/
|
|
20
|
-
static handled() {
|
|
21
|
-
return new SimLambdaStreamBatchOutcome(true,
|
|
29
|
+
static handled(records) {
|
|
30
|
+
return new SimLambdaStreamBatchOutcome({ isHandled: true, records });
|
|
22
31
|
}
|
|
23
32
|
/**
|
|
24
33
|
* A batch the function did not take, which is read again from where it was.
|
|
25
34
|
*/
|
|
26
|
-
static failed() {
|
|
27
|
-
return new SimLambdaStreamBatchOutcome(false,
|
|
35
|
+
static failed(records) {
|
|
36
|
+
return new SimLambdaStreamBatchOutcome({ isHandled: false, records });
|
|
28
37
|
}
|
|
29
38
|
/**
|
|
30
39
|
* A batch the function reported failing partway through, which is read again
|
|
31
40
|
* from the record it named.
|
|
32
41
|
*/
|
|
33
|
-
static failedFrom(sequenceNumber) {
|
|
34
|
-
return new SimLambdaStreamBatchOutcome(
|
|
42
|
+
static failedFrom(records, sequenceNumber) {
|
|
43
|
+
return new SimLambdaStreamBatchOutcome({
|
|
44
|
+
isHandled: false,
|
|
45
|
+
records,
|
|
46
|
+
rewindTo: sequenceNumber,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Where in the batch the next delivery starts, as a position in the records
|
|
51
|
+
* the batch carried.
|
|
52
|
+
*
|
|
53
|
+
* A batch that failed whole starts at the first record. One the function
|
|
54
|
+
* reported on starts at the record it named, which the batch response has
|
|
55
|
+
* already checked was in the batch, so a name that is not there is the whole
|
|
56
|
+
* batch again rather than a guess.
|
|
57
|
+
*/
|
|
58
|
+
get retryIndex() {
|
|
59
|
+
const sequenceNumber = this.rewindTo;
|
|
60
|
+
if (sequenceNumber === undefined) {
|
|
61
|
+
return 0;
|
|
62
|
+
}
|
|
63
|
+
const index = this.records.findIndex((record) => record.sequenceNumber === sequenceNumber);
|
|
64
|
+
return index === -1 ? 0 : index;
|
|
35
65
|
}
|
|
36
66
|
/**
|
|
37
67
|
* Where the next read starts when the batch goes back.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SimLambdaStreamBatchOutcome } from "./sim-lambda-stream-batch-outcome.js";
|
|
2
|
+
import type { SimLambdaStreamRecordTime } from "./sim-lambda-stream-record-times.js";
|
|
2
3
|
/**
|
|
3
4
|
* Reads what a function said about the batch of stream records it was given.
|
|
4
5
|
*
|
|
@@ -18,15 +19,15 @@ export declare class SimLambdaStreamBatchResponse {
|
|
|
18
19
|
/**
|
|
19
20
|
* What became of a batch the function returned from.
|
|
20
21
|
*
|
|
21
|
-
* The
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* nothing and the whole batch goes back.
|
|
22
|
+
* The records are the batch's own, in stream order, and each source cuts them
|
|
23
|
+
* out of its own record shape. A record carrying no sequence number cannot be
|
|
24
|
+
* named, and is left out of the names a report is read against, so a report
|
|
25
|
+
* entry with no identifier names nothing and the whole batch goes back.
|
|
25
26
|
*/
|
|
26
|
-
handled(
|
|
27
|
+
handled(records: readonly SimLambdaStreamRecordTime[], result: unknown): SimLambdaStreamBatchOutcome;
|
|
27
28
|
/**
|
|
28
29
|
* What becomes of a batch the function threw on: the whole of it is read
|
|
29
30
|
* again.
|
|
30
31
|
*/
|
|
31
|
-
failed(): SimLambdaStreamBatchOutcome;
|
|
32
|
+
failed(records: readonly SimLambdaStreamRecordTime[]): SimLambdaStreamBatchOutcome;
|
|
32
33
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SimLambdaBatchItemFailures } from "./sim-lambda-batch-item-failures.js";
|
|
2
2
|
import { SimLambdaStreamBatchOutcome } from "./sim-lambda-stream-batch-outcome.js";
|
|
3
|
+
import { simLambdaStreamSequenceNumbers } from "./sim-lambda-stream-sequence-numbers.js";
|
|
3
4
|
/**
|
|
4
5
|
* Reads what a function said about the batch of stream records it was given.
|
|
5
6
|
*
|
|
@@ -21,28 +22,28 @@ export class SimLambdaStreamBatchResponse {
|
|
|
21
22
|
/**
|
|
22
23
|
* What became of a batch the function returned from.
|
|
23
24
|
*
|
|
24
|
-
* The
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* nothing and the whole batch goes back.
|
|
25
|
+
* The records are the batch's own, in stream order, and each source cuts them
|
|
26
|
+
* out of its own record shape. A record carrying no sequence number cannot be
|
|
27
|
+
* named, and is left out of the names a report is read against, so a report
|
|
28
|
+
* entry with no identifier names nothing and the whole batch goes back.
|
|
28
29
|
*/
|
|
29
|
-
handled(
|
|
30
|
+
handled(records, result) {
|
|
30
31
|
const failedIds = this.batchItemFailures.idsIn(result);
|
|
31
32
|
if (failedIds === undefined) {
|
|
32
|
-
return SimLambdaStreamBatchOutcome.handled();
|
|
33
|
+
return SimLambdaStreamBatchOutcome.handled(records);
|
|
33
34
|
}
|
|
34
|
-
const rewindTo = rewindPoint(failedIds,
|
|
35
|
+
const rewindTo = rewindPoint(failedIds, records);
|
|
35
36
|
if (rewindTo === undefined) {
|
|
36
|
-
return this.failed();
|
|
37
|
+
return this.failed(records);
|
|
37
38
|
}
|
|
38
|
-
return SimLambdaStreamBatchOutcome.failedFrom(rewindTo);
|
|
39
|
+
return SimLambdaStreamBatchOutcome.failedFrom(records, rewindTo);
|
|
39
40
|
}
|
|
40
41
|
/**
|
|
41
42
|
* What becomes of a batch the function threw on: the whole of it is read
|
|
42
43
|
* again.
|
|
43
44
|
*/
|
|
44
|
-
failed() {
|
|
45
|
-
return SimLambdaStreamBatchOutcome.failed();
|
|
45
|
+
failed(records) {
|
|
46
|
+
return SimLambdaStreamBatchOutcome.failed(records);
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
@@ -52,7 +53,8 @@ export class SimLambdaStreamBatchResponse {
|
|
|
52
53
|
* The batch is in stream order, so the first record the report names is the
|
|
53
54
|
* lowest sequence number it named.
|
|
54
55
|
*/
|
|
55
|
-
function rewindPoint(failedIds,
|
|
56
|
+
function rewindPoint(failedIds, records) {
|
|
57
|
+
const sequenceNumbers = simLambdaStreamSequenceNumbers(records.map((record) => record.sequenceNumber));
|
|
56
58
|
if (failedIds.some((failedId) => !sequenceNumbers.includes(failedId))) {
|
|
57
59
|
return undefined;
|
|
58
60
|
}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import type { SimLambdaEventSourceStart } from "../sim-lambda-event-source-starting-position.js";
|
|
2
2
|
import type { SimLambdaEventSourceStreamPosition } from "../stream/sim-lambda-event-source-streams.js";
|
|
3
|
-
import type { SimLambdaStreamBatchOutcome } from "./sim-lambda-stream-batch-outcome.js";
|
|
4
3
|
/**
|
|
5
4
|
* How far along its stream one mapping has got.
|
|
6
5
|
*
|
|
7
6
|
* This is the difference between a stream and a queue. A queue hands a message
|
|
8
7
|
* out and hides it, so a failed batch is the queue's problem afterwards. A
|
|
9
8
|
* stream hands out a place, and the reader is the only thing that remembers it,
|
|
10
|
-
* so a batch that failed is read again from exactly where it was.
|
|
11
|
-
*
|
|
12
|
-
*
|
|
9
|
+
* so a batch that failed is read again from exactly where it was.
|
|
10
|
+
*
|
|
11
|
+
* The place is all this holds. Which place the next read starts from is decided
|
|
12
|
+
* by what became of the batch and what the mapping is willing to keep trying,
|
|
13
|
+
* and that decision is made elsewhere.
|
|
13
14
|
*/
|
|
14
15
|
export declare class SimLambdaStreamCheckpoint {
|
|
15
16
|
#private;
|
|
@@ -19,17 +20,10 @@ export declare class SimLambdaStreamCheckpoint {
|
|
|
19
20
|
*/
|
|
20
21
|
get position(): SimLambdaEventSourceStreamPosition;
|
|
21
22
|
/**
|
|
22
|
-
* Move
|
|
23
|
-
*/
|
|
24
|
-
advanceTo(position: SimLambdaEventSourceStreamPosition): void;
|
|
25
|
-
/**
|
|
26
|
-
* Take a batch the function did not finish.
|
|
23
|
+
* Move to where the next read starts.
|
|
27
24
|
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
* named, so that record and everything after it goes over again, including
|
|
31
|
-
* the records after it that the function did handle. The records before it
|
|
32
|
-
* are finished with.
|
|
25
|
+
* That is past a batch the mapping is finished with, and back to the record a
|
|
26
|
+
* batch it is not finished with is delivered again from.
|
|
33
27
|
*/
|
|
34
|
-
|
|
28
|
+
advanceTo(position: SimLambdaEventSourceStreamPosition): void;
|
|
35
29
|
}
|
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
* This is the difference between a stream and a queue. A queue hands a message
|
|
5
5
|
* out and hides it, so a failed batch is the queue's problem afterwards. A
|
|
6
6
|
* stream hands out a place, and the reader is the only thing that remembers it,
|
|
7
|
-
* so a batch that failed is read again from exactly where it was.
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* so a batch that failed is read again from exactly where it was.
|
|
8
|
+
*
|
|
9
|
+
* The place is all this holds. Which place the next read starts from is decided
|
|
10
|
+
* by what became of the batch and what the mapping is willing to keep trying,
|
|
11
|
+
* and that decision is made elsewhere.
|
|
10
12
|
*/
|
|
11
13
|
export class SimLambdaStreamCheckpoint {
|
|
12
14
|
#position;
|
|
@@ -20,21 +22,12 @@ export class SimLambdaStreamCheckpoint {
|
|
|
20
22
|
return this.#position;
|
|
21
23
|
}
|
|
22
24
|
/**
|
|
23
|
-
* Move
|
|
25
|
+
* Move to where the next read starts.
|
|
26
|
+
*
|
|
27
|
+
* That is past a batch the mapping is finished with, and back to the record a
|
|
28
|
+
* batch it is not finished with is delivered again from.
|
|
24
29
|
*/
|
|
25
30
|
advanceTo(position) {
|
|
26
31
|
this.#position = position;
|
|
27
32
|
}
|
|
28
|
-
/**
|
|
29
|
-
* Take a batch the function did not finish.
|
|
30
|
-
*
|
|
31
|
-
* A batch that failed whole is read again from where it was. One the function
|
|
32
|
-
* reported failing partway through moves the checkpoint to the record it
|
|
33
|
-
* named, so that record and everything after it goes over again, including
|
|
34
|
-
* the records after it that the function did handle. The records before it
|
|
35
|
-
* are finished with.
|
|
36
|
-
*/
|
|
37
|
-
retry(outcome) {
|
|
38
|
-
this.#position = outcome.retryPosition(this.#position);
|
|
39
|
-
}
|
|
40
33
|
}
|
|
@@ -20,7 +20,7 @@ interface SimLambdaStreamProgressProperties {
|
|
|
20
20
|
*/
|
|
21
21
|
export declare class SimLambdaStreamProgress {
|
|
22
22
|
private readonly checkpoint;
|
|
23
|
-
private readonly
|
|
23
|
+
private readonly retry;
|
|
24
24
|
private readonly schedule;
|
|
25
25
|
constructor(properties: SimLambdaStreamProgressProperties);
|
|
26
26
|
/**
|
|
@@ -44,7 +44,10 @@ export declare class SimLambdaStreamProgress {
|
|
|
44
44
|
*/
|
|
45
45
|
after(outcome: SimLambdaStreamBatchOutcome, batch: SimLambdaEventSourceStreamProgressBatch): void;
|
|
46
46
|
/**
|
|
47
|
-
* Move past a batch
|
|
47
|
+
* Move past a batch that is finished with, and read on.
|
|
48
|
+
*
|
|
49
|
+
* A batch the function took is finished with, and so is one the mapping has
|
|
50
|
+
* given up on.
|
|
48
51
|
*/
|
|
49
52
|
handled(batch: SimLambdaEventSourceStreamProgressBatch): void;
|
|
50
53
|
/**
|
|
@@ -54,10 +57,11 @@ export declare class SimLambdaStreamProgress {
|
|
|
54
57
|
* what AWS does when a stream mapping's error handling runs out. Parking the
|
|
55
58
|
* shard instead would be a simulator invention.
|
|
56
59
|
*
|
|
57
|
-
* A
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
60
|
+
* A batch runs out either by having had its retries or by every record left
|
|
61
|
+
* in it being older than the mapping will carry. Records that aged out of the
|
|
62
|
+
* front of a batch are left behind, and the ones behind them go over again,
|
|
63
|
+
* so a mapping given a record age keeps working through its shard rather than
|
|
64
|
+
* stalling on the oldest record on it.
|
|
61
65
|
*/
|
|
62
66
|
failed(outcome: SimLambdaStreamBatchOutcome, batch: SimLambdaEventSourceStreamProgressBatch): void;
|
|
63
67
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
2
|
import { PollSchedule } from "../../../../util/background/poll-schedule.js";
|
|
3
3
|
import { SimLambdaStreamCheckpoint } from "./sim-lambda-stream-checkpoint.js";
|
|
4
|
-
import {
|
|
4
|
+
import { SimLambdaStreamRetry } from "./sim-lambda-stream-retry.js";
|
|
5
5
|
/**
|
|
6
6
|
* How far along its stream one mapping has got, and what it does next.
|
|
7
7
|
*
|
|
@@ -15,15 +15,20 @@ import { SimLambdaStreamRetryBackoff } from "./sim-lambda-stream-retry-backoff.j
|
|
|
15
15
|
*/
|
|
16
16
|
export class SimLambdaStreamProgress {
|
|
17
17
|
checkpoint;
|
|
18
|
-
|
|
18
|
+
retry;
|
|
19
19
|
schedule;
|
|
20
20
|
constructor(properties) {
|
|
21
21
|
// A stream mapping is refused at creation unless it names a starting
|
|
22
22
|
// position, so one that has got this far without one is the simulator
|
|
23
23
|
// having gone wrong rather than a request having been wrong.
|
|
24
|
-
const { start } = properties.mapping;
|
|
24
|
+
const { start, streamRetryLimits } = properties.mapping;
|
|
25
25
|
assertDefined(start, "stream mapping start position");
|
|
26
|
+
assertDefined(streamRetryLimits, "stream mapping retry limits");
|
|
26
27
|
this.checkpoint = new SimLambdaStreamCheckpoint(start);
|
|
28
|
+
this.retry = new SimLambdaStreamRetry({
|
|
29
|
+
limits: streamRetryLimits,
|
|
30
|
+
clock: properties.background,
|
|
31
|
+
});
|
|
27
32
|
this.schedule = new PollSchedule(properties);
|
|
28
33
|
}
|
|
29
34
|
/**
|
|
@@ -59,10 +64,13 @@ export class SimLambdaStreamProgress {
|
|
|
59
64
|
this.failed(outcome, batch);
|
|
60
65
|
}
|
|
61
66
|
/**
|
|
62
|
-
* Move past a batch
|
|
67
|
+
* Move past a batch that is finished with, and read on.
|
|
68
|
+
*
|
|
69
|
+
* A batch the function took is finished with, and so is one the mapping has
|
|
70
|
+
* given up on.
|
|
63
71
|
*/
|
|
64
72
|
handled(batch) {
|
|
65
|
-
this.
|
|
73
|
+
this.retry.reset();
|
|
66
74
|
this.checkpoint.advanceTo(batch.next);
|
|
67
75
|
if (!batch.drained) {
|
|
68
76
|
this.schedule.now();
|
|
@@ -75,17 +83,19 @@ export class SimLambdaStreamProgress {
|
|
|
75
83
|
* what AWS does when a stream mapping's error handling runs out. Parking the
|
|
76
84
|
* shard instead would be a simulator invention.
|
|
77
85
|
*
|
|
78
|
-
* A
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
86
|
+
* A batch runs out either by having had its retries or by every record left
|
|
87
|
+
* in it being older than the mapping will carry. Records that aged out of the
|
|
88
|
+
* front of a batch are left behind, and the ones behind them go over again,
|
|
89
|
+
* so a mapping given a record age keeps working through its shard rather than
|
|
90
|
+
* stalling on the oldest record on it.
|
|
82
91
|
*/
|
|
83
92
|
failed(outcome, batch) {
|
|
84
|
-
|
|
93
|
+
const again = this.retry.after(outcome, this.checkpoint.position);
|
|
94
|
+
if (again === undefined) {
|
|
85
95
|
this.handled(batch);
|
|
86
96
|
return;
|
|
87
97
|
}
|
|
88
|
-
this.checkpoint.
|
|
89
|
-
this.schedule.afterSeconds(
|
|
98
|
+
this.checkpoint.advanceTo(again.position);
|
|
99
|
+
this.schedule.afterSeconds(again.afterSeconds);
|
|
90
100
|
}
|
|
91
101
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SimLambdaKinesisStreamRecord } from "../stream/kinesis/sim-lambda-kinesis-streams.js";
|
|
2
|
+
import type { SimLambdaEventSourceStreamRecord } from "../stream/sim-lambda-event-source-streams.js";
|
|
3
|
+
/**
|
|
4
|
+
* One record of a delivered batch, as deciding what to do with a failed batch
|
|
5
|
+
* sees it.
|
|
6
|
+
*
|
|
7
|
+
* Two things about a record matter once its function has failed: the name the
|
|
8
|
+
* mapping can be sent back to, and the instant its age is measured from. Each
|
|
9
|
+
* stream service cuts both out of its own record shape, the way it already does
|
|
10
|
+
* for the sequence numbers a batch item failure report names.
|
|
11
|
+
*/
|
|
12
|
+
export interface SimLambdaStreamRecordTime {
|
|
13
|
+
readonly sequenceNumber: string | undefined;
|
|
14
|
+
readonly at: Date | undefined;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* What a DynamoDB Streams batch's records are named by and dated from.
|
|
18
|
+
*/
|
|
19
|
+
export declare function simLambdaDynamoDbStreamRecordTimes(records: readonly SimLambdaEventSourceStreamRecord[]): readonly SimLambdaStreamRecordTime[];
|
|
20
|
+
/**
|
|
21
|
+
* What a Kinesis batch's records are named by and dated from.
|
|
22
|
+
*/
|
|
23
|
+
export declare function simLambdaKinesisStreamRecordTimes(records: readonly SimLambdaKinesisStreamRecord[]): readonly SimLambdaStreamRecordTime[];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a DynamoDB Streams batch's records are named by and dated from.
|
|
3
|
+
*/
|
|
4
|
+
export function simLambdaDynamoDbStreamRecordTimes(records) {
|
|
5
|
+
return records.map((one) => ({
|
|
6
|
+
sequenceNumber: one.dynamodb?.SequenceNumber,
|
|
7
|
+
at: one.dynamodb?.ApproximateCreationDateTime,
|
|
8
|
+
}));
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* What a Kinesis batch's records are named by and dated from.
|
|
12
|
+
*/
|
|
13
|
+
export function simLambdaKinesisStreamRecordTimes(records) {
|
|
14
|
+
return records.map((one) => ({
|
|
15
|
+
sequenceNumber: one.SequenceNumber,
|
|
16
|
+
at: one.ApproximateArrivalTimestamp,
|
|
17
|
+
}));
|
|
18
|
+
}
|
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* How long a mapping waits before handing a failed batch to its function
|
|
3
|
-
* again, and
|
|
3
|
+
* again, and how many waits it has left.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* deliberate.
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* scheduled at the instant the clock already reads, and advancing the clock
|
|
10
|
-
* keeps dispatching whatever falls due inside the interval it is moving
|
|
5
|
+
* The delay is a simulator constraint rather than AWS behaviour, and it is
|
|
6
|
+
* deliberate. AWS documents no delay between attempts. A delay of zero here
|
|
7
|
+
* would be scheduled at the instant the clock already reads, and advancing the
|
|
8
|
+
* clock keeps dispatching whatever falls due inside the interval it is moving
|
|
11
9
|
* through, so a batch the function always throws on would leave `advanceBy`
|
|
12
10
|
* with work to do forever. The delay is therefore strictly positive and grows
|
|
13
|
-
* with each attempt, which is also what a consumer under load actually wants
|
|
11
|
+
* with each attempt, which is also what a consumer under load actually wants,
|
|
12
|
+
* and it is what lets a test walk through the attempts by advancing the clock.
|
|
14
13
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* instead. What happens at the end is AWS's own behaviour: the records are
|
|
19
|
-
* discarded and the mapping carries on with the stream.
|
|
14
|
+
* How many attempts there are belongs to the mapping rather than to this: a
|
|
15
|
+
* mapping that asked for a retry quota gets the quota it asked for, and one
|
|
16
|
+
* that asked for neither limit gets the simulator's own cap.
|
|
20
17
|
*/
|
|
21
18
|
export declare class SimLambdaStreamRetryBackoff {
|
|
19
|
+
private readonly attemptLimit;
|
|
22
20
|
private attempts;
|
|
21
|
+
constructor(attemptLimit: number);
|
|
23
22
|
/**
|
|
24
23
|
* Whether this batch has had all the attempts it gets.
|
|
25
24
|
*/
|