STATUS revision 670734c2ee137c587411795c6f82566c9d3729b7
8495845a800cf09321436aed996188c9a92cd647bnicholesApache 2.0 STATUS:
8495845a800cf09321436aed996188c9a92cd647bnicholesLast modified at [$Date: 2000/05/23 21:50:57 $]
8495845a800cf09321436aed996188c9a92cd647bnicholes 2.0a4 : vague plans to release mid-May
8495845a800cf09321436aed996188c9a92cd647bnicholes 2.0a3 : released April 28, 2000
8495845a800cf09321436aed996188c9a92cd647bnicholes 2.0a2 : released March 31, 2000
8495845a800cf09321436aed996188c9a92cd647bnicholes 2.0a1 : released March 10, 2000
8495845a800cf09321436aed996188c9a92cd647bnicholesRELEASE SHOWSTOPPERS:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Get mod_auth_digest working under win32
8495845a800cf09321436aed996188c9a92cd647bnicholes - APR_HAS_RANDOM should be defined on windows and there is a
8495845a800cf09321436aed996188c9a92cd647bnicholes lib/apr/misc/win32/rand.c which is basically a copy of what
8495845a800cf09321436aed996188c9a92cd647bnicholes mod_auth_digest used to use.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Re-work configuration for top level Apache. Work should start with
8495845a800cf09321436aed996188c9a92cd647bnicholes trying to clean the autoconf stuff. If and only if this proves
8495845a800cf09321436aed996188c9a92cd647bnicholes impossible to do (very unlikely), autoconf should be removed and we
8495845a800cf09321436aed996188c9a92cd647bnicholes will roll our own config implementation.
8495845a800cf09321436aed996188c9a92cd647bnicholes NOTE: When this is implemented, it would be really nice if the
8495845a800cf09321436aed996188c9a92cd647bnicholes default cgi module on Unix with a threaded MPM is the cgid
8495845a800cf09321436aed996188c9a92cd647bnicholes module. This should be override-able of course.
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Jim Jagielski is looking into this.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Fix SAFEREAD.
8495845a800cf09321436aed996188c9a92cd647bnicholes see <Pine.LNX.4.21.0004101511380.7822-100000@twinlark.arctic.org>
8495845a800cf09321436aed996188c9a92cd647bnicholes * Put back resource limit code
8495845a800cf09321436aed996188c9a92cd647bnicholes * suEXEC doesn't work
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Manoj has posted an patch to fix this.
8495845a800cf09321436aed996188c9a92cd647bnicholes <19991103003605.A20612@samosa.mindspring.com>
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Enable the Windows MPM to honor max_requests_per_child
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Bill will fix this.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Get Apache working on Windows 95/98. The following work
8495845a800cf09321436aed996188c9a92cd647bnicholes (at least) needs to be done:
8495845a800cf09321436aed996188c9a92cd647bnicholes - winnt MPM: Fix 95/98 code paths in the winnt MPM. There is some NT
8495845a800cf09321436aed996188c9a92cd647bnicholes specific code that is still not in NT only code paths
8495845a800cf09321436aed996188c9a92cd647bnicholes - APR sendfile uses TransmitFile which is not available on
8495845a800cf09321436aed996188c9a92cd647bnicholes - ap_stat uses GetFileAttributeEx which is not available on
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Test access logging with multiple threads. Will the
8495845a800cf09321436aed996188c9a92cd647bnicholes native file I/O calls serialize automagically like the
8495845a800cf09321436aed996188c9a92cd647bnicholes CRT calls or do we need to add region locking each time
8495845a800cf09321436aed996188c9a92cd647bnicholes we access the logs?
8495845a800cf09321436aed996188c9a92cd647bnicholes * The handler hook needs to use the new registration system
8495845a800cf09321436aed996188c9a92cd647bnicholes * We need a thread-safe resolver, at least on Unix.
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: The best known candidate would be something from
8495845a800cf09321436aed996188c9a92cd647bnicholesRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Build scripts do not recognise AIX 4.2.1 pthreads, so the
8495845a800cf09321436aed996188c9a92cd647bnicholes pthread MPMs will not build.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Reuse accept socket after transmitfile/close
8495845a800cf09321436aed996188c9a92cd647bnicholes This is not a bug, but would be nice to get this feature in
8495845a800cf09321436aed996188c9a92cd647bnicholes before ship.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Enable the winnt MPM to use the new scoreboard API
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Graceful restart of a service is broken (code does shutdown
8495845a800cf09321436aed996188c9a92cd647bnicholes * Platforms that do not support fork (primarily Win32 and AS/400)
8495845a800cf09321436aed996188c9a92cd647bnicholes Consider introducing HAVE_FORK feature macro. Architect start-up code
8495845a800cf09321436aed996188c9a92cd647bnicholes that avoids initializing all the modules in the parent process on
8495845a800cf09321436aed996188c9a92cd647bnicholes platforms that do not support fork.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Clean the code. There are a lot of places we used APR but didn't
8495845a800cf09321436aed996188c9a92cd647bnicholes remove the hacks that were required for the cross-platform code in
8495845a800cf09321436aed996188c9a92cd647bnicholes 1.3. We need to make the code look like APR was supposed to be there.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Go throught the 1.3 Bug DB and research the bugs marked "suspended".
8495845a800cf09321436aed996188c9a92cd647bnicholes People were told these would be considered for inclusion in Apache 2.0,
8495845a800cf09321436aed996188c9a92cd647bnicholes it would be nice to actually do so.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Migrate the MPM over to use APR thread/process calls. This
8495845a800cf09321436aed996188c9a92cd647bnicholes would eliminate some code in the Win32 branch that essentially
8495845a800cf09321436aed996188c9a92cd647bnicholes duplicates what is in APR.
8495845a800cf09321436aed996188c9a92cd647bnicholes Bill says we need a new procattr, APR_CREATE_SUSPENDED (or
8495845a800cf09321436aed996188c9a92cd647bnicholes something similar) to direct ap_create_process to create the
8495845a800cf09321436aed996188c9a92cd647bnicholes process suspended. We also need a call to wake up the suspended
8495845a800cf09321436aed996188c9a92cd647bnicholes process This may not be able to be implemented everywhere though.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Move I/O layering into APR.
8495845a800cf09321436aed996188c9a92cd647bnicholes * There are still a number of places in the code where we are
8495845a800cf09321436aed996188c9a92cd647bnicholes loosing error status (i.e. throwing away the error returned by a
8495845a800cf09321436aed996188c9a92cd647bnicholes system call and replacing it with a generic error code)
8495845a800cf09321436aed996188c9a92cd647bnicholes * Win32: Implement reliable piped logs on Windows
8495845a800cf09321436aed996188c9a92cd647bnicholes * Switch to autoconf, et al. for configuration.
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Manoj has placed an initial version into the 2.0
8495845a800cf09321436aed996188c9a92cd647bnicholes repository. Todos include:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Use APR to get rid of more platform dependancies.
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Ryan Bloom <rbb@covalenet.net> is working on this.
8495845a800cf09321436aed996188c9a92cd647bnicholes * The connection status table is not very efficient. Also, very few stats
8495845a800cf09321436aed996188c9a92cd647bnicholes are exported to the connection status table (easy to fix), and mod_status
8495845a800cf09321436aed996188c9a92cd647bnicholes * Optimise the name-based <VirtualHost> implementation so that it uses
8495845a800cf09321436aed996188c9a92cd647bnicholes a hash table instead of a linear linked list scan.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Mass vhosting version of suEXEC.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Provide a sane API for handling the request's environment variables.
8495845a800cf09321436aed996188c9a92cd647bnicholes * configuration option to use *DBM
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Greg +1 (volunteers)
8495845a800cf09321436aed996188c9a92cd647bnicholes * add SDBM into src/lib/sdbm/ as a default/fallback DBM implementation.
8495845a800cf09321436aed996188c9a92cd647bnicholes SDBM is used by Perl, mod_dav, mod_sssl, others for basic DBM support.
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Greg +1 (volunteers)
8495845a800cf09321436aed996188c9a92cd647bnicholesOther bugs that need fixing:
8495845a800cf09321436aed996188c9a92cd647bnicholes * MaxRequestsPerChild measures connections, not requests.
8495845a800cf09321436aed996188c9a92cd647bnicholes Until someone has a better way, we'll probably just rename it
8495845a800cf09321436aed996188c9a92cd647bnicholes "MaxConnectionsPerChild".
8495845a800cf09321436aed996188c9a92cd647bnicholes * Regex containers don't work in an intutive way
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: No one has come up with an efficient way to fix this
8495845a800cf09321436aed996188c9a92cd647bnicholes behavior. Dean has suggested getting rid of regex containers
8495845a800cf09321436aed996188c9a92cd647bnicholes * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a
8495845a800cf09321436aed996188c9a92cd647bnicholes sigwaiting thread. We need to work around this, perhaps unless
8495845a800cf09321436aed996188c9a92cd647bnicholes there is hope soon for a fixed glibc.
8495845a800cf09321436aed996188c9a92cd647bnicholesOther features that need writing:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Finish infrastructure in core for async MPMs
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: post 2.0
8495845a800cf09321436aed996188c9a92cd647bnicholes * TODO in source -- just do an egrep on "TODO" and see what's there
8495845a800cf09321436aed996188c9a92cd647bnicholesDocumentation that needs writing:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Mod_status docs are needed.
96cfe98f8fac9bce4d4be660eadd713b7daede8ebnicholes * The concept of MPMs, especially if we ship more than one MPM for a
96cfe98f8fac9bce4d4be660eadd713b7daede8ebnicholes given platform
8495845a800cf09321436aed996188c9a92cd647bnicholes * New directives in the various MPMs and appropriate links from
8495845a800cf09321436aed996188c9a92cd647bnicholes obsolete directives in core.html to the MPM documentation.
8495845a800cf09321436aed996188c9a92cd647bnicholes * Revise manual/stopping.html and the last part of
8495845a800cf09321436aed996188c9a92cd647bnicholes manual/misc/perf-tuning.html to take account of the MPMs.
8495845a800cf09321436aed996188c9a92cd647bnicholes * API documentation
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: Ben Laurie has written some hooks documentation
8495845a800cf09321436aed996188c9a92cd647bnicholes * Changes since 1.3.9 can be more easily seen in the commitlog file
8495845a800cf09321436aed996188c9a92cd647bnicholes dev.apache.org:/home/cvs/CVSROOT/commitlogs/apache-2.0
8495845a800cf09321436aed996188c9a92cd647bnicholes which includes some of Roy's comments when the changes were
8495845a800cf09321436aed996188c9a92cd647bnicholes committed in rough change-sets by purpose. Note that the commitlog
8495845a800cf09321436aed996188c9a92cd647bnicholes does not show the contents of new files until later.
8495845a800cf09321436aed996188c9a92cd647bnicholesAvailable Patches:
8495845a800cf09321436aed996188c9a92cd647bnicholes * Ken's patch to make htpasswd a usable tool for other databases.
8495845a800cf09321436aed996188c9a92cd647bnicholes Message-ID: <392AFA06.716E8374@Golux.Com>
8495845a800cf09321436aed996188c9a92cd647bnicholes * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
8495845a800cf09321436aed996188c9a92cd647bnicholes Status: These were written for 1.3, and are awaiting a port to
8495845a800cf09321436aed996188c9a92cd647bnicholes * What do we do about mod_proxy?
8495845a800cf09321436aed996188c9a92cd647bnicholes * Which MPMs will be included with Apache 2.0?
8495845a800cf09321436aed996188c9a92cd647bnicholes * Is conf/highperformance.conf-dist obsolete? It looks obsolete.