[ https://issues.apache.org/jira/browse/THRIFT-2628?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anthony Molinaro reopened THRIFT-2628: -------------------------------------- Breaking backwards compatibility in this way is unacceptable. I have tons of production erlang code which would have to be changed if this remains as is. Why didn't this happen the way I suggested with an option for mixed_case. I think I might have mostly made it through that change. I'll dig around and see what I have, but breaking backwards compatibility is really bad. > erlang: struct member name conflicts due to lowercased names > ------------------------------------------------------------ > > Key: THRIFT-2628 > URL: https://issues.apache.org/jira/browse/THRIFT-2628 > Project: Thrift > Issue Type: Bug > Components: Erlang - Compiler, Erlang - Library > Reporter: alisdair sullivan > Assignee: Roger Meier > Labels: erlang > Fix For: 0.9.2 > > > the erlang backend generates records to represent structs. instead of the > unique sequential id they use the struct field name as the record keys. > records in erlang do not support repeated keys so generated erlang modules do > not compile > the most obvious fix is to refuse to generate code from structs with repeated > keys but this means the erlang backend is not capable of handling all valid > structs > the easiest fix is to switch structs to use the unique sequential ids as the > keys of the record but this breaks backwards compatibility and probably > necessitates generating helper functions to retrieve fields by name > also possible is switching to an erlang data structure that supports repeated > keys but this would also require breaking backwards compatibility -- This message was sent by Atlassian JIRA (v6.2#6252)