v0.27.0
·
845 commits
to main
since this release
Booster v0.27.0
New query filters
It is possible to filter read model queries using the isDefined
keyword. isDefined
will return a boolean indicating whether the property has a value assigned or not. Example:
query {
CartReadModels(filter: { price: { isDefined: true }) {
id
price
itemsIds
}
}
Migrations
A proof of concept has been enabled to migrate events and entities. This functionality may change in the future.
Global error handler
Booster includes a global error handler annotation @GlobalErrorHandler that will catch all errors that are thrown by:
- CommandHandlerErrors: Errors thrown by the handle method of the command. Program Handling Errors: Errors thrown by the handle method of the scheduled command. Event handling errors: Errors thrown by the handle method of the event.
- Reducer errors: Errors thrown by the @reduces method of the entity.
- Projection errors: Errors thrown by the ReadModel @Projects method.
- All errors: Errors thrown in any of the previous methods. This method will always be called, also when calling any of the above methods.
Scheduling commands
Scheduling commands are now available for the Local Provider. It is compatible with other scheduling commands supported by AWS and Azure providers.
What's Changed
- Add isDefined filter for Local, Azure and AWS Providers by @gonzalogarciajaubert in #1056
- Enable migration annotation for entities and events by @gonzalogarciajaubert in #1055
- Add GlobalErrorHandler by @gonzalogarciajaubert in #1049
- Add Scheduled Commands for Local Provider by @gonzalogarciajaubert in #1058
Full Changelog: v0.26.13...v0.27.0