| Apache 2.0 STATUS: |
| Last modified at [$Date: 1999/12/22 06:20:11 $] |
| |
| Release: |
| |
| Vague plan, assuming more features aren't demanded for the 2.0 release |
| 2.0a1/b1: January 2000 |
| 2.0 : later in 2000 |
| |
| RELEASE SHOWSTOPPERS: |
| |
| * Complete HAVE_SENDFILE work. Need to add iovec head and tail pointers to |
| the iol sendfile API and make it work under Unix. |
| Status: Bill <stoddard@raleigh.ibm.com> is working on this |
| |
| * Pipes to CGI scripts are not being timed out |
| Status: code has been added to APR to support timing out pipes. |
| This needs to be used in Apache now. |
| |
| * Put back resource limit code |
| |
| * Port mod_rewrite |
| Status: Paul Reder <rederpj@raleigh.ibm.com> is working on this. |
| |
| * suEXEC doesn't work |
| Status: Manoj has posted an patch to fix this. |
| <19991103003605.A20612@samosa.mindspring.com> |
| |
| * Windows NT port isn't done |
| Status: Bill <stoddard@raleigh.ibm.com> is working on MPM and APR. |
| Remaining work: |
| 1. Add back ability to run Apache as a service |
| 2. Fix Win9* specific code in the winnt MPM |
| 3. Test access logging with multiple threads. Will the native file I/O |
| calls serialize automagically like the CRT calls or do we need to |
| add region locking each time we write to the access/error logs? |
| 4. Fix the DOS hole in AcceptEx (need to time out connections over |
| which data is never sent). |
| |
| * Current 2.0 code is not tested on many Unix platforms. Make 2.0 |
| work on most, if not all the systems 1.3 did |
| Status: Autoconf and APR will get us most of the way there. |
| |
| * The module API is a weird combination of the old table and the new |
| hook system. Switch completely to the new hook system |
| Status: Ben Laurie is working on this. |
| |
| * Modules. Which modules do not work yet, can we get a list? |
| |
| * We need a thread-safe resolver, at least on Unix. |
| Status: The best known candidate would be something from BIND |
| (v8 or v9?) The only other option would be to mutex all the |
| resolver calls, |
| |
| RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP: |
| |
| * Clean the code. There are a lot of places we used APR but didn't |
| remove the hacks that were required for the cross-platform code in |
| 1.3. We need to make the code look like APR was supposed to be there. |
| |
| * Go throught the Bug DB and research the bugs marked "suspended". People |
| were told these would be considered for inclusion in Apache 2.0, it |
| would be nice to actually do so. |
| |
| * Win32: Migrate the MPM over to use APR thread/process calls. This |
| would eliminate some code in the Win32 branch that essentially |
| duplicates what is in APR. |
| Status: Bill <stoddard@raleigh.ibm.com> is working on this. |
| |
| * Move I/O layering into APR. |
| |
| * There are still a number of places in the code where we are |
| loosing error status (i.e. throwing away the error returned by a |
| system call and replacing it with a generic error code) |
| |
| * APRize the stat function. CRT stat() is about 30% slower on Windows than |
| the equivalent native Windows call. The APR call should return the Unix |
| style stat structure, just to keep it familier. |
| |
| * Implement reliable piped logs on Windows |
| Status: Bill <stoddard@raleigh.ibm.com> has prototype code (not |
| reliable) in 1.3. Should be much cleaner with APR in 2.0. |
| |
| * Switch to autoconf, et al. for configuration. |
| Status: Manoj has placed an initial version into the 2.0 |
| repository. Todos include: |
| |
| - "make install" should work |
| - a tool to simplfy third-party module building should be |
| written. Something like apxs |
| - Add a lot more checks to satisfy the various platforms, e.g. |
| for threading |
| |
| * Use APR to get rid of more platform dependancies. |
| Status: Ryan Bloom <rbb@raleigh.ibm.com> is working on this. |
| |
| * The connection status table is not very efficient. Also, very few stats |
| are exported to the connection status table (easy to fix), and mod_status |
| is ugly. |
| |
| Other bugs that need fixing: |
| |
| * MaxRequestsPerChild measures connections, not requests. |
| Until someone has a better way, we'll probably just rename it |
| "MaxConnectionsPerChild". |
| |
| * Regex containers don't work in an intutive way |
| Status: No one has come up with an efficient way to fix this |
| behavior. Dean has suggested getting rid of regex containers |
| completely. |
| |
| * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a |
| sigwaiting thread. We need to work around this, perhaps unless |
| there is hope soon for a fixed glibc. |
| |
| Other features that need writing: |
| |
| * Finish infrastructure in core for async MPMs |
| Status: ? |
| |
| * TODO in source -- just do an egrep on "TODO" and see what's there |
| |
| * Work on other MPMs. Possible MPMs discussed or in progress include: |
| |
| - Dean Gaudet's async MPM |
| Status: dean is unlikely to begin work on this any time soon... |
| has lots of ideas he'll share with folks willing to begin |
| tackling the issues. this is apache 2.1 material. |
| |
| - Zach Brown's <zab@zabbo.net> Linux siginfo MPM |
| Status: ? |
| |
| Documentation that needs writing: |
| |
| * The concept of MPMs, especially if we ship more than one MPM for a |
| given platform |
| |
| * New directives in the various MPMs |
| |
| * API documentation |
| Status: Ben Laurie has written some hooks documentation |
| (apache-2.0/htdocs/hooks.html) |
| |
| * Changes since 1.3.9 can be more easily seen in the commitlog file |
| dev.apache.org:/home/cvs/CVSROOT/commitlogs/apache-2.0 |
| which includes some of Roy's comments when the changes were |
| committed in rough change-sets by purpose. Note that the commitlog |
| does not show the contents of new files until later. |
| |
| Available Patches: |
| |
| * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve |
| performance |
| Status: These were written for 1.3, and are awaiting a port to |
| 2.0 |
| |
| Open issues: |
| |
| * What do we do about mod_proxy? |
| |
| * Which MPMs will be included with Apache 2.0? |
| |
| * Is conf/highperformance.conf-dist obsolete? It looks obsolete. |
| |