{"push_id":1605099885,"size":1,"distinct_size":1,"ref":"refs/heads/thrift_0.10.0","head":"a025784419716cdc072fcfd9087a66ee5b00b588","before":"27001c3b5d2de063ceced4145ba8ce372cd6c0c3","commits":[{"sha":"a025784419716cdc072fcfd9087a66ee5b00b588","author":{"name":"Trustin Lee","email":"040b30789c62a3676929a311f5b2b3182d3a4c09@linecorp.com"},"message":"Support Thrift 0.9.3 and 0.10.0\n\nMotivation:\n\nThrift 0.10.0 has been released with some breaking changes. We should\nsupport both Thrift 0.9 and 0.10 until majority of our users finishes\nmigration.\n\nModifications:\n\n- Make 'armeria-thrift' depend on libthrift 0.10.0\n  - Use `TBase<?, ?>` because of the type parameter signature changes of\n    TBase in 0.10.0\n  - Decode TApplicationException using internal.thrift.TApplicationExceptions\n    to work around the API breakage in TApplicationException.read()\n    between 0.9.3 and 0.10.0\n  - Add a few utility methods to ThriftFieldAccess\n- Add a new project 'armeria-thrift0.9' that depends on libthrift 0.9.3\n  - It does not contain any Java source code. It uses the source code\n    from the 'armeria-thrift' project, only resulting different byte\n    code due to the ABI compatibility issues between 0.9 and 0.10.\n  - It contains Thrift source files because we replaced 'byte' with 'i8'\n    in 'armeria-thrift' and Thrift 0.9 does not recognize 'i8'.\n- Remove the dependency to 'armeria-thrift' from 'armeria-kafka'\n\nResult:\n\n- A user can choose between Thrift 0.9 and 0.10 by depending on\n  'armeria-thrift0.9' or 'armeria-thrift'.\n- Fixes #387","distinct":true,"url":"https://api.github.com/repos/trustin/armeria/commits/a025784419716cdc072fcfd9087a66ee5b00b588"}]}
{"actor":{"display_login":"trustin"}}