aws-lambda-powertools 2.40.2a7__tar.gz → 2.40.2a8__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.
Files changed (246) hide show
  1. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/PKG-INFO +1 -1
  2. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/cookies.py +2 -2
  3. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/version.py +1 -1
  4. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/base.py +13 -4
  5. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/appconfig.py +22 -3
  6. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/pyproject.toml +2 -2
  7. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/setup.py +1 -1
  8. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/LICENSE +0 -0
  9. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/README.md +0 -0
  10. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/THIRD-PARTY-LICENSES +0 -0
  11. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/__init__.py +0 -0
  12. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/__init__.py +0 -0
  13. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/api_gateway.py +0 -0
  14. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/appsync.py +0 -0
  15. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/bedrock_agent.py +0 -0
  16. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/content_types.py +0 -0
  17. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/exceptions.py +0 -0
  18. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/graphql_appsync/__init__.py +0 -0
  19. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/graphql_appsync/_registry.py +0 -0
  20. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/graphql_appsync/base.py +0 -0
  21. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/graphql_appsync/exceptions.py +0 -0
  22. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/graphql_appsync/router.py +0 -0
  23. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/lambda_function_url.py +0 -0
  24. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/middlewares/__init__.py +0 -0
  25. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/middlewares/base.py +0 -0
  26. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py +0 -0
  27. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/middlewares/schema_validation.py +0 -0
  28. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/__init__.py +0 -0
  29. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/compat.py +0 -0
  30. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/constants.py +0 -0
  31. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/dependant.py +0 -0
  32. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/encoders.py +0 -0
  33. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/exceptions.py +0 -0
  34. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/models.py +0 -0
  35. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/params.py +0 -0
  36. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/pydantic_loader.py +0 -0
  37. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/swagger_ui/__init__.py +0 -0
  38. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/swagger_ui/html.py +0 -0
  39. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/swagger_ui/oauth2.py +0 -0
  40. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui-bundle.min.js +0 -0
  41. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui.min.css +0 -0
  42. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/openapi/types.py +0 -0
  43. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/router.py +0 -0
  44. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/types.py +0 -0
  45. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/util.py +0 -0
  46. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/event_handler/vpc_lattice.py +0 -0
  47. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/exceptions/__init__.py +0 -0
  48. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/__init__.py +0 -0
  49. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/constants.py +0 -0
  50. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/correlation_paths.py +0 -0
  51. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/exceptions.py +0 -0
  52. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/filters.py +0 -0
  53. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/formatter.py +0 -0
  54. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/formatters/__init__.py +0 -0
  55. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/formatters/datadog.py +0 -0
  56. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/lambda_context.py +0 -0
  57. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/logger.py +0 -0
  58. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/types.py +0 -0
  59. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/logging/utils.py +0 -0
  60. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/__init__.py +0 -0
  61. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/base.py +0 -0
  62. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/exceptions.py +0 -0
  63. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/functions.py +0 -0
  64. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/metric.py +0 -0
  65. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/metrics.py +0 -0
  66. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/__init__.py +0 -0
  67. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/base.py +0 -0
  68. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/__init__.py +0 -0
  69. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/cloudwatch.py +0 -0
  70. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/constants.py +0 -0
  71. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/exceptions.py +0 -0
  72. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/metric_properties.py +0 -0
  73. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/types.py +0 -0
  74. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/cold_start.py +0 -0
  75. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/datadog/__init__.py +0 -0
  76. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/datadog/datadog.py +0 -0
  77. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/datadog/metrics.py +0 -0
  78. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/provider/datadog/warnings.py +0 -0
  79. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/metrics/types.py +0 -0
  80. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/middleware_factory/__init__.py +0 -0
  81. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/middleware_factory/exceptions.py +0 -0
  82. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/middleware_factory/factory.py +0 -0
  83. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/package_logger.py +0 -0
  84. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/py.typed +0 -0
  85. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/__init__.py +0 -0
  86. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/cache_dict.py +0 -0
  87. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/constants.py +0 -0
  88. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/functions.py +0 -0
  89. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/headers_serializer.py +0 -0
  90. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/json_encoder.py +0 -0
  91. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/lazy_import.py +0 -0
  92. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/types.py +0 -0
  93. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/shared/user_agent.py +0 -0
  94. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/tracing/__init__.py +0 -0
  95. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/tracing/base.py +0 -0
  96. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/tracing/extensions.py +0 -0
  97. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/tracing/tracer.py +0 -0
  98. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/__init__.py +0 -0
  99. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/__init__.py +0 -0
  100. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/decorators.py +0 -0
  101. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/exceptions.py +0 -0
  102. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/sqs_fifo_partial_processor.py +0 -0
  103. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/batch/types.py +0 -0
  104. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/__init__.py +0 -0
  105. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/active_mq_event.py +0 -0
  106. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/alb_event.py +0 -0
  107. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py +0 -0
  108. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/api_gateway_proxy_event.py +0 -0
  109. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/appsync/__init__.py +0 -0
  110. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/appsync/scalar_types_utils.py +0 -0
  111. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/appsync_authorizer_event.py +0 -0
  112. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/appsync_resolver_event.py +0 -0
  113. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/aws_config_rule_event.py +0 -0
  114. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/bedrock_agent_event.py +0 -0
  115. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/cloud_watch_alarm_event.py +0 -0
  116. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/cloud_watch_custom_widget_event.py +0 -0
  117. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/cloud_watch_logs_event.py +0 -0
  118. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/cloudformation_custom_resource_event.py +0 -0
  119. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/code_pipeline_job_event.py +0 -0
  120. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/cognito_user_pool_event.py +0 -0
  121. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/common.py +0 -0
  122. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/connect_contact_flow_event.py +0 -0
  123. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/dynamo_db_stream_event.py +0 -0
  124. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/event_bridge_event.py +0 -0
  125. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/event_source.py +0 -0
  126. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/kafka_event.py +0 -0
  127. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/kinesis_firehose_event.py +0 -0
  128. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/kinesis_stream_event.py +0 -0
  129. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/lambda_function_url_event.py +0 -0
  130. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/rabbit_mq_event.py +0 -0
  131. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/s3_batch_operation_event.py +0 -0
  132. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/s3_event.py +0 -0
  133. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/s3_object_event.py +0 -0
  134. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/secrets_manager_event.py +0 -0
  135. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/ses_event.py +0 -0
  136. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/shared_functions.py +0 -0
  137. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/sns_event.py +0 -0
  138. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/sqs_event.py +0 -0
  139. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_classes/vpc_lattice.py +0 -0
  140. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/__init__.py +0 -0
  141. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/base.py +0 -0
  142. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/constants.py +0 -0
  143. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/exceptions.py +0 -0
  144. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/provider/__init__.py +0 -0
  145. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/provider/base.py +0 -0
  146. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/provider/kms/__init__.py +0 -0
  147. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/data_masking/provider/kms/aws_encryption_sdk.py +0 -0
  148. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/__init__.py +0 -0
  149. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/base.py +0 -0
  150. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/comparators.py +0 -0
  151. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/exceptions.py +0 -0
  152. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/feature_flags.py +0 -0
  153. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/feature_flags/schema.py +0 -0
  154. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/__init__.py +0 -0
  155. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/base.py +0 -0
  156. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/config.py +0 -0
  157. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/exceptions.py +0 -0
  158. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/hook.py +0 -0
  159. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/idempotency.py +0 -0
  160. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/persistence/__init__.py +0 -0
  161. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/persistence/base.py +0 -0
  162. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/persistence/datarecord.py +0 -0
  163. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/persistence/dynamodb.py +0 -0
  164. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/persistence/redis.py +0 -0
  165. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/__init__.py +0 -0
  166. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/base.py +0 -0
  167. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/custom_dict.py +0 -0
  168. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/dataclass.py +0 -0
  169. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/no_op.py +0 -0
  170. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/idempotency/serialization/pydantic.py +0 -0
  171. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/jmespath_utils/__init__.py +0 -0
  172. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/jmespath_utils/envelopes.py +0 -0
  173. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/__init__.py +0 -0
  174. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/appconfig.py +0 -0
  175. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/base.py +0 -0
  176. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/dynamodb.py +0 -0
  177. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/exceptions.py +0 -0
  178. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/secrets.py +0 -0
  179. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/ssm.py +0 -0
  180. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parameters/types.py +0 -0
  181. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/__init__.py +0 -0
  182. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/compat.py +0 -0
  183. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/__init__.py +0 -0
  184. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/apigw.py +0 -0
  185. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/apigwv2.py +0 -0
  186. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/base.py +0 -0
  187. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/bedrock_agent.py +0 -0
  188. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/cloudwatch.py +0 -0
  189. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/dynamodb.py +0 -0
  190. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/event_bridge.py +0 -0
  191. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/kafka.py +0 -0
  192. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/kinesis.py +0 -0
  193. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/kinesis_firehose.py +0 -0
  194. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/lambda_function_url.py +0 -0
  195. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/sns.py +0 -0
  196. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/sqs.py +0 -0
  197. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/vpc_lattice.py +0 -0
  198. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/envelopes/vpc_latticev2.py +0 -0
  199. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/exceptions.py +0 -0
  200. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/__init__.py +0 -0
  201. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/alb.py +0 -0
  202. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/apigw.py +0 -0
  203. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/apigwv2.py +0 -0
  204. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/bedrock_agent.py +0 -0
  205. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/cloudformation_custom_resource.py +0 -0
  206. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/cloudwatch.py +0 -0
  207. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/dynamodb.py +0 -0
  208. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/event_bridge.py +0 -0
  209. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/kafka.py +0 -0
  210. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/kinesis.py +0 -0
  211. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose.py +0 -0
  212. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose_sqs.py +0 -0
  213. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/lambda_function_url.py +0 -0
  214. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/s3.py +0 -0
  215. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/s3_batch_operation.py +0 -0
  216. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/s3_event_notification.py +0 -0
  217. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/s3_object_event.py +0 -0
  218. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/ses.py +0 -0
  219. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/sns.py +0 -0
  220. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/sqs.py +0 -0
  221. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/vpc_lattice.py +0 -0
  222. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/models/vpc_latticev2.py +0 -0
  223. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/parser.py +0 -0
  224. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/pydantic.py +0 -0
  225. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/parser/types.py +0 -0
  226. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/serialization.py +0 -0
  227. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/__init__.py +0 -0
  228. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/_s3_seekable_io.py +0 -0
  229. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/compat.py +0 -0
  230. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/s3_object.py +0 -0
  231. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/transformations/__init__.py +0 -0
  232. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/transformations/base.py +0 -0
  233. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/transformations/csv.py +0 -0
  234. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/transformations/gzip.py +0 -0
  235. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/streaming/transformations/zip.py +0 -0
  236. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/typing/__init__.py +0 -0
  237. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/typing/lambda_client_context.py +0 -0
  238. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/typing/lambda_client_context_mobile_client.py +0 -0
  239. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/typing/lambda_cognito_identity.py +0 -0
  240. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/typing/lambda_context.py +0 -0
  241. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/validation/__init__.py +0 -0
  242. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/validation/base.py +0 -0
  243. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/validation/envelopes.py +0 -0
  244. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/validation/exceptions.py +0 -0
  245. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/utilities/validation/validator.py +0 -0
  246. {aws_lambda_powertools-2.40.2a7 → aws_lambda_powertools-2.40.2a8}/aws_lambda_powertools/warnings/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws-lambda-powertools
3
- Version: 2.40.2a7
3
+ Version: 2.40.2a8
4
4
  Summary: Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.
5
5
  Home-page: https://github.com/aws-powertools/powertools-lambda-python
6
6
  License: MIT
@@ -99,10 +99,10 @@ class Cookie:
99
99
 
100
100
  if self.max_age:
101
101
  if self.max_age > 0:
102
- payload.write(f"; MaxAge={self.max_age}")
102
+ payload.write(f"; Max-Age={self.max_age}")
103
103
  else:
104
104
  # negative or zero max-age should be set to 0
105
- payload.write("; MaxAge=0")
105
+ payload.write("; Max-Age=0")
106
106
 
107
107
  if self.http_only:
108
108
  payload.write("; HttpOnly")
@@ -1,3 +1,3 @@
1
1
  """Exposes version constant to avoid circular dependencies."""
2
2
 
3
- VERSION = "2.40.2a7"
3
+ VERSION = "2.40.2a8"
@@ -222,7 +222,12 @@ class BasePartialProcessor(ABC):
222
222
  class BasePartialBatchProcessor(BasePartialProcessor): # noqa
223
223
  DEFAULT_RESPONSE: PartialItemFailureResponse = {"batchItemFailures": []}
224
224
 
225
- def __init__(self, event_type: EventType, model: Optional["BatchTypeModels"] = None):
225
+ def __init__(
226
+ self,
227
+ event_type: EventType,
228
+ model: Optional["BatchTypeModels"] = None,
229
+ raise_on_entire_batch_failure: bool = True,
230
+ ):
226
231
  """Process batch and partially report failed items
227
232
 
228
233
  Parameters
@@ -231,6 +236,9 @@ class BasePartialBatchProcessor(BasePartialProcessor): # noqa
231
236
  Whether this is a SQS, DynamoDB Streams, or Kinesis Data Stream event
232
237
  model: Optional["BatchTypeModels"]
233
238
  Parser's data model using either SqsRecordModel, DynamoDBStreamRecordModel, KinesisDataStreamRecord
239
+ raise_on_entire_batch_failure: bool
240
+ Raise an exception when the entire batch has failed processing.
241
+ When set to False, partial failures are reported in the response
234
242
 
235
243
  Exceptions
236
244
  ----------
@@ -239,6 +247,7 @@ class BasePartialBatchProcessor(BasePartialProcessor): # noqa
239
247
  """
240
248
  self.event_type = event_type
241
249
  self.model = model
250
+ self.raise_on_entire_batch_failure = raise_on_entire_batch_failure
242
251
  self.batch_response: PartialItemFailureResponse = copy.deepcopy(self.DEFAULT_RESPONSE)
243
252
  self._COLLECTOR_MAPPING = {
244
253
  EventType.SQS: self._collect_sqs_failures,
@@ -274,7 +283,7 @@ class BasePartialBatchProcessor(BasePartialProcessor): # noqa
274
283
  if not self._has_messages_to_report():
275
284
  return
276
285
 
277
- if self._entire_batch_failed():
286
+ if self._entire_batch_failed() and self.raise_on_entire_batch_failure:
278
287
  raise BatchProcessingError(
279
288
  msg=f"All records failed processing. {len(self.exceptions)} individual errors logged "
280
289
  f"separately below.",
@@ -475,7 +484,7 @@ class BatchProcessor(BasePartialBatchProcessor): # Keep old name for compatibil
475
484
  Raises
476
485
  ------
477
486
  BatchProcessingError
478
- When all batch records fail processing
487
+ When all batch records fail processing and raise_on_entire_batch_failure is True
479
488
 
480
489
  Limitations
481
490
  -----------
@@ -624,7 +633,7 @@ class AsyncBatchProcessor(BasePartialBatchProcessor):
624
633
  Raises
625
634
  ------
626
635
  BatchProcessingError
627
- When all batch records fail processing
636
+ When all batch records fail processing and raise_on_entire_batch_failure is True
628
637
 
629
638
  Limitations
630
639
  -----------
@@ -1,7 +1,8 @@
1
1
  import logging
2
2
  import traceback
3
- from typing import Any, Dict, Optional, Union, cast
3
+ from typing import TYPE_CHECKING, Any, Dict, Optional, Union, cast
4
4
 
5
+ import boto3
5
6
  from botocore.config import Config
6
7
 
7
8
  from aws_lambda_powertools.utilities import jmespath_utils
@@ -15,6 +16,9 @@ from ... import Logger
15
16
  from .base import StoreProvider
16
17
  from .exceptions import ConfigurationStoreError, StoreClientError
17
18
 
19
+ if TYPE_CHECKING:
20
+ from mypy_boto3_appconfigdata import AppConfigDataClient
21
+
18
22
 
19
23
  class AppConfigStore(StoreProvider):
20
24
  def __init__(
@@ -27,6 +31,9 @@ class AppConfigStore(StoreProvider):
27
31
  envelope: Optional[str] = "",
28
32
  jmespath_options: Optional[Dict] = None,
29
33
  logger: Optional[Union[logging.Logger, Logger]] = None,
34
+ boto_config: Optional[Config] = None,
35
+ boto3_session: Optional[boto3.session.Session] = None,
36
+ boto3_client: Optional["AppConfigDataClient"] = None,
30
37
  ):
31
38
  """This class fetches JSON schemas from AWS AppConfig
32
39
 
@@ -48,6 +55,12 @@ class AppConfigStore(StoreProvider):
48
55
  Alternative JMESPath options to be included when filtering expr
49
56
  logger: A logging object
50
57
  Used to log messages. If None is supplied, one will be created.
58
+ boto_config: botocore.config.Config, optional
59
+ Botocore configuration to pass during client initialization
60
+ boto3_session : boto3.Session, optional
61
+ Boto3 session to use for AWS API communication
62
+ boto3_client : AppConfigDataClient, optional
63
+ Boto3 AppConfigDataClient Client to use, boto3_session and boto_config will be ignored if both are provided
51
64
  """
52
65
  super().__init__()
53
66
  self.logger = logger or logging.getLogger(__name__)
@@ -55,10 +68,16 @@ class AppConfigStore(StoreProvider):
55
68
  self.application = application
56
69
  self.name = name
57
70
  self.cache_seconds = max_age
58
- self.config = sdk_config
71
+ self.config = sdk_config or boto_config
59
72
  self.envelope = envelope
60
73
  self.jmespath_options = jmespath_options
61
- self._conf_store = AppConfigProvider(environment=environment, application=application, config=sdk_config)
74
+ self._conf_store = AppConfigProvider(
75
+ environment=environment,
76
+ application=application,
77
+ config=sdk_config or boto_config,
78
+ boto3_client=boto3_client,
79
+ boto3_session=boto3_session,
80
+ )
62
81
 
63
82
  @property
64
83
  def get_raw_configuration(self) -> Dict[str, Any]:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "aws_lambda_powertools"
3
- version = "2.40.2a7"
3
+ version = "2.40.2a8"
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"]
@@ -115,7 +115,7 @@ datadog = ["datadog-lambda"]
115
115
  datamasking = ["aws-encryption-sdk", "jsonpath-ng"]
116
116
 
117
117
  [tool.poetry.group.dev.dependencies]
118
- cfn-lint = "1.5.1"
118
+ cfn-lint = "1.5.3"
119
119
  mypy = "^1.1.1"
120
120
  types-python-dateutil = "^2.8.19.6"
121
121
  aws-cdk-aws-appsync-alpha = "^2.59.0a0"
@@ -61,7 +61,7 @@ extras_require = \
61
61
 
62
62
  setup_kwargs = {
63
63
  'name': 'aws-lambda-powertools',
64
- 'version': '2.40.2a7',
64
+ 'version': '2.40.2a8',
65
65
  'description': 'Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.',
66
66
  'long_description': '<!-- markdownlint-disable MD013 MD041 MD043 -->\n# Powertools for AWS Lambda (Python)\n\n[![Build](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/quality_check.yml/badge.svg)](https://github.com/aws-powertools/powertools-lambda-python/actions/workflows/python_build.yml)\n[![codecov.io](https://codecov.io/github/aws-powertools/powertools-lambda-python/branch/develop/graphs/badge.svg)](https://app.codecov.io/gh/aws-powertools/powertools-lambda-python)\n![PythonSupport](https://img.shields.io/static/v1?label=python&message=%203.8|%203.9|%203.10|%203.11|%203.12&color=blue?style=flat-square&logo=python) ![PyPI version](https://badge.fury.io/py/aws-lambda-powertools.svg) ![PyPi monthly downloads](https://img.shields.io/pypi/dm/aws-lambda-powertools) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/aws-powertools/powertools-lambda-python/badge)](https://api.securityscorecards.dev/projects/github.com/aws-powertools/powertools-lambda-python) [![Join our Discord](https://dcbadge.vercel.app/api/server/B8zZKbbyET?style=flat-square)](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![hero-image](https://user-images.githubusercontent.com/3340292/198254617-d0fdb672-86a6-4988-8a40-adf437135e0a.png)\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* [Brsk](https://www.brsk.co.uk/)\n* [BusPatrol](https://buspatrol.com/)\n* [Capital One](https://www.capitalone.com/)\n* [CPQi (Exadel Financial Services)](https://cpqi.com/)\n* [CloudZero](https://www.cloudzero.com/)\n* [CyberArk](https://www.cyberark.com/)\n* [globaldatanet](https://globaldatanet.com/)\n* [IMS](https://ims.tech/)\n* [Jit Security](https://www.jit.io/)\n* [Propellor.ai](https://www.propellor.ai/)\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) [here](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 [here](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',
67
67
  'author': 'Amazon Web Services',