thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Can Celasun (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (THRIFT-4261) Go context generation issue: breaking change in generated code regarding thrift.TProcessorFunction interface
Date Wed, 26 Jul 2017 08:51:01 GMT

    [ https://issues.apache.org/jira/browse/THRIFT-4261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16101360#comment-16101360
] 

Can Celasun commented on THRIFT-4261:
-------------------------------------

Also, I'd like to mention that 0.9.3 was tagged almost 2 years ago and there has been 700+
commits to thrift since then. Using *that* compiler with a library from _master_ is NOT something
that should be supported.

> 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
>          Components: Go - Compiler, Go - Library
>         Environment: generated code for Golang
>            Reporter: Yicheng Qin
>            Assignee: taozle
>
> 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)

Mime
View raw message