aws-lambda-powertools 3.23.1a7__tar.gz → 3.23.1a9__tar.gz
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.
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/PKG-INFO +5 -5
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/README.md +2 -1
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/api_gateway.py +21 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/bedrock_agent_function.py +6 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/compat.py +1 -1
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/version.py +1 -1
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/base.py +1 -1
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/functions.py +1 -6
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/serialization.py +1 -6
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/__init__.py +2 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/dynamodb.py +90 -1
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/_s3_seekable_io.py +4 -3
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/pyproject.toml +7 -11
- aws_lambda_powertools-3.23.1a9/setup.py +91 -0
- aws_lambda_powertools-3.23.1a7/setup.py +0 -91
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/LICENSE +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/THIRD-PARTY-LICENSES +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/appsync.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/bedrock_agent.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/content_types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/_registry.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/appsync_events.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/router.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/events_appsync/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/exception_handling.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/graphql_appsync/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/graphql_appsync/_registry.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/graphql_appsync/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/graphql_appsync/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/graphql_appsync/router.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/lambda_function_url.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/middlewares/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/middlewares/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/middlewares/schema_validation.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/config.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/dependant.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/encoders.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/models.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/params.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/pydantic_loader.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/swagger_ui/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/swagger_ui/html.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/swagger_ui/oauth2.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui-bundle.min.js +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui.min.css +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/openapi/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/router.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/util.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/event_handler/vpc_lattice.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/exceptions/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/buffer/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/buffer/cache.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/buffer/config.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/buffer/functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/correlation_paths.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/filters.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/formatter.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/formatters/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/formatters/datadog.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/lambda_context.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/logger.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/logging/utils.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/metric.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/metrics.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/cloudwatch.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/metric_properties.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/cold_start.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/datadog/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/datadog/datadog.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/datadog/metrics.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/provider/datadog/warnings.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/metrics/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/middleware_factory/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/middleware_factory/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/middleware_factory/factory.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/package_logger.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/py.typed +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/cache_dict.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/cookies.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/dynamodb_deserializer.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/headers_serializer.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/json_encoder.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/lazy_import.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/shared/user_agent.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/tracing/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/tracing/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/tracing/extensions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/tracing/tracer.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/decorators.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/sqs_fifo_partial_processor.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/batch/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/active_mq_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/alb_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/api_gateway_proxy_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/api_gateway_websocket_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/appsync/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/appsync/scalar_types_utils.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/appsync_authorizer_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/appsync_resolver_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/appsync_resolver_events_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/aws_config_rule_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/bedrock_agent_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/bedrock_agent_function_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/cloud_watch_alarm_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/cloud_watch_custom_widget_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/cloud_watch_logs_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/cloudformation_custom_resource_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/code_deploy_lifecycle_hook_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/code_pipeline_job_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/cognito_user_pool_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/common.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/connect_contact_flow_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/dynamo_db_stream_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/event_bridge_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/event_source.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/iot_registry_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/kafka_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/kinesis_firehose_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/kinesis_stream_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/lambda_function_url_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/rabbit_mq_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/s3_batch_operation_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/s3_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/s3_object_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/secrets_manager_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/ses_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/shared_functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/sns_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/sqs_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/transfer_family_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_classes/vpc_lattice.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/provider/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/provider/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/provider/kms/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/data_masking/provider/kms/aws_encryption_sdk.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/appconfig.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/comparators.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/feature_flags.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/schema.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/feature_flags/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/config.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/hook.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/idempotency.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/cache.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/datarecord.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/dynamodb.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/persistence/redis.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/custom_dict.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/dataclass.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/no_op.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/idempotency/serialization/pydantic.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/jmespath_utils/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/jmespath_utils/envelopes.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/consumer_records.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/avro.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/default.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/deserializer.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/json.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/deserializer/protobuf.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/kafka_consumer.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/schema_config.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/custom_dict.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/dataclass.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/pydantic.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/kafka/serialization/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/appconfig.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/dynamodb.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/secrets.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/ssm.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parameters/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/apigw.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/apigw_websocket.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/apigwv2.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/bedrock_agent.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/cloudwatch.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/dynamodb.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/event_bridge.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/kafka.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/kinesis.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/kinesis_firehose.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/lambda_function_url.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/sns.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/sqs.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/vpc_lattice.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/envelopes/vpc_latticev2.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/functions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/alb.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/apigw.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/apigw_websocket.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/apigwv2.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/appsync.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/appsync_events.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/bedrock_agent.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/cloudformation_custom_resource.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/cloudwatch.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/cognito.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/event_bridge.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/iot_registry_events.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/kafka.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/kinesis.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose_sqs.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/lambda_function_url.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/s3.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/s3_batch_operation.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/s3_event_notification.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/s3_object_event.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/ses.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/sns.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/sqs.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/transfer_family.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/vpc_lattice.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/models/vpc_latticev2.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/parser.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/parser/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/serialization.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/compat.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/constants.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/s3_object.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/transformations/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/transformations/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/transformations/csv.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/transformations/gzip.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/transformations/zip.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/streaming/types.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/typing/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/typing/lambda_client_context.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/typing/lambda_client_context_mobile_client.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/typing/lambda_cognito_identity.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/typing/lambda_context.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/validation/__init__.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/validation/base.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/validation/envelopes.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/validation/exceptions.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/utilities/validation/validator.py +0 -0
- {aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/warnings/__init__.py +0 -0
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: aws_lambda_powertools
|
|
3
|
-
Version: 3.23.
|
|
3
|
+
Version: 3.23.1a9
|
|
4
4
|
Summary: Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.
|
|
5
5
|
License: MIT
|
|
6
6
|
Keywords: aws_lambda_powertools,aws,tracing,logging,lambda,powertools,feature_flags,idempotency,middleware
|
|
7
7
|
Author: Amazon Web Services
|
|
8
|
-
Requires-Python: >=3.
|
|
8
|
+
Requires-Python: >=3.10,<4.0.0
|
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
|
10
10
|
Classifier: Intended Audience :: Developers
|
|
11
11
|
Classifier: License :: OSI Approved :: MIT License
|
|
12
12
|
Classifier: License :: OSI Approved :: MIT No Attribution License (MIT-0)
|
|
13
13
|
Classifier: Natural Language :: English
|
|
14
14
|
Classifier: Programming Language :: Python :: 3
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
16
15
|
Classifier: Programming Language :: Python :: 3.10
|
|
17
16
|
Classifier: Programming Language :: Python :: 3.11
|
|
18
17
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -42,7 +41,7 @@ Requires-Dist: pydantic (>=2.4.0,<3.0.0) ; extra == "parser" or extra == "all"
|
|
|
42
41
|
Requires-Dist: pydantic-settings (>=2.6.1,<3.0.0) ; extra == "all"
|
|
43
42
|
Requires-Dist: redis (>=4.4,<8.0) ; extra == "redis"
|
|
44
43
|
Requires-Dist: typing-extensions (>=4.11.0,<5.0.0)
|
|
45
|
-
Requires-Dist: valkey-glide (>=1.3.5,<3.0) ;
|
|
44
|
+
Requires-Dist: valkey-glide (>=1.3.5,<3.0) ; extra == "valkey"
|
|
46
45
|
Project-URL: Documentation, https://docs.powertools.aws.dev/lambda/python/
|
|
47
46
|
Project-URL: Issue tracker, https://github.com/aws-powertools/powertools-lambda-python/issues
|
|
48
47
|
Project-URL: Repository, https://github.com/aws-powertools/powertools-lambda-python
|
|
@@ -54,7 +53,7 @@ Description-Content-Type: text/markdown
|
|
|
54
53
|
|
|
55
54
|
[](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/python_build.yml)
|
|
56
55
|
[](https://app.codecov.io/gh/aws-powertools/powertools-lambda-python)
|
|
57
|
-
   [](https://scorecard.dev/viewer/?uri=github.com/aws-powertools/powertools-lambda-python)
|
|
58
57
|
[](https://discord.gg/B8zZKbbyET)
|
|
59
58
|
|
|
60
59
|
Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless [best practices and increase developer velocity](https://docs.powertools.aws.dev/lambda/python/latest/#features).
|
|
@@ -115,6 +114,7 @@ The following companies, among others, use Powertools:
|
|
|
115
114
|
* [CPQi (Exadel Financial Services)](https://cpqi.com/)
|
|
116
115
|
* [CloudZero](https://www.cloudzero.com/)
|
|
117
116
|
* [CyberArk](https://www.cyberark.com/)
|
|
117
|
+
* [EF Education First](https://www.ef.com/)
|
|
118
118
|
* [Flyweight](https://flyweight.io/)
|
|
119
119
|
* [globaldatanet](https://globaldatanet.com/)
|
|
120
120
|
* [Guild](https://guild.com/)
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
[](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/python_build.yml)
|
|
5
5
|
[](https://app.codecov.io/gh/aws-powertools/powertools-lambda-python)
|
|
6
|
-
   [](https://scorecard.dev/viewer/?uri=github.com/aws-powertools/powertools-lambda-python)
|
|
7
7
|
[](https://discord.gg/B8zZKbbyET)
|
|
8
8
|
|
|
9
9
|
Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless [best practices and increase developer velocity](https://docs.powertools.aws.dev/lambda/python/latest/#features).
|
|
@@ -64,6 +64,7 @@ The following companies, among others, use Powertools:
|
|
|
64
64
|
* [CPQi (Exadel Financial Services)](https://cpqi.com/)
|
|
65
65
|
* [CloudZero](https://www.cloudzero.com/)
|
|
66
66
|
* [CyberArk](https://www.cyberark.com/)
|
|
67
|
+
* [EF Education First](https://www.ef.com/)
|
|
67
68
|
* [Flyweight](https://flyweight.io/)
|
|
68
69
|
* [globaldatanet](https://globaldatanet.com/)
|
|
69
70
|
* [Guild](https://guild.com/)
|
|
@@ -261,6 +261,15 @@ class BedrockResponse(Generic[ResponseT]):
|
|
|
261
261
|
"""
|
|
262
262
|
Contains the response body, status code, content type, and optional attributes
|
|
263
263
|
for session management and knowledge base configuration.
|
|
264
|
+
|
|
265
|
+
Note
|
|
266
|
+
----
|
|
267
|
+
Amazon Bedrock Agents only support TEXT content type in the responseBody according to the
|
|
268
|
+
Lambda integration documentation. As a result, all response bodies are automatically serialized
|
|
269
|
+
as JSON strings regardless of the content_type parameter. The content_type parameter is maintained
|
|
270
|
+
for API consistency but does not affect the actual format sent to Bedrock Agents.
|
|
271
|
+
|
|
272
|
+
See: https://docs.aws.amazon.com/bedrock/latest/userguide/agents-lambda.html
|
|
264
273
|
"""
|
|
265
274
|
|
|
266
275
|
def __init__(
|
|
@@ -282,6 +291,18 @@ class BedrockResponse(Generic[ResponseT]):
|
|
|
282
291
|
def is_json(self) -> bool:
|
|
283
292
|
"""
|
|
284
293
|
Returns True if the response is JSON, based on the Content-Type.
|
|
294
|
+
|
|
295
|
+
Note
|
|
296
|
+
----
|
|
297
|
+
This method always returns True for BedrockResponse regardless of the content_type parameter.
|
|
298
|
+
This is because Amazon Bedrock Agents only support TEXT content type in the responseBody,
|
|
299
|
+
and the event handler automatically serializes all response bodies as JSON strings when
|
|
300
|
+
sending to Bedrock Agents.
|
|
301
|
+
|
|
302
|
+
See: https://docs.aws.amazon.com/bedrock/latest/userguide/agents-lambda.html
|
|
303
|
+
|
|
304
|
+
The content_type parameter in BedrockResponse is maintained for API consistency but does not
|
|
305
|
+
affect the actual response format sent to Bedrock Agents.
|
|
285
306
|
"""
|
|
286
307
|
return True
|
|
287
308
|
|
|
@@ -133,6 +133,12 @@ class BedrockAgentFunctionResolver:
|
|
|
133
133
|
context: dict
|
|
134
134
|
|
|
135
135
|
def __init__(self, serializer: Callable | None = None) -> None:
|
|
136
|
+
"""
|
|
137
|
+
Parameters
|
|
138
|
+
----------
|
|
139
|
+
serializer: Callable, optional
|
|
140
|
+
function to serialize `obj` to a JSON formatted `str`, by default json.dumps
|
|
141
|
+
"""
|
|
136
142
|
self._tools: dict[str, dict[str, Any]] = {}
|
|
137
143
|
self.current_event: BedrockAgentFunctionEvent | None = None
|
|
138
144
|
self.context = {}
|
|
@@ -211,7 +211,7 @@ def copy_field_info(*, field_info: FieldInfo, annotation: Any) -> FieldInfo:
|
|
|
211
211
|
base_type, constraints = extract_metadata(annotation)
|
|
212
212
|
|
|
213
213
|
# Set the annotation with base type and all constraint metadata
|
|
214
|
-
# Use tuple unpacking for Python 3.
|
|
214
|
+
# Use tuple unpacking for Python 3.10+ compatibility
|
|
215
215
|
if constraints:
|
|
216
216
|
new_field.annotation = Annotated[(base_type, *constraints)]
|
|
217
217
|
else:
|
|
@@ -135,7 +135,7 @@ class BasePartialProcessor(ABC):
|
|
|
135
135
|
# Python 3.14+ will raise RuntimeError if get_event_loop() is called when there's no running loop
|
|
136
136
|
# We need to handle both cases: existing loop (container reuse) and no loop (cold start)
|
|
137
137
|
try:
|
|
138
|
-
loop = asyncio.
|
|
138
|
+
loop = asyncio.get_event_loop()
|
|
139
139
|
except RuntimeError:
|
|
140
140
|
# No running loop, create a new one
|
|
141
141
|
loop = asyncio.new_event_loop()
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import sys
|
|
2
|
+
from types import UnionType # Available in Python 3.10+
|
|
2
3
|
from typing import Any, Optional, Union, get_args, get_origin
|
|
3
4
|
|
|
4
|
-
# Conditionally import or define UnionType based on Python version
|
|
5
|
-
if sys.version_info >= (3, 10):
|
|
6
|
-
from types import UnionType # Available in Python 3.10+
|
|
7
|
-
else:
|
|
8
|
-
UnionType = Union # Fallback for Python 3.9
|
|
9
|
-
|
|
10
5
|
from aws_lambda_powertools.utilities.idempotency.exceptions import (
|
|
11
6
|
IdempotencyModelTypeError,
|
|
12
7
|
)
|
|
@@ -2,14 +2,9 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import sys
|
|
4
4
|
from dataclasses import is_dataclass
|
|
5
|
+
from types import UnionType # Available in Python 3.10+
|
|
5
6
|
from typing import TYPE_CHECKING, Annotated, Any, Optional, Union, get_args, get_origin
|
|
6
7
|
|
|
7
|
-
# Conditionally import or define UnionType based on Python version
|
|
8
|
-
if sys.version_info >= (3, 10):
|
|
9
|
-
from types import UnionType # Available in Python 3.10+
|
|
10
|
-
else:
|
|
11
|
-
UnionType = Union # Fallback for Python 3.9
|
|
12
|
-
|
|
13
8
|
from aws_lambda_powertools.utilities.kafka.serialization.custom_dict import CustomDictOutputSerializer
|
|
14
9
|
from aws_lambda_powertools.utilities.kafka.serialization.dataclass import DataclassOutputSerializer
|
|
15
10
|
|
|
@@ -66,6 +66,7 @@ from .cognito import (
|
|
|
66
66
|
)
|
|
67
67
|
from .dynamodb import (
|
|
68
68
|
DynamoDBStreamChangedRecordModel,
|
|
69
|
+
DynamoDBStreamLambdaOnFailureDestinationModel,
|
|
69
70
|
DynamoDBStreamModel,
|
|
70
71
|
DynamoDBStreamRecordModel,
|
|
71
72
|
)
|
|
@@ -173,6 +174,7 @@ __all__ = [
|
|
|
173
174
|
"DynamoDBStreamModel",
|
|
174
175
|
"EventBridgeModel",
|
|
175
176
|
"DynamoDBStreamChangedRecordModel",
|
|
177
|
+
"DynamoDBStreamLambdaOnFailureDestinationModel",
|
|
176
178
|
"DynamoDBStreamRecordModel",
|
|
177
179
|
"DynamoDBStreamChangedRecordModel",
|
|
178
180
|
"KinesisDataStreamModel",
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
from datetime import datetime
|
|
3
3
|
from typing import Any, Dict, List, Literal, Optional, Type, Union
|
|
4
4
|
|
|
5
|
-
from pydantic import BaseModel, Field, field_validator
|
|
5
|
+
from pydantic import BaseModel, ConfigDict, Field, field_validator
|
|
6
|
+
from pydantic.alias_generators import to_camel
|
|
6
7
|
|
|
7
8
|
from aws_lambda_powertools.shared.dynamodb_deserializer import TypeDeserializer
|
|
8
9
|
|
|
@@ -110,3 +111,91 @@ class DynamoDBStreamModel(BaseModel):
|
|
|
110
111
|
},
|
|
111
112
|
],
|
|
112
113
|
)
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
class DDBStreamBatchInfo(BaseModel):
|
|
117
|
+
model_config = ConfigDict(alias_generator=to_camel)
|
|
118
|
+
|
|
119
|
+
approximate_arrival_of_first_record: datetime = Field(
|
|
120
|
+
description="The approximate date and time when the first stream record from the batch was created"
|
|
121
|
+
", in ISO-8601 format.",
|
|
122
|
+
examples=["1970-01-01T00:00:00.000Z"],
|
|
123
|
+
)
|
|
124
|
+
approximate_arrival_of_last_record: datetime = Field(
|
|
125
|
+
description="The approximate date and time when the last stream record from the batch was created"
|
|
126
|
+
", in ISO-8601 format.",
|
|
127
|
+
examples=["1970-01-01T00:00:00.000Z"],
|
|
128
|
+
)
|
|
129
|
+
batch_size: int = Field(
|
|
130
|
+
description="The size of the batch.",
|
|
131
|
+
examples=[1],
|
|
132
|
+
)
|
|
133
|
+
end_sequence_number: str = Field(
|
|
134
|
+
description="The unique identifier of the last stream record from the batch.",
|
|
135
|
+
examples=["222"],
|
|
136
|
+
)
|
|
137
|
+
shard_id: str = Field(
|
|
138
|
+
description="The unique identifier of the DynamoDB Stream shard that contains the records from the batch.",
|
|
139
|
+
examples=["shardId-00000000000000000000-00000000"],
|
|
140
|
+
)
|
|
141
|
+
start_sequence_number: str = Field(
|
|
142
|
+
description="The unique identifier of the first stream record from the batch.",
|
|
143
|
+
examples=["222"],
|
|
144
|
+
)
|
|
145
|
+
stream_arn: str = Field(
|
|
146
|
+
description="The Amazon Resource Name (ARN) of the DynamoDB stream.",
|
|
147
|
+
examples=["arn:aws:dynamodb:us-west-2:123456789012:table/ExampleTable/stream/2021-01-01T00:00:00.000"],
|
|
148
|
+
)
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
class RequestContext(BaseModel):
|
|
152
|
+
model_config = ConfigDict(alias_generator=to_camel)
|
|
153
|
+
|
|
154
|
+
approximate_invoke_count: int = Field(
|
|
155
|
+
description="The number of Lambda invocations for the record.",
|
|
156
|
+
examples=[1],
|
|
157
|
+
)
|
|
158
|
+
condition: str = Field(
|
|
159
|
+
description="The condition that caused the record to be discarded.",
|
|
160
|
+
examples=["RetryAttemptsExhausted"],
|
|
161
|
+
)
|
|
162
|
+
function_arn: str = Field(
|
|
163
|
+
description="The Amazon Resource Name (ARN) of the Lambda.",
|
|
164
|
+
examples=["arn:aws:lambda:eu-west-1:809313241:function:test"],
|
|
165
|
+
)
|
|
166
|
+
request_id: str = Field(
|
|
167
|
+
description="The unique identifier of the request.",
|
|
168
|
+
)
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
class ResponseContext(BaseModel):
|
|
172
|
+
model_config = ConfigDict(alias_generator=to_camel)
|
|
173
|
+
|
|
174
|
+
executed_version: str = Field(
|
|
175
|
+
description="The version of the Lambda executed",
|
|
176
|
+
examples=["$LATEST"],
|
|
177
|
+
)
|
|
178
|
+
function_error: str = Field(
|
|
179
|
+
description="",
|
|
180
|
+
examples=["Unhandled"],
|
|
181
|
+
)
|
|
182
|
+
status_code: int = Field(
|
|
183
|
+
description="The status code returned by the Lambda",
|
|
184
|
+
)
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
# https://docs.aws.amazon.com/lambda/latest/dg/services-dynamodb-errors.html
|
|
188
|
+
class DynamoDBStreamLambdaOnFailureDestinationModel(BaseModel):
|
|
189
|
+
model_config = ConfigDict(alias_generator=to_camel)
|
|
190
|
+
|
|
191
|
+
ddb_stream_batch_info: DDBStreamBatchInfo = Field(alias="DDBStreamBatchInfo")
|
|
192
|
+
request_context: RequestContext
|
|
193
|
+
response_context: ResponseContext
|
|
194
|
+
timestamp: datetime = Field(
|
|
195
|
+
description="The record time, in ISO-8601 format.",
|
|
196
|
+
examples=["1970-01-01T00:00:00.000Z"],
|
|
197
|
+
)
|
|
198
|
+
version: str = Field(
|
|
199
|
+
description="The version of the record format.",
|
|
200
|
+
examples=["1.0"],
|
|
201
|
+
)
|
|
@@ -2,12 +2,11 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import io
|
|
4
4
|
import logging
|
|
5
|
-
from typing import IO, TYPE_CHECKING, Any, TypeVar
|
|
5
|
+
from typing import IO, TYPE_CHECKING, Any, TypeVar
|
|
6
6
|
|
|
7
7
|
import boto3
|
|
8
8
|
|
|
9
9
|
from aws_lambda_powertools.shared import user_agent
|
|
10
|
-
from aws_lambda_powertools.utilities.streaming.compat import PowertoolsStreamingBody
|
|
11
10
|
from aws_lambda_powertools.utilities.streaming.constants import MESSAGE_STREAM_NOT_WRITABLE
|
|
12
11
|
|
|
13
12
|
if TYPE_CHECKING:
|
|
@@ -16,6 +15,8 @@ if TYPE_CHECKING:
|
|
|
16
15
|
|
|
17
16
|
from mypy_boto3_s3.client import S3Client
|
|
18
17
|
|
|
18
|
+
from aws_lambda_powertools.utilities.streaming.compat import PowertoolsStreamingBody
|
|
19
|
+
|
|
19
20
|
_CData = TypeVar("_CData")
|
|
20
21
|
|
|
21
22
|
logger = logging.getLogger(__name__)
|
|
@@ -103,7 +104,7 @@ class _S3SeekableIO(IO[bytes]):
|
|
|
103
104
|
self._raw_stream = self.s3_client.get_object(Range=range_header, **self._sdk_options).get("Body")
|
|
104
105
|
self._closed = False
|
|
105
106
|
|
|
106
|
-
return
|
|
107
|
+
return self._raw_stream
|
|
107
108
|
|
|
108
109
|
def seek(self, offset: int, whence: int = io.SEEK_SET) -> int:
|
|
109
110
|
"""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "aws_lambda_powertools"
|
|
3
|
-
version = "3.23.
|
|
3
|
+
version = "3.23.1a9"
|
|
4
4
|
description = "Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity."
|
|
5
5
|
authors = ["Amazon Web Services"]
|
|
6
6
|
include = ["aws_lambda_powertools/py.typed", "THIRD-PARTY-LICENSES"]
|
|
@@ -9,7 +9,6 @@ classifiers = [
|
|
|
9
9
|
"Intended Audience :: Developers",
|
|
10
10
|
"License :: OSI Approved :: MIT No Attribution License (MIT-0)",
|
|
11
11
|
"Natural Language :: English",
|
|
12
|
-
"Programming Language :: Python :: 3.9",
|
|
13
12
|
"Programming Language :: Python :: 3.10",
|
|
14
13
|
"Programming Language :: Python :: 3.11",
|
|
15
14
|
"Programming Language :: Python :: 3.12",
|
|
@@ -39,7 +38,7 @@ license = "MIT"
|
|
|
39
38
|
"Releases" = "https://github.com/aws-powertools/powertools-lambda-python/releases"
|
|
40
39
|
|
|
41
40
|
[tool.poetry.dependencies]
|
|
42
|
-
python = ">=3.
|
|
41
|
+
python = ">=3.10,<4.0.0"
|
|
43
42
|
|
|
44
43
|
# Required libraries installed by default
|
|
45
44
|
jmespath = "^1.0.1"
|
|
@@ -52,7 +51,7 @@ pydantic = { version = "^2.4.0", optional = true }
|
|
|
52
51
|
pydantic-settings = {version = "^2.6.1", optional = true}
|
|
53
52
|
boto3 = { version = "^1.34.32", optional = true }
|
|
54
53
|
redis = { version = ">=4.4,<8.0", optional = true }
|
|
55
|
-
valkey-glide = { version = ">=1.3.5,<3.0", optional = true
|
|
54
|
+
valkey-glide = { version = ">=1.3.5,<3.0", optional = true }
|
|
56
55
|
aws-encryption-sdk = { version = ">=3.1.1,<5.0.0", optional = true }
|
|
57
56
|
jsonpath-ng = { version = "^1.6.0", optional = true }
|
|
58
57
|
datadog-lambda = { version = ">=8.114.0,<9.0.0", optional = true }
|
|
@@ -87,7 +86,7 @@ boto3 = "^1.26.164"
|
|
|
87
86
|
isort = ">=5.13.2,<7.0.0"
|
|
88
87
|
pytest-cov = ">=5,<8"
|
|
89
88
|
pytest-mock = "^3.14.0"
|
|
90
|
-
pytest-asyncio = ">=0.24,<1.
|
|
89
|
+
pytest-asyncio = ">=0.24,<1.4"
|
|
91
90
|
bandit = "^1.7.10"
|
|
92
91
|
radon = "^6.0.1"
|
|
93
92
|
xenon = "^0.9.3"
|
|
@@ -109,18 +108,15 @@ mypy-boto3-appconfigdata = "^1.36.0"
|
|
|
109
108
|
ijson = "^3.3.0"
|
|
110
109
|
hvac = "^2.3.0"
|
|
111
110
|
aws-requests-auth = "^0.4.3"
|
|
112
|
-
urllib3 =
|
|
113
|
-
{ version = ">=1.26.0,<2.0.0", python = "<3.10" },
|
|
114
|
-
{ version = ">=1.25.4,!=2.2.0,<3", python = ">=3.10" },
|
|
115
|
-
]
|
|
111
|
+
urllib3 = ">=1.25.4,!=2.2.0,<3"
|
|
116
112
|
requests = ">=2.32.0"
|
|
117
|
-
cfn-lint = "1.
|
|
113
|
+
cfn-lint = "1.43.0"
|
|
118
114
|
mypy = "^1.1.1"
|
|
119
115
|
types-python-dateutil = "^2.8.19.6"
|
|
120
116
|
aws-cdk-aws-appsync-alpha = "^2.59.0a0"
|
|
121
117
|
httpx = ">=0.23.3,<0.29.0"
|
|
122
118
|
sentry-sdk = ">=1.22.2,<3.0.0"
|
|
123
|
-
ruff = ">=0.5.1,<0.14.
|
|
119
|
+
ruff = ">=0.5.1,<0.14.10"
|
|
124
120
|
retry2 = "^0.9.5"
|
|
125
121
|
pytest-socket = ">=0.6,<0.8"
|
|
126
122
|
types-redis = "^4.6.0.7"
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
from setuptools import setup
|
|
3
|
+
|
|
4
|
+
packages = \
|
|
5
|
+
['aws_lambda_powertools',
|
|
6
|
+
'aws_lambda_powertools.event_handler',
|
|
7
|
+
'aws_lambda_powertools.event_handler.events_appsync',
|
|
8
|
+
'aws_lambda_powertools.event_handler.graphql_appsync',
|
|
9
|
+
'aws_lambda_powertools.event_handler.middlewares',
|
|
10
|
+
'aws_lambda_powertools.event_handler.openapi',
|
|
11
|
+
'aws_lambda_powertools.event_handler.openapi.swagger_ui',
|
|
12
|
+
'aws_lambda_powertools.exceptions',
|
|
13
|
+
'aws_lambda_powertools.logging',
|
|
14
|
+
'aws_lambda_powertools.logging.buffer',
|
|
15
|
+
'aws_lambda_powertools.logging.formatters',
|
|
16
|
+
'aws_lambda_powertools.metrics',
|
|
17
|
+
'aws_lambda_powertools.metrics.provider',
|
|
18
|
+
'aws_lambda_powertools.metrics.provider.cloudwatch_emf',
|
|
19
|
+
'aws_lambda_powertools.metrics.provider.datadog',
|
|
20
|
+
'aws_lambda_powertools.middleware_factory',
|
|
21
|
+
'aws_lambda_powertools.shared',
|
|
22
|
+
'aws_lambda_powertools.tracing',
|
|
23
|
+
'aws_lambda_powertools.utilities',
|
|
24
|
+
'aws_lambda_powertools.utilities.batch',
|
|
25
|
+
'aws_lambda_powertools.utilities.data_classes',
|
|
26
|
+
'aws_lambda_powertools.utilities.data_classes.appsync',
|
|
27
|
+
'aws_lambda_powertools.utilities.data_masking',
|
|
28
|
+
'aws_lambda_powertools.utilities.data_masking.provider',
|
|
29
|
+
'aws_lambda_powertools.utilities.data_masking.provider.kms',
|
|
30
|
+
'aws_lambda_powertools.utilities.feature_flags',
|
|
31
|
+
'aws_lambda_powertools.utilities.idempotency',
|
|
32
|
+
'aws_lambda_powertools.utilities.idempotency.persistence',
|
|
33
|
+
'aws_lambda_powertools.utilities.idempotency.serialization',
|
|
34
|
+
'aws_lambda_powertools.utilities.jmespath_utils',
|
|
35
|
+
'aws_lambda_powertools.utilities.kafka',
|
|
36
|
+
'aws_lambda_powertools.utilities.kafka.deserializer',
|
|
37
|
+
'aws_lambda_powertools.utilities.kafka.serialization',
|
|
38
|
+
'aws_lambda_powertools.utilities.parameters',
|
|
39
|
+
'aws_lambda_powertools.utilities.parser',
|
|
40
|
+
'aws_lambda_powertools.utilities.parser.envelopes',
|
|
41
|
+
'aws_lambda_powertools.utilities.parser.models',
|
|
42
|
+
'aws_lambda_powertools.utilities.streaming',
|
|
43
|
+
'aws_lambda_powertools.utilities.streaming.transformations',
|
|
44
|
+
'aws_lambda_powertools.utilities.typing',
|
|
45
|
+
'aws_lambda_powertools.utilities.validation',
|
|
46
|
+
'aws_lambda_powertools.warnings']
|
|
47
|
+
|
|
48
|
+
package_data = \
|
|
49
|
+
{'': ['*']}
|
|
50
|
+
|
|
51
|
+
install_requires = \
|
|
52
|
+
['jmespath>=1.0.1,<2.0.0', 'typing-extensions>=4.11.0,<5.0.0']
|
|
53
|
+
|
|
54
|
+
extras_require = \
|
|
55
|
+
{'all': ['aws-xray-sdk>=2.8.0,<3.0.0',
|
|
56
|
+
'fastjsonschema>=2.14.5,<3.0.0',
|
|
57
|
+
'pydantic>=2.4.0,<3.0.0',
|
|
58
|
+
'pydantic-settings>=2.6.1,<3.0.0',
|
|
59
|
+
'aws-encryption-sdk>=3.1.1,<5.0.0',
|
|
60
|
+
'jsonpath-ng>=1.6.0,<2.0.0'],
|
|
61
|
+
'aws-sdk': ['boto3>=1.34.32,<2.0.0'],
|
|
62
|
+
'datadog': ['datadog-lambda>=8.114.0,<9.0.0'],
|
|
63
|
+
'datamasking': ['aws-encryption-sdk>=3.1.1,<5.0.0',
|
|
64
|
+
'jsonpath-ng>=1.6.0,<2.0.0'],
|
|
65
|
+
'kafka-consumer-avro': ['avro>=1.12.0,<2.0.0'],
|
|
66
|
+
'kafka-consumer-protobuf': ['protobuf>=6.30.2,<7.0.0'],
|
|
67
|
+
'parser': ['pydantic>=2.4.0,<3.0.0'],
|
|
68
|
+
'redis': ['redis>=4.4,<8.0'],
|
|
69
|
+
'tracer': ['aws-xray-sdk>=2.8.0,<3.0.0'],
|
|
70
|
+
'validation': ['fastjsonschema>=2.14.5,<3.0.0'],
|
|
71
|
+
'valkey': ['valkey-glide>=1.3.5,<3.0']}
|
|
72
|
+
|
|
73
|
+
setup_kwargs = {
|
|
74
|
+
'name': 'aws_lambda_powertools',
|
|
75
|
+
'version': '3.23.1a9',
|
|
76
|
+
'description': 'Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.',
|
|
77
|
+
'long_description': '<!-- markdownlint-disable MD013 MD041 MD043 -->\n# Powertools for AWS Lambda (Python)\n\n[](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/python_build.yml)\n[](https://app.codecov.io/gh/aws-powertools/powertools-lambda-python)\n   [](https://scorecard.dev/viewer/?uri=github.com/aws-powertools/powertools-lambda-python)\n[](https://discord.gg/B8zZKbbyET)\n\nPowertools for AWS Lambda (Python) is a developer toolkit to implement Serverless [best practices and increase developer velocity](https://docs.powertools.aws.dev/lambda/python/latest/#features).\n\n> Also available in [Java](https://github.com/aws-powertools/powertools-lambda-java), [Typescript](https://github.com/aws-powertools/powertools-lambda-typescript), and [.NET](https://github.com/aws-powertools/powertools-lambda-dotnet).\n\n**[📜Documentation](https://docs.powertools.aws.dev/lambda/python/)** | **[🐍PyPi](https://pypi.org/project/aws-lambda-powertools/)** | **[Roadmap](https://docs.powertools.aws.dev/lambda/python/latest/roadmap/)** | **[Detailed blog post](https://aws.amazon.com/blogs/opensource/simplifying-serverless-best-practices-with-lambda-powertools/)**\n\n\n\n## Features\n\n* **[Tracing](https://docs.powertools.aws.dev/lambda/python/latest/core/tracer/)** - Decorators and utilities to trace Lambda function handlers, and both synchronous and asynchronous functions\n* **[Logging](https://docs.powertools.aws.dev/lambda/python/latest/core/logger/)** - Structured logging made easier, and decorator to enrich structured logging with key Lambda context details\n* **[Metrics](https://docs.powertools.aws.dev/lambda/python/latest/core/metrics/)** - Custom Metrics created asynchronously via CloudWatch Embedded Metric Format (EMF)\n* **[Event handler: AppSync](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/appsync/)** - AWS AppSync event handler for Lambda Direct Resolver and Amplify GraphQL Transformer function\n* **[Event handler: API Gateway and ALB](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/api_gateway/)** - Amazon API Gateway REST/HTTP API and ALB event handler for Lambda functions invoked using Proxy integration\n* **[Event handler: Agents for Amazon Bedrock](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/bedrock_agents/)** - Create Agents for Amazon Bedrock, automatically generating OpenAPI schemas\n* **[Bring your own middleware](https://docs.powertools.aws.dev/lambda/python/latest/utilities/middleware_factory/)** - Decorator factory to create your own middleware to run logic before, and after each Lambda invocation\n* **[Parameters utility](https://docs.powertools.aws.dev/lambda/python/latest/utilities/parameters/)** - Retrieve and cache parameter values from Parameter Store, Secrets Manager, or DynamoDB\n* **[Batch processing](https://docs.powertools.aws.dev/lambda/python/latest/utilities/batch/)** - Handle partial failures for AWS SQS batch processing\n* **[Typing](https://docs.powertools.aws.dev/lambda/python/latest/utilities/typing/)** - Static typing classes to speedup development in your IDE\n* **[Validation](https://docs.powertools.aws.dev/lambda/python/latest/utilities/validation/)** - JSON Schema validator for inbound events and responses\n* **[Event source data classes](https://docs.powertools.aws.dev/lambda/python/latest/utilities/data_classes/)** - Data classes describing the schema of common Lambda event triggers\n* **[Parser](https://docs.powertools.aws.dev/lambda/python/latest/utilities/parser/)** - Data parsing and deep validation using Pydantic\n* **[Idempotency](https://docs.powertools.aws.dev/lambda/python/latest/utilities/idempotency/)** - Convert your Lambda functions into idempotent operations which are safe to retry\n* **[Data Masking](https://docs.powertools.aws.dev/lambda/python/latest/utilities/data_masking/)** - Protect confidential data with easy removal or encryption\n* **[Feature Flags](https://docs.powertools.aws.dev/lambda/python/latest/utilities/feature_flags/)** - A simple rule engine to evaluate when one or multiple features should be enabled depending on the input\n* **[Streaming](https://docs.powertools.aws.dev/lambda/python/latest/utilities/streaming/)** - Streams datasets larger than the available memory as streaming data.\n\n### Installation\n\nWith [pip](https://pip.pypa.io/en/latest/index.html) installed, run: ``pip install aws-lambda-powertools``\n\n## Tutorial and Examples\n\n* [Tutorial](https://docs.powertools.aws.dev/lambda/python/latest/tutorial)\n* [Serverless Shopping cart](https://github.com/aws-samples/aws-serverless-shopping-cart)\n* [Serverless Airline](https://github.com/aws-samples/aws-serverless-airline-booking)\n* [Serverless E-commerce platform](https://github.com/aws-samples/aws-serverless-ecommerce-platform)\n* [Serverless GraphQL Nanny Booking Api](https://github.com/trey-rosius/babysitter_api)\n\n## How to support Powertools for AWS Lambda (Python)?\n\n### Becoming a reference customer\n\nKnowing which companies are using this library is important to help prioritize the project internally. If your company is using Powertools for AWS Lambda (Python), you can request to have your name and logo added to the README file by raising a [Support Powertools for AWS Lambda (Python) (become a reference)](https://github.com/aws-powertools/powertools-lambda-python/issues/new?assignees=&labels=customer-reference&template=support_powertools.yml&title=%5BSupport+Lambda+Powertools%5D%3A+%3Cyour+organization+name%3E) issue.\n\nThe following companies, among others, use Powertools:\n\n* [Alma Media](https://www.almamedia.fi/en/)\n* [Banxware](https://www.banxware.com/)\n* [Brsk](https://www.brsk.co.uk/)\n* [BusPatrol](https://buspatrol.com/)\n* [Capital One](https://www.capitalone.com/)\n* [Caylent](https://caylent.com/)\n* [CHS Inc.](https://www.chsinc.com/)\n* [CPQi (Exadel Financial Services)](https://cpqi.com/)\n* [CloudZero](https://www.cloudzero.com/)\n* [CyberArk](https://www.cyberark.com/)\n* [EF Education First](https://www.ef.com/)\n* [Flyweight](https://flyweight.io/)\n* [globaldatanet](https://globaldatanet.com/)\n* [Guild](https://guild.com/)\n* [IMS](https://ims.tech/)\n* [Instil](https://instil.co/)\n* [Jit Security](https://www.jit.io/)\n* [LocalStack](https://www.localstack.cloud/)\n* [Propellor.ai](https://www.propellor.ai/)\n* [Pushpay](https://pushpay.com/)\n* [QuasiScience Limited](https://quasiscience.com/)\n* [Recast](https://getrecast.com/)\n* [TopSport](https://www.topsport.com.au/)\n* [Transformity](https://transformity.tech/)\n* [Trek10](https://www.trek10.com/)\n* [Vertex Pharmaceuticals](https://www.vrtx.com/)\n\n### Sharing your work\n\nShare what you did with Powertools for AWS Lambda (Python) 💞💞. Blog post, workshops, presentation, sample apps and others. Check out what the community has already shared about Powertools for AWS Lambda (Python) [in this link](https://docs.powertools.aws.dev/lambda/python/latest/we_made_this/).\n\n### Using Lambda Layer or SAR\n\nThis helps us understand who uses Powertools for AWS Lambda (Python) in a non-intrusive way, and helps us gain future investments for other Powertools for AWS Lambda languages. When [using Layers](https://docs.powertools.aws.dev/lambda/python/latest/#lambda-layer), you can add Powertools for AWS Lambda (Python) as a dev dependency (or as part of your virtual env) to not impact the development process.\n\n## Credits\n\n* Structured logging initial implementation from [aws-lambda-logging](https://gitlab.com/hadrien/aws_lambda_logging)\n* Powertools for AWS Lambda (Python) idea [DAZN Powertools](https://github.com/getndazn/dazn-lambda-powertools/)\n\n## Connect\n\n* **Powertools for AWS Lambda on Discord**: `#python` - **[Invite link](https://discord.gg/B8zZKbbyET)**\n* **Email**: <aws-powertools-maintainers@amazon.com>\n\n## Security disclosures\n\nIf you think you’ve found a potential security issue, please do not post it in the Issues. Instead, please follow the instructions [in this link](https://aws.amazon.com/security/vulnerability-reporting/) or [email AWS security directly](mailto:aws-security@amazon.com).\n\n## License\n\nThis library is licensed under the MIT-0 License. See the LICENSE file.\n',
|
|
78
|
+
'author': 'Amazon Web Services',
|
|
79
|
+
'author_email': 'None',
|
|
80
|
+
'maintainer': 'None',
|
|
81
|
+
'maintainer_email': 'None',
|
|
82
|
+
'url': 'https://github.com/aws-powertools/powertools-lambda-python',
|
|
83
|
+
'packages': packages,
|
|
84
|
+
'package_data': package_data,
|
|
85
|
+
'install_requires': install_requires,
|
|
86
|
+
'extras_require': extras_require,
|
|
87
|
+
'python_requires': '>=3.10,<4.0.0',
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
setup(**setup_kwargs)
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
|
-
from setuptools import setup
|
|
3
|
-
|
|
4
|
-
packages = \
|
|
5
|
-
['aws_lambda_powertools',
|
|
6
|
-
'aws_lambda_powertools.event_handler',
|
|
7
|
-
'aws_lambda_powertools.event_handler.events_appsync',
|
|
8
|
-
'aws_lambda_powertools.event_handler.graphql_appsync',
|
|
9
|
-
'aws_lambda_powertools.event_handler.middlewares',
|
|
10
|
-
'aws_lambda_powertools.event_handler.openapi',
|
|
11
|
-
'aws_lambda_powertools.event_handler.openapi.swagger_ui',
|
|
12
|
-
'aws_lambda_powertools.exceptions',
|
|
13
|
-
'aws_lambda_powertools.logging',
|
|
14
|
-
'aws_lambda_powertools.logging.buffer',
|
|
15
|
-
'aws_lambda_powertools.logging.formatters',
|
|
16
|
-
'aws_lambda_powertools.metrics',
|
|
17
|
-
'aws_lambda_powertools.metrics.provider',
|
|
18
|
-
'aws_lambda_powertools.metrics.provider.cloudwatch_emf',
|
|
19
|
-
'aws_lambda_powertools.metrics.provider.datadog',
|
|
20
|
-
'aws_lambda_powertools.middleware_factory',
|
|
21
|
-
'aws_lambda_powertools.shared',
|
|
22
|
-
'aws_lambda_powertools.tracing',
|
|
23
|
-
'aws_lambda_powertools.utilities',
|
|
24
|
-
'aws_lambda_powertools.utilities.batch',
|
|
25
|
-
'aws_lambda_powertools.utilities.data_classes',
|
|
26
|
-
'aws_lambda_powertools.utilities.data_classes.appsync',
|
|
27
|
-
'aws_lambda_powertools.utilities.data_masking',
|
|
28
|
-
'aws_lambda_powertools.utilities.data_masking.provider',
|
|
29
|
-
'aws_lambda_powertools.utilities.data_masking.provider.kms',
|
|
30
|
-
'aws_lambda_powertools.utilities.feature_flags',
|
|
31
|
-
'aws_lambda_powertools.utilities.idempotency',
|
|
32
|
-
'aws_lambda_powertools.utilities.idempotency.persistence',
|
|
33
|
-
'aws_lambda_powertools.utilities.idempotency.serialization',
|
|
34
|
-
'aws_lambda_powertools.utilities.jmespath_utils',
|
|
35
|
-
'aws_lambda_powertools.utilities.kafka',
|
|
36
|
-
'aws_lambda_powertools.utilities.kafka.deserializer',
|
|
37
|
-
'aws_lambda_powertools.utilities.kafka.serialization',
|
|
38
|
-
'aws_lambda_powertools.utilities.parameters',
|
|
39
|
-
'aws_lambda_powertools.utilities.parser',
|
|
40
|
-
'aws_lambda_powertools.utilities.parser.envelopes',
|
|
41
|
-
'aws_lambda_powertools.utilities.parser.models',
|
|
42
|
-
'aws_lambda_powertools.utilities.streaming',
|
|
43
|
-
'aws_lambda_powertools.utilities.streaming.transformations',
|
|
44
|
-
'aws_lambda_powertools.utilities.typing',
|
|
45
|
-
'aws_lambda_powertools.utilities.validation',
|
|
46
|
-
'aws_lambda_powertools.warnings']
|
|
47
|
-
|
|
48
|
-
package_data = \
|
|
49
|
-
{'': ['*']}
|
|
50
|
-
|
|
51
|
-
install_requires = \
|
|
52
|
-
['jmespath>=1.0.1,<2.0.0', 'typing-extensions>=4.11.0,<5.0.0']
|
|
53
|
-
|
|
54
|
-
extras_require = \
|
|
55
|
-
{'all': ['aws-xray-sdk>=2.8.0,<3.0.0',
|
|
56
|
-
'fastjsonschema>=2.14.5,<3.0.0',
|
|
57
|
-
'pydantic>=2.4.0,<3.0.0',
|
|
58
|
-
'pydantic-settings>=2.6.1,<3.0.0',
|
|
59
|
-
'aws-encryption-sdk>=3.1.1,<5.0.0',
|
|
60
|
-
'jsonpath-ng>=1.6.0,<2.0.0'],
|
|
61
|
-
'aws-sdk': ['boto3>=1.34.32,<2.0.0'],
|
|
62
|
-
'datadog': ['datadog-lambda>=8.114.0,<9.0.0'],
|
|
63
|
-
'datamasking': ['aws-encryption-sdk>=3.1.1,<5.0.0',
|
|
64
|
-
'jsonpath-ng>=1.6.0,<2.0.0'],
|
|
65
|
-
'kafka-consumer-avro': ['avro>=1.12.0,<2.0.0'],
|
|
66
|
-
'kafka-consumer-protobuf': ['protobuf>=6.30.2,<7.0.0'],
|
|
67
|
-
'parser': ['pydantic>=2.4.0,<3.0.0'],
|
|
68
|
-
'redis': ['redis>=4.4,<8.0'],
|
|
69
|
-
'tracer': ['aws-xray-sdk>=2.8.0,<3.0.0'],
|
|
70
|
-
'validation': ['fastjsonschema>=2.14.5,<3.0.0'],
|
|
71
|
-
'valkey:python_version < "3.14"': ['valkey-glide>=1.3.5,<3.0']}
|
|
72
|
-
|
|
73
|
-
setup_kwargs = {
|
|
74
|
-
'name': 'aws_lambda_powertools',
|
|
75
|
-
'version': '3.23.1a7',
|
|
76
|
-
'description': 'Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.',
|
|
77
|
-
'long_description': '<!-- markdownlint-disable MD013 MD041 MD043 -->\n# Powertools for AWS Lambda (Python)\n\n[](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/python_build.yml)\n[](https://app.codecov.io/gh/aws-powertools/powertools-lambda-python)\n   [](https://api.securityscorecards.dev/projects/github.com/aws-powertools/powertools-lambda-python)\n[](https://discord.gg/B8zZKbbyET)\n\nPowertools for AWS Lambda (Python) is a developer toolkit to implement Serverless [best practices and increase developer velocity](https://docs.powertools.aws.dev/lambda/python/latest/#features).\n\n> Also available in [Java](https://github.com/aws-powertools/powertools-lambda-java), [Typescript](https://github.com/aws-powertools/powertools-lambda-typescript), and [.NET](https://github.com/aws-powertools/powertools-lambda-dotnet).\n\n**[📜Documentation](https://docs.powertools.aws.dev/lambda/python/)** | **[🐍PyPi](https://pypi.org/project/aws-lambda-powertools/)** | **[Roadmap](https://docs.powertools.aws.dev/lambda/python/latest/roadmap/)** | **[Detailed blog post](https://aws.amazon.com/blogs/opensource/simplifying-serverless-best-practices-with-lambda-powertools/)**\n\n\n\n## Features\n\n* **[Tracing](https://docs.powertools.aws.dev/lambda/python/latest/core/tracer/)** - Decorators and utilities to trace Lambda function handlers, and both synchronous and asynchronous functions\n* **[Logging](https://docs.powertools.aws.dev/lambda/python/latest/core/logger/)** - Structured logging made easier, and decorator to enrich structured logging with key Lambda context details\n* **[Metrics](https://docs.powertools.aws.dev/lambda/python/latest/core/metrics/)** - Custom Metrics created asynchronously via CloudWatch Embedded Metric Format (EMF)\n* **[Event handler: AppSync](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/appsync/)** - AWS AppSync event handler for Lambda Direct Resolver and Amplify GraphQL Transformer function\n* **[Event handler: API Gateway and ALB](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/api_gateway/)** - Amazon API Gateway REST/HTTP API and ALB event handler for Lambda functions invoked using Proxy integration\n* **[Event handler: Agents for Amazon Bedrock](https://docs.powertools.aws.dev/lambda/python/latest/core/event_handler/bedrock_agents/)** - Create Agents for Amazon Bedrock, automatically generating OpenAPI schemas\n* **[Bring your own middleware](https://docs.powertools.aws.dev/lambda/python/latest/utilities/middleware_factory/)** - Decorator factory to create your own middleware to run logic before, and after each Lambda invocation\n* **[Parameters utility](https://docs.powertools.aws.dev/lambda/python/latest/utilities/parameters/)** - Retrieve and cache parameter values from Parameter Store, Secrets Manager, or DynamoDB\n* **[Batch processing](https://docs.powertools.aws.dev/lambda/python/latest/utilities/batch/)** - Handle partial failures for AWS SQS batch processing\n* **[Typing](https://docs.powertools.aws.dev/lambda/python/latest/utilities/typing/)** - Static typing classes to speedup development in your IDE\n* **[Validation](https://docs.powertools.aws.dev/lambda/python/latest/utilities/validation/)** - JSON Schema validator for inbound events and responses\n* **[Event source data classes](https://docs.powertools.aws.dev/lambda/python/latest/utilities/data_classes/)** - Data classes describing the schema of common Lambda event triggers\n* **[Parser](https://docs.powertools.aws.dev/lambda/python/latest/utilities/parser/)** - Data parsing and deep validation using Pydantic\n* **[Idempotency](https://docs.powertools.aws.dev/lambda/python/latest/utilities/idempotency/)** - Convert your Lambda functions into idempotent operations which are safe to retry\n* **[Data Masking](https://docs.powertools.aws.dev/lambda/python/latest/utilities/data_masking/)** - Protect confidential data with easy removal or encryption\n* **[Feature Flags](https://docs.powertools.aws.dev/lambda/python/latest/utilities/feature_flags/)** - A simple rule engine to evaluate when one or multiple features should be enabled depending on the input\n* **[Streaming](https://docs.powertools.aws.dev/lambda/python/latest/utilities/streaming/)** - Streams datasets larger than the available memory as streaming data.\n\n### Installation\n\nWith [pip](https://pip.pypa.io/en/latest/index.html) installed, run: ``pip install aws-lambda-powertools``\n\n## Tutorial and Examples\n\n* [Tutorial](https://docs.powertools.aws.dev/lambda/python/latest/tutorial)\n* [Serverless Shopping cart](https://github.com/aws-samples/aws-serverless-shopping-cart)\n* [Serverless Airline](https://github.com/aws-samples/aws-serverless-airline-booking)\n* [Serverless E-commerce platform](https://github.com/aws-samples/aws-serverless-ecommerce-platform)\n* [Serverless GraphQL Nanny Booking Api](https://github.com/trey-rosius/babysitter_api)\n\n## How to support Powertools for AWS Lambda (Python)?\n\n### Becoming a reference customer\n\nKnowing which companies are using this library is important to help prioritize the project internally. If your company is using Powertools for AWS Lambda (Python), you can request to have your name and logo added to the README file by raising a [Support Powertools for AWS Lambda (Python) (become a reference)](https://github.com/aws-powertools/powertools-lambda-python/issues/new?assignees=&labels=customer-reference&template=support_powertools.yml&title=%5BSupport+Lambda+Powertools%5D%3A+%3Cyour+organization+name%3E) issue.\n\nThe following companies, among others, use Powertools:\n\n* [Alma Media](https://www.almamedia.fi/en/)\n* [Banxware](https://www.banxware.com/)\n* [Brsk](https://www.brsk.co.uk/)\n* [BusPatrol](https://buspatrol.com/)\n* [Capital One](https://www.capitalone.com/)\n* [Caylent](https://caylent.com/)\n* [CHS Inc.](https://www.chsinc.com/)\n* [CPQi (Exadel Financial Services)](https://cpqi.com/)\n* [CloudZero](https://www.cloudzero.com/)\n* [CyberArk](https://www.cyberark.com/)\n* [Flyweight](https://flyweight.io/)\n* [globaldatanet](https://globaldatanet.com/)\n* [Guild](https://guild.com/)\n* [IMS](https://ims.tech/)\n* [Instil](https://instil.co/)\n* [Jit Security](https://www.jit.io/)\n* [LocalStack](https://www.localstack.cloud/)\n* [Propellor.ai](https://www.propellor.ai/)\n* [Pushpay](https://pushpay.com/)\n* [QuasiScience Limited](https://quasiscience.com/)\n* [Recast](https://getrecast.com/)\n* [TopSport](https://www.topsport.com.au/)\n* [Transformity](https://transformity.tech/)\n* [Trek10](https://www.trek10.com/)\n* [Vertex Pharmaceuticals](https://www.vrtx.com/)\n\n### Sharing your work\n\nShare what you did with Powertools for AWS Lambda (Python) 💞💞. Blog post, workshops, presentation, sample apps and others. Check out what the community has already shared about Powertools for AWS Lambda (Python) [in this link](https://docs.powertools.aws.dev/lambda/python/latest/we_made_this/).\n\n### Using Lambda Layer or SAR\n\nThis helps us understand who uses Powertools for AWS Lambda (Python) in a non-intrusive way, and helps us gain future investments for other Powertools for AWS Lambda languages. When [using Layers](https://docs.powertools.aws.dev/lambda/python/latest/#lambda-layer), you can add Powertools for AWS Lambda (Python) as a dev dependency (or as part of your virtual env) to not impact the development process.\n\n## Credits\n\n* Structured logging initial implementation from [aws-lambda-logging](https://gitlab.com/hadrien/aws_lambda_logging)\n* Powertools for AWS Lambda (Python) idea [DAZN Powertools](https://github.com/getndazn/dazn-lambda-powertools/)\n\n## Connect\n\n* **Powertools for AWS Lambda on Discord**: `#python` - **[Invite link](https://discord.gg/B8zZKbbyET)**\n* **Email**: <aws-powertools-maintainers@amazon.com>\n\n## Security disclosures\n\nIf you think you’ve found a potential security issue, please do not post it in the Issues. Instead, please follow the instructions [in this link](https://aws.amazon.com/security/vulnerability-reporting/) or [email AWS security directly](mailto:aws-security@amazon.com).\n\n## License\n\nThis library is licensed under the MIT-0 License. See the LICENSE file.\n',
|
|
78
|
-
'author': 'Amazon Web Services',
|
|
79
|
-
'author_email': 'None',
|
|
80
|
-
'maintainer': 'None',
|
|
81
|
-
'maintainer_email': 'None',
|
|
82
|
-
'url': 'https://github.com/aws-powertools/powertools-lambda-python',
|
|
83
|
-
'packages': packages,
|
|
84
|
-
'package_data': package_data,
|
|
85
|
-
'install_requires': install_requires,
|
|
86
|
-
'extras_require': extras_require,
|
|
87
|
-
'python_requires': '>=3.9,<4.0.0',
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
setup(**setup_kwargs)
|
|
File without changes
|
|
File without changes
|
{aws_lambda_powertools-3.23.1a7 → aws_lambda_powertools-3.23.1a9}/aws_lambda_powertools/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|