Skip to content

Thrifty 1.0.0, Release Candidate 1

Pre-release
Pre-release
Compare
Choose a tag to compare
@benjamin-bader benjamin-bader released this 16 Aug 00:49
· 245 commits to master since this release

This release sees most of the compiler rewritten in Kotlin, and the addition of Kotlin codegen. A host of bugfixes and smaller features accompanies.

As the version number implies, this is an API-breaking update. Users of existing generated code shouldn't see any issues, but those building against the compiler's APIs (e.g. thrifty-schema) will find that they are broken.

BREAK:

  • thrifty-schema extensively reworked into idiomatic Kotlin.
  • ThriftException is now unchecked, and generated Adapters do not declare that they throw it.
  • Deprecated Loader methods accepting java.io.File are removed.

Add:

  • Kotlin codegen! Including both callback- and coroutine-based RPC clients.
  • Java builders now have nullability annotations
  • Java union fields are now @Nullable

Fix:

  • FramedTransport now works properly for reads spanning more than one frame
  • ClientBase now properly reads messageEnd
  • Validation of double consts is fixed (thanks, @jparise)
  • Codegen for map-of-enums fields is fixed (thanks, @jparise)
  • Include-path scanning fixed when no individual .thrift files are given (thanks, @hzsweers)