github AVSystem/scala-commons v1.30.0

latest releases: v2.15.0, v2.14.0, v2.13.3...
5 years ago

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

Don't miss a new scala-commons release

NewReleases is sending notifications on new releases.