Summary
This release a new Event Handlers core utility, and enables versioning for documentation so you can access staging docs early or a specific release doc.
Additionally, there are a number of enhancements in the documentation, Parser's support for S3 Object Lambda event, a better support for MyPy (more to come), etc.
Event Handlers
This is a new core utility to help you reduce boilerplate when working with Event Sources. For example, you can now have clearly defined single purpose methods to be called depending on what's inside the event instead of nested flow controls (if/else/elif).
AWS AppSync is our first event handler (thanks to @michaelbrewer), and we would love to hear from you what other event handlers would be useful to boost your experience even further.
Notice how you can combine AppSync scalar utilities, Logger correlation ID, Tracer, and have tiny functions to compute a given GraphQL field or type now.
Versioned docs
Some of you might have already noticed a new version switch at the top of the documentation, including additional stats from GitHub directly on the top right corner.
This means you can now access early versions of the documentation before we release as well as the last two releases. This opens the door for a possible nightly build release :)
Changes
πNew features and non-breaking changes
- docs: enable versioning feature (#374) by @heitorlessa
- feat(event-handler): Add AppSync handler decorator (#363) by @michaelbrewer
- feat(parser): Add S3 Object Lambda Event (#362) by @risenberg-cyberark
π Minor Changes
- feat(parameter): add dynamodb_endpoint_url for local_testing (#376) by @rtrive
- fix(data-classes): Add missing operationName (#373) by @michaelbrewer
- fix(tracer): Correct type hint for MyPy (#365) by @michaelbrewer
π Documentation updates
- docs(logger): add example on how to set UTC timestamp (#392) by @heitorlessa
- docs(idempotency): add default table configuration for those not using IaC (#391) by @heitorlessa
- docs: Correct link targets and line highlights (#390) by @michaelbrewer
- docs(validator): include more complete examples & intro to JSON Schema (#389) by @heitorlessa
- docs: introduce event handlers utility section (#388) by @heitorlessa
- docs: Fix doc links and line highlights (#380) by @michaelbrewer
- docs: enable versioning feature (#374) by @heitorlessa
π Bug and hot fixes
- fix: lock X-Ray SDK to 2.6.0 due to regression (#384) by @heitorlessa
- fix(idempotent): Correctly raise IdempotencyKeyError (#378) by @michaelbrewer
- fix(parser): S3Model support empty keys (#375) by @heitorlessa
- fix(metrics): AttributeError raised by MetricManager and Typing and docs (#357) by @michaelbrewer
π§ Internal
- fix: downgrade poetry to 1.1.4 (#385) by @heitorlessa
- build(pre-commit): Add pre-commit to
make pr
(#368) by @michaelbrewer
This release was made possible by the following contributors:
@heitorlessa, @michaelbrewer, @risenberg-cyberark and @rtrive
Discussion: #394