Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-292

contrib/fb303 needs removal or cleanup

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.1
    • Component/s: None
    • Labels:
      None

      Description

      The contrib/fb303 needs to be removed, or it needs to be updated to match Apache guidelines.

      In addition, there are generated artifacts which should be removed from source control. At least: fb303/py/, fb303/php/, and fb303/java/.

        Activity

        Hide
        gstein Greg Stein added a comment -

        Changing to Blocker. Cannot release or graduate without fixing this.

        Show
        gstein Greg Stein added a comment - Changing to Blocker. Cannot release or graduate without fixing this.
        Hide
        euphoria Michael Greene added a comment -

        Could you please describe the ways in which it needs to be updated to match Apache guidelines?

        Show
        euphoria Michael Greene added a comment - Could you please describe the ways in which it needs to be updated to match Apache guidelines?
        Hide
        gstein Greg Stein added a comment -

        I'm thinking of the IP stuff. Primarily, updating the headers with the appropriate licensing information.

        In essence, if the ASF distributes it, then it needs to be Apache code. The idea of "contrib" doesn't really make sense as a result, so this code would be more like an "example" or a working tutorial or something.

        Show
        gstein Greg Stein added a comment - I'm thinking of the IP stuff. Primarily, updating the headers with the appropriate licensing information. In essence, if the ASF distributes it, then it needs to be Apache code. The idea of "contrib" doesn't really make sense as a result, so this code would be more like an "example" or a working tutorial or something.
        Hide
        gstein Greg Stein added a comment -

        Some of the generated artifacts have been removed in r739384. I'm not entirely sure that I got them all – wanted to be safe.

        Leaving this open since I have not worked on the headers.

        Show
        gstein Greg Stein added a comment - Some of the generated artifacts have been removed in r739384. I'm not entirely sure that I got them all – wanted to be safe. Leaving this open since I have not worked on the headers.
        Hide
        agiardullo Anthony Giardullo added a comment -

        I agree that it is much cleaner to remove this generated code. However, the Makefiles now need to be changed in order to generate this code. Currently, fb303 does not build (it will complain that 'py/fb303' is not found). Even if I configure fb303 to generate the python code(ie --with-py), it will get generated in a different directory than the makefile expects.

        fb303 is a dependency for Scribe (https://sourceforge.net/projects/scribeserver/), so I would appreciate it if we can fix fb303 so that it builds successfully.

        Show
        agiardullo Anthony Giardullo added a comment - I agree that it is much cleaner to remove this generated code. However, the Makefiles now need to be changed in order to generate this code. Currently, fb303 does not build (it will complain that 'py/fb303' is not found). Even if I configure fb303 to generate the python code(ie --with-py), it will get generated in a different directory than the makefile expects. fb303 is a dependency for Scribe ( https://sourceforge.net/projects/scribeserver/ ), so I would appreciate it if we can fix fb303 so that it builds successfully.
        Hide
        gstein Greg Stein added a comment -

        Yup. Fair enough.

        I'd also like input on swiching this from a "contrib" concept to an "example". Particularly cuz of issues around "what does contrib really mean, if Apache stands behind everything it distributes?"

        Show
        gstein Greg Stein added a comment - Yup. Fair enough. I'd also like input on swiching this from a "contrib" concept to an "example". Particularly cuz of issues around "what does contrib really mean, if Apache stands behind everything it distributes?"
        Hide
        hammer Jeff Hammerbacher added a comment -

        Hey Greg,

        The Hadoop project uses the contrib/ folder pretty successfully, and fb303 seems to be in a similar spirit to some of the Hadoop contrib projects. I'm happy with the status quo, especially because fb303 is less of an example and more of a core component to other Thrift services.

        Later,
        Jeff

        Show
        hammer Jeff Hammerbacher added a comment - Hey Greg, The Hadoop project uses the contrib/ folder pretty successfully, and fb303 seems to be in a similar spirit to some of the Hadoop contrib projects. I'm happy with the status quo, especially because fb303 is less of an example and more of a core component to other Thrift services. Later, Jeff
        Hide
        euphoria Michael Greene added a comment -

        Judging by the way other Apache projects are using those terms, e.g.
        http://svn.apache.org/repos/asf/hadoop/core/trunk/src/contrib/
        http://svn.apache.org/repos/asf/tapestry/tapestry4/trunk/tapestry-contrib/

        http://svn.apache.org/repos/asf/incubator/ivy/core/trunk/src/example/
        http://svn.apache.org/repos/asf/tomcat/trunk/webapps/examples/
        http://svn.apache.org/repos/asf/tapestry/tapestry4/trunk/tapestry-examples/

        It looks like the connotation behind "contrib" is a contributed project that can be incorporated into your own projects, built on top of the base Apache project – whereas the connotation behind "example" is something to get you started using the base Apache project, but intended as a learning device more than to be incorporated in its entirety.

        I think fb303 fits the the first description better, but I may be reading contrib/example wrong.

        Show
        euphoria Michael Greene added a comment - Judging by the way other Apache projects are using those terms, e.g. http://svn.apache.org/repos/asf/hadoop/core/trunk/src/contrib/ http://svn.apache.org/repos/asf/tapestry/tapestry4/trunk/tapestry-contrib/ http://svn.apache.org/repos/asf/incubator/ivy/core/trunk/src/example/ http://svn.apache.org/repos/asf/tomcat/trunk/webapps/examples/ http://svn.apache.org/repos/asf/tapestry/tapestry4/trunk/tapestry-examples/ It looks like the connotation behind "contrib" is a contributed project that can be incorporated into your own projects, built on top of the base Apache project – whereas the connotation behind "example" is something to get you started using the base Apache project, but intended as a learning device more than to be incorporated in its entirety. I think fb303 fits the the first description better, but I may be reading contrib/example wrong.
        Hide
        dreiss David Reiss added a comment -

        Hey Anthony. I needed to apply all of these changes to get fb303 to build and install cleanly and to get scribe to build. Are you okay if we check these in?

        Show
        dreiss David Reiss added a comment - Hey Anthony. I needed to apply all of these changes to get fb303 to build and install cleanly and to get scribe to build. Are you okay if we check these in?
        Hide
        agiardullo Anthony Giardullo added a comment -

        Looks good. Thanks!

        Show
        agiardullo Anthony Giardullo added a comment - Looks good. Thanks!
        Hide
        scorona Steve Corona added a comment -

        FYI- In order to get fb303 to compile from the trunk, I had to comment out #include "thrift/if/reflection_limited.thrift" from fb303.thrift and s/facebook/apache/g in the cpp folder.

        Show
        scorona Steve Corona added a comment - FYI- In order to get fb303 to compile from the trunk, I had to comment out #include "thrift/if/reflection_limited.thrift" from fb303.thrift and s/facebook/apache/g in the cpp folder.
        Hide
        bryanduxbury Bryan Duxbury added a comment -

        What's the status on this issue? Can we apply the patches and close?

        Show
        bryanduxbury Bryan Duxbury added a comment - What's the status on this issue? Can we apply the patches and close?
        Hide
        dreiss David Reiss added a comment -

        I committed all of mine. I'm not sure what other "clean up" people think is necessary.

        Show
        dreiss David Reiss added a comment - I committed all of mine. I'm not sure what other "clean up" people think is necessary.
        Hide
        bryanduxbury Bryan Duxbury added a comment -

        Can Greg weigh in on whether this issue is resolved then?

        Show
        bryanduxbury Bryan Duxbury added a comment - Can Greg weigh in on whether this issue is resolved then?
        Hide
        bryanduxbury Bryan Duxbury added a comment -

        If we don't hear from Greg by end of day today, I'm closing this issue.

        Show
        bryanduxbury Bryan Duxbury added a comment - If we don't hear from Greg by end of day today, I'm closing this issue.

          People

          • Assignee:
            dreiss David Reiss
            Reporter:
            gstein Greg Stein
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development