Skip to content

Kroto+ 0.1.3

Compare
Choose a tag to compare
@marcoferrer marcoferrer released this 13 Aug 12:26
· 108 commits to master since this release
c9e7c11

Version 0.1.3

  • 0.1.3 is a complete rewrite.
  • Most notable changes
    • Code compiler has been refactored into a protoc plugin.
    • User defined code generator scripts are now supported.
    • Previous cli compiler has been deprecated in favor of its protoc implementation

CHANGELOG

  • New: Updated Kotlin runtime to 1.2.60
  • New: Updated Coroutine version to 0.24.0
  • New: Updated Protobuf version to 3.6.1
  • New: Updated gRPC version to 1.14.0

Protoc Plugin

  • New: Converted Kroto+ to protoc plugin and implemented default generators

User Defined Code Generation Scripts

  • New: Allow users to define scripts to be used for adding content to Protoc insertion points
  • New: Allow users to define scripts for arbitrary code generation.
  • New: Support precompiled script jars as well as dynamic script compilation.

Proto Builders

  • New: Added unwrap option to declare builder extensions as top level members.
  • New: Builder generator now supports creating builders for nested message types
  • New: Builder generator now creates extensions for nested message field builders.
  • New: Added plus operator extensions for messages
  • Fix: Builder generator now explicitly sets the result type as non null.

Coroutines

  • New: Added GrpcContextContinuationInterceptor making the grpc context available during suspending service calls in coroutines

Mock Services

  • Deprecated: The ServiceBindingServerRule has been deprecated due to a change in the latest version of io.grpc:grpc-testing
  • New: Helper methods generated for clearing the response queue start in between tests.
  • New: Option added for creating and naming a collection of mock services for easier usage.
  • Fix: Moved generated response queue builders into Mock service file.

Extendable Messages (Experimental)

  • New: Generator added for creating extendable messages and inserting pseudo companion objects into java message classes.

Legacy Compiler

  • Fix: Changed visibility of cli arguments to internal
  • Fix: Removed usage of deprecated RpcBidiChannel in StubRpcOverloadGenerator

Gradle Plugin

  • Fix: Added missing dsl configuration builder for ProtoTypeBuildersGeneratorConfig
  • Fix: Configuration is no longer overridden when used in a multi project build
  • Fix: Gradle Kotlin DSL support added for generator configuration