You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Yicheng Qin (JIRA)" <ji...@apache.org> on 2017/07/25 19:43:00 UTC

[jira] [Created] (THRIFT-4261) Go context generation issue: breaking change in generated code regarding thrift.TProcessorFunction interface

Yicheng Qin created THRIFT-4261:
-----------------------------------

             Summary: Go context generation issue: breaking change in generated code regarding thrift.TProcessorFunction interface
                 Key: THRIFT-4261
                 URL: https://issues.apache.org/jira/browse/THRIFT-4261
             Project: Thrift
          Issue Type: Bug
         Environment: generated code for Golang
            Reporter: Yicheng Qin


I observe the breaking change in `thrift.TProcessorFunction` interface that adds a `Context` parameter, and corresponded breaking change in the generated client code.

So the generated code from v0.9 thrift compiler can no longer run with the master thrift library.

I understand you expect that we should use the same version of compiler and library for the same repository. But this is super hard in reality:
1. Lots of repos store the generated code, e.g., https://github.com/uber/jaeger-client-go/blob/master/thrift-gen/jaeger/agent.go . So it could use either old interface or new interface.
2. Go projects always use `glide` as version management, which uses single version for one library across the repository. If one dep relies on old interface, and one dep relies on new interface, the project will totally break.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)