v1.32.0
Changes in RPC/ADT macro engines:
@reifyEncodedAnnot
removed, allowed@composite
parameters to be@optional
instead- introduced
@reifyDefaultValue
for reifying Scala-level default values of case class fields - introduced
overloadedOnly
flag for@rpcNamePrefix
which causes it to be used only for overloads of RPC methods - introduced
ImplicitNotFound
typeclass for customizing implicit-not-found compilation errors for arbitrary types
REST framework:
- support for headers in HTTP responses (requires custom serialization to
RestResponse
) - automatic handling of
HEAD
andOPTIONS
requests operationId
in generatedOperation
objects now defaults to RPC methods plain name, without the HTTP method prefix (e.g.soSomething
instead ofpost_doSomething
) unless the method is overloaded.- nicer compilation error messages for various missing REST-related implicits
@operationIdPrefix
annotation for prefix methods- operation adjusters can now be specified for prefix methods - will apply to all operations under a prefix method
- introduced new type of adjuster:
PathItemAdjuster
for adjusting OpenAPIPathItem
objects - introduced new adjuster annotations:
@operationId
,@nullable
,@tags
,@bodyDescription
,@responseDescription
,@pathDescription
,@summary
,@pathSummary
,@title
,@schemaDescription
- configurable async context timeout and buffer size for Jetty-based client & server
- OpenAPI generation now accepts predefined Components
- various minor fixes and improvements
GenCodec
:
- compilation errors raised for missing dependencies are positioned on case class parameters which cause these errors
GenCodec.Auto
removed