Bug 52322 - Providing BBC developed httpd modules for inclusion in the standard distribution.
Summary: Providing BBC developed httpd modules for inclusion in the standard distribut...
Status: NEEDINFO
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: Other Modules (show other bugs)
Version: 2.5-HEAD
Hardware: PC All
: P2 enhancement (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-13 11:03 UTC by Simon Lucy
Modified: 2012-03-28 06:24 UTC (History)
1 user (show)



Attachments
tar of BBC module contributions, mod_firehose, firehose, mod_combine, mod_policy (288.00 KB, application/octet-stream)
2011-12-13 11:03 UTC, Simon Lucy
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Lucy 2011-12-13 11:03:16 UTC
Created attachment 28068 [details]
tar of BBC module contributions, mod_firehose, firehose, mod_combine, mod_policy

Over the past few years the BBC (British Broadcasting Corporation) has developed a set of modules which it uses as part of its standard httpd configuration.  The BBC would like to contribute a number of modules which are of generic use and which could form part of the standard distribution.  Apart from helping to fulfill the BBC's public service remit it will also allow other eyes to improve and develop the modules if needed.

The three modules in this contribution are:
mod_firehose and firehose
mod_firehose reflects original requests over a pipe and allows them to be recorded on demand on a remote machine which means that local disk resources are not required.

mod_combine
mod_combine is an aggregator of static files such as css and javascript to combine files of the same type and eliminate duplicates.

mod_policy
mod_policy is a filter to enforce policies such as cacheing rules and the standard use of headers.

Each individual directory within the tar includes a README which should cover the purpose and use of each module.
Comment 1 Nick Kew 2011-12-13 11:39:40 UTC
These would of course have to be discussed on the public dev list, with a view to possible inclusion in a future release (which is extremely unlikely to be 2.2).

At a glance, licensing is right, documentation is far from right, and code could use some tidying.
Comment 2 William A. Rowe Jr. 2011-12-13 17:53:44 UTC
Shouldn't this be three bugs, since each is distinct?  (This could become a
parent ticket, of course).
Comment 3 Simon Lucy 2011-12-19 15:23:11 UTC
Yes, the original reason for making it one rather than three is that its a single  BBC ticket.

mod_firehose has been accepted http://httpd.apache.org/docs/trunk/mod/mod_firehose.html
Comment 4 William A. Rowe Jr. 2012-02-29 06:55:09 UTC
I don't really want to take this discussion to the bug tracker, however
it's necessary correct your misstatement (or at least, premature statement);

"mod_firehose has been accepted"

That code will be reverted in the coming days, because an IP clearance form
was not properly routed, and the destination to which it was committed was 
not acceptable to the community.

The committer in this case persistently failed to honor their own proposal 
to incubate these as distinct sub-projects, so at this point the code 
submission is in a state of limbo, with an active veto over the manner
in which it was contributed.

Hopefully that individual will correct their error, tender the contribution 
as initially proposed, including the correct code grant paperwork to the
secretary@apache.org, IP clearance through general@incubator.apache.org 
and creation of three sub-projects (similar to mod_mbox, mod_fcgid etc).
Comment 5 Simon Lucy 2012-02-29 10:52:25 UTC
Well you just did take the discussion to the bug.
As I'm not party to any such discussion or even aware that there was a problem I'm afraid that this just looks like typical Apache nonsense.

These are apache modules, they don't warrant I believe an incubation project.  The BBC is even willing to donate the IP of this code if that makes it simpler but to be honest this dog in the manger attitude is just another example of why it is extremely difficult to get corporations to take Apache seriously at this point.

Now if there are practical steps to take please detail them with at least some evidence of authority in making those steps a requirement.
Comment 6 William A. Rowe Jr. 2012-02-29 15:09:30 UTC
To clarify, donation of the IP is *not* necessary.  All that is needed is the 
licensing under the AL.  The process is here;

http://incubator.apache.org/ip-clearance/index.html

and here is one example of how this played out for a particular submission;

http://incubator.apache.org/ip-clearance/httpd-mod_fcgid.html

The license agreement to explicitly assign the ASF the license to these works
would be here;

http://www.apache.org/licenses/software-grant.txt

To further correct your misunderstanding, "dog in the manger" is not the issue 
here.  There are hundreds of add-in modules for Apache httpd.  Very few become
'core' modules in the primary distribution.  Some dozen or so are also from
the ASF (from httpd, tomcat, perl and other projects) and available as separate 
packages/releases.  This is not for lack of (or disrespect for) user interest.

In fact, the subprojects at httpd were initially created for edge cases which
didn't have broad appeal, perhaps, but enjoy a narrow and active audience.
Code is only entertained in core upon broad acceptance by the -developers- of
Apache httpd, not so much its user audience, because those developers assume
responsibility for the code.  Primary antibodies in the process exist to target
'code dumps', wherein lines of code is dumped into a project without maintainers
to follow through, and insufficient interest/attention of the other developers.
Subprojects provide a channel for interested users to adopt modules very early
in their ASF-lifespan, attract patches and improvements, and demonstrate that
a group of maintainers has been established.

The actual discussion of accepting these three submissions needs to return to
dev@, I simply needed to correct your misunderstanding in comment #3, that this
donation was not yet executed appropriately and therefore not yet accepted.
Comment 7 Simon Lucy 2012-03-01 09:47:08 UTC
The 'dog in the manger' was in relation to the tenor and lack of content other than rejection in your comment.

All it takes is simple exposition of what is needed, something I understand that Apache as a whole finds difficult to follow.

As for my remark about acceptance being premature I imagine the existence of the documentation at that link somehow confused me.
Comment 8 William A. Rowe Jr. 2012-03-02 04:47:38 UTC
It appears we have consensus on handling of mod_firehose, the vote continues another 2.5 days.  I'll submit clarified votes over the next two days on mod_policy, followed by mod_combine, with updates to this ticket as each is
approved (or not).

Roy Fielding confirms that the code grant process is NOT necessary per his 
interaction with the legal committee, as the project's former chair.  There
appears to be no further issue other than clarifying that each of these three
modules are independently accepted as either modules or subprojects of httpd,
or not, and committing the code into the agreed-upon repository.
Comment 9 Sam Ruby 2012-03-02 18:41:34 UTC
(In reply to comment #8)
> 
> Roy Fielding confirms that the code grant process is NOT necessary per his 
> interaction with the legal committee, as the project's former chair.

Speaking as the current VP, Legal Affairs, a code grant is the preferred way of handling such situations; that being said I will confirm that an ICLA is sufficient IF the PMC is prepared to demonstrate that the conditions under sections 7 of the Individual Contributor License Agreement ("Agreement") V2.0 have been satisfied, and that the terms specified are acceptable to the Foundation:

http://www.apache.org/licenses/icla.txt
Comment 10 Graham Leggett 2012-03-05 19:45:49 UTC
Sam, can you confirm for me that the following notices in the source are sufficient? The code for both is licensed under the ASL:

https://svn.apache.org/repos/asf/httpd/httpd/trunk/modules/test/mod_policy.c

/*
 * Originally written @ BBC by Graham Leggett
 * (C) 2011 British Broadcasting Corporation
 */

https://svn.apache.org/repos/asf/httpd/httpd/trunk/modules/debugging/mod_firehose.c

/*
 * Originally written @ Covalent by Jim Jagielski
 * Modified to support writing to non blocking pipes @ BBC by Graham Leggett
 * Modifications (C) 2011 British Broadcasting Corporation
 */
Comment 11 William A. Rowe Jr. 2012-03-08 00:22:22 UTC
Sam, please comment on comment #10 (added you to cc on this ticket).

Graham, you claim all of this code is your own creation (at the BBC) and not
a broader effort including other (non-committer) BBC employees?  That is what
your copyright banner states and if so, I believe Sam's concern on 7. should
be satisfied.
Comment 12 Simon Lucy 2012-03-09 09:54:08 UTC
Actually the (c) notice is the British Broadcasting Corporation, I can confirm (as the responsible manager) that the portions of code relevant to the solution written for the BBC was undertaken solely by Graham under contract to the BBC.
Comment 13 William A. Rowe Jr. 2012-03-26 21:02:57 UTC
Sam,

the project voted to accept two of the three submitted modules for inclusion at 
the httpd project; firehose and policy.  The combine module was not accepted.

Graham and Simon reply, and ask if their responses address all of your concerns 
as VP, legal.  Please advise us this week.

We'll go on the presumption that no further word from you means that your 
concerns were asked-and-answered already by Graham and Simon.
Comment 14 William A. Rowe Jr. 2012-03-28 06:24:41 UTC
I am marking this for closure as needinfo.

The firehose and policy modules were voted for acceptance and the combine
module was rejected.

Either Graham has further comments vis a vie importing the policy module,
or Sam has comments on IP clearance.  If nobody has comments in the coming
week, this ticket should be closed.  We use the issue tracker for reporting
defects and limited enhancement requests, but not for operations.

Thanks all.