v1.30.0
Changes in REST framework:
- Added support for OpenAPI 3.0 specification generation
DefaultRestApiCompanion
andDefaultRestServerApiCompanion
require materialization ofOpenApiMetadata
which requiresRestSchema
instances for data types used in REST API traits.204 No Content
status code is used for empty responses instead of200 OK
.
Changes in RPC macro engine:
- introduced metadata generation for ADTs (algebraic data types)
- extracted common RPC & ADT meta-annotations to
meta
package fromrpc
package and renamed some of them - RPC method declaration order is honored, first matching raw method is taken
@annotated[A]
filtering meta-annotation for RPC methods and parameters- metadata parameters now must always be annotated to tell the macro engine how to materialize them - introduced
@rpcMethodMetadata
,@rpcParamMetadata
,@adtCaseMetadata
and@adtParamMetadata
meta-annotations - metadata parameters now have limited support for sealed hierarchies of metadata classes
Other changes:
JsonOptions
now aggregates some of its fields inJsonFormatting
object, addedafterColon
formatting optioncommons-annotations
module now depends oncommons-macros
- JSON serialization improvements by @plokhotnyuk - #83
- various new extension methods in
SharedExtensions