STATUS revision 4065b438067f3f08d0bd98b31ac4085b581b931d
43b4c41fbb07705c9df321221ab9cb9832460407Christian MaederApache 2.0 STATUS:
c63ebf815c8a874525cf18670ad74847f7fc7b26Christian MaederLast modified at [$Date: 1999/11/04 18:25:23 $]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder 2.0: In pre-alpha development
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder * Vague goal of an alpha or beta release in 1999. Commit-then-review
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian MaederRELEASE SHOWSTOPPERS:
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder * Pipes to CGI scripts are not being timed out
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder * Port mod_rewrite
a1ed34933c266ce85066acb0d7b20c90cb8eb213Christian Maeder Status: Paul Reder is working on this.
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich * Port mod_mime_magic
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder Status: Paul Reder is working on this.
4d56f2fa72e4aec20eb827c11ed49c8cbb7014bdChristian Maeder * suEXEC doesn't work
4cb215739e9ab13447fa21162482ebe485b47455Christian Maeder Status: Manoj has posted an patch to fix this.
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian Maeder <19991103003605.A20612@samosa.mindspring.com>
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder * Windows NT port isn't done
74eed04be26f549d2f7ca35c370e1c03879b28b1Christian Maeder Status: Bill is working on MPM and APR. Remaining work:
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder 1. Add back ability to run Apache as a service
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian Maeder 2. Fix Win9* specific code in the winnt MPM
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maeder 3. Get the MPM working in multi process mode (one parent & one child)
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian Maeder 4. Test access logging with multiple threads. Will the native file I/O
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maeder calls serialize automagically like the CRT calls or do we need to
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder add region locking each time we write to the access/error logs?
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder * Current 2.0 code is not tested on many Unix platforms. Make 2.0
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder work on most, if not all the systems 1.3 did
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder Status: Autoconf and APR will get us most of the way there.
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder * The module API is a weird combination of the old table and the new
f041c9a6bda23de33a38490e35b831ae18d96b45Christian Maeder hook system. Switch completely to the new hook system
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder Status: Ben Laurie is working on this.
1aee4aaddde105264c1faf394d88e302c05094ffChristian MaederRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
c3053d57f642ca507cdf79512e604437c4546cb9Christian Maeder * Win32: Redirect stderr to the error log. This is tougher than it appears
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder because Apache for Windows now uses native file I/O libraries rather than
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder the CRT library. No problem redirecting native I/O STDERR to the error log.
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder However, we need to replace all the fprintf(stderr...) calls with something
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder that will write to the native stderr handle instead of the CRT stderr handle.
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder * Win32: Migrate the MPM over to use APR thread/process calls.
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder * Move I/O layering into APR.
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder * There are still a number of places in the code where we are loosing error
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder status (i.e. throwing away the error returned by a system call and replacing
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder it with a generic error code)
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian Maeder * APRize the stat function. CRT stat() is about 30% slower on Windows than
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder the equivalent native Windows call. The APR call should return the Unix
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu style stat structure, just to keep it familier.
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder * Implement reliable piped logs on Windows
a7c27282e71cf4505026645f96d4f5cb8a284e32Christian Maeder Status: Bill has prototype code (not reliable) in 1.3. Should be much
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder cleaner with APR in 2.0.
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich * Switch to autoconf, et al. for configuration.
4ba08bfca0cc8d9da65397b8dfd2654fdb4c0e62Christian Maeder * Use APR to get rid of more platform dependancies.
feca1d35123d8c31aee238c9ce79947b0bf65494Christian Maeder Status: Ryan Bloom <rbb@raleigh.ibm.com> is working on this.
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder * The connection status table is not very efficient. Also, very few stats
498aa48bdb931ab50990d3b74318a5db2312186cChristian Maeder are exported to the connection status table (easy to fix), and mod_status
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian MaederOther bugs that need fixing:
23ffcc44ca8612feccbd8fda63fa5be7ab5f9dc3Christian Maeder * MaxRequestsPerChild measures connections, not requests.
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder Until someone has a better way, we'll probably just rename it
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder "MaxConnectionsPerChild".
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder * Regex containers don't work in an intutive way
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder Status: No one has come up with an efficient way to fix this
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder behavior. Dean has suggested getting rid of regex containers
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder * Areas where APRFile is being used need to be cleaned-up
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder * SIGSEGV on Linux seems to only kill a thread, not a whole process;
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder we need to work around this, probably by bouncing the signal to
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder the sigwait thread. But this will hurt debugability.
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian MaederOther features that need writing:
bc8cbf12aa172bf5673b92a9e7a0151d4aa4c315Christian Maeder * Finish infrastructure in core for async MPMs
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder * TODO in source -- just do an egrep on "TODO" and see what's there
a42fbfe7becf0eae2d624123eb0db73a794593f0Christian Maeder * Odd comments in source (egrep for "ZZZ") need to be cleaned-up
a42fbfe7becf0eae2d624123eb0db73a794593f0Christian Maeder * Work on other MPMs. Possible MPMs discussed or in progress include:
1cd4f6541984962658add5cfaa9f28a93879881bChristian Maeder - Dean Gaudet's async MPM
6ff7a91875597d6e4dfaa68c79187d01473e8341Christian Maeder - Zach Brown's <zab@zabbo.net> Linux siginfo MPM
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian MaederDocumentation that needs writing:
a9b59eb2ce961014974276cdae0e9df4419bd212Christian Maeder * The concept of MPMs, especially if we ship more than one MPM for a
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder given platform
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder * New directives in the various MPMs
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder * API documentation
a3c6d8e0670bf2aa71bc8e2a3b1f45d56dd65e4cChristian Maeder Status: Ben Laurie has written some hooks documentation
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder * Changes since 1.3.9 can be more easily seen in the commitlog file
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder dev.apache.org:/home/cvs/CVSROOT/commitlogs/apache-2.0
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder which includes some of Roy's comments when the changes were
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder committed in rough change-sets by purpose. Note that the commitlog
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder does not show the contents of new files until later.
b568982efd0997d877286faa592d81b03c8c67b8Christian MaederAvailable Patches:
0be0db405c49906bd7057255069bf6df53395ac9Klaus Luettich * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder Status: These were written for 1.3, and are awaiting a port to
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder * What do we do about mod_proxy?
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder * Which MPMs will be included with Apache 2.0?
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder * Is conf/highperformance.conf-dist obsolete? It looks obsolete.