[ https://issues.apache.org/jira/browse/THRIFT-2835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14546688#comment-14546688 ]
ASF GitHub Bot commented on THRIFT-2835: ---------------------------------------- Github user nsuke commented on the pull request: https://github.com/apache/thrift/pull/368#issuecomment-102608115 I rebased it to the current master. The original first commit is extracted as THRIFT-3138 (ef0a8fa62a8a86b23999f9a9ad31478852474854) because it was an unrelated issue. The other commit remains strictly unchanged except that I had to resolve several trivial conflicts in build scripts. > Add possibility to distribute generators separately from thrift core, and > load them dynamically > ----------------------------------------------------------------------------------------------- > > Key: THRIFT-2835 > URL: https://issues.apache.org/jira/browse/THRIFT-2835 > Project: Thrift > Issue Type: New Feature > Components: Compiler (General) > Reporter: Anatol Pomozov > Labels: fbthrift > > It is a follow-up for discussion with Facebook's fbthrift > https://github.com/facebook/fbthrift/issues/48 > fbthrift adds its own generator that creates C++ classes based on their > libraries. I do not know how upstreamable this generator but I think other > companies would want to do the same - create their own custom generators. > Currently there is no way to distribute generators separately from the thrift > core. Thus the company have to fork whole project and add their own > generator. It is what Facebook did. > The idea is that thrift should be able to load language generators > dynamically. i.e. a company foo creates its own generator and puts it to > system /usr/lib/thrift/generators/cpp_foo.so When thrift compiler starts - it > checks /usr/lib/thrift/generators/ and uses dlopen() to load the shared > libraries. The shared library contains information about the generator (name, > options, ...) thus it allows thrift core to use this custom third-party > generator. > This allows companies to create and distribute generator will less pain and > no need to fork the project. -- This message was sent by Atlassian JIRA (v6.3.4#6332)