athena v0.11.0 Release Notes
Release Date: 2020-10-17 // over 2 years ago-
๐ New Dependencies
โ Additions
- โ integrates Athena::Validator into
Athena
- Provides a robust and flexible validation framework
- See the API Docs for more information
- ๐ Support user defined annotation configurations
- Allows applying/accessing custom annotations to controllers and/or action methods
- See ART::Events::RequestAware for more information
- โ Adds a new ART::Events::Action event that is emitted after the
Request
event, but before the action is executed- Useful for listeners that require information about the resolved route, such as reading custom annotation configurations
- โ Adds a setter for the
action_result
property within the ART::Events::View event- Allows listeners to override the return value of the related controller action, such as for pagination
- โ Adds a wiki
- Contains a cookbook that includes various types, such as event listeners, param converters, and exclusion strategies that may be useful to your project, but are too specific to be included in Athena itself
๐ Changes
- (breaking) Rename
HTTP::Request#route
toHTTP::Request#action
- โ integrates Athena::Validator into
Previous changes from v0.10.0
-
๐ New Dependencies
โฌ๏ธ Dependency Upgrades
โ Additions
- โ Add a startup log message
- Includes the host and port the server will be listening on
- โ Add a
POST
endpoint example to theGetting Started
documentation - โ Integrates Athena::Serializer into
Athena
- Supports enhanced (de)serialization features while retaining backwards compatibility with
JSON::Serializable
- See the API Docs for more information
- Supports enhanced (de)serialization features while retaining backwards compatibility with
- โ Adds support for Link, Unlink, and Custom
HTTP
verbs - โ Adds ART::View annotation to configures how the endpoint should be rendered, such as:
- The
HTTP::Status
response code - The serialization groups to use for this route as part of the Group serializer exclusion strategy
- If
nil
values should be serialized or not
- The
๐ Changes
- ๐ Renames
ART::Route
toART::Action
andART::Action
toART::ActionBase
- (breaking-change) Refactors the previous
ART::View
type to be an implementation detail- The controller action result within
ART::Events::View
is now accessed via.action_result
instead of.view.data
- The controller action result within
- โ Add a startup log message