2004-11-25 19:44:12 by rcaputo; lib/POE.pm 1.181 Bump the version to 0.30 for release. 2004-11-25 19:37:23 by rcaputo; lib/POE/Filter/Reference.pm 1.32 POE::Filter::Reference wasn't loading Compress::Zlib due to require() semantics changes somewhere between 5.6.1 and 5.7.4. Thanks to acid06@gmail.com (whoever that is) for reporting the problem and providing a suggested fix. 2004-11-25 16:56:22 by rcaputo; mylib/Makefile-5005.pm 1.50 Combine the core requirements for ExtUtils::AutoInstall and MakeMaker into one hash so they can be changed together at once. 2004-11-25 16:47:48 by rcaputo; mylib/Makefile-5005.pm 1.49 Downgrade requirements because ActiveState's repository is behind the times. 2004-11-25 16:12:54 by rcaputo; mylib/ExtUtils/AutoInstall.pm 1.7 Upgrade to 0.61. 2004-11-25 07:04:24 by rcaputo MANIFEST 1.110; mylib/Makefile-5004.pm 1.30 Remove the old dependency checker. It was reporting all kinds of bogus things and needed to be put down. 2004-11-25 06:59:12 by rcaputo tests/10_units/01_preprocessor/02_macro_usebytes.t 1.6 Put back some code that was removed in an overzealous change. 2004-11-24 23:20:46 by rcaputo tests/10_units/01_preprocessor/02_macro_usebytes.t 1.5 Add an Id tag. 2004-11-24 22:25:25 by rcaputo tests/30_loops/00_base/ses_session.pm 1.7 Skip the event loop restarting test if we're using Tk and a non-threaded version of Perl 5.8 or later. Tk dumps core per rt.cpan.org ticket 8588, and we can't be failing OUR tests because of that. 2004-11-24 22:23:07 by rcaputo tests/10_units/01_preprocessor/02_macro_usebytes.t 1.4 The two-arg binmode() call wasn't needed. It was a vestige of displaying Phi on the console, and that went away a long time ago. 2004-11-24 21:17:40 by rcaputo; mylib/gen-tests.perl 1.7 Disable the XS tests, seeing as we don't have any XS to test yet. I don't need to answer a bunch of questions about them at this time. 2004-11-24 16:41:59 by rcaputo; mylib/gen-tests.perl 1.6 Cosmetic change to wrap a line at 80 columns. 2004-11-24 03:48:32 by rcaputo tests/30_loops/00_base/ses_session.pm 1.6 Garbage collection behaves differently under 5.005_04. 2004-11-24 03:46:28 by rcaputo; tests/10_units/03_base/01_poe.t 1.6 Remove a vestige of debugging the issue where STDERR wouldn't come back after being temporarily redirected. 2004-11-24 02:28:05 by rcaputo mylib/Makefile-5004.pm 1.29; mylib/Makefile-5005.pm 1.48 Upgrade dependencies to versions that are known to pass tests. 2004-11-24 02:26:18 by rcaputo tests/30_loops/00_base/ses_session.pm 1.5 The more versions of Perl we test on, the more new and interesting (and virtually impossible to track down) garbage collection issues arise. Klortho, take me now! 2004-11-24 02:23:57 by rcaputo tests/20_resources/00_base/extrefs.pm 1.2 CROM COUNT THE TESTS! Uh... add a test count to the Test::More import. 2004-11-24 02:21:02 by rcaputo; tests/10_units/05_filters/03_http.t 1.4 Data::Dumper doesn't build on---to put it nicely---"legacy" versions of Perl. Thank goodness this test didn't use it. 2004-11-24 02:18:56 by rcaputo; tests/10_units/03_base/01_poe.t 1.5; tests/10_units/04_drivers/01_sysrw.t 1.4 Fix temporary STDERR redirection around tests for error and/or warning conditions. Previously STDERR would go away and never come back. Bad STDERR. 2004-11-24 02:17:03 by rcaputo tests/10_units/01_preprocessor/02_macro_usebytes.t 1.3 Two-argument binmode() isn't supported in very very extremely old versions of Perl. A warning results when someone tries to use it. This change adds a note that the warning can be disabled by upgrading Perl. 2004-11-24 02:12:51 by rcaputo; mylib/gen-tests.perl 1.5 File::Spec::Functions isn't available in Perl 5.004_05. Downgrade to plain File::Spec. 2004-11-24 02:10:40 by rcaputo; lib/POE/Queue/Array.pm 1.8 Use Carp explicitly rather than assume it's loaded by another module. The stand-alone queue tests were failing because Carp wasn't loaded anywhere else. 2004-11-24 02:09:19 by rcaputo; lib/POE/Loop/IO_Poll.pm 1.32 IO::Poll went retrograde on CPAN. Back the required version down to 0.01, despite there being problems in older, pre-0.05 versions. 2004-11-24 02:07:50 by rcaputo; lib/POE/Driver/SysRW.pm 1.30 Perl 5.005_04 was not properly setting $! on important sysread() errors. While debugging, I discovered a simple no-op that causes $! to be set properly. This commit adds the work-around, and now the SysRW driver tests pass. 2004-11-24 02:04:37 by rcaputo; Makefile.PL 1.33 5.005_04 exists, so the Makefile.PL deprecation warning has changed to target versions before that. 2004-11-22 19:28:35 by rcaputo tests/30_loops/00_base/ses_session.pm 1.4 Work around an intermittent failure in Tk when starting its main loop twice in one program. 2004-11-22 18:05:19 by rcaputo; MANIFEST 1.109; mylib/Makefile-5004.pm 1.28; mylib/Makefile-5005.pm 1.47; mylib/gen-tests.perl 1.4; test.pl 1.2 SourceForge has moved t to tests. This commit should point everything to the tests' new location. 2004-11-22 18:04:14 by rcaputo tests/30_loops/00_base/all_errors.pm 1.2 Fix the skip message so Test::Harness can report the reason. 2004-11-22 00:24:06 by rcaputo; test.pl 1.1 Hurk burk! Why didn't I include this in the last commit? 2004-11-22 00:22:13 by rcaputo; MANIFEST 1.108; mylib/Makefile-5004.pm 1.27; mylib/Makefile-5005.pm 1.46 After expanding and refactoring POE's test suite, the command line to run all the tests has become too long for some shells. Sungo suggested moving the Test::Harness invocation into test.pl, which seems to work swimmingly, as this commit shall attest. 2004-11-22 00:13:53 by rcaputo; tests/30_loops/00_base/k_signals.pm 1.3; tests/30_loops/00_base/ses_session.pm 1.3; tests/30_loops/00_base/wheel_run.pm 1.2; tests/30_loops/00_base/wheel_sf_ipv6.pm 1.2; tests/30_loops/00_base/wheel_sf_unix.pm 1.2 So, recent versions of Tk trap exit() when it's called from BEGIN{} or eval{}. It croaks rather than exiting, which makes it a little harder for tests to bail out under Tk. This commit uses CORE::exit() to bypass Tk's trap. It also prints the skip messages manually since Test::More and POE's own TestSetup both exit on their own when skipping entire test files. 2004-11-22 00:10:21 by rcaputo; mylib/gen-tests.perl 1.3 Fixed the DISPLAY checking code so that test templates expand correctly on Windows. 2004-11-22 00:08:07 by rcaputo; lib/POE/Resource/FileHandles.pm 1.18; tests/10_units/04_drivers/01_sysrw.t 1.3 In these enlightened times of ActivePerl 5.8.4, $handle->blocking() seems not to do anything useful. This commit undoes the blocking() calls that were introduced when ActivePerl 5.8.0 broke the original ioctl() calls and actually seemed to honor blocking(). ActivePerl, she is such a fickle mistress. 2004-11-17 05:28:13 by rcaputo mylib/Makefile-5004.pm 1.26; mylib/Makefile-5005.pm 1.45 Use fileglobs to shorten the list of test files passed to MakeMaker. Unfortunately, this does not fix the problem that the Test::Harness command line is too long for CMD.EXE (and possibly other limited shells). 2004-11-16 21:13:09 by rcaputo; Makefile.PL 1.32 Resolve rt.cpan.org ticket 6319 by asking people to "make reportupload" at the end of Makefile.PL. It may be better to ask at the end of "make test" but I'm not in the mood to hack Makefile through Makefile.PL right now. 2004-11-16 19:21:02 by rcaputo; lib/POE/Component/Server/TCP.pm 1.49 Applied the patch in rt.cpan.org ticket 7787. This adds a Started callback (originally suggested as ServerStarted) to the component, so you get a callback right away when the server is started. The original patch wasn't documented, so I documented it. The bulk of this commit involves tidying up the documentation while I was rummaging through it. 2004-11-16 08:25:54 by teknikill tests/20_resources/00_base/caller_state.pm 1.1 add CALLER_STATE test 2004-11-16 07:58:58 by teknikill tests/20_resources/00_base/events.pm 1.2 CALLER_STATE modifications 2004-11-16 07:54:12 by teknikill; lib/POE/Loop/Event.pm 1.41; lib/POE/Loop/PerlSignals.pm 1.8; lib/POE/NFA.pm 1.30; lib/POE/Resource/Events.pm 1.13; lib/POE/Resource/FileHandles.pm 1.17; lib/POE/Resource/Statistics.pm 1.3; lib/POE/Session.pm 1.104 CALLER_STATE added 2004-11-16 07:50:15 by teknikill; lib/POE/Kernel.pm 1.308 CALLER_STATE and get_active_event added 2004-11-16 07:13:04 by rcaputo; lib/POE/API/ResLoader.pm 1.4; lib/POE/Driver/SysRW.pm 1.29; lib/POE/Filter.pm 1.14; lib/POE/Filter/Block.pm 1.15; lib/POE/Filter/Grep.pm 1.6; lib/POE/Filter/HTTPD.pm 1.36; lib/POE/Filter/Reference.pm 1.31; lib/POE/Kernel.pm 1.307; lib/POE/Loop.pm 1.5; lib/POE/Loop/Event.pm 1.40; lib/POE/Loop/Gtk.pm 1.45; lib/POE/Loop/TkCommon.pm 1.10; lib/POE/NFA.pm 1.29; lib/POE/Preprocessor.pm 1.34; lib/POE/Queue/Array.pm 1.7; lib/POE/Resource/Aliases.pm 1.11; lib/POE/Resource/FileHandles.pm 1.16; lib/POE/Resource/Statistics.pm 1.2; lib/POE/Session.pm 1.103; lib/POE/Wheel/FollowTail.pm 1.51; lib/POE/Wheel/ReadLine.pm 1.35; lib/POE/Wheel/ReadWrite.pm 1.69; lib/POE/Wheel/Run.pm 1.60 Applied LARRYSH's massive spellchecking patch. This resolves rt.cpan.org ticket 8451. 2004-11-15 23:28:01 by rcaputo; lib/POE/Session.pm 1.102 Fixed a typo in the POD, resolving rt.cpan.org ticket 8358 by Joost Vunderink. He also has the greatest .sig in his bug report. You should go look at it. 2004-11-15 23:23:36 by rcaputo; lib/POE/Filter/Stackable.pm 1.6 This commit resolves rt.cpan.org ticket 8281: Attached patch brings Filter::Stackable into the get_one Filter API era. There are no known issues with the new feature, but it remains untested as of this time. Martijn van Beers contributed the patch and is aware of his responsibility to fix anything it breaks. 2004-11-15 02:57:53 by rcaputo; lib/POE/Filter/Reference.pm 1.30 Get rid of redefined subroutine warnings when POE::Filter::Reference releads a partially loaded package. This uses the old school $^W thing so Legacy Perl won't choke on "no warnings". 2004-11-12 14:51:53 by rcaputo tests/10_units/05_filters/07_reference.t 1.4 Scott Beck pointed out that the qq{} wasn't future proof. The eval could silently fail if @_ ever became populated. I've switched to q{} and thrown in C<die if $@> to make sure it never happens... or is found if it does. 2004-11-11 17:43:26 by rcaputo lib/POE/Kernel.pm 1.306; lib/POE/Loop/PerlSignals.pm 1.7 Allow users to register $kernel->sig("WINCH"). POE does not register all %SIG entries by default anymore, so it's up to the developer to determine whether SIGWINCH is safe in her environment. We no longer need to block $SIG{WINCH}. 2004-11-11 17:21:09 by rcaputo tests/10_units/05_filters/07_reference.t 1.3 Philip Gwyn said my changes to his test invalidated it. That isn't surprising since I wasn't completely sure what was being tested. We went over the details in IRC for a bit, and came up with a small change to make it ideologically correct. This commit applies his patch to fix my breakage of his earlier patch. 2004-11-10 02:35:12 by rcaputo; lib/POE/Filter/Reference.pm 1.29; tests/10_units/05_filters/07_reference.t 1.2 Rhesa Rozendaal reported a problem where XML::Simple uses a serializer but not completely, resulting in the module being loaded but not all methods being present. The situation fooled POE::Filter::Reference. Philip Gwyn submitted this test and change to reload the serializer in this case, pulling all its methods into existence. KTHXAPPLIED! 2004-11-09 23:36:23 by rcaputo; lib/POE/Component/Server/TCP.pm 1.48 Removed the CAVEATS section, as the one caveat was ill thought out. You can do a lot of things with POE::Component::Server::TCP, including challenge/response protocols. 2004-11-08 20:48:13 by rcaputo; lib/POE/Resource/FileHandles.pm 1.15 Ok. This time for sure. Jonathan verified it before I committed it. 2004-11-08 17:07:13 by rcaputo; lib/POE/Resource/FileHandles.pm 1.14 We don't have tests that trigger the error I just "fixed", so the "fix" had a bug in it. This fix should fix the "fix" in my last commit. Unless it doesn't, in which case there'll be yet another. 2004-11-08 16:37:24 by rcaputo; lib/POE/Resource/FileHandles.pm 1.13 Jonathan Steinert pointed out that the "can't select a handle 2+ times" error was vague. This commit should fix that up good, a-yep. 2004-10-30 21:30:01 by rcaputo; lib/POE/Driver/SysRW.pm 1.28 Clear $! if syswrite() returns successfully. POE wheels check $! to detect driver errors. Some tied filehandle classes (this time Devel::SerialPort) don't clear $! on success. POE::Wheel::ReadWrite would see this as an error condition, and bad things would happen. Clearing $! on success makes wheel operations more robust. 2004-10-16 17:22:00 by rcaputo; lib/POE/Kernel.pm 1.305 Ever since the experimental stop() was added, and run() was resumable, it annoyed me that combining them with POE::Wheel::Run--- to run POE kernels in child processes--- would not recalculate the child kernels' IDs. As you may know, kernel IDs are meant to be globally unique. They're a hash of the machine address, process ID, and creation time. So it seems to make sense that spawned off POE processes should have IDs different from their parents. This change forces a kernel ID recalculation whenever stop() is called. 2004-10-14 04:24:20 by hachi; lib/POE/Wheel/SocketFactory.pm 1.78 In an endeavor to use SocketFactory without the POE::Kernel, discovered that IO::Handle needs to be loaded to work properly. This glitch never showed up before because Kernel.pm has use IO::Handle in it for us. Added for completeness. 2004-10-13 17:48:28 by rcaputo; lib/POE/Wheel/ReadLine.pm 1.34 After a lengthy study into the reasons for Term::ReadKey failing, it was discovered that Perl 5.8.0 is to blame, most likely under particular versions of the Linux kernel, or gcc, or a combination of kernel AND gcc. Versions of Perl other than 5.8.0 work under the same combinations of kernel and gcc, however. This commit documents the research results, provides a test case to determine if "your" system suffers from the problem, and recommends alternatives. 2004-10-13 16:54:26 by rcaputo; MANIFEST 1.107 This sample program is covered in the "Evolution of a POE Server" tutorial at http://poe.perl.org/?Tutorials 2004-10-13 16:47:48 by rcaputo; MANIFEST 1.106 Removed the tk.perl sample program. It is superseded by the Cookbook "Tk Interfaces" recipe. See http://poe.perl.org/?POE_Cookbook . 2004-10-12 20:13:51 by lotr; lib/POE.pm 1.180; lib/POE/Kernel.pm 1.304; tests/10_units/03_base/01_poe.t 1.4; tests/10_units/03_base/14_kernel.t 1.1 Remove the POE::Loop modules from the modules that need to be loaded seperately, as they're being passed to POE::Kernel. Also die when attempting to load more than one Loop. And add some tests to make sure it works like we want to. 2004-10-12 16:49:48 by rcaputo lib/POE.pm 1.179; lib/POE/Kernel.pm 1.303 Applying a patch by Martijn van Beers. This change adds syntax for loading POE::Loop classes explicitly from POE::Kernel's import(). It also adds code to POE.pm's import() that transfers Loop classes to the new syntax. The upshot is that you can load classes explicitly rather than let POE::Kernel figure things out. This is especially important for event loops that identify as two or more event loops (such as Glib and Gtk2). 2004-10-12 05:18:51 by rcaputo; tests/10_units/01_preprocessor/02_macro_usebytes.t 1.2; tests/10_units/02_pipes/01_base.t 1.2; tests/10_units/02_pipes/02_oneway.t 1.2; tests/10_units/02_pipes/03_twoway.t 1.2; tests/10_units/03_base/01_poe.t 1.3; tests/10_units/03_base/02_api_resloader.t 1.2; tests/10_units/03_base/03_component.t 1.2; tests/10_units/03_base/04_driver.t 1.2; tests/10_units/03_base/05_filter.t 1.2; tests/10_units/03_base/06_loop.t 1.2; tests/10_units/03_base/07_queue.t 1.2; tests/10_units/03_base/08_resource.t 1.2; tests/10_units/03_base/09_resources.t 1.2; tests/10_units/03_base/10_wheel.t 1.2; tests/10_units/04_drivers/01_sysrw.t 1.2; tests/10_units/05_filters/02_grep.t 1.2; tests/10_units/05_filters/03_http.t 1.3; tests/10_units/05_filters/05_map.t 1.2; tests/10_units/05_filters/06_recordblock.t 1.2; tests/20_resources/00_base/statistics.pm 1.2 Remove "use warnings" throughout the tests. It's amazing what flushes out when you run the tests under a really really old version of Perl. 2004-10-12 05:06:31 by rcaputo; mylib/gen-tests.perl 1.2 Three-arg open is not supported in perl 5.005. This massages it back to two-arg open. 2004-10-11 20:10:23 by rcaputo lib/POE/Kernel.pm 1.302; lib/POE/Resource/FileHandles.pm 1.12 Move some RUNNING_IN_HELL code to an appropriate file. Namely, the dummy F_[GS]ETFL constants. They fit better in POE::Resource::FileHandles. 2004-10-07 22:04:46 by rcaputo; tests/10_units/03_base/01_poe.t 1.2 God kills a kitten every time someone doesn't use POE. This change ensures that POE is being used, so no kittens will die on our watch. We love kittens, and don't wish any harm upon them. 2004-10-05 15:50:39 by rcaputo; mylib/Makefile-5005.pm 1.44 Removed the '-tests' parameters for each of the optional modules. The tests are all in different places now, some of them don't exist, and others exist multiple times... but only after they're generated from templates. 2004-10-05 15:31:59 by rcaputo; lib/POE/Driver/SysRW.pm 1.27 Fixed some awkward indenting. This change is meaningless. 2004-10-05 15:30:42 by rcaputo; Makefile.PL 1.31 Swapped a couple words is a prompt, possibly making it easier to read. 2004-09-27 05:19:38 by rcaputo; lib/POE/Kernel.pm 1.301 Fluffle said the documentation didn't explain how sessions are reaped after terminal signals are delivered. Hey, that's true! Well, now they do. Take THAT! 2004-09-23 21:49:44 by rcaputo; mylib/ExtUtils/AutoInstall.pm 1.6 17:35 <autrijus> dngor: hey. you may wish to start shipping POE with EU::AI 0.60 soonish. CPANPLUS 0.050 and later had a problem with EU::AI 0.5x; while I'm trying to solve it at the cpanplus end, it may not be always as smooth as it can be. Ok. This commit upgrades ExtUtils::AutoInstall to 0.60. 2004-09-17 07:11:04 by rcaputo MANIFEST 1.105; lib/POE/Kernel.pm 1.300; lib/POE/Loop/IO_Poll.pm 1.31 In retrospect, it was rather dumb to rename Poll.pm to IO-Poll.pm. While the hyphen makes a great filesystem character, it's not very good for package names. Perl tends to think you're subtracting barewords, and things just don't work out right. This commit renames IO-Poll.pm to IO_Poll.pm. I hope this fixes it for good. 2004-09-16 01:38:17 by rcaputo tests/90_regression/ton-stop-corruption.t 1.2 Turn on ASSERT_DEFAULT, like we're supposed to in tests. 2004-09-16 00:26:13 by rcaputo; MANIFEST 1.104; lib/POE/Kernel.pm 1.299; lib/POE/Resource/FileHandles.pm 1.11; tests/90_regression/ton-stop-corruption.t 1.1 Ton Hospel discovered that stop() from some event handlers causes the session that called it to be reaped twice. The second reap triggers an inconsistency error when ASSERT_DEFAULT is enabled. This patch adds a check to see whether a session is dead by the time its handler returns (and bypasses a lot of moot garbage collection in the rare cases that it is). It adds a performance penalty across the board. There's probably a better way, but this is more immediate. This patch also includes Ton's test case as a proper regression test. 2004-09-14 00:16:12 by rcaputo lib/POE/Loop/TkCommon.pm 1.9; lib/POE/Queue/Array.pm 1.6 Ton Hospel made a couple interesting observations about POE's event loop. First, the code could be tightened up. Perl assignments are relatively expensive, and restructuring the code to avoid them means a few percent increase in performance. His example appears as a comment in POE::Queue::Array, marked with his name. His second observation is that the Tk loop is about twice as slow as it should be. Our workaround for high-priority Tk timers is rather stupid. Ton works around it by maintaining separate "immediate" and timer queues, and not using Tk to drive the immediate events. I've commented on his idea in POE::Loop::TkCommon. 2004-09-08 05:59:59 by rcaputo; lib/POE/Kernel.pm 1.298; lib/POE/Loop/PerlSignals.pm 1.6; lib/POE/Loop/TkCommon.pm 1.8; lib/POE/Resource/Signals.pm 1.12; lib/POE/Session.pm 1.101; tests/20_resources/00_base/signals.pm 1.2; tests/30_loops/00_base/k_signals.pm 1.2; tests/30_loops/00_base/ses_session.pm 1.2 This commit moves signal deprecations forward. It incorporates a number of changes: POE has stopped dispatching _signal publicly. It's still used internally, but programs will not receive it. Attempting to register a _signal event handler will still result in a fatal error, however. This has the nice benefit of pushing problems on users rather than allowing them to fester quietly as bizarre runtime behavior. I'm all for that since it's less support problems. The return values of signal handlers are not significant anymore, and you will not receive errors based on them. Using sig_handled() is mandatory if you want to handle signals. POE does not always register handlers for most of %SIG anymore. Instead, it registers the handlers as needed when you call $kernel->sig(). This means that Ctrl+Z (^Z) WILL suspend any program that has not set a TSTP handler. Signal dispatch is vastly simplified. It should be significantly faster, although most programs won't notice a difference. Signal dispatch is not that common. Tests for deprecated behaviors have been removed. Old emacs-style indenting has been changed to more conventional indenting here and there. The ses_session.pm test sometimes dumps core under Tk. It's not consistent, and I'm not sure why. 2004-09-05 00:32:34 by rcaputo; mylib/coverage.perl 1.14 Stop excluding tests themselves. The reports don't cover all of the POE modules when they are excluded. 2004-09-04 23:14:51 by rcaputo; tests/10_units/05_filters/03_http.t 1.2 This test contained a hardcoded path to t/19_filterchange.t, which I just SO totally broke. I replaced it with $0 which seems to work pretty well. 2004-09-04 23:06:14 by rcaputo; mylib/gen-tests.perl 1.1 This utility derives tests based on templates and different environments. 2004-09-04 22:50:40 by rcaputo; tests/10_units/01_preprocessor/01_preprocessor.t 1.1; tests/10_units/01_preprocessor/02_macro_usebytes.t 1.1; tests/10_units/02_pipes/01_base.t 1.1; tests/10_units/02_pipes/02_oneway.t 1.1; tests/10_units/02_pipes/03_twoway.t 1.1; tests/10_units/03_base/01_poe.t 1.1; tests/10_units/03_base/02_api_resloader.t 1.1; tests/10_units/03_base/03_component.t 1.1; tests/10_units/03_base/04_driver.t 1.1; tests/10_units/03_base/05_filter.t 1.1; tests/10_units/03_base/06_loop.t 1.1; tests/10_units/03_base/07_queue.t 1.1; tests/10_units/03_base/08_resource.t 1.1; tests/10_units/03_base/09_resources.t 1.1; tests/10_units/03_base/10_wheel.t 1.1; tests/10_units/03_base/11_assert_usage.t 1.1; tests/10_units/03_base/12_assert_retval.t 1.1; tests/10_units/03_base/13_assert_data.t 1.1; tests/10_units/04_drivers/01_sysrw.t 1.1; tests/10_units/05_filters/01_block.t 1.1; tests/10_units/05_filters/02_grep.t 1.1; tests/10_units/05_filters/03_http.t 1.1; tests/10_units/05_filters/04_line.t 1.1; tests/10_units/05_filters/05_map.t 1.1; tests/10_units/05_filters/06_recordblock.t 1.1; tests/10_units/05_filters/07_reference.t 1.1; tests/10_units/05_filters/08_stream.t 1.1; tests/10_units/05_filters/50_stackable.t 1.1; tests/10_units/05_filters/99_filterchange.t 1.1; tests/10_units/06_queues/01_array.t 1.1; tests/20_resources/00_base/aliases.pm 1.1; tests/20_resources/00_base/controls.pm 1.1; tests/20_resources/00_base/events.pm 1.1; tests/20_resources/00_base/extrefs.pm 1.1; tests/20_resources/00_base/filehandles.pm 1.1; tests/20_resources/00_base/sessions.pm 1.1; tests/20_resources/00_base/sids.pm 1.1; tests/20_resources/00_base/signals.pm 1.1; tests/20_resources/00_base/statistics.pm 1.1; tests/30_loops/00_base/all_errors.pm 1.1; tests/30_loops/00_base/comp_tcp.pm 1.1; tests/30_loops/00_base/k_alarms.pm 1.1; tests/30_loops/00_base/k_aliases.pm 1.1; tests/30_loops/00_base/k_detach.pm 1.1; tests/30_loops/00_base/k_selects.pm 1.1; tests/30_loops/00_base/k_signals.pm 1.1; tests/30_loops/00_base/ses_nfa.pm 1.1; tests/30_loops/00_base/ses_session.pm 1.1; tests/30_loops/00_base/wheel_accept.pm 1.1; tests/30_loops/00_base/wheel_run.pm 1.1; tests/30_loops/00_base/wheel_sf_ipv6.pm 1.1; tests/30_loops/00_base/wheel_sf_tcp.pm 1.1; tests/30_loops/00_base/wheel_sf_udp.pm 1.1; tests/30_loops/00_base/wheel_sf_unix.pm 1.1; tests/30_loops/00_base/wheel_tail.pm 1.1; tests/90_regression/neyuki_detach.t 1.1; tests/90_regression/suzman_windows.t 1.1 These are the wonderful tests we're adding to replace the stinky old ones. Some of these are the stinky old ones in new clothes, but just for a little while until we can make less stinky ones from them. 2004-09-04 22:34:03 by rcaputo Makefile.PL 1.30; mylib/Makefile-5005.pm 1.43 Migrate the prompt bypassing code out of the 5.5+ Makefile generator and into the base Makefile.PL. This is the code that skips interaction if STDIN isn't a terminal, or if --default is specified. 2004-09-04 22:19:10 by rcaputo; MANIFEST 1.103; Makefile.PL 1.29; mylib/Makefile-5004.pm 1.25; mylib/Makefile-5005.pm 1.42 Commit the new tests, the new utilities to support them, and necessary changes to the install and distribution scripts. 2004-09-04 22:07:06 by rcaputo; MANIFEST 1.102 Remove the existing tests to make room for the new ones. 2004-09-04 21:49:41 by rcaputo; mylib/coverage.perl 1.13 Ignore modules within the test directory. Also allow coverage of individual files on the command line. Great for one-off coverage reports to see where a test program is deficient. 2004-09-02 00:51:56 by sungo; Makefile.PL 1.28; mylib/Makefile-5004.pm 1.24; mylib/Makefile-5005.pm 1.41 add ability to opt out of network tests 2004-09-02 00:22:43 by rcaputo; MANIFEST 1.101; lib/POE/Kernel.pm 1.297 Renamed POE::Loop::Poll to POE::Loop::IO-Poll, to normalize the way event loops are loaded. No exceptions for modules that begin with IO:: now. 2004-09-01 17:41:08 by rcaputo; lib/POE/Kernel.pm 1.296 Tweaked the POE::Loop loader to load things like Event::Lib as POE::Loop::Event-Lib instead of POE::Loop::Lib. It still strips a leading IO:: off the path for legacy (POE::Loop::Poll) support. At some point we should probably have SourceForge move Poll.pm to IO-Poll.pm and remove the IO stripping code. 2004-09-01 16:35:08 by rcaputo; lib/POE/Wheel/ReadLine.pm 1.33 Nick Williams fixed a bug where pressing Return (^M) from within a history search would insert the ^M character into the input line before returning it. 2004-09-01 11:47:47 by rcaputo; lib/POE/Wheel/ReadLine.pm 1.32 Nick Williams made extensive revisions to this wheel, adding most (all?) of the gnu readline features. Command history search, custom key bindings, .inputrc parsing, tab completion, vi and emacs modes, it's all there! 2004-08-03 20:08:36 by rcaputo; lib/POE/Loop/Event.pm 1.39 Ton Hospel discovered that POE::Loop::Event does not exit when an event handler calls C<die>. The problem turned out to be Event.pm's default exception handler, which turns the C<die> into a harmless C<warn> and resumes the event loop. Well, POE's all inconsistent inside and nothing will happen, so the program stalls hard. Even Ctrl+C and Ctrl+\ don't terminate it. This commit replaces the default excetion handler, turning it into a harmless C<warn> followed by an equally harmless (yet eminently terminal) C<exit>. I originally tried to use C<die> inside the exception handler, even setting $SIG{__DIE__} = "DEFAULT", but it only sufficed to change the original warning into some twisted, recursive form of it. And of course the program didn't actually die. Now at least it exits. 2004-08-02 21:02:55 by rcaputo; lib/POE/Wheel/Run.pm 1.59 Mark Lawrence discovered that POE::Wheel::Run's shutdown_stdin() method was broken. Probably because it was never actually tested. This commit adds tests for shutdown_stdin() under different POE::Wheel::Run conduits. It also hopefully fixes the originally reported bug. The test itself will need testing on different platforms since some systems don't support all of them. Most notably: Windows and Solaris. 2004-08-01 23:44:21 by rcaputo; lib/POE/Component/Server/TCP.pm 1.47 An anoymous tipster pointed out that Acceptor is not valid when using the ClientInput mode. Unfortunately the documentation implied that they were ok together. Now the docs lead you slightly less astray. 2004-07-20 16:51:48 by rcaputo; lib/POE/Kernel.pm 1.295; mylib/Makefile-5004.pm 1.23; mylib/Makefile-5005.pm 1.40 Replaced the previous commit with File::Spec. This makes the event loop loader ueber-portable to anything that runs Perl and has a filesystem. Had to add File::Spec as a dependency in the Makefile libraries, and did some reformatting while I was there. 2004-07-20 15:44:02 by rcaputo; lib/POE/Kernel.pm 1.294 Improve Windows (and non-UNIXy) operating system compatibility. Using modules with strange path separators would cause a startup error. The pattern for strange path separators has been expanded to cover most of them. Thanks to woggle for bringing the problem to my attention. 2004-07-16 14:44:56 by rcaputo; lib/POE/Resource/Extrefs.pm 1.10 Plug at least three memory leaks that only occur when ASSERT_DATA is true. 2004-07-16 02:37:43 by rcaputo; lib/POE/Resource/Signals.pm 1.11 Note a potential error condition in the source, and pose the question of how to properly handle it. 2004-07-16 01:12:28 by rcaputo; lib/POE/Resource/Controls.pm 1.3 Replaced some silent returns with full-on croaks when a bad number of parameters is passed to one of POE::Resource::Controls' methods. Added a return 1; to _data_magic_finalize, since all the finalize functions return true on success. 2004-07-16 01:10:16 by rcaputo; lib/POE/Resource/Sessions.pm 1.18 Moved more assertions before their corresponding traces. This continues to push the errors out to the user, rather than causing strange side errors within POE::Kernel. 2004-07-16 01:09:08 by rcaputo; lib/POE/Resource/Events.pm 1.12 Clarify what "blocked" events are in some comments. The code confused me while I was working on some tests for it, so I thought "more comments!" 2004-07-15 21:20:45 by rcaputo; lib/POE/Resource/Sessions.pm 1.17 Moved parameter test assertions before their corresponding traces. This way the assertions can bail out before the traces cause more errors deeper within POE (where the messages have less meaning). 2004-07-15 20:00:45 by rcaputo; lib/POE/Resource/Sessions.pm 1.16 Add messages to the _trap() calls for various forms of internal inconsistency. Perhaps a lot of them can be removed once the test coverage gets close to its maxima. 2004-07-15 14:03:29 by rcaputo; lib/POE/Resource/Events.pm 1.11 Comment some code to increment event reference counts. It's only used in one place, so it's not a separate method like the decrement code. 2004-07-15 14:01:39 by rcaputo; lib/POE/Component/Client/TCP.pm 1.42; lib/POE/Component/Server/TCP.pm 1.46 Docs: Clarify the role of the Args constructor parameters in both Client:: and Server::TCP. 2004-07-15 13:58:10 by rcaputo; lib/POE/Kernel.pm 1.293 The description of aliases was horrible. Now it's rewritten. 2004-07-13 03:46:50 by rcaputo; lib/POE/Wheel.pm 1.19 Changed the way wheel IDs are allocated, so the first one evar is 1 (not 2). Added a private (also not documented) mutator to reset the internal wheel ID counter so the tests can verify that IDs will be reused properly after Perl's integer type rolls over (if evar). Oh, and I documented that the POE::Wheel functions are called as just that---functions, not class methods. This detail confused me while writing some tests, and that's never a good thing. 2004-07-13 03:43:48 by rcaputo; lib/POE/Loop/PerlSignals.pm 1.5 The SIGCHLD signal handler was not actually used. Instead we've been polling for SIGCHLD for the longest time. So I removed the handler. It was either that or listen to Devel::Cover complain "Oh, you're not using this code!" every time. Bastard. :) 2004-07-11 06:30:53 by rcaputo; lib/POE/Loop/TkCommon.pm 1.7 The Tk event loop wouldn't end with TRACE_DEFAULT on (as in the tests). It expected the exhausted event queue to have only one event in it (the SIGCHLD polling event). With TRACE_DEFAULT, however, there are two. The second is for runtime statistics gathering. This change accounts for the second event when gathering statistics. 2004-07-11 05:46:30 by rcaputo; lib/POE/Kernel.pm 1.292 Note some TODOs in the source. One's an ugly bit of logging---a double message if a _trap isn't caught by eval. The other is a need to exercise some code should waitpid() return a strange value. That's an obscure assertion. It ensures that the operating system behaves according to expectations (something that doesn't always happen, especially when running on Strange New Systems). 2004-07-11 04:29:42 by rcaputo; lib/POE/Kernel.pm 1.291 Replaced the use of some public API functions with the private API functions they translate to. This reduces a level of indirection inside POE::Kernel's extra reference count management (yay, efficiency) and allows parameter errors to be reported correctly (yay, correctness). Oh, and I corrected a couple typos in some comments. Whee! 2004-07-11 01:03:49 by rcaputo; lib/POE/Kernel.pm 1.290 Correct a typo in an error message. Also tidied up some whitespace. 2004-07-10 18:43:38 by rcaputo; lib/POE/Kernel.pm 1.289 _trap_death() was not dying with the correct message. Now it should be. 2004-07-05 22:39:07 by rcaputo MANIFEST 1.100; MANIFEST.SKIP 1.8; mylib/coverage.perl 1.12 Switch from our homegrown Devel::Trace-based test coverage reporter to one using Devel::Cover. 2004-06-27 16:23:52 by rcaputo; lib/POE/Kernel.pm 1.288; lib/POE/Resource/Sessions.pm 1.15; lib/POE/Session.pm 1.100 Include the _stop event handler's return value in the _child "lose" event. (!!!) Programs that rely on the child session receiving _stop after the parent receives a _child event will be negatively affected by this change. The order of these events has been reversed so _stop's return value can be passed to the parent session along with _child. 2004-06-22 19:05:02 by rcaputo; lib/POE/Kernel.pm 1.287 Patched a doc nit noticed by Andrew A. Chen. Thanks, dude! 2004-06-13 16:49:37 by rcaputo; lib/POE/Preprocessor.pm 1.33 PAR understands POE::Preprocessor very well. Document this. 2004-06-13 16:48:28 by rcaputo; lib/POE.pm 1.178 Bump the version to indicate internal CVS development.
Back to POE CHANGES.