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

Esteve Fernandez commented on THRIFT-301:
-----------------------------------------

I respectfully disagree here, Thrift hasn't made an official release since 
April last year and thus, it can't provide any API compatibility contract. In 
any case, I'd agree that maybe it could be postponed to a later release if 
there's consensus, but basing the decision to include it or not on whether it 
breaks the current API, is counterproductive and could hinder future 
developments.

This issue not only adds a new useful feature, but opens the door to other 
improvements (object interning, immutable objects, etc.) and I'd like to 
discuss this issue in terms of extending it to the other languages. "That other 
serialization library" (protocol buffers) already supports creating objects 
using factories, and I find it particularly useful, since messages (structs in 
Thrift) are immutable.

BTW, THRIFT-309, THRIFT-178, THRIFT-270, THRIFT-34, THRIFT-242 (just to name a 
few) all broke compatibility to some extend and got committed after all.

> Turn read() into a class method
> -------------------------------
>
>                 Key: THRIFT-301
>                 URL: https://issues.apache.org/jira/browse/THRIFT-301
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Compiler (Python), Library (Python)
>            Reporter: Esteve Fernandez
>         Attachments: thrift-301.patch, thrift-301_v2.patch, 
> thrift-301_v3.patch, thrift-301_v4.patch, thrift-301_v5.patch, 
> thrift-301_v6.patch
>
>
> Currently, the read() method is bound to each instance, but this makes 
> impossible to make structures immutable (see THRIFT-162). The following patch 
> changes the compiler to generate a class-bound read() method, it also updates 
> the fastbinary extension accordingly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to