266 строки
12 KiB
Markdown
266 строки
12 KiB
Markdown
3.1.0 (released 13 December 2022)
|
|
------------------
|
|
- Add: Support default field values in struct-typed constants (#507)
|
|
- Add: Implement Java codegen for struct-typed constants (#503)
|
|
- Add: Sort constants in Schema by "dependency order" (#502)
|
|
- Add: Added `Constant#referencedConstants` list (#499)
|
|
- Add: new Gradle plugin support for TypeProcessors (#494)
|
|
- Change: Bump Okio to 3.2.0 (#510)
|
|
- Change: Bump Kotlin to 1.7.20 (#495)
|
|
- Fix: avoid afterEvaluate in thrifty-gradle-plugin (#492)
|
|
|
|
3.1.0-RC02 (released 7 June 2022)
|
|
------------------
|
|
- Add preliminary support for TypeProcessor plugins to thrifty-gradle-plugin (#490)
|
|
- Add "generated" comments to Kotlin files (thanks @shashachu) (#486)
|
|
- Add Kotlin codegen for struct-value constants (#482)
|
|
- Maybe break? Removed deprecated `@JvmDefault` annotations from thrifty-runtime (#481)
|
|
|
|
3.1.0-RC01 (released 13 April 2022)
|
|
------------------
|
|
- Add struct-valued constant validator to thirfty-schema (thanks @janarajan) (#467)
|
|
- Add server support (thanks @luqasn) (#447)
|
|
- Bump Kotlin to 1.6.20
|
|
|
|
3.0.0 (released 7 August 2021)
|
|
------------------
|
|
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 is `thrifty-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)
|
|
|
|
|
|
3.0.0-RC-2 (released 2 August 2021)
|
|
------------------
|
|
- Fix broken Maven publication
|
|
|
|
3.0.0-RC01 (released 21 June 2021)
|
|
------------------
|
|
- 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)
|
|
|
|
2.1.1 (released 13 July 2020)
|
|
------------------
|
|
- #369: Gradle plugin: Rename includeDir to includePath, customize outputDirectory
|
|
- #368: Fix infinite loop in FramedTransport#read on EOF (thanks @denisov-mikhail)
|
|
- #367: Gradle plugin: Add API to configure which specific thrift files are compiled
|
|
|
|
2.1.0 (released 9 June 2020)
|
|
------------------
|
|
- #362: Fix: Explicitly fail service calls on IOException or RuntimeException (thanks @amorozov)
|
|
- #357: Add --no-fail-on-default-enum-values (thanks @guptadeepanshu)
|
|
- #356: Add thrifty-gradle-plugin to compile thrifts in Gradle JVM projects
|
|
- #348: Change: Update okio from 1.14.1 to 2.6.0
|
|
- #332: Add --kt-emit-jvmname option (thanks @jparise)
|
|
- #330: Add --omit-service-clients option (thanks @jparise)
|
|
|
|
2.0.1 (released 4 May 2020)
|
|
------------------
|
|
Rebuild with JDK8, not JDK11
|
|
|
|
2.0.0 (released 28 April 2020, Quarantine Edition)
|
|
------------------
|
|
- #328: Fix: Print LoadFailedException cause on load failure (thanks @jparise)
|
|
- #326: Fix: Fix Java compilation with catch-all thrift namespaces (thanks @timvlaer)
|
|
- #317: Fix: Use UTF-8 for strings in SimpleJsonProtocol
|
|
|
|
2.0.0-RC1 (released 8 May 2019)
|
|
------------------
|
|
- #307: Support AndroidX nullability annotations (thanks, @DSteve595)
|
|
- #305: Show location of including file when included file is not found (thanks, @hzsweers)
|
|
- #300: Fail parsing when the parser terminates without reading the entire input
|
|
- #253: Use sealed types for unions in generated Kotlin code (thanks, @Zomzog)
|
|
- General: Represent Thrift unions with sealed types in Kotlin
|
|
- #273: Fix circular-include error messages
|
|
|
|
1.0.0 (released 2 November 2018)
|
|
------------------
|
|
- #259: Enable configurable `@Generated` annotation type
|
|
- #254: Update to Kotlin 1.3, update generated coroutine APIs to be non-experimental
|
|
- #250: Add `@NonNull` to struct builder's copy ctor (thanks, @jparise)
|
|
- #241: Add nullable annotation to gen'd `findByValue` methods (thanks, @jparise)
|
|
- #239: Fix: Canonicalize paths of all loaded thrift files
|
|
- #236: Only use base filename in constants' comments (thanks, @jparise)
|
|
|
|
1.0.0-RC2 (released 10 September 2018)
|
|
------------------
|
|
- #235: Emit `@Generated` annotations on generated types
|
|
- #234: Add '--omit-file-comments' compiler flag (thanks, @jparise)
|
|
- #232: Add synthetic "JVM" namespace scope (yet again, thanks @hzsweers)
|
|
- #231: Add "functional-equality" implementation for schemas (thanks, @hzsweers)
|
|
- #230: Add rendering tool for thrifty-schema (thanks, @hzsweers)
|
|
|
|
1.0.0-RC1 (released 15 August 2018)
|
|
------------------
|
|
- #225: Add Kotlin coroutine-based service client APIs
|
|
- #224: Fix ClientBase by adding missing call to protocol.readMessageEnd()
|
|
- #223: Fix FramedTransport reads over > 1 frame
|
|
- #217: Avoid scope collisions when reading map values (thanks again, @jparise!)
|
|
- #216: Fix const validation for doubles (thanks, @jparise)
|
|
- General: Broke thrifty-schema API in favor of idiomatic Kotlin
|
|
- #204: Remove deprecated java.io.File methods in Loader
|
|
- #183: Added Kotlin codegen
|
|
- #178: Fix: .thrift files in include paths during path scanning
|
|
- #165: Adopted Guava's case formatter for FieldNamingPolicy
|
|
- #164: Fixed nullability annotations for struct builders
|
|
- #161: Generate @Nullable annotations for union fields
|
|
|
|
0.4.3 (released 8 January 2018)
|
|
------------------
|
|
- #156: Add JSON protocol support
|
|
- #153: Fix reading bool value in CompactProtocol
|
|
- #152: Add UUID for distinguishing parsed elements from those modified via `newBuilder`
|
|
- #147: Enable synchronous service calls
|
|
|
|
0.4.2 (released 2 May 2017)
|
|
------------------
|
|
- #141: Add missing method EnumMember#toBuilder()
|
|
- #139: Fix crash when thrift doc comments had `$L` or other JavaPoet sigils
|
|
|
|
0.4.1 (released π 2017)
|
|
------------------
|
|
- #133: Fix IndexOutOfBoundsException parsing empty comments
|
|
|
|
0.4.0 (released 8 March 2017)
|
|
------------------
|
|
- #127: Add JaCoCo reports to the build
|
|
- #126: Update Gradle to 3.4.1m
|
|
- #124: Add ErrorProne checks to the build
|
|
- #121: Replace 'java' plugin with 'java-library-plugin'
|
|
- #119: Use java.nio.file.Path in the Loader API
|
|
- #117: Update Gradle to 3.4
|
|
- #116: Emit hex literals from Thrift as hex literals in Java
|
|
- #115: Start using the Stream API
|
|
- #114: Update Guava
|
|
- #110: Update compiler to Java 8
|
|
- #109: Suppress StringEquality and NumberEquality on gen'd equals() methods
|
|
- #108: Improve generated ThriftField annotations
|
|
- #107: Fix: throw ThriftException on reading unrecognized enum values
|
|
- #104: Rewrite parser with ANTLR
|
|
|
|
0.3.2 (released 11 February 2017)
|
|
------------------
|
|
- #98, #99, #100, #101, #102: Improvements to builder APIs in thrifty-schema (thanks, @hzsweers)
|
|
- #96: Add builders to collection ThriftTypes
|
|
- #90: Upgrade JavaPoet in thrifty-java-codegen to 1.8.0
|
|
- #88: Upgrade Okio in thrifty-runtime to 1.11.0
|
|
|
|
0.3.1 (released 13 November 2016)
|
|
------------------
|
|
- #82: Fix i64 constants greater than Integer.MAX_VALUE
|
|
- #78: Fix bug preventing string const values from generating correctly
|
|
|
|
0.3.0 (released 9 November 2016)
|
|
------------------
|
|
- #73: Breaking change: Massive refactor of `thrifty-schema`, unifying `ThriftType` with `Named`
|
|
- #74: Add `.withNamespaces` API for `ThriftType` (thanks @hzsweers)
|
|
- #72: Add namespaces for `TypedefType` (thanks @hzsweers)
|
|
- #71: Fix: Include `@Nullable` fields in `.equals()` (thanks @naturalwarren)
|
|
- #70: Behavior change: Allow typedefs to be used with `TypeResolver`
|
|
- #67: Fix: Improve validation of enum constants whose types are imported
|
|
- #65: Add `DecoratingProtocol` (thanks @gabrielittner)
|
|
- #62: Fix: Remove `name` from `Field#hashcode()`
|
|
- #61: Add builders for most `thrifty-schema` types (thanks @naturalwarren)
|
|
- #60: Fix: Const validation when a typedef is assigned an enum literal value
|
|
- #59: Fix: Allow constants and types with the same name
|
|
- #58: Behavior change: Obfuscated fields that are missing are printed as 'null'
|
|
- #56: Breaking change: Change return type of `ServiceMethod#returnType()`.
|
|
- #55: Add check for circular Service inheritance
|
|
- #54: Replace TreeSet with HashMap in service method validation
|
|
- #53: Fix: Apply naming policy to method parameter names
|
|
- #52: Fix: Crash when parsing certain trailing documentation comments
|
|
- #50: Add link-time validation of services and methods
|
|
- #48: Fix: keep annotations on type references
|
|
- #47: Use `.equals()` instead of reference equality for `ThriftType` comparision
|
|
- #43: Add source-type annotations to `Typedef`
|
|
- #42: Add `@Deprecated` annotation to generated classes as appropriate
|
|
- #40: Add `Struct` interface to generated structured types (thanks @seanabraham)
|
|
|
|
0.2.3 (released 8 July 2016)
|
|
------------------
|
|
- #37: Add Obfuscated and Redacted annotations, along with codegen support for PII obfuscation
|
|
- #36: Fix references to constants in default values for fields
|
|
- #31: Fix parsing `throws` clauses when `throws` is on a separate line
|
|
|
|
0.2.2 (released 30 March 2016)
|
|
------------------
|
|
- #26: Fix generated `toString()` for fields with `@redacted` doc comments
|
|
|
|
0.2.1 (released 29 March 2016)
|
|
------------------
|
|
- #25: Improve generated `toString()` methods
|
|
- #24: Add SimpleJsonProtocol
|
|
- #19: Fix codegen for services which inherit from other services
|
|
- #5: Fix compilation with relative includes (e.g. `include '../common.thrift'`)
|
|
- #7: Fix lookup of included constants during linking
|
|
- #4: Add automatic Parcelable implementation
|
|
- #2: Fix nested-generic fields with default values
|
|
|
|
0.2.0 (released 23 February 2016)
|
|
------------------
|
|
|
|
- Re-design `Transport` to not use Okio, avoid potential threading issues therein
|
|
|
|
0.1.4 (released 16 February 2016)
|
|
---------------------------------
|
|
|
|
- Fix new bug in generated 'toString'
|
|
|
|
0.1.3 (released 12 February 2016)
|
|
---------------------------------
|
|
|
|
- Alter generated 'toString' so that it outputs one single line
|
|
- Make '@redacted' annotation detection case-insensitive
|
|
|
|
0.1.2 (released 14 January 2016)
|
|
--------------------------------
|
|
|
|
- Demote AssertionError to ProtocolExeception in ProtocolUtil#skip() for unknown TType values.
|
|
|
|
0.1.1 (released 6 January 2016)
|
|
------------------
|
|
|
|
- Add CompactProtocol implementation
|
|
- Add integration test suite
|
|
- Add service-client code generation
|
|
- Add service-client runtime implementation
|
|
- Add ability to parse annotations in Thrift IDL
|
|
- Add `(redacted)` annotation for fields
|
|
|
|
|
|
0.1.0 (internal release)
|
|
------------------------
|
|
|
|
- Thrift IDL parser
|
|
- Thrift IDL model
|
|
- Java code generator
|
|
- Command-line compiler
|
|
- Generated structs, adapters, and BinaryProtocol
|