aws-lambda-powertools 2.43.2a6__py3-none-any.whl → 3.0.0.dev1__py3-none-any.whl

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 (184) hide show
  1. aws_lambda_powertools/__init__.py +0 -2
  2. aws_lambda_powertools/event_handler/api_gateway.py +335 -546
  3. aws_lambda_powertools/event_handler/appsync.py +105 -346
  4. aws_lambda_powertools/event_handler/bedrock_agent.py +48 -54
  5. aws_lambda_powertools/event_handler/exceptions.py +1 -1
  6. aws_lambda_powertools/event_handler/lambda_function_url.py +11 -7
  7. aws_lambda_powertools/event_handler/middlewares/base.py +7 -7
  8. aws_lambda_powertools/event_handler/middlewares/openapi_validation.py +42 -39
  9. aws_lambda_powertools/event_handler/middlewares/schema_validation.py +14 -10
  10. aws_lambda_powertools/event_handler/openapi/compat.py +194 -360
  11. aws_lambda_powertools/event_handler/openapi/constants.py +5 -1
  12. aws_lambda_powertools/event_handler/openapi/dependant.py +21 -18
  13. aws_lambda_powertools/event_handler/openapi/encoders.py +98 -119
  14. aws_lambda_powertools/event_handler/openapi/exceptions.py +0 -12
  15. aws_lambda_powertools/event_handler/openapi/models.py +36 -227
  16. aws_lambda_powertools/event_handler/openapi/params.py +249 -268
  17. aws_lambda_powertools/event_handler/openapi/swagger_ui/html.py +10 -4
  18. aws_lambda_powertools/event_handler/openapi/swagger_ui/oauth2.py +7 -11
  19. aws_lambda_powertools/event_handler/openapi/types.py +11 -9
  20. aws_lambda_powertools/event_handler/router.py +12 -6
  21. aws_lambda_powertools/event_handler/util.py +8 -71
  22. aws_lambda_powertools/event_handler/vpc_lattice.py +15 -11
  23. aws_lambda_powertools/logging/formatter.py +19 -17
  24. aws_lambda_powertools/logging/formatters/datadog.py +5 -3
  25. aws_lambda_powertools/logging/logger.py +57 -60
  26. aws_lambda_powertools/logging/types.py +10 -8
  27. aws_lambda_powertools/logging/utils.py +22 -19
  28. aws_lambda_powertools/metrics/base.py +30 -28
  29. aws_lambda_powertools/metrics/functions.py +4 -5
  30. aws_lambda_powertools/metrics/metrics.py +15 -13
  31. aws_lambda_powertools/metrics/provider/base.py +8 -6
  32. aws_lambda_powertools/metrics/provider/cloudwatch_emf/cloudwatch.py +24 -22
  33. aws_lambda_powertools/metrics/provider/cloudwatch_emf/metric_properties.py +0 -1
  34. aws_lambda_powertools/metrics/provider/cloudwatch_emf/types.py +9 -4
  35. aws_lambda_powertools/metrics/provider/datadog/datadog.py +18 -16
  36. aws_lambda_powertools/metrics/provider/datadog/metrics.py +8 -6
  37. aws_lambda_powertools/metrics/types.py +3 -1
  38. aws_lambda_powertools/middleware_factory/factory.py +9 -7
  39. aws_lambda_powertools/shared/cache_dict.py +1 -1
  40. aws_lambda_powertools/shared/cookies.py +15 -13
  41. aws_lambda_powertools/shared/dynamodb_deserializer.py +96 -0
  42. aws_lambda_powertools/shared/functions.py +11 -11
  43. aws_lambda_powertools/shared/headers_serializer.py +14 -11
  44. aws_lambda_powertools/shared/json_encoder.py +1 -3
  45. aws_lambda_powertools/shared/lazy_import.py +1 -1
  46. aws_lambda_powertools/shared/types.py +1 -25
  47. aws_lambda_powertools/shared/version.py +1 -1
  48. aws_lambda_powertools/tracing/base.py +19 -15
  49. aws_lambda_powertools/tracing/tracer.py +66 -63
  50. aws_lambda_powertools/utilities/__init__.py +0 -2
  51. aws_lambda_powertools/utilities/batch/__init__.py +0 -2
  52. aws_lambda_powertools/utilities/batch/base.py +40 -46
  53. aws_lambda_powertools/utilities/batch/decorators.py +43 -13
  54. aws_lambda_powertools/utilities/batch/exceptions.py +4 -4
  55. aws_lambda_powertools/utilities/batch/sqs_fifo_partial_processor.py +9 -5
  56. aws_lambda_powertools/utilities/batch/types.py +4 -4
  57. aws_lambda_powertools/utilities/data_classes/active_mq_event.py +11 -9
  58. aws_lambda_powertools/utilities/data_classes/alb_event.py +11 -18
  59. aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py +38 -111
  60. aws_lambda_powertools/utilities/data_classes/api_gateway_proxy_event.py +43 -50
  61. aws_lambda_powertools/utilities/data_classes/appsync_authorizer_event.py +11 -9
  62. aws_lambda_powertools/utilities/data_classes/appsync_resolver_event.py +23 -63
  63. aws_lambda_powertools/utilities/data_classes/aws_config_rule_event.py +13 -13
  64. aws_lambda_powertools/utilities/data_classes/bedrock_agent_event.py +16 -12
  65. aws_lambda_powertools/utilities/data_classes/cloud_watch_alarm_event.py +19 -19
  66. aws_lambda_powertools/utilities/data_classes/cloud_watch_custom_widget_event.py +9 -7
  67. aws_lambda_powertools/utilities/data_classes/cloud_watch_logs_event.py +7 -6
  68. aws_lambda_powertools/utilities/data_classes/cloudformation_custom_resource_event.py +5 -3
  69. aws_lambda_powertools/utilities/data_classes/code_pipeline_job_event.py +17 -16
  70. aws_lambda_powertools/utilities/data_classes/cognito_user_pool_event.py +70 -327
  71. aws_lambda_powertools/utilities/data_classes/common.py +87 -146
  72. aws_lambda_powertools/utilities/data_classes/connect_contact_flow_event.py +10 -9
  73. aws_lambda_powertools/utilities/data_classes/dynamo_db_stream_event.py +29 -134
  74. aws_lambda_powertools/utilities/data_classes/event_bridge_event.py +6 -4
  75. aws_lambda_powertools/utilities/data_classes/event_source.py +12 -8
  76. aws_lambda_powertools/utilities/data_classes/kafka_event.py +14 -45
  77. aws_lambda_powertools/utilities/data_classes/kinesis_firehose_event.py +21 -18
  78. aws_lambda_powertools/utilities/data_classes/kinesis_stream_event.py +4 -2
  79. aws_lambda_powertools/utilities/data_classes/rabbit_mq_event.py +6 -4
  80. aws_lambda_powertools/utilities/data_classes/s3_batch_operation_event.py +13 -12
  81. aws_lambda_powertools/utilities/data_classes/s3_event.py +14 -12
  82. aws_lambda_powertools/utilities/data_classes/s3_object_event.py +6 -48
  83. aws_lambda_powertools/utilities/data_classes/secrets_manager_event.py +2 -1
  84. aws_lambda_powertools/utilities/data_classes/ses_event.py +17 -15
  85. aws_lambda_powertools/utilities/data_classes/shared_functions.py +0 -129
  86. aws_lambda_powertools/utilities/data_classes/sns_event.py +4 -2
  87. aws_lambda_powertools/utilities/data_classes/sqs_event.py +12 -10
  88. aws_lambda_powertools/utilities/data_classes/vpc_lattice.py +30 -112
  89. aws_lambda_powertools/utilities/data_masking/base.py +10 -8
  90. aws_lambda_powertools/utilities/data_masking/provider/base.py +1 -1
  91. aws_lambda_powertools/utilities/data_masking/provider/kms/aws_encryption_sdk.py +5 -8
  92. aws_lambda_powertools/utilities/feature_flags/__init__.py +5 -5
  93. aws_lambda_powertools/utilities/feature_flags/appconfig.py +21 -37
  94. aws_lambda_powertools/utilities/feature_flags/base.py +6 -4
  95. aws_lambda_powertools/utilities/feature_flags/comparators.py +8 -7
  96. aws_lambda_powertools/utilities/feature_flags/constants.py +13 -0
  97. aws_lambda_powertools/utilities/feature_flags/exceptions.py +1 -1
  98. aws_lambda_powertools/utilities/feature_flags/feature_flags.py +26 -28
  99. aws_lambda_powertools/utilities/feature_flags/schema.py +38 -36
  100. aws_lambda_powertools/utilities/feature_flags/types.py +8 -0
  101. aws_lambda_powertools/utilities/idempotency/base.py +34 -22
  102. aws_lambda_powertools/utilities/idempotency/config.py +11 -8
  103. aws_lambda_powertools/utilities/idempotency/exceptions.py +7 -4
  104. aws_lambda_powertools/utilities/idempotency/hook.py +5 -3
  105. aws_lambda_powertools/utilities/idempotency/idempotency.py +19 -34
  106. aws_lambda_powertools/utilities/idempotency/persistence/base.py +24 -23
  107. aws_lambda_powertools/utilities/idempotency/persistence/datarecord.py +6 -5
  108. aws_lambda_powertools/utilities/idempotency/persistence/dynamodb.py +26 -26
  109. aws_lambda_powertools/utilities/idempotency/persistence/redis.py +6 -7
  110. aws_lambda_powertools/utilities/idempotency/serialization/base.py +5 -3
  111. aws_lambda_powertools/utilities/idempotency/serialization/custom_dict.py +10 -8
  112. aws_lambda_powertools/utilities/idempotency/serialization/dataclass.py +8 -6
  113. aws_lambda_powertools/utilities/idempotency/serialization/no_op.py +3 -3
  114. aws_lambda_powertools/utilities/idempotency/serialization/pydantic.py +11 -15
  115. aws_lambda_powertools/utilities/jmespath_utils/__init__.py +27 -6
  116. aws_lambda_powertools/utilities/parameters/__init__.py +0 -2
  117. aws_lambda_powertools/utilities/parameters/appconfig.py +39 -27
  118. aws_lambda_powertools/utilities/parameters/base.py +34 -135
  119. aws_lambda_powertools/utilities/parameters/constants.py +22 -0
  120. aws_lambda_powertools/utilities/parameters/dynamodb.py +28 -19
  121. aws_lambda_powertools/utilities/parameters/secrets.py +45 -36
  122. aws_lambda_powertools/utilities/parameters/ssm.py +187 -131
  123. aws_lambda_powertools/utilities/parameters/types.py +1 -18
  124. aws_lambda_powertools/utilities/parser/__init__.py +7 -6
  125. aws_lambda_powertools/utilities/parser/envelopes/apigw.py +12 -8
  126. aws_lambda_powertools/utilities/parser/envelopes/apigwv2.py +12 -8
  127. aws_lambda_powertools/utilities/parser/envelopes/base.py +15 -11
  128. aws_lambda_powertools/utilities/parser/envelopes/bedrock_agent.py +13 -9
  129. aws_lambda_powertools/utilities/parser/envelopes/cloudwatch.py +14 -10
  130. aws_lambda_powertools/utilities/parser/envelopes/dynamodb.py +13 -9
  131. aws_lambda_powertools/utilities/parser/envelopes/event_bridge.py +12 -8
  132. aws_lambda_powertools/utilities/parser/envelopes/kafka.py +14 -10
  133. aws_lambda_powertools/utilities/parser/envelopes/kinesis.py +13 -9
  134. aws_lambda_powertools/utilities/parser/envelopes/kinesis_firehose.py +13 -9
  135. aws_lambda_powertools/utilities/parser/envelopes/lambda_function_url.py +12 -8
  136. aws_lambda_powertools/utilities/parser/envelopes/sns.py +19 -15
  137. aws_lambda_powertools/utilities/parser/envelopes/sqs.py +13 -9
  138. aws_lambda_powertools/utilities/parser/envelopes/vpc_lattice.py +13 -9
  139. aws_lambda_powertools/utilities/parser/envelopes/vpc_latticev2.py +13 -9
  140. aws_lambda_powertools/utilities/parser/functions.py +40 -0
  141. aws_lambda_powertools/utilities/parser/models/__init__.py +0 -10
  142. aws_lambda_powertools/utilities/parser/models/apigw.py +4 -17
  143. aws_lambda_powertools/utilities/parser/models/apigwv2.py +2 -10
  144. aws_lambda_powertools/utilities/parser/models/cloudformation_custom_resource.py +1 -3
  145. aws_lambda_powertools/utilities/parser/models/cloudwatch.py +3 -5
  146. aws_lambda_powertools/utilities/parser/models/dynamodb.py +11 -4
  147. aws_lambda_powertools/utilities/parser/models/kafka.py +6 -7
  148. aws_lambda_powertools/utilities/parser/models/kinesis.py +3 -4
  149. aws_lambda_powertools/utilities/parser/models/kinesis_firehose.py +2 -2
  150. aws_lambda_powertools/utilities/parser/models/kinesis_firehose_sqs.py +2 -2
  151. aws_lambda_powertools/utilities/parser/models/s3.py +6 -9
  152. aws_lambda_powertools/utilities/parser/models/s3_batch_operation.py +8 -12
  153. aws_lambda_powertools/utilities/parser/models/ses.py +1 -3
  154. aws_lambda_powertools/utilities/parser/models/sns.py +3 -5
  155. aws_lambda_powertools/utilities/parser/models/sqs.py +1 -3
  156. aws_lambda_powertools/utilities/parser/models/vpc_latticev2.py +2 -2
  157. aws_lambda_powertools/utilities/parser/parser.py +44 -29
  158. aws_lambda_powertools/utilities/parser/types.py +2 -3
  159. aws_lambda_powertools/utilities/streaming/_s3_seekable_io.py +22 -30
  160. aws_lambda_powertools/utilities/streaming/constants.py +1 -0
  161. aws_lambda_powertools/utilities/streaming/s3_object.py +23 -36
  162. aws_lambda_powertools/utilities/streaming/transformations/base.py +2 -2
  163. aws_lambda_powertools/utilities/streaming/types.py +3 -0
  164. aws_lambda_powertools/utilities/typing/__init__.py +0 -2
  165. aws_lambda_powertools/utilities/typing/lambda_client_context.py +12 -10
  166. aws_lambda_powertools/utilities/typing/lambda_client_context_mobile_client.py +1 -4
  167. aws_lambda_powertools/utilities/typing/lambda_cognito_identity.py +1 -4
  168. aws_lambda_powertools/utilities/typing/lambda_context.py +14 -10
  169. aws_lambda_powertools/utilities/validation/base.py +7 -31
  170. aws_lambda_powertools/utilities/validation/exceptions.py +12 -10
  171. aws_lambda_powertools/utilities/validation/validator.py +31 -74
  172. aws_lambda_powertools/warnings/__init__.py +22 -0
  173. {aws_lambda_powertools-2.43.2a6.dist-info → aws_lambda_powertools-3.0.0.dev1.dist-info}/METADATA +6 -15
  174. aws_lambda_powertools-3.0.0.dev1.dist-info/RECORD +245 -0
  175. aws_lambda_powertools/event_handler/graphql_appsync/__init__.py +0 -0
  176. aws_lambda_powertools/event_handler/graphql_appsync/_registry.py +0 -76
  177. aws_lambda_powertools/event_handler/graphql_appsync/base.py +0 -158
  178. aws_lambda_powertools/event_handler/graphql_appsync/exceptions.py +0 -10
  179. aws_lambda_powertools/event_handler/graphql_appsync/router.py +0 -58
  180. aws_lambda_powertools/utilities/parser/compat.py +0 -34
  181. aws_lambda_powertools/utilities/parser/pydantic.py +0 -9
  182. aws_lambda_powertools-2.43.2a6.dist-info/RECORD +0 -245
  183. {aws_lambda_powertools-2.43.2a6.dist-info → aws_lambda_powertools-3.0.0.dev1.dist-info}/LICENSE +0 -0
  184. {aws_lambda_powertools-2.43.2a6.dist-info → aws_lambda_powertools-3.0.0.dev1.dist-info}/WHEEL +0 -0
@@ -1,5 +1,3 @@
1
- # -*- coding: utf-8 -*-
2
-
3
1
  """Top-level package for Lambda Python Powertools."""
4
2
 
5
3
  from pathlib import Path