aws-lambda-powertools 3.6.1a9__tar.gz → 3.7.0__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 (259) hide show
  1. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/PKG-INFO +1 -1
  2. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/version.py +1 -1
  3. aws_lambda_powertools-3.7.0/aws_lambda_powertools/utilities/data_classes/iot_registry_event.py +418 -0
  4. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/pyproject.toml +1 -1
  5. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/setup.py +1 -1
  6. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/LICENSE +0 -0
  7. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/README.md +0 -0
  8. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/THIRD-PARTY-LICENSES +0 -0
  9. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/__init__.py +0 -0
  10. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/__init__.py +0 -0
  11. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/api_gateway.py +0 -0
  12. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/appsync.py +0 -0
  13. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/bedrock_agent.py +0 -0
  14. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/content_types.py +0 -0
  15. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/exceptions.py +0 -0
  16. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/graphql_appsync/__init__.py +0 -0
  17. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/graphql_appsync/_registry.py +0 -0
  18. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/graphql_appsync/base.py +0 -0
  19. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/graphql_appsync/exceptions.py +0 -0
  20. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/graphql_appsync/router.py +0 -0
  21. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/lambda_function_url.py +0 -0
  22. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/middlewares/__init__.py +0 -0
  23. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/middlewares/base.py +0 -0
  24. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/middlewares/openapi_validation.py +0 -0
  25. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/middlewares/schema_validation.py +0 -0
  26. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/__init__.py +0 -0
  27. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/compat.py +0 -0
  28. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/constants.py +0 -0
  29. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/dependant.py +0 -0
  30. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/encoders.py +0 -0
  31. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/exceptions.py +0 -0
  32. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/models.py +0 -0
  33. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/params.py +0 -0
  34. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/pydantic_loader.py +0 -0
  35. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/swagger_ui/__init__.py +0 -0
  36. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/swagger_ui/html.py +0 -0
  37. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/swagger_ui/oauth2.py +0 -0
  38. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui-bundle.min.js +0 -0
  39. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/swagger_ui/swagger-ui.min.css +0 -0
  40. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/openapi/types.py +0 -0
  41. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/router.py +0 -0
  42. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/types.py +0 -0
  43. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/util.py +0 -0
  44. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/event_handler/vpc_lattice.py +0 -0
  45. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/exceptions/__init__.py +0 -0
  46. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/__init__.py +0 -0
  47. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/constants.py +0 -0
  48. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/correlation_paths.py +0 -0
  49. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/exceptions.py +0 -0
  50. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/filters.py +0 -0
  51. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/formatter.py +0 -0
  52. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/formatters/__init__.py +0 -0
  53. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/formatters/datadog.py +0 -0
  54. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/lambda_context.py +0 -0
  55. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/logger.py +0 -0
  56. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/types.py +0 -0
  57. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/logging/utils.py +0 -0
  58. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/__init__.py +0 -0
  59. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/base.py +0 -0
  60. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/exceptions.py +0 -0
  61. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/functions.py +0 -0
  62. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/metric.py +0 -0
  63. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/metrics.py +0 -0
  64. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/__init__.py +0 -0
  65. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/base.py +0 -0
  66. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/__init__.py +0 -0
  67. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/cloudwatch.py +0 -0
  68. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/constants.py +0 -0
  69. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/exceptions.py +0 -0
  70. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/metric_properties.py +0 -0
  71. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cloudwatch_emf/types.py +0 -0
  72. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/cold_start.py +0 -0
  73. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/datadog/__init__.py +0 -0
  74. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/datadog/datadog.py +0 -0
  75. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/datadog/metrics.py +0 -0
  76. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/provider/datadog/warnings.py +0 -0
  77. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/metrics/types.py +0 -0
  78. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/middleware_factory/__init__.py +0 -0
  79. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/middleware_factory/exceptions.py +0 -0
  80. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/middleware_factory/factory.py +0 -0
  81. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/package_logger.py +0 -0
  82. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/py.typed +0 -0
  83. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/__init__.py +0 -0
  84. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/cache_dict.py +0 -0
  85. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/constants.py +0 -0
  86. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/cookies.py +0 -0
  87. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/dynamodb_deserializer.py +0 -0
  88. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/functions.py +0 -0
  89. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/headers_serializer.py +0 -0
  90. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/json_encoder.py +0 -0
  91. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/lazy_import.py +0 -0
  92. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/types.py +0 -0
  93. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/shared/user_agent.py +0 -0
  94. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/tracing/__init__.py +0 -0
  95. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/tracing/base.py +0 -0
  96. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/tracing/extensions.py +0 -0
  97. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/tracing/tracer.py +0 -0
  98. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/__init__.py +0 -0
  99. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/__init__.py +0 -0
  100. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/base.py +0 -0
  101. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/decorators.py +0 -0
  102. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/exceptions.py +0 -0
  103. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/sqs_fifo_partial_processor.py +0 -0
  104. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/batch/types.py +0 -0
  105. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/__init__.py +0 -0
  106. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/active_mq_event.py +0 -0
  107. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/alb_event.py +0 -0
  108. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py +0 -0
  109. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/api_gateway_proxy_event.py +0 -0
  110. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/appsync/__init__.py +0 -0
  111. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/appsync/scalar_types_utils.py +0 -0
  112. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/appsync_authorizer_event.py +0 -0
  113. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/appsync_resolver_event.py +0 -0
  114. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/aws_config_rule_event.py +0 -0
  115. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/bedrock_agent_event.py +0 -0
  116. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/cloud_watch_alarm_event.py +0 -0
  117. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/cloud_watch_custom_widget_event.py +0 -0
  118. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/cloud_watch_logs_event.py +0 -0
  119. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/cloudformation_custom_resource_event.py +0 -0
  120. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/code_deploy_lifecycle_hook_event.py +0 -0
  121. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/code_pipeline_job_event.py +0 -0
  122. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/cognito_user_pool_event.py +0 -0
  123. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/common.py +0 -0
  124. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/connect_contact_flow_event.py +0 -0
  125. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/dynamo_db_stream_event.py +0 -0
  126. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/event_bridge_event.py +0 -0
  127. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/event_source.py +0 -0
  128. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/kafka_event.py +0 -0
  129. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/kinesis_firehose_event.py +0 -0
  130. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/kinesis_stream_event.py +0 -0
  131. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/lambda_function_url_event.py +0 -0
  132. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/rabbit_mq_event.py +0 -0
  133. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/s3_batch_operation_event.py +0 -0
  134. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/s3_event.py +0 -0
  135. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/s3_object_event.py +0 -0
  136. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/secrets_manager_event.py +0 -0
  137. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/ses_event.py +0 -0
  138. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/shared_functions.py +0 -0
  139. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/sns_event.py +0 -0
  140. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/sqs_event.py +0 -0
  141. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/transfer_family_event.py +0 -0
  142. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_classes/vpc_lattice.py +0 -0
  143. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/__init__.py +0 -0
  144. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/base.py +0 -0
  145. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/constants.py +0 -0
  146. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/exceptions.py +0 -0
  147. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/provider/__init__.py +0 -0
  148. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/provider/base.py +0 -0
  149. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/provider/kms/__init__.py +0 -0
  150. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/data_masking/provider/kms/aws_encryption_sdk.py +0 -0
  151. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/__init__.py +0 -0
  152. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/appconfig.py +0 -0
  153. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/base.py +0 -0
  154. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/comparators.py +0 -0
  155. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/constants.py +0 -0
  156. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/exceptions.py +0 -0
  157. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/feature_flags.py +0 -0
  158. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/schema.py +0 -0
  159. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/feature_flags/types.py +0 -0
  160. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/__init__.py +0 -0
  161. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/base.py +0 -0
  162. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/config.py +0 -0
  163. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/exceptions.py +0 -0
  164. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/hook.py +0 -0
  165. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/idempotency.py +0 -0
  166. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/persistence/__init__.py +0 -0
  167. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/persistence/base.py +0 -0
  168. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/persistence/datarecord.py +0 -0
  169. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/persistence/dynamodb.py +0 -0
  170. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/persistence/redis.py +0 -0
  171. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/__init__.py +0 -0
  172. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/base.py +0 -0
  173. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/custom_dict.py +0 -0
  174. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/dataclass.py +0 -0
  175. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/functions.py +0 -0
  176. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/no_op.py +0 -0
  177. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/idempotency/serialization/pydantic.py +0 -0
  178. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/jmespath_utils/__init__.py +0 -0
  179. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/jmespath_utils/envelopes.py +0 -0
  180. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/__init__.py +0 -0
  181. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/appconfig.py +0 -0
  182. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/base.py +0 -0
  183. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/constants.py +0 -0
  184. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/dynamodb.py +0 -0
  185. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/exceptions.py +0 -0
  186. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/secrets.py +0 -0
  187. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/ssm.py +0 -0
  188. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parameters/types.py +0 -0
  189. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/__init__.py +0 -0
  190. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/__init__.py +0 -0
  191. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/apigw.py +0 -0
  192. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/apigw_websocket.py +0 -0
  193. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/apigwv2.py +0 -0
  194. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/base.py +0 -0
  195. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/bedrock_agent.py +0 -0
  196. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/cloudwatch.py +0 -0
  197. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/dynamodb.py +0 -0
  198. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/event_bridge.py +0 -0
  199. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/kafka.py +0 -0
  200. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/kinesis.py +0 -0
  201. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/kinesis_firehose.py +0 -0
  202. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/lambda_function_url.py +0 -0
  203. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/sns.py +0 -0
  204. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/sqs.py +0 -0
  205. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/vpc_lattice.py +0 -0
  206. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/envelopes/vpc_latticev2.py +0 -0
  207. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/exceptions.py +0 -0
  208. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/functions.py +0 -0
  209. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/__init__.py +0 -0
  210. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/alb.py +0 -0
  211. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/apigw.py +0 -0
  212. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/apigw_websocket.py +0 -0
  213. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/apigwv2.py +0 -0
  214. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/bedrock_agent.py +0 -0
  215. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/cloudformation_custom_resource.py +0 -0
  216. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/cloudwatch.py +0 -0
  217. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/dynamodb.py +0 -0
  218. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/event_bridge.py +0 -0
  219. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/iot_registry_events.py +0 -0
  220. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/kafka.py +0 -0
  221. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/kinesis.py +0 -0
  222. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose.py +0 -0
  223. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/kinesis_firehose_sqs.py +0 -0
  224. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/lambda_function_url.py +0 -0
  225. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/s3.py +0 -0
  226. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/s3_batch_operation.py +0 -0
  227. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/s3_event_notification.py +0 -0
  228. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/s3_object_event.py +0 -0
  229. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/ses.py +0 -0
  230. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/sns.py +0 -0
  231. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/sqs.py +0 -0
  232. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/transfer_family.py +0 -0
  233. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/vpc_lattice.py +0 -0
  234. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/models/vpc_latticev2.py +0 -0
  235. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/parser.py +0 -0
  236. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/parser/types.py +0 -0
  237. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/serialization.py +0 -0
  238. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/__init__.py +0 -0
  239. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/_s3_seekable_io.py +0 -0
  240. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/compat.py +0 -0
  241. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/constants.py +0 -0
  242. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/s3_object.py +0 -0
  243. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/transformations/__init__.py +0 -0
  244. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/transformations/base.py +0 -0
  245. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/transformations/csv.py +0 -0
  246. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/transformations/gzip.py +0 -0
  247. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/transformations/zip.py +0 -0
  248. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/streaming/types.py +0 -0
  249. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/typing/__init__.py +0 -0
  250. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/typing/lambda_client_context.py +0 -0
  251. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/typing/lambda_client_context_mobile_client.py +0 -0
  252. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/typing/lambda_cognito_identity.py +0 -0
  253. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/typing/lambda_context.py +0 -0
  254. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/validation/__init__.py +0 -0
  255. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/validation/base.py +0 -0
  256. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/validation/envelopes.py +0 -0
  257. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/validation/exceptions.py +0 -0
  258. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/utilities/validation/validator.py +0 -0
  259. {aws_lambda_powertools-3.6.1a9 → aws_lambda_powertools-3.7.0}/aws_lambda_powertools/warnings/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: aws_lambda_powertools
3
- Version: 3.6.1a9
3
+ Version: 3.7.0
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
@@ -1,3 +1,3 @@
1
1
  """Exposes version constant to avoid circular dependencies."""
2
2
 
3
- VERSION = "3.6.1a9"
3
+ VERSION = "3.7.0"
@@ -0,0 +1,418 @@
1
+ from __future__ import annotations
2
+
3
+ from datetime import datetime
4
+ from typing import Any, Literal
5
+
6
+ from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
7
+
8
+ EVENT_CRUD_OPERATION = Literal["CREATED", "UPDATED", "DELETED"]
9
+ EVENT_ADD_REMOVE_OPERATION = Literal["ADDED", "REMOVED"]
10
+
11
+
12
+ class IoTCoreRegistryEventsBase(DictWrapper):
13
+ @property
14
+ def event_id(self) -> str:
15
+ """
16
+ The unique identifier for the event.
17
+ """
18
+ return self["eventId"]
19
+
20
+ @property
21
+ def timestamp(self) -> datetime:
22
+ """
23
+ The timestamp of the event.
24
+
25
+ The timestamp is in Unix format (seconds or milliseconds).
26
+ If it's 10 digits long, it represents seconds;
27
+ if it's 13 digits, it's in milliseconds and is converted to seconds.
28
+ """
29
+ ts = self["timestamp"]
30
+ return datetime.fromtimestamp(ts / 1000 if ts > 10**10 else ts)
31
+
32
+
33
+ class IoTCoreThingEvent(IoTCoreRegistryEventsBase):
34
+ """
35
+ Thing Created/Updated/Deleted
36
+ The registry publishes event messages when things are created, updated, or deleted.
37
+ """
38
+
39
+ @property
40
+ def event_type(self) -> Literal["THING_EVENT"]:
41
+ """
42
+ The event type, which will always be "THING_EVENT".
43
+ """
44
+ return self["eventType"]
45
+
46
+ @property
47
+ def operation(self) -> str:
48
+ """
49
+ The operation type for the event (e.g., CREATED, UPDATED, DELETED).
50
+ """
51
+ return self["operation"]
52
+
53
+ @property
54
+ def thing_id(self) -> str:
55
+ """
56
+ The unique identifier for the thing.
57
+ """
58
+ return self["thingId"]
59
+
60
+ @property
61
+ def account_id(self) -> str:
62
+ """
63
+ The account ID associated with the event.
64
+ """
65
+ return self["accountId"]
66
+
67
+ @property
68
+ def thing_name(self) -> str:
69
+ """
70
+ The name of the thing.
71
+ """
72
+ return self["thingName"]
73
+
74
+ @property
75
+ def version_number(self) -> int:
76
+ """
77
+ The version number of the thing.
78
+ """
79
+ return self["versionNumber"]
80
+
81
+ @property
82
+ def thing_type_name(self) -> str | None:
83
+ """
84
+ The thing type name if available, or None if not specified.
85
+ """
86
+ return self.get("thingTypeName")
87
+
88
+ @property
89
+ def attributes(self) -> dict[str, Any]:
90
+ """
91
+ The dictionary of attributes associated with the thing.
92
+ """
93
+ return self["attributes"]
94
+
95
+
96
+ class IoTCoreThingTypeEvent(IoTCoreRegistryEventsBase):
97
+ """
98
+ Thing Type Created/Updated/Deprecated/Undeprecated/Deleted
99
+ The registry publishes event messages when thing types are created, updated, deprecated, undeprecated, or deleted.
100
+ """
101
+
102
+ @property
103
+ def event_type(self) -> str:
104
+ """
105
+ The event type, corresponding to a thing type event.
106
+ """
107
+ return self["eventType"]
108
+
109
+ @property
110
+ def operation(self) -> EVENT_CRUD_OPERATION:
111
+ """
112
+ The operation performed on the thing type (e.g., CREATED, UPDATED, DELETED).
113
+ """
114
+ return self["operation"]
115
+
116
+ @property
117
+ def account_id(self) -> str:
118
+ """
119
+ The account ID associated with the event.
120
+ """
121
+ return self["accountId"]
122
+
123
+ @property
124
+ def thing_type_id(self) -> str:
125
+ """
126
+ The unique identifier for the thing type.
127
+ """
128
+ return self["thingTypeId"]
129
+
130
+ @property
131
+ def thing_type_name(self) -> str:
132
+ """
133
+ The name of the thing type.
134
+ """
135
+ return self["thingTypeName"]
136
+
137
+ @property
138
+ def is_deprecated(self) -> bool:
139
+ """
140
+ Whether the thing type is marked as deprecated.
141
+ """
142
+ return self["isDeprecated"]
143
+
144
+ @property
145
+ def deprecation_date(self) -> datetime | None:
146
+ """
147
+ The deprecation date of the thing type, or None if not available.
148
+ """
149
+ return datetime.fromisoformat(self["deprecationDate"]) if self.get("deprecationDate") else None
150
+
151
+ @property
152
+ def searchable_attributes(self) -> list[str]:
153
+ """
154
+ The list of attributes that are searchable for the thing type.
155
+ """
156
+ return self["searchableAttributes"]
157
+
158
+ @property
159
+ def propagating_attributes(self) -> list[dict[str, str]]:
160
+ """
161
+ The list of attributes to propagate for the thing type.
162
+ """
163
+ return self["propagatingAttributes"]
164
+
165
+ @property
166
+ def description(self) -> str:
167
+ """
168
+ The description of the thing type.
169
+ """
170
+ return self["description"]
171
+
172
+
173
+ class IoTCoreThingTypeAssociationEvent(IoTCoreRegistryEventsBase):
174
+ """
175
+ The registry publishes event messages when a thing type is associated or disassociated with a thing.
176
+ """
177
+
178
+ @property
179
+ def event_type(self) -> str:
180
+ """
181
+ The event type, related to the thing type association event.
182
+ """
183
+ return self["eventType"]
184
+
185
+ @property
186
+ def operation(self) -> Literal["THING_TYPE_ASSOCIATION_EVENT"]:
187
+ """
188
+ The operation type, which is always "THING_TYPE_ASSOCIATION_EVENT".
189
+ """
190
+ return self["operation"]
191
+
192
+ @property
193
+ def thing_id(self) -> str:
194
+ """
195
+ The unique identifier for the associated thing.
196
+ """
197
+ return self["thingId"]
198
+
199
+ @property
200
+ def thing_name(self) -> str:
201
+ """
202
+ The name of the associated thing.
203
+ """
204
+ return self["thingName"]
205
+
206
+ @property
207
+ def thing_type_name(self) -> str:
208
+ """
209
+ The name of the associated thing type.
210
+ """
211
+ return self["thingTypeName"]
212
+
213
+
214
+ class IoTCoreThingGroupEvent(IoTCoreRegistryEventsBase):
215
+ """
216
+ The registry publishes event messages when a thing group is created, updated, or deleted.
217
+ """
218
+
219
+ @property
220
+ def event_type(self) -> str:
221
+ """
222
+ The event type, corresponding to the thing group event.
223
+ """
224
+ return self["eventType"]
225
+
226
+ @property
227
+ def operation(self) -> EVENT_CRUD_OPERATION:
228
+ """
229
+ The operation type (e.g., CREATED, UPDATED, DELETED) performed on the thing group.
230
+ """
231
+ return self["operation"]
232
+
233
+ @property
234
+ def account_id(self) -> str:
235
+ """
236
+ The account ID associated with the event.
237
+ """
238
+ return self["accountId"]
239
+
240
+ @property
241
+ def thing_group_id(self) -> str:
242
+ """
243
+ The unique identifier for the thing group.
244
+ """
245
+ return self["thingGroupId"]
246
+
247
+ @property
248
+ def thing_group_name(self) -> str:
249
+ """
250
+ The name of the thing group.
251
+ """
252
+ return self["thingGroupName"]
253
+
254
+ @property
255
+ def version_number(self) -> int:
256
+ """
257
+ The version number of the thing group.
258
+ """
259
+ return self["versionNumber"]
260
+
261
+ @property
262
+ def parent_group_name(self) -> str | None:
263
+ """
264
+ The name of the parent group, or None if not applicable.
265
+ """
266
+ return self.get("parentGroupName")
267
+
268
+ @property
269
+ def parent_group_id(self) -> str | None:
270
+ """
271
+ The ID of the parent group, or None if not applicable.
272
+ """
273
+ return self.get("parentGroupId")
274
+
275
+ @property
276
+ def description(self) -> str:
277
+ """
278
+ The description of the thing group.
279
+ """
280
+ return self["description"]
281
+
282
+ @property
283
+ def root_to_parent_thing_groups(self) -> list[dict[str, str]]:
284
+ """
285
+ The list of root-to-parent thing group mappings.
286
+ """
287
+ return self["rootToParentThingGroups"]
288
+
289
+ @property
290
+ def attributes(self) -> dict[str, Any]:
291
+ """
292
+ The attributes associated with the thing group.
293
+ """
294
+ return self["attributes"]
295
+
296
+ @property
297
+ def dynamic_group_mapping_id(self) -> str | None:
298
+ """
299
+ The dynamic group mapping ID if available, or None if not specified.
300
+ """
301
+ return self.get("dynamicGroupMappingId")
302
+
303
+
304
+ class IoTCoreAddOrRemoveFromThingGroupEvent(IoTCoreRegistryEventsBase):
305
+ """
306
+ The registry publishes event messages when a thing is added to or removed from a thing group.
307
+ """
308
+
309
+ @property
310
+ def event_type(self) -> str:
311
+ """
312
+ The event type, corresponding to the add/remove from thing group event.
313
+ """
314
+ return self["eventType"]
315
+
316
+ @property
317
+ def operation(self) -> EVENT_ADD_REMOVE_OPERATION:
318
+ """
319
+ The operation (ADDED or REMOVED) performed on the thing in the group.
320
+ """
321
+ return self["operation"]
322
+
323
+ @property
324
+ def account_id(self) -> str:
325
+ """
326
+ The account ID associated with the event.
327
+ """
328
+ return self["accountId"]
329
+
330
+ @property
331
+ def group_arn(self) -> str:
332
+ """
333
+ The ARN of the group the thing was added to or removed from.
334
+ """
335
+ return self["groupArn"]
336
+
337
+ @property
338
+ def group_id(self) -> str:
339
+ """
340
+ The unique identifier of the group.
341
+ """
342
+ return self["groupId"]
343
+
344
+ @property
345
+ def thing_arn(self) -> str:
346
+ """
347
+ The ARN of the thing being added or removed.
348
+ """
349
+ return self["thingArn"]
350
+
351
+ @property
352
+ def thing_id(self) -> str:
353
+ """
354
+ The unique identifier for the thing being added or removed.
355
+ """
356
+ return self["thingId"]
357
+
358
+ @property
359
+ def membership_id(self) -> str:
360
+ """
361
+ The unique membership ID for the thing within the group.
362
+ """
363
+ return self["membershipId"]
364
+
365
+
366
+ class IoTCoreAddOrDeleteFromThingGroupEvent(IoTCoreRegistryEventsBase):
367
+ """
368
+ The registry publishes event messages when a child group is added to or deleted from a parent group.
369
+ """
370
+
371
+ @property
372
+ def event_type(self) -> str:
373
+ """
374
+ The event type, corresponding to the add/delete from thing group event.
375
+ """
376
+ return self["eventType"]
377
+
378
+ @property
379
+ def operation(self) -> EVENT_ADD_REMOVE_OPERATION:
380
+ """
381
+ The operation (ADDED or REMOVED) performed on the child group.
382
+ """
383
+ return self["operation"]
384
+
385
+ @property
386
+ def account_id(self) -> str:
387
+ """
388
+ The account ID associated with the event.
389
+ """
390
+ return self["accountId"]
391
+
392
+ @property
393
+ def thing_group_id(self) -> str:
394
+ """
395
+ The unique identifier of the thing group.
396
+ """
397
+ return self["thingGroupId"]
398
+
399
+ @property
400
+ def thing_group_name(self) -> str:
401
+ """
402
+ The name of the thing group.
403
+ """
404
+ return self["thingGroupName"]
405
+
406
+ @property
407
+ def child_group_id(self) -> str:
408
+ """
409
+ The unique identifier of the child group being added or removed.
410
+ """
411
+ return self["childGroupId"]
412
+
413
+ @property
414
+ def child_group_name(self) -> str:
415
+ """
416
+ The name of the child group being added or removed.
417
+ """
418
+ return self["childGroupName"]
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "aws_lambda_powertools"
3
- version = "3.6.1a9"
3
+ version = "3.7.0"
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"]
@@ -64,7 +64,7 @@ extras_require = \
64
64
 
65
65
  setup_kwargs = {
66
66
  'name': 'aws_lambda_powertools',
67
- 'version': '3.6.1a9',
67
+ 'version': '3.7.0',
68
68
  'description': 'Powertools for AWS Lambda (Python) is a developer toolkit to implement Serverless best practices and increase developer velocity.',
69
69
  '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.9|%203.10|%203.11|%203.12|%203.13&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* [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* [IMS](https://ims.tech/)\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* [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',
70
70
  'author': 'Amazon Web Services',