Skip to content

v1.30.0

Compare
Choose a tag to compare
@ghik ghik released this 14 Sep 13:09
· 1937 commits to master since this release
1301708

Changes in REST framework:

  • Added support for OpenAPI 3.0 specification generation
  • DefaultRestApiCompanion and DefaultRestServerApiCompanion require materialization of OpenApiMetadata which requires RestSchema instances for data types used in REST API traits.
  • 204 No Content status code is used for empty responses instead of 200 OK.

Changes in RPC macro engine:

  • introduced metadata generation for ADTs (algebraic data types)
  • extracted common RPC & ADT meta-annotations to meta package from rpc 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 in JsonFormatting object, added afterColon formatting option
  • commons-annotations module now depends on commons-macros
  • JSON serialization improvements by @plokhotnyuk - #83
  • various new extension methods in SharedExtensions