v1.32.0
Changes in RPC/ADT macro engines:
@reifyEncodedAnnotremoved, allowed@compositeparameters to be@optionalinstead- introduced
@reifyDefaultValuefor reifying Scala-level default values of case class fields - introduced
overloadedOnlyflag for@rpcNamePrefixwhich causes it to be used only for overloads of RPC methods - introduced
ImplicitNotFoundtypeclass 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
HEADandOPTIONSrequests operationIdin generatedOperationobjects now defaults to RPC methods plain name, without the HTTP method prefix (e.g.soSomethinginstead ofpost_doSomething) unless the method is overloaded.- nicer compilation error messages for various missing REST-related implicits
@operationIdPrefixannotation 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:
PathItemAdjusterfor adjusting OpenAPIPathItemobjects - 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.Autoremoved