Skip to content

v1.29.1

Compare
Choose a tag to compare
@release-drafter release-drafter released this 13 Sep 12:36
· 2238 commits to refs/heads/develop since this release

Due to a problem with the release pipeline, we had to yank the v1.29.0 release from PyPI. To fix the problem we are releasing v1.29.1 with no additional changes.

Summary

This release adds a new major integration with Apache Kafka (both Amazon Managed Streaming for Apache Kafka (MSK) and self-managed clusters). We also extended the Event Source Data Classes to support CloudWatch dashboard custom widgets.

Apache Kafka

Powertools can now seamlessly consume events sourced from Apache Kafka (MSK, self-managed). Apache Kafka as an event source operates similarly to using Amazon Simple Queue Service (Amazon SQS) or Amazon Kinesis.

You can easily consume a Kafka event by using the KafkaEvent Data Class:

image

If you want extra flexibility and validation, you can also use the Pydantic models KafkaMskEventModel (for Apache MSK) and KafkaSelfManagedEventModel (for self-managed clusters):
carbon (17) (1)
If your Kafka event payload has a known structure, you could also leverage the KafkaEnvelope model.

Thank you @lyoung-confluent and @ran-isenberg for your contribution!

🌟 Would you like to see more integrations between Apache Kafka and Lambda Powertools? Drop us a line in the python channel of our Discord.

CloudWatch dashboards custom widgets

We also added support for handling events generated by CloudWatch dashboard custom widgets:

carbon (18) (1)

Big thanks to @sthuber90 for your contribution!

Changes

🌟New features and non-breaking changes

📜 Documentation updates

🔧 Maintenance

  • chore(deps): bump flake8-bugbear from 22.8.23 to 22.9.11 (#1512) by @dependabot
  • chore(deps): bump mkdocs-material from 8.4.3 to 8.4.4 (#1513) by @dependabot
  • chore(deps): bump types-requests from 2.28.9 to 2.28.10 (#1508) by @dependabot
  • chore(deps): bump aws-cdk-aws-apigatewayv2-integrations-alpha from 2.40.0a0 to 2.41.0a0 (#1510) by @dependabot
  • chore(deps-dev): bump mypy-boto3-ssm from 1.24.39.post2 to 1.24.69 (#1509) by @dependabot
  • chore(deps-dev): bump aws-cdk-lib from 2.40.0 to 2.41.0 (#1507) by @dependabot
  • chore(deps-dev): bump aws-cdk-aws-apigatewayv2-integrations-alpha from 2.39.1a0 to 2.40.0a0 (#1496) by @dependabot
  • chore(deps-dev): bump mkdocs-material from 8.4.2 to 8.4.3 (#1504) by @dependabot
  • chore(deps): bump pydantic from 1.10.1 to 1.10.2 (#1502) by @dependabot
  • chore(deps-dev): bump pytest from 7.1.2 to 7.1.3 (#1497) by @dependabot
  • chore(deps-dev): bump black from 22.6.0 to 22.8.0 (#1494) by @dependabot
  • chore(deps-dev): bump aws-cdk-lib from 2.39.1 to 2.40.0 (#1495) by @dependabot
  • chore(maintenance): add discord link to first PR and first issue (#1493) by @rubenfonseca
  • chore(deps): bump pydantic from 1.10.0 to 1.10.1 (#1491) by @dependabot
  • chore(deps-dev): bump flake8-variables-names from 0.0.4 to 0.0.5 (#1490) by @dependabot
  • chore(deps-dev): bump mkdocs-material from 8.4.1 to 8.4.2 (#1483) by @dependabot
  • chore(ci): create reusable docs publishing workflow (#1482) by @heitorlessa
  • chore(deps-dev): bump mypy-boto3-dynamodb from 1.24.55.post1 to 1.24.60 (#1481) by @dependabot
  • chore(ci): add workflow to suggest splitting large PRs (#1480) by @heitorlessa
  • chore(ci): add linter for GitHub Actions as pre-commit hook (#1479) by @heitorlessa
  • chore(deps-dev): bump black from 21.12b0 to 22.8.0 (#1515) by @dependabot
  • chore(deps-dev): bump mkdocs-material from 8.4.4 to 8.5.0 (#1514) by @dependabot
  • chore(ci): add linter for GitHub Actions as pre-commit hook (#1479) by @heitorlessa

This release was made possible by the following contributors:

@dependabot, @dependabot[bot], @heitorlessa, @leandrodamascena, @lyoung-confluent, @ran-isenberg, @rubenfonseca, @sthuber90 and Release bot