You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Graham Leggett <mi...@sharp.fm> on 2001/05/05 13:45:37 UTC

Rollup such a good idea? (was: Apache rollup tree)

Greg Stein wrote:

> Instead, you release an httpd. *THEN* the modules ensure they work with
> *that* released version. The modules have a solid, fixed target to shoot
> for. *THEN* you release a rollup.

I am not convinced any more that keeping modules like proxy and rewrite
separate is a good idea.

The main reason is the commit that happened an hour or so ago, fixing
problems with the way readbytes and ap_get_brigade() was implemented.
This fix touches mod_proxy in addition to the other bits that were
changed, but because mod_proxy is currently outside the tree, the fix
was not applied there. It was up to me to notice that fix among reams
and reams of commits, and then separately make the change and commit.
More work, less stability. Yuck.

All the other modules that are separated from Apache are done so for a
good and specific reason:

- APR, APR-util - these modules have application as standalone
libraries.

- mod_perl - is effectively glue code between perl and Apache, and has
special build requirements.

- mod_jserv / Java - effectively glue code between Java and Apache, has
special build requirements.

- mod_ssl - seperate due to legal issues. These issues are now resolved,
so it's now integrated.

So far the only reason mod_proxy was taken out the tree was because it
had fallen out of date and was causing build problems - both problems
have been fixed.

The proxy code does not work without Apache. It has no special build
requirements, nor does it need any special libraries. The code belongs
to the ASF, as does httpd-core. The module implements a stable feature
set based on a stable spec (RFC1616) and thus could be quite static
without problems. Keeping the module separate has no advantages that I
can see. 

Putting the proxy back in the tree was put to a vote not so long ago,
and there were a whole lot of +1's and some +0's. The only thing holding
up the implementation of this is that people hoped that in the long
thread that ensued that a better idea would emerge for what to do with
modules like proxy and rewrite. I maintain that the best idea is the
original idea - put it back in the tree.

Regards,
Graham
-- 
-----------------------------------------
minfrin@sharp.fm		"There's a moon
					over Bourbon Street
						tonight..."

Re: Rollup such a good idea? (was: Apache rollup tree)

Posted by Chuck Murcko <ch...@topsail.org>.
Graham, the problem of incremental breakage and synchronization isn't 
new (ask Doug M. 8^), and it's the extra work that I pointed out when we 
were talking about the a) b) c) d) choices for reintegrating the proxy.

The key idea is that when integration happens, httpd is *not* a moving 
target (unlike right now, when we're still in a development cycle). It's 
released, and may not be changed by subprojects during integration 
unless there's some really compelling reason (and that has to be bad 
enough to force an httpd rerelease, a massive security hole or 
something). Subprojects need to get any required core changes approved 
and in before they integrate, and more importantly before httpd 
releases, or they're out of luck until next httpd release. You have to 
force the targets to stop moving, or the release process can degenerate 
to thrash.

Httpd is getting huge when you count all the support projects it 
includes. I think we're moving in the wrong direction keeping it as a 
monolithic release. My opinion has changed in the opposite way yours 
has, from thinking mod_proxy needed to be in the core to thinking both 
it and httpd are better off with a 2 stage release process. This still 
yields a final httpd release and a final rollup release, avoiding a 
bunch of releases to confuse people. You get a barebones server package 
or a loaded one (the rollup). The latter is what we currently call a 
release.

On Saturday, May 5, 2001, at 07:45 AM, Graham Leggett wrote:

> Greg Stein wrote:
>
>> Instead, you release an httpd. *THEN* the modules ensure they work with
>> *that* released version. The modules have a solid, fixed target to 
>> shoot
>> for. *THEN* you release a rollup.
>
> I am not convinced any more that keeping modules like proxy and rewrite
> separate is a good idea.
>
> The main reason is the commit that happened an hour or so ago, fixing
> problems with the way readbytes and ap_get_brigade() was implemented.
> This fix touches mod_proxy in addition to the other bits that were
> changed, but because mod_proxy is currently outside the tree, the fix
> was not applied there. It was up to me to notice that fix among reams
> and reams of commits, and then separately make the change and commit.
> More work, less stability. Yuck.
>
> All the other modules that are separated from Apache are done so for a
> good and specific reason:
>
> - APR, APR-util - these modules have application as standalone
> libraries.
>
> - mod_perl - is effectively glue code between perl and Apache, and has
> special build requirements.
>
> - mod_jserv / Java - effectively glue code between Java and Apache, has
> special build requirements.
>
> - mod_ssl - seperate due to legal issues. These issues are now resolved,
> so it's now integrated.
>
> So far the only reason mod_proxy was taken out the tree was because it
> had fallen out of date and was causing build problems - both problems
> have been fixed.
>
> The proxy code does not work without Apache. It has no special build
> requirements, nor does it need any special libraries. The code belongs
> to the ASF, as does httpd-core. The module implements a stable feature
> set based on a stable spec (RFC1616) and thus could be quite static
> without problems. Keeping the module separate has no advantages that I
> can see.
>
> Putting the proxy back in the tree was put to a vote not so long ago,
> and there were a whole lot of +1's and some +0's. The only thing holding
> up the implementation of this is that people hoped that in the long
> thread that ensued that a better idea would emerge for what to do with
> modules like proxy and rewrite. I maintain that the best idea is the
> original idea - put it back in the tree.
>
> Regards,
> Graham
> --
> -----------------------------------------
> minfrin@sharp.fm		"There's a moon
> 					over Bourbon Street
> 						tonight..."
>

Chuck Murcko
Topsail Group
http://www.topsail.org/