Thrifty v3.0.0 Release Notes
Release Date: 2021-08-07 // almost 2 years ago-
๐ The major update in this release is the transition of Thrifty from a Java project to a Kotlin Multiplatform project. Among other changes, one thing to note is that the runtime artifact
thrifty-runtime
now refers to an MPP artifact. The correct artifact to reference in your existing Android or Java projects isthrifty-runtime-jvm
.- ๐ BREAK: All support for
@Generated
annotations has been removed (#402) - BREAK: thrifty-runtime ported to Kotlin Multiplatform (#401)
- ๐ BREAK: thrifty-runtime-ktx is gone, and has been merged into thrifty-runtime (#397)
- BREAK: thrifty-runtime ported to Kotlin (#391)
- ๐ BREAK: Minimum supported JDK is now version 8 (#391)
- BREAK: Fields whose names are "soft" or "modifier" Kotlin keywords now have an underscore suffix (thanks @luqasn) (#446)
- โ Add Okio-based convenience APIs to thrifty-runtime (#408)
- โ Add big-enum mode to enable enums with large numbers of members (Thanks @shashachu) (#421)
- ๐ Change: Kotlin structs are builderless by default (#414)
- ๐ Change: Gradle plugin defaults to Kotlin (#442)
- ๐ Change: thrifty-compiler defaults to generating Kotlin (#451)
- ๐ Fix: Empty structs use literal class name for hashCode (#415)
- ๐ Fix:
Location
in thrifty-schema should always be an include root (#416) - ๐ Fix: Make
@JvmStatic
annotations opt-in (#417) - ๐ Fix: Including sibling .thrift files now works (#434)
- ๐ Fix: Unions with fields named
error
(thanks @luqasn) (#444)
- ๐ BREAK: All support for
Previous changes from v3.0.0-RC01
-
- ๐ BREAK: All support for
@Generated
annotations has been removed (#402) - ๐ BREAK: thrifty-runtime-ktx is gone, and has been merged into thrifty-runtime (#397)
- BREAK: thrifty-runtime ported to Kotlin (#391)
- ๐ BREAK: Minimum supported JDK is now version 8 (#391)
- BREAK: Fields whose names are "soft" or "modifier" Kotlin keywords now have an underscore suffix (thanks @luqasn) (#446)
- โ Add Okio-based convenience APIs to thrifty-runtime (#408)
- โ Add big-enum mode to enable enums with large numbers of members (Thanks @shashachu) (#421)
- ๐ Change: Kotlin structs are builderless by default (#414)
- ๐ Change: Gradle plugin defaults to Kotlin (#442)
- ๐ Change: thrifty-compiler defaults to generating Kotlin (#451)
- ๐ Fix: Empty structs use literal class name for hashCode (#415)
- ๐ Fix:
Location
in thrifty-schema should always be an include root (#416) - ๐ Fix: Make
@JvmStatic
annotations opt-in (#417) - ๐ Fix: Including sibling .thrift files now works (#434)
- ๐ Fix: Unions with fields named
error
(thanks @luqasn) (#444)
- ๐ BREAK: All support for