2002-07-06 21:34:05; sungo; lib/testreport.pl 1.1 move testreport.pl to lib. add failing test reporting to testreport.pl 2002-07-06 22:02:25; sungo; lib/testreport.pl 1.2 correct the test directory. 2002-07-06 23:07:23; sungo; lib/testreport.pl 1.3 strip file names better. add username, hostname, and gmtime to the report 2002-07-06 23:25:18; sungo; lib/testreport.pl 1.4 get the actual user id not the root one. 2002-07-07 01:01:31; rcaputo; lib/testreport.pl 1.5 Make the program runnable from lib/ or /, and make it fetch the tests to run from Makefile (so it doesn't run tests skipped by AutoInstall). 2002-07-07 03:11:09; rcaputo; MANIFEST 1.68 Added testreport.pl so it will be included in tarballs. 2002-07-07 03:41:12; sungo; lib/Test/Harness/Assert.pm 1.1; lib/Test/Harness.pm 1.1; lib/Test/Harness/Iterator.pm 1.1; lib/Test/Harness/Straps.pm 1.1 add new version of test::harness for convenience use in testreport.pl 2002-07-07 04:32:35; sungo; MANIFEST 1.69 update manifest for test::harness goodness so it'll ship with the tarball 2002-07-07 04:38:59; rcaputo; lib/testreport.pl 1.6 Move C<use lib> higher so it catches Test::Harness and friends. Work around some unsupported things under Windows. 2002-07-07 18:13:00; sungo; MANIFEST 1.70 correct the test::harness::iterator entry 2002-07-07 18:30:08; sungo; lib/testreport.pl 1.7 fix use lib to make testreport runnable from the root of the checkout. stop deleting detailed results. fixes failing test reports. add skipped test detail to the report. 2002-07-07 18:40:09; sungo; lib/testreport.pl 1.8 adding closing quotes on the skip reason helps with parsing :) 2002-07-07 19:12:07; sungo; lib/testreport.pl 1.9 strip the t/ off the file name in case its run from the root of the checkout 2002-07-08 03:09:56; rcaputo; samples/proxy.perl 1.18; samples/refsender.perl 1.15; samples/followtail.perl 1.9; samples/httpd.perl 1.16; samples/refserver.perl 1.16; samples/neural-net.perl 1.2; samples/ref-type.perl 1.5 Replaced these files with pointers to their counterparts in the POE Cookbook. Eventually these files will be removed altogether, along with the directory they rode in on. 2002-07-08 13:31:29; rcaputo; POE.pm 1.144 Document that the samples are moving to the POE Cookbook. 2002-07-08 13:32:27; rcaputo; lib/testreport.pl 1.10 Don't accuse MacOS Classic (and other user-less operating systems) of being Windows. That's just uncalled for. 2002-07-08 23:04:54; rcaputo t/00_coverage.t 1.13; POE/Wheel/Run.pm 1.36 Tidy up a skip message for the test scoreboard. 2002-07-08 23:10:28; rcaputo POE/Kernel.pm 1.187; t/03_aliases.t 1.8; t/01_sessions.t 1.20 PerlPanda on dalnet was disturbed that POE exports $poe_kernel into main. While that can't be changed right now, this change supports two other ways to call run(). Either first call POE::Kernel->new() to get a copy of $poe_kernel, or just call POE::Kernel->run() directly. They are essentially syntactic sugar to mollify OO purists. 2002-07-08 23:23:26; rcaputo; lib/Makefile-5005.pm 1.17 Some people find the dependency prompts annoying. This change adds a note telling these heathens how they can bypass the prompts. 2002-07-09 21:14:48; rcaputo POE/Kernel/Event.pm 1.17; POE/Kernel/Tk.pm 1.24 Randal Schwartz discovered a problem in POE::Kernel::Event where it would not permit an idle program to shut down. It turned out that an optimization in Kernel garbage collection prevented GC from being tested if there were events in the queue. Newer SIGCHLD polling keeps at least one event in the queue at all times, so GC was never being tweaked. It turns out that POE::Kernel::Tk has the same problem. These beg the question: How were the tests ever working? Note: It might be better to differentiate between Kernel's events and Sessions' events, and force GC when Sessions' count reached 0. 2002-07-09 21:15:53; rcaputo; POE/Kernel.pm 1.188 Fix a documentation nit pointed out by Randal Schwartz. 2002-07-15 23:20:10; rcaputo; t/00_coverage.t 1.14; t/07_event.t 1.14; t/06_tk.t 1.36; t/01_sessions.t 1.21; t/09_wheels_unix.t 1.13 Standardize the skip messages. See the style guide at poe.perl.org for a list of message formats. 2002-07-15 23:20:11; rcaputo; t/17_filter_ref.t 1.5; t/22_wheel_run.t 1.25; t/27_poll.t 1.5; t/19_filterchange.t 1.10; t/28_windows.t 1.3; t/11_signals_poe.t 1.21; t/12_signals_ev.t 1.16; t/18_filter_line.t 1.6; t/21_gtk.t 1.14 Standardize the skip messages. See the style guide at poe.perl.org for a list of message formats. 2002-07-15 23:21:27; rcaputo; t/08_errors.t 1.37 Standardize skip messages, and use Symbol's delete_package() function instead of the hand-rolled function to delete all the symbols in a package. This should vastly reduce the number of warnings we need to work around. 2002-07-16 17:40:15; rcaputo; POE/Kernel/Gtk.pm 1.17 In a tight yield() loop, POE::Kernel::Gtk would fire and reset timers so fast that it would pre-empt window painting. The symptom was empty Gtk windows. This patch interleaves timer and idle events so that Gtk has a chance to catch up with POE. 2002-07-17 06:39:21; rcaputo; POE/Filter/Reference.pm 1.25 Added tentative (untested) YAML support. It was a trivial extension of the Storable and FreezeThaw code. What could possibly go wrong? 2002-07-29 22:34:44; rcaputo POE/Component/Client/TCP.pm 1.15; POE/Component/Server/TCP.pm 1.23 James March noted that Client::TCP and Server::TCP don't mention how to send a response on their connected sockets. While omitting such an important fact from the docs is a great way to make people read them carefully, it's better to include the information. 2002-07-31 18:40:51; rcaputo POE/Component/Client/TCP.pm 1.16; POE/Component/Server/TCP.pm 1.24 [[May Break Code]] Peter Chen is writing a SOAP server that exercises Server::TCP's error handling and shutdown semantics. These changes apply modified versions of his patches to Server::TCP, and corresponding shutdown patches to Client::TCP. Error handling is subtly different now; check your code for lingering connections. 2002-07-31 18:43:01; rcaputo; t/26_comp_tcp.t 1.2 Changes in Client::TCP and server::TCP caused errors in the tests. I cleaned up some of the error checking and added some subtests. 2002-07-31 18:50:21; rcaputo; POE/Kernel.pm 1.189 "When three people tell you you're sick, lie down." Matt Cashner, Artur Bergman, and Todd Caine told me the "POE::Kernel's run() method was never called." warning was annoying. I suggested not emitting the warning if no sessions were created (so perl -c and some tests don't carp). That seemed ok with everyone, so this commit implements that change. 2002-07-31 20:05:18; rcaputo; POE/Kernel.pm 1.190; MANIFEST 1.71 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-07-31 20:05:20; rcaputo POE/Filter/Block.pm 1.11; POE/Driver/SysRW.pm 1.22 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-07-31 20:05:21; rcaputo; POE/Filter/HTTPD.pm 1.26 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-07-31 20:05:22; rcaputo; POE/Filter/Reference.pm 1.26 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-07-31 20:05:23; rcaputo POE/Macro/UseBytes.pm 1.1; POE/Wheel/ReadLine.pm 1.20 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-07-31 20:05:24; rcaputo; POE/Wheel/SocketFactory.pm 1.57 Sergey Skvortsov reported that Driver::SysRW uses length() to count octets in buffers, which is broken in newer versions of Perl that support Unicode. In the Unicode sense, length() returns the number of CHARACTERS in a buffer, which may be fewer than the number of octets. This change adds POE/Macro/UseBytes, which is a backward-compatible way of including C<use bytes> in files. It also adds use_bytes directives to wherever looks appropriate. 2002-08-04 18:55:40; rcaputo; POE/Session.pm 1.79 Invoke inline states with idiomatically correct Perl. This is probably just a syntactic tweak. 2002-08-04 18:58:15; rcaputo POE/Kernel.pm 1.191; POE/Kernel/Poll.pm 1.5; POE/Kernel/Select.pm 1.27 James March is trying to tweak a POE program for performance. He was kind enough to provide some Devel::SmallProf output so I could track bottlenecks within POE itself. It turns out that @kr_filenos was a very hot data structure, and it was used primarily in ways that made more sense as a hash. This commit changes @kr_filenos into %kr_filenos. All tests pass. 2002-08-04 19:14:04; rcaputo; POE/Macro/UseBytes.pm 1.2 James March found some debugging prints leftover from testing. They are removed. 2002-08-15 19:49:44; rcaputo; POE/Wheel/FollowTail.pm 1.35 LordVorp discovered that Wheel/FollowTail does not document its defaults for Filter and Driver. They are now documented. 2002-08-18 18:17:01; sungo lib/Makefile-5005.pm 1.18; lib/Makefile-5004.pm 1.6 add make testreport target to, guess what, generate the test report :) 2002-08-18 18:35:09; sungo lib/Makefile-5005.pm 1.19; lib/Makefile-5004.pm 1.7 make the testreport target smarter. checks for existence of poe_report.xml and doesnt rerun the report generator if it exists. 2002-08-19 03:07:49; sungo; lib/reportupload.pl 1.1 script to upload a test report 2002-08-19 03:10:21; sungo lib/Makefile-5005.pm 1.20; lib/Makefile-5004.pm 1.8 add make targets for reportupload 2002-08-19 03:52:01; rcaputo; POE/Wheel/SocketFactory.pm 1.58 Cristiano Lincoln Mattos reported that SocketFactory was not emitting connect errors on Cygwin+Win2k. His debugging pinpointed the section in the code where the problem lay, and with his assistance I was able to put together a working patch. He also tested the patch on Win2k and Linux, while I tested it on FreeBSD. Other tests are forthcoming, but I wanted to get the patch into CVS before that. 2002-08-20 19:37:31; rcaputo; POE/Kernel.pm 1.192 L. Leo reported that run() could not be called twice in the same program. That was true for a number of reasons revolving around signal handling and the need to clean up the Kernel's data structures before run() returned. I have made run() re-callable by re-setting the signal handlers from within run() and by re-initializing the Kernel's data structures too. All tests pass, including L. Leo's test case. 2002-08-20 19:37:32; rcaputo; POE/Kernel/Event.pm 1.18; t/00_coverage.t 1.15; t/07_event.t 1.15; t/04_selects.t 1.15; t/06_tk.t 1.37; t/21_gtk.t 1.15 L. Leo reported that run() could not be called twice in the same program. That was true for a number of reasons revolving around signal handling and the need to clean up the Kernel's data structures before run() returned. I have made run() re-callable by re-setting the signal handlers from within run() and by re-initializing the Kernel's data structures too. All tests pass, including L. Leo's test case. 2002-08-26 22:25:13; rcaputo; POE.pm 1.145 Michael Stevens discovered a situation where signals could trigger a session's destruction twice. The symptom is a "session does not exist" error in Session.pm. This patch adds a simplified version of his test case to t/11_signals_poe.t, clarifies the "session does not exist" error message, and prevents what is essentially a double-free error in POE::Kernel. Other files, such as Session.pm and Select.pm were touched during the course of this fix but essentially remain unchanged. 2002-08-26 22:25:26; rcaputo; POE/Kernel.pm 1.193 Michael Stevens discovered a situation where signals could trigger a session's destruction twice. The symptom is a "session does not exist" error in Session.pm. This patch adds a simplified version of his test case to t/11_signals_poe.t, clarifies the "session does not exist" error message, and prevents what is essentially a double-free error in POE::Kernel. Other files, such as Session.pm and Select.pm were touched during the course of this fix but essentially remain unchanged. 2002-08-26 22:25:28; rcaputo; t/11_signals_poe.t 1.22 Michael Stevens discovered a situation where signals could trigger a session's destruction twice. The symptom is a "session does not exist" error in Session.pm. This patch adds a simplified version of his test case to t/11_signals_poe.t, clarifies the "session does not exist" error message, and prevents what is essentially a double-free error in POE::Kernel. Other files, such as Session.pm and Select.pm were touched during the course of this fix but essentially remain unchanged. 2002-08-27 02:32:01; rcaputo; POE/Component/Client/TCP.pm 1.17 Applied a modified version of Averell's patch to let a Client::TCP component connect to a different address and/or port. It first disconnects from any established server. This feature is experimental pending documentation and tests. 2002-08-27 04:12:33; rcaputo; POE/Kernel.pm 1.194; t/03_aliases.t 1.9 Applied jinzougen's patch to have alias_list return an arbitrary alias in scalar context. 2002-08-29 05:25:41; rcaputo; MANIFEST 1.72 Added initial IPv6 support. 2002-08-29 05:25:42; rcaputo; lib/Makefile-5005.pm 1.21; POE/Wheel/SocketFactory.pm 1.59; POE/Component/Client/TCP.pm 1.18; POE/Component/Server/TCP.pm 1.25 Added initial IPv6 support. 2002-08-29 14:48:29; rcaputo; POE/Wheel/SocketFactory.pm 1.60 Fixed SocketFactory to support ipv6 host names rather than presentation (human readable numeric) addresses. Added the test program I forgot when the initial support went in. 2002-08-29 14:48:30; rcaputo; t/29_sockfact6.t 1.1 Fixed SocketFactory to support ipv6 host names rather than presentation (human readable numeric) addresses. Added the test program I forgot when the initial support went in. 2002-08-29 20:40:11; rcaputo; lib/Makefile-5004.pm 1.9 Replace cvs2cl with a home-made program that creates much nicer CHANGES files. 2002-08-29 20:40:19; rcaputo; lib/Makefile-5005.pm 1.22 Replace cvs2cl with a home-made program that creates much nicer CHANGES files. 2002-08-29 20:42:45; rcaputo; lib/reportupload.pl 1.2 Added documentation and a note at the end where submitters can find their results. 2002-08-29 20:43:30; rcaputo; lib/testreport.pl 1.11 Add an AUTHOR section. Pedantic, yes, but credit where it's due. 2002-08-30 03:29:47; rcaputo; t/29_sockfact6.t 1.2 Skip all tests if Socket6 is not loadable. 2002-08-30 03:59:57; rcaputo; POE/Component/Client/TCP.pm 1.19 Added BindAddress and BindPort support, allowing client connections to come from specific interfaces on a multi-host system. 2002-08-30 03:59:58; rcaputo; t/29_sockfact6.t 1.3 Added BindAddress and BindPort support, allowing client connections to come from specific interfaces on a multi-host system. 2002-08-30 05:14:38; rcaputo; samples/tutorial-chat.perl 1.12; samples/filterchange.perl 1.7; samples/socketfactory.perl 1.17 Replaced three sample programs with pointers to their updated counterparts on the web. 2002-08-30 22:17:41; rcaputo POE/Component/Client/TCP.pm 1.20; POE/Component/Server/TCP.pm 1.26 Added a heap flag for these components: shutdown_on_error. When cleared, it becomes the end developer's responsibility to handle errors and shut down connections when they occur. It defaults to true, which preserves the old behavior of the components shutting connections down. 2002-08-31 22:41:03; sungo; README 1.97 document the test server and the makefile targets 2002-08-31 22:54:28; rcaputo; POE.pm 1.146 Bump the version to 0.2201 and start a feature freeze. 2002-08-31 23:10:14; sungo; MANIFEST 1.73 remove Macro/UseBytes from the manifest 2002-08-31 23:13:22; sungo; MANIFEST 1.74 revert last patch. my mistake 2002-09-01 16:05:33; rcaputo; t/03_aliases.t 1.10 sungo spotted a warning in this test. It turns out that the test was printing "ok 15" twice instead of 15 and 16. Fixed. 2002-09-03 04:39:23; rcaputo; POE/Filter/HTTPD.pm 1.27 Fixed an undefined warning in a seldom-used block of code. 2002-09-03 04:40:04; rcaputo; MANIFEST 1.75; lib/cvs-log.perl 1.1 Added cvs-log.perl; added the report upload utility to MANIFEST. 2002-09-03 15:45:57; rcaputo; README 1.98 Last minute tweaks. 2002-09-03 15:47:23; rcaputo; lib/Makefile-5004.pm 1.10 Fix paths to cvs-log.perl. 2002-09-03 15:47:24; rcaputo; lib/Makefile-5005.pm 1.23 Fix paths to cvs-log.perl. 2002-09-03 16:01:42; rcaputo lib/Makefile-5005.pm 1.24; lib/Makefile-5004.pm 1.11 Rebuild the XML test report if Makefile has changed.
Back to POE CHANGES.