Summary
This release adds Security Schemes support for generated OpenAPI / Swagger UI, and a new feature to manipulate idempotent responses. ππ And of course, you know it, fixes in typing and documentation. π
π Tons of things in this release was only possible because of our community. π A huge thank you to @walmsles, @Wurstnase, @SZubarev, @Emerson-MM-Filho, @nlykkei, @amyc92 and many others for your support and collaboration!
OpenAPI Security Schemes
You can now add security scheme annotations to your generated OpenAPI documentation (HTTP headers, API keys, OAuth 2 and OpenID connect). Additionally, you can configure the built-in Swagger UI to use OAuth 2 when generating requests.
π Huge thanks to @nlykkei for helping us shape this feature!
Manipulating Idempotent Responses
You can now set up a response_hook
in the IdempotentConfig
class to manipulate the returned data when an operation is idempotent. The hook function will be called with the current deserialized response object and the idempotency record.
This can be used for changing something in the response, inject headers, emit custom metrics, and many other use cases.
π Thank you @walmsles for leading the design and implementation of this!
Changes
πNew features and non-breaking changes
- feat(event_handler): add support for OpenAPI security schemes (#4103) by @rubenfonseca
- feat(event_sources,parser): add support for DeadLetterQueueSourceArn for SQS (#4133) by @rubenfonseca
- feat(logger): add method to return currently configured keys (#4033) by @leandrodamascena
- feat(idempotency): add feature for manipulating idempotent responses (#4037) by @walmsles
π Documentation updates
- docs(we-made-this): new article on how to stream data with AWS Lambda & Powertools for AWS Lambda (#4068) by @leandrodamascena
π Bug and hot fixes
- fix(typing): make the case_sensitive field a boolean only (#4128) by @Wurstnase
- fix(typing): improve overloads to ensure the return type follows the default_value type (#4114) by @Wurstnase
- fix(docs): clarified usage of validation with fine grained responses (#4101) by @rubenfonseca
- fix(event_source): fix typo in physicalname attribute for AmazonMQ events (#4053) by @SZubarev
π§ Maintenance
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.115 to 0.1.119 (#4150) by @dependabot
- chore(deps-dev): bump types-redis from 4.6.0.20240409 to 4.6.0.20240417 (#4145) by @dependabot
- chore(deps-dev): bump mkdocs-material from 9.5.17 to 9.5.18 (#4143) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.113 to 0.1.115 (#4142) by @dependabot
- chore(deps): bump squidfunk/mkdocs-material from
6b124e1
to521644b
in /docs (#4141) by @dependabot - chore(deps-dev): bump cfn-lint from 0.86.2 to 0.86.3 (#4137) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.112 to 0.1.113 (#4136) by @dependabot
- chore(deps): bump sqlparse from 0.4.4 to 0.5.0 (#4138) by @dependabot
- chore(deps-dev): bump black from 24.3.0 to 24.4.0 (#4135) by @dependabot
- chore(docs): update highlighted lines on the Typing examples (#4131) by @Emerson-MM-Filho
- chore(deps-dev): bump mypy-boto3-cloudformation from 1.34.77 to 1.34.84 in the boto-typing group (#4126) by @dependabot
- chore(deps-dev): bump aws-cdk-aws-lambda-python-alpha from 2.136.0a0 to 2.137.0a0 (#4124) by @dependabot
- chore(deps): bump idna from 3.6 to 3.7 (#4121) by @dependabot
- chore(deps-dev): bump aws-cdk-lib from 2.136.1 to 2.137.0 (#4119) by @dependabot
- chore(deps-dev): bump ruff from 0.3.5 to 0.3.7 (#4123) by @dependabot
- chore(deps-dev): bump mypy-boto3-cloudwatch from 1.34.75 to 1.34.83 in the boto-typing group (#4116) by @dependabot
- chore(deps-dev): bump aws-cdk from 2.136.1 to 2.137.0 (#4115) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.110 to 0.1.112 (#4109) by @dependabot
- chore(deps-dev): bump sentry-sdk from 1.44.1 to 1.45.0 (#4108) by @dependabot
- chore(deps-dev): bump aws-cdk-lib from 2.136.0 to 2.136.1 (#4107) by @dependabot
- chore(deps-dev): bump aws-cdk from 2.136.0 to 2.136.1 (#4106) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.107 to 0.1.110 (#4097) by @dependabot
- chore(deps-dev): bump filelock from 3.13.3 to 3.13.4 (#4096) by @dependabot
- chore(deps): bump zgosalvez/github-actions-ensure-sha-pinned-actions from 3.0.3 to 3.0.4 (#4099) by @dependabot
- chore(deps): bump codecov/codecov-action from 4.2.0 to 4.3.0 (#4098) by @dependabot
- chore(deps-dev): bump aws-cdk-aws-lambda-python-alpha from 2.135.0a0 to 2.136.0a0 (#4095) by @dependabot
- chore(deps-dev): bump types-redis from 4.6.0.20240311 to 4.6.0.20240409 (#4094) by @dependabot
- chore(deps-dev): bump aws-cdk from 2.135.0 to 2.136.0 (#4090) by @dependabot
- chore(deps): bump docker/setup-buildx-action from 3.2.0 to 3.3.0 (#4091) by @dependabot
- chore(deps-dev): bump aws-cdk-lib from 2.135.0 to 2.136.0 (#4092) by @dependabot
- chore(deps-dev): bump cfn-lint from 0.86.1 to 0.86.2 (#4081) by @dependabot
- chore(deps): bump typing-extensions from 4.10.0 to 4.11.0 (#4080) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.106 to 0.1.107 (#4082) by @dependabot
- chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.10 to 1.27.11 in /layer/scripts/layer-balancer in the layer-balancer group (#4079) by @dependabot
- chore(ci): add monthly roadmap reminder workflow (#4075) by @heitorlessa
- chore(deps): bump codecov/codecov-action from 4.1.1 to 4.2.0 (#4072) by @dependabot
- chore(deps): bump golang.org/x/sync from 0.6.0 to 0.7.0 in /layer/scripts/layer-balancer in the layer-balancer group (#4071) by @dependabot
- chore(deps-dev): bump sentry-sdk from 1.44.0 to 1.44.1 (#4065) by @dependabot
- chore(deps-dev): bump aws-cdk-aws-lambda-python-alpha from 2.134.0a0 to 2.135.0a0 (#4063) by @dependabot
- chore(deps): bump pydantic from 1.10.14 to 1.10.15 (#4064) by @dependabot
- chore(deps-dev): bump the boto-typing group with 2 updates (#4062) by @dependabot
- chore(deps): bump the layer-balancer group in /layer/scripts/layer-balancer with 1 update (#4066) by @dependabot
- chore(ci): prevent deprecated custom runner from being used (#4061) by @heitorlessa
- chore(deps-dev): bump aws-cdk from 2.134.0 to 2.135.0 (#4058) by @dependabot
- chore(deps-dev): bump aws-cdk-lib from 2.134.0 to 2.135.0 (#4057) by @dependabot
- chore(deps-dev): bump mkdocs-material from 9.5.16 to 9.5.17 (#4056) by @dependabot
- chore(deps): bump squidfunk/mkdocs-material from
065f3af
to6b124e1
in /docs (#4055) by @dependabot - chore(deps-dev): bump ruff from 0.3.4 to 0.3.5 (#4049) by @dependabot
- chore(deps-dev): bump mkdocs-material from 9.5.15 to 9.5.16 (#4050) by @dependabot
- chore(deps-dev): bump the boto-typing group with 1 update (#4047) by @dependabot
- chore(deps): bump squidfunk/mkdocs-material from
3307665
to065f3af
in /docs (#4052) by @dependabot - chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.105 to 0.1.106 (#4048) by @dependabot
- chore(deps): bump the layer-balancer group in /layer/scripts/layer-balancer with 3 updates (#4042) by @dependabot
- chore(deps-dev): bump aws-cdk-aws-lambda-python-alpha from 2.133.0a0 to 2.134.0a0 (#4039) by @dependabot
- chore(deps-dev): bump sentry-sdk from 1.43.0 to 1.44.0 (#4040) by @dependabot
- chore(deps): bump datadog-lambda from 5.91.0 to 5.92.0 (#4038) by @dependabot
- chore(deps-dev): bump aws-cdk-lib from 2.133.0 to 2.134.0 (#4031) by @dependabot
- chore(deps-dev): bump cdklabs-generative-ai-cdk-constructs from 0.1.104 to 0.1.105 (#4030) by @dependabot
- chore(deps-dev): bump aws-cdk from 2.133.0 to 2.134.0 (#4032) by @dependabot
- chore(deps-dev): bump the boto-typing group with 1 update (#4029) by @dependabot
This release was made possible by the following contributors:
@Emerson-MM-Filho, @SZubarev, @Wurstnase, @dependabot, @dependabot[bot], @github-actions, @github-actions[bot], @heitorlessa, @leandrodamascena, @rubenfonseca and @walmsles