This version was released on 2001-08-12.

Updated README to include dynweb's test results for Solaris 8.

may break code: Fixed Filter::HTTPD so it doesn't crash at runtime when a malformed HTTP request arrives. This required altering the filter's return values slightly! The filter may return an HTTP::Response object if there has been an error parsing the request. Please see the updated documentation for a suggestion on how to handle the new behavior. Thanks to undercut for spotting this problem.

Updated samples/httpd.perl to properly deal with Filter::HTTPD returning HTTP::Response objects.

lib/deptest.perl was failing on Windows because File::Spec->catdir() properly uses backslashes ("\") as path separators on DOSISH systems, but %INC uses forward slashes ("/"). The module was used okay, but it was never found in %INC. Now deptest.perl tries both, damnit.

Fixed Filter::HTTPD to not print diagnostics and not die with an error on malformed requests. Rather, it generates an HTTP::Response object when bad requests arrive. These and more Filter::HTTPD patches are courtesy of Anton Berezin.

Anton Berezin posted several more Filter::HTTPD cleanup patches. He changed the magic numbers for HTTP errors into their corresponding constants. He Made it illegal for HEAD requests to contain content. Finally he made POST requests' content length checking stricter yet less likely to cause programs to warn or die.

Make turning off blocking in POE::Kernel more robust. Retry on EAGAIN or EWOULDBLOCK.

Implement a replacement for socketpair() in POE::Pipe, and have POE::Pipe::OneWay and ::TwoWay use that on systems where pipe() and socketpair() aren't supported. If we're lucky, the tests which used to hang on Windows won't anymore. They may crash outright, though, but that's a different issue altogether. :)

Add POE::Pipe to the MANIFEST.

Tweak the TRACE_PROFILE output at the end of a program's run. It should not have been adding an "s" to each event name.

Skipped the protocol-with-UNIX-sockets test in t/08_errors.t on Windows systems. Windows don't do UNIX sockets. Also broke the relationship between two tests so that one's failure does not necessarily cascade into the other's.

Commented upon some of the odd data-driven features in SocketFactory.pm.

Test 22 (Wheel::Run) may have been failing because the command line to run child processes include single quotes. Windows shells usually use double quotes around arguments containing spaces. Bleah!

Added Philip Gwyn's debugging information patches to POE::Pipe::*Way. Perhaps this will speed up finding problems on Windows.

Added a kill() method to Wheel::Run, so that child processes may be forcibly toasted if necessary.

Replaced *STDIN with \*STDIN in Wheel::ReadLine and Wheel::Curses, fixing those modules with Event (and possibly other event systems). Thanks to Fletch for spotting the problem.

Documented addhistory() in POE::Wheel::ReadLine.

Added a clear() method so POE::Wheel::ReadLine can be used to clear the terminal.

Documented several ideas, contributed or otherwise, in the TODO.

s/depreciat/deprecat/g; Thanks to fimmtiu for pointing out this long standing error.

Added streaming filter change tests to t/19_filterchange.t. Fixed set_filter and set_input_filter in Wheel::ReadWrite so this works. Finally!

Back to POE CHANGES.