===========================
2005-08-19 17:01:32 v0_3201
===========================
2005-08-19 17:01:32 by rcaputo; lib/POE.pm 1.195
Bump the version for a bugfix release.
2005-08-19 16:12:46 by rcaputo; lib/POE/Component/Server/TCP.pm 1.55;
lib/POE/Wheel/ReadWrite.pm 1.72; lib/POE/Wheel/Run.pm 1.70
Abhishek Jain discovered a heretofore obscure socket leakage issue in
POE::Component::Server::TCP. New connection sockets were passed into
callbacks as closures, preventing them from being closed timely on
shutdown unless a session also exited. This commit fixes the problem
by passing new connections through POE::Session's args parameter
rather than tying them up in closures.
2005-08-10 14:44:08 by rcaputo; lib/POE/Kernel.pm 1.322
Invoke event handlers in void context if the dispatcher is called in
void context. Previously handlers would be called in scalar context,
causing a subtle edge case where objects wouldn't destruct properly.
2005-08-10 14:28:16 by rcaputo; lib/POE/Wheel/ReadLine.pm 1.38
Fix an amazing amount of tab damage. Yes, this commit is entirely to
fix whitespace.
=========================
2005-08-06 13:52:35 v0_32
=========================
2005-08-06 13:52:35 by rcaputo; lib/POE.pm 1.194
Increment the version for a new release.
2005-07-25 02:12:25 by rcaputo; MANIFEST 1.118;
lib/POE/Session.pm 1.113;
tests/90_regression/averell-callback-ret.t 1.1
Averell pointed out that callbacks via POE::Session->callback() do
not return their handlers' return values to the caller. This is
directly contraindicated by the comments. Furthermore, and perhaps
best, he submitted a small patch to fix it and a proper regression
test. His report was 100% perfect in all regards (even if his patch
was a little overzealous). Be like him.
2005-07-04 20:32:55 by rcaputo; lib/POE/Session.pm 1.112
Shorten and sweeten the documentation for postback() and callback().
2005-07-01 03:19:46 by rcaputo; MANIFEST 1.117;
lib/POE/Wheel/SocketFactory.pm 1.81;
tests/90_regression/broeren-win32-nbio.t 1.1
Apply Merijn Broeren's patch to SocketFactory for ActiveState Perl.
This improves the non-blocking connect code by not turning
non-blocking on for ALL sockets created in a process. NBIO is only
turned on for the ones created by the socket factory.
2005-07-01 03:15:42 by rcaputo
tests/30_loops/00_base/wheel_tail.pm 1.5
Cygwin under Virtual PC is just too many layers of emulation.
Increase the timeout to avoid false failures.
2005-06-30 16:39:15 by rcaputo; tests/30_loops/00_base/k_alarms.pm 1.2
Windows XP under Virtual PC is functional but teh sl0. Increase the
"reasonable" time factor for the alarm tests in the face of such time
dilation.
2005-06-30 15:02:16 by rcaputo;
tests/10_units/04_drivers/01_sysrw.t 1.5;
tests/30_loops/00_base/wheel_sf_unix.pm 1.4;
tests/30_loops/00_base/wheel_tail.pm 1.4
Work around Cygwin quirks in the tests. 1. syswrite() blocks on
non-blocking pipes, so I moved a test over to internet domain
sockets. 2. close() on non-blocking sockets writes, so I changed a
test to use shutdown() instead. 3. Files appear to be opened for
exclusive access by default, so the Wheel::FollowTail tests can't
run. This closes rt.cpan.org tickets 11553 and 11053.
2005-06-30 03:37:47 by rcaputo
tests/30_loops/00_base/wheel_sf_ipv6.pm 1.6
Correct a typo in a $^O check. Cygwin's ID is "cygwin", all
lowercase.
2005-06-29 21:46:21 by rcaputo; lib/POE/Loop/TkCommon.pm 1.14;
tests/30_loops/00_base/ses_session.pm 1.10;
tests/30_loops/00_base/wheel_run.pm 1.9
Preliminary fixes for coredumps when calling POE::Kernel->run() more
than once. Will be testing on OSX and ActiveState Perl before this is
through.
2005-06-29 05:44:51 by rcaputo; lib/POE/Loop.pm 1.7
Explain how POE finds a POE::Loop module. This closes rt.cpan.org
ticket 7852.
2005-06-29 04:56:32 by rcaputo
lib/POE/Kernel.pm 1.321; tests/10_units/03_base/11_assert_usage.t 1.4
Arturas Slajus (with diacriticals, however) reported a bug in POE's
signal handling (rt.cpan.org ticket 12953). This turned out to be
caused by calling sig() outside a running session. This change checks
that methods requiring to be called from running sessions actually
are, but it only does so when ASSERT_USAGE is enabled.
2005-06-29 04:05:44 by rcaputo; lib/POE/Filter.pm 1.15;
lib/POE/Filter/Block.pm 1.17; lib/POE/Filter/Grep.pm 1.8;
lib/POE/Filter/HTTPD.pm 1.42; lib/POE/Filter/Line.pm 1.26;
lib/POE/Filter/Map.pm 1.7; lib/POE/Filter/RecordBlock.pm 1.6;
lib/POE/Filter/Reference.pm 1.38; lib/POE/Filter/Stackable.pm 1.8;
lib/POE/Filter/Stream.pm 1.14;
tests/30_loops/00_base/wheel_sf_ipv6.pm 1.5
Lift POE::Filter::Reference's get() to POE::Filter, and modify most
of the other POE::Filter subclasses to use it. POE::Filter::HTTPD is
an exception because it doesnt' have a get_one() function.
POE::Filter::Stackable's get_one() was rewritten to accommodate the
change.
2005-06-29 02:49:34 by rcaputo; lib/POE/Session.pm 1.111
Add a mandatory carp() to POE::Session->new() per rt.cpan.org ticket
8468, and http://www.nntp.perl.org/group/perl.poe/2613 .
2005-06-28 22:31:11 by rcaputo; lib/POE/Component/Server/TCP.pm 1.54
Document new()'s return value, closing rt.cpan.org ticket 9373.
2005-06-28 06:18:21 by rcaputo; MANIFEST 1.116;
tests/10_units/05_filters/01_block.t 1.2;
tests/10_units/05_filters/04_line.t 1.2;
tests/10_units/05_filters/07_reference.t 1.5;
tests/10_units/05_filters/50_stackable.t 1.2;
tests/10_units/05_filters/99_filterchange.t 1.2;
tests/20_resources/00_base/filehandles.pm 1.4;
tests/30_loops/00_base/all_errors.pm 1.4;
tests/30_loops/00_base/comp_tcp.pm 1.2;
tests/30_loops/00_base/k_detach.pm 1.3;
tests/30_loops/00_base/k_selects.pm 1.2;
tests/30_loops/00_base/ses_nfa.pm 1.2;
tests/30_loops/00_base/ses_session.pm 1.9;
tests/30_loops/00_base/wheel_accept.pm 1.2;
tests/30_loops/00_base/wheel_sf_ipv6.pm 1.4;
tests/30_loops/00_base/wheel_sf_tcp.pm 1.2;
tests/30_loops/00_base/wheel_sf_udp.pm 1.2;
tests/30_loops/00_base/wheel_sf_unix.pm 1.3;
tests/30_loops/00_base/wheel_tail.pm 1.3;
tests/90_regression/suzman_windows.t 1.2
Deprecate the stinky old TestSetup library in favor of the shiny, and
way newer Test::More. This finally resolves rt.cpan.org ticket 7558.
2005-06-28 06:15:29 by rcaputo; lib/POE/Filter/Reference.pm 1.37
Fix tab damage I introduced in the last patch to Filter::Reference.
2005-06-27 04:32:59 by rcaputo; lib/POE/Filter/Reference.pm 1.36
Modify get_one() to not destroy the reference's header in the buffer,
in case it's a partial read and we switch the filter to something
else. In the past, the reference's header would be lost.
2005-06-10 18:09:47 by rcaputo; lib/POE/Filter/Block.pm 1.16;
lib/POE/Filter/Grep.pm 1.7; lib/POE/Filter/HTTPD.pm 1.41;
lib/POE/Filter/Line.pm 1.25; lib/POE/Filter/Map.pm 1.6;
lib/POE/Filter/RecordBlock.pm 1.5; lib/POE/Filter/Reference.pm 1.35;
lib/POE/Filter/Stackable.pm 1.7; lib/POE/Filter/Stream.pm 1.13
Make the POE::Filter::* classes inherit from POE::Filter despite that
they don't use anything in POE::Filter. This allows people to use
isa() to determine whether things are POE::Filter classes. Closes
rt.cpan.org ticket #13146.
Cleaned up the syntax somewhat in a few of the files.
I removed a huge chunk of redundant code in POE::Filter::Reference by
rewriting get() in terms of get_one_start() and get_one(). All tests
pass.
2005-05-30 08:32:56 by rcaputo; lib/POE/Kernel.pm 1.320
Remove the unused ET_SIGNAL_COMPATIBLE and rename the explicit
dispatch to ET_SIGNAL_RECURSIVE since that's what it is now. This
cleans up some vestiges from the signal deprecations.
2005-05-30 02:22:49 by rcaputo; MANIFEST 1.115
The last two regression tests won't do much good if they aren't in
the distribution.
2005-05-30 02:21:53 by rcaputo
tests/90_regression/steinert-signal-integrity.t 1.1
Add a regression test to ensure recursive signal dispatch doesn't
clobber signal parameters.
2005-05-30 02:20:34 by rcaputo; lib/POE/Kernel.pm 1.319
Put Jonathan Steinert's patch back. Fix recursive signal dispatch to
use copies of @$etc rather than the original in nested
_dispatch_event calls. Any future recursive _dispatch_event calls
will probably need to do the same.
2005-05-29 06:13:34 by rcaputo; lib/POE/Kernel.pm 1.318
Expose and document the new select() methods' arguments pass-through
parameters.
Modify Jonathan Steinert's @$etc clearing to preserve $_[ARG0] for
signal events. Recursive dispatch code really needs that. I suspect
that SIGCHLD dispatch is still broken, as many of the parameters
passed down to it will be wiped out before the event is dispatched
everywhere.
2005-05-29 06:10:49 by rcaputo
tests/20_resources/00_base/filehandles.pm 1.3
Modified the test for the internal _data_handle_add()'s new
pass-through arguments parameter.
2005-05-28 23:57:37 by rcaputo
tests/90_regression/steinert-passed-wheel.t 1.2
Add an Id tag. D'oh.
2005-05-28 23:56:42 by rcaputo
tests/90_regression/steinert-passed-wheel.t 1.1
Add a regression test for hachi's last commit. His commit breaks
something in SIGIDLE/SIGZOMBIE dispatch (k_aliases.t), and I want to
be sure I fix that without regressing the issue he fixed.
2005-05-28 22:45:02 by rcaputo
lib/POE/Kernel.pm 1.317; lib/POE/Resource/FileHandles.pm 1.20
Add pass-through parameters to POE::Kernel's select methods. Values
passed in this way will be passed back with the I/O events they
generate.
2005-05-25 00:54:57 by hachi; lib/POE/Kernel.pm 1.316
Arguments to an event should be cleaned up after the event is called,
but before we return control back to the Kernel (queued events) or
the calling Session (called events).
===========================
2005-05-20 04:20:08 v0_3101
===========================
2005-05-20 04:20:08 by rcaputo; lib/POE.pm 1.193
Bump up the version. Dance! Dance!
2005-05-18 23:08:17 by rcaputo; tests/30_loops/00_base/wheel_run.pm 1.8
Fall back to a single POE::Kernel->run() in this test because
multiple entries were crashing ActivePerl + Tk.
2005-05-17 07:19:20 by rcaputo; tests/30_loops/00_base/wheel_run.pm 1.7
Fix a miscount in the number of skipped tests under Windows. Also
skip all tests when using Event, as it seems that Event +
thread-simulated fork() + re-entering the event loop = Breakage.
2005-05-16 20:53:37 by hachi; lib/POE/Kernel.pm 1.315
Minor documentation gap, and some bad grammar.
2005-05-16 05:28:55 by rcaputo; mylib/coverage.perl 1.15
General cleanups during a Devel::Cover debugging session. Be more
careful about the steps taken. Display some debugging output.
Explicitly specify an output directory.
2005-05-16 04:09:37 by rcaputo; tests/30_loops/00_base/wheel_run.pm 1.6
The restructured tests cause one of the sessions to receive a SIGCHLD
when it doesn't have a wheel. Now we don't try to call a method on
that nonexistent wheel.
2005-05-15 22:20:59 by apocal; lib/POE/Component/Server/TCP.pm 1.53
Andrew A. Chen reported on the mailinglist that inet_aton wasn't
imported, thanks!
2005-05-15 07:09:44 by rcaputo; lib/POE/Loop/Event.pm 1.43;
lib/POE/Loop/PerlSignals.pm 1.10; lib/POE/Resource/Signals.pm 1.14
Fix SIGCHLD and SIGPIPE so they are IGNOREd by default. In SIGCHLD's
case, this means Perl will reap child processes so you don't need to
register a SIGCHLD handler if you don't care. In SIGPIPE's case, it
means programs won't die if they mistakenly write to a broken pipe.
Both situations have occurred since POE stopped setting default
handlers for these signals.
2005-05-15 07:07:16 by rcaputo; lib/POE/Loop/IO_Poll.pm 1.33
Use better choices for the poll(2) flags when watching filehandles
for normal (non-expedited/OOB) input and output. Drop the minimum
poll timeout hack for certain legacy Linux builds (it was 0 anyway).
2005-05-15 07:04:51 by rcaputo; tests/30_loops/00_base/wheel_run.pm 1.5
Skip the pty tests when IO::Poll or Event are used on Mac OS X. It
appears that OS X 10.4 has broken poll(2) when used with pseudo-ttys.
I haven't found a work-around other than to bypass the tests.
2005-05-15 07:02:25 by rcaputo;
tests/10_units/02_pipes/02_oneway.t 1.3;
tests/10_units/02_pipes/03_twoway.t 1.3
Moved the POE::Pipe::{One,Two}Way test code out of the
POE::Wheel::Run tests and into their own files. This shouldn't
sacrifice coverage since the pipe tests don't use event loops anyway.
2005-05-15 07:00:12 by rcaputo; lib/POE/Resource/Statistics.pm 1.5
Fix some cosmetic problems in the end-of-run statistics report.
2005-05-15 01:44:12 by hachi
tests/10_units/03_base/11_assert_usage.t 1.3
Duplicated test, same test is a couple lines up verbatim.
2005-05-14 23:48:12 by hachi; mylib/PoeBuildInfo.pm 1.6
Fix make distclean so test directories (not just the tests
themselves) are cleaned up. This helps to stop CVS from screaming at
you if you've run tests and then want to commit some changes (still
have to run make distclean, but at least it works.)
2005-05-14 20:29:02 by rcaputo; lib/POE/Component/Server/TCP.pm 1.52
Clear up the purpose and activities of ClientShutdownOnError, at
least a little bit.
2005-04-29 16:42:30 by rcaputo; tests/30_loops/00_base/k_detach.pm 1.2
Compensate for machines with variable CPU rates. They cause
hi-resolution time() to bobble backwards by a few milliseconds eveny
few seconds. This test requires events to run in a certain order, and
they don't under those circumstances. It may turn out that we need to
use a timeless priority queue for FIFO events rather than relying on
the clock to be monotonic.
2005-04-29 01:07:14 by sungo; Makefile.PL 1.37;
mylib/Makefile-5004.pm 1.35; mylib/Makefile-5005.pm 1.54
comment out the testreport functionality
2005-04-25 16:01:07 by rcaputo
lib/POE/Loop/Tk.pm 1.45; lib/POE/Loop/TkActiveState.pm 1.9
Put TkActiveState.pm's $VERSION in the correct package. Module::Build
will soon start examining version numbers more strictly.
2005-04-24 15:58:40 by rcaputo; lib/POE/Wheel/Run.pm 1.69
Document that POE::Wheel::Run and POE do not reap child processes
unless an event is registered for SIGCHLD.
2005-04-22 20:36:32 by rcaputo; lib/POE/Filter/Reference.pm 1.34;
lib/POE/Resource/Sessions.pm 1.20; lib/POE/Resource/Statistics.pm 1.4;
lib/POE/Wheel/Curses.pm 1.13; lib/POE/Wheel/ReadLine.pm 1.37;
tests/20_resources/00_base/caller_state.pm 1.2;
tests/90_regression/ferrari-server-unix.t 1.2
Remove tabs from source code. People (myself included) have been
introducing them with edits and patches.
2005-04-22 20:35:21 by rcaputo; lib/POE/Loop/Tk.pm 1.44;
lib/POE/Loop/TkActiveState.pm 1.8; lib/POE/Loop/TkCommon.pm 1.13
Enable support for $kernel->run_one_timeslice() under Tk. I had to
implement loop_do_timeslice() and replace Tk's MainLoop with a custom
one in loop_run(). I haven't tested this against the memory leak test
cases in rt.cpan.org, but I'm hoping this code (which is less twisty)
will solve those issues as well.
2005-04-22 20:32:11 by rcaputo
lib/POE/Wheel/Run.pm 1.68; tests/30_loops/00_base/wheel_run.pm 1.4
ActiveState Perl + Tk + POE::Wheel::Run + coderefs = Pain.
ActiveState Perl emulates fork() with iThreads. Only Perl's core
exit() will properly "exit" a "process". Tk overrides exit() with its
own XS magic. This seems to kill off the parent "process". When
POE::Wheel::Run is used to run subroutines (coderefs) in child
processes, it must somehow exit() the child process, simulating exec.
Under Windows, that's Perl's core exit(), which is usurped by Tk,
which causes ALL MANNER OF EVIL! DON'T GO THERE! WE SURE AREN'T!
2005-04-22 20:27:23 by rcaputo; test.pl 1.3
Add some demo comments about how to focus on just one event loop's
tests.
2005-04-21 17:38:44 by rcaputo
tests/30_loops/00_base/wheel_sf_ipv6.pm 1.3
Resolve rt.cpan.org ticket 11056: Socket6.pm can be installed under
Cygwin, but Cygwin doesn't support IPv6.
2005-04-21 17:19:07 by rcaputo; lib/POE/Pipe.pm 1.14;
lib/POE/Resource/FileHandles.pm 1.19;
lib/POE/Wheel/SocketFactory.pm 1.80
Apply Ed W's advice regarding non-blocking connect() in ActiveState
Perl. His advice works in stand-alone (non-POE) tests, and the change
doesn't break anything in POE's test suite, but I haven't actually
tested whether non-blocking connect() works under POE now.
=========================
2005-04-18 06:34:52 v0_31
=========================
2005-04-18 06:34:52 by rcaputo; tests/30_loops/00_base/k_signals.pm 1.5
Re-entering Tk::MainLoop too many times, plus signals, seems to
produce a very deterministic coredump, at least on my current FreeBSD
perl build. Removed one of three instances of POE::Loop->run(), and
the crashy-dumpy seems to have gone away.
2005-04-18 05:47:34 by rcaputo
README 1.107; lib/POE.pm 1.192; lib/POE/Wheel/Run.pm 1.67
Documentation tweaks. Bump the version up to 0.31 for release.
2005-04-18 05:03:23 by rcaputo; mylib/gen-tests.perl 1.8
Replace exit(0) in the test templates with POSIX::_exit(0). Some
libraries (*cough*Tk*cough*) override Perl's exit(), which seems to
cause trouble with certain tests' exit values. So even if all the
tests pass, the FILE fails! Augh! This seems to work around it
nicely, and it's good mojo on OS X, FreeBSD, and ActivePerl.
2005-04-13 15:25:25 by rcaputo; lib/POE/Wheel/Run.pm 1.66
Replaced {STDIN,STDOUT,STDERR}_FILENO with checks for fileno() in the
close-on-exec loop we have hand-rolled. I'm hoping the regular
close-on-exec works similarly and won't close STDIN/STDOUT/STDERR if
their descriptors happen to be >2.
2005-04-13 14:56:30 by rcaputo; lib/POE/Component/Server/TCP.pm 1.51
Applied Nick Williams' patch to add Hostname to Server::TCP. This is
a nonambiguous unpacked hostname or address that will be passed
through inet_aton(). Useful when your hostnames can be four
characters long, since they look suspiciously like packed addresses
to length().
2005-04-13 01:48:23 by rcaputo; mylib/PoeBuildInfo.pm 1.5
Remove Test::More as a dependency. It has a tendency to want lots of
other modules. That dependency tree eventually leads to installing a
new version of Perl. Big can of worms.
2005-04-12 23:02:19 by rcaputo; lib/POE/Resource/Sessions.pm 1.19;
lib/POE/Wheel/FollowTail.pm 1.54;
tests/30_loops/00_base/wheel_tail.pm 1.2
Uhlarik OndÃej suggested that POE::Wheel::FollowTail should be
allowed to follow files that don't exist yet. This change adds that
feature, resolving Uhlarik's rt.cpan.org ticket, number 6048. I hope
the utf-8 in his name comes through.
2005-04-12 22:17:15 by rcaputo; lib/POE/Resource/Events.pm 1.14
A cheap indent fix.
2005-04-12 18:40:07 by rcaputo; Makefile.PL 1.36
Replace the hardcoded "make" utility with $Config::Config{make} so
it's "nmake" or a cabbage or something on systems with nonstandard
build tools.
2005-04-12 03:59:17 by rcaputo; lib/POE/Filter/HTTPD.pm 1.40
This guy named Jack has written a WebDAV server with POE and needs
Filter::HTTPD not to bomb if the request method isn't GET, HEAD, or
POST. I've applied a modified version of his patch, resolving RT
ticket #11821.
2005-04-12 02:23:28 by rcaputo; mylib/PoeBuildInfo.pm 1.4
Add Test::Harness to the dependencies in an effort to solve
rt.cpan.org ticket 12101 (Test::Harness being indexed as part of
POE).
2005-04-12 01:43:22 by rcaputo; lib/POE/Kernel.pm 1.314;
lib/POE/Wheel/Run.pm 1.65; mylib/Makefile-5005.pm 1.53;
tests/30_loops/00_base/wheel_run.pm 1.3
Nick Williams and Merijn Broeren at MSDW did the impossible and
managed to make POE::Wheel::Run pass actual tests on ActivePerl.
Damn, they're GOOD! This round of patches isn't 100% perfect (there's
an issue with the Wheel under POE::Loop::Tk), but I'm confident it'll
be CPAN-worthy shortly.
2005-04-12 01:39:02 by rcaputo; Makefile.PL 1.35
Part of ExtUtils::AutoInstall's automated install procedure involves
calling Makefile.PL multiple times with different parameters. This
was causing the multiple "wanna run network tests?" questions. Now we
skip the network tests prompt if Makefile.PL is being run again by
ExtUtils::AutoInstall.
2005-03-22 08:04:09 by rcaputo; lib/POE/Wheel/ReadWrite.pm 1.71
Update the code style, but nothing else is changed. This was while
looking for a memory leak in IKC, but the leak hasn't been
found/fixed yet.
2005-03-22 08:02:51 by rcaputo; lib/POE/Kernel.pm 1.313
Make the wantarray code in call() more explicit, but don't change the
semantics. This is while looking for a memory leak in IKC, but the
leak hasn't been found/fixed yet.
2005-03-17 04:30:31 by apocal; lib/POE/Filter/Reference.pm 1.33
Patched it to cache the default freezer for performance reasons -
brought up by bline, look at this ticket for more info -
https://rt.cpan.org/Ticket/Display.html?id=11897
2005-03-10 20:21:55 by rcaputo; lib/POE/Session.pm 1.110
Applied Martijn van Beers' patch to make callbacks add reference
counts just like postbacks do. Thanks, Martijn!
2005-02-20 15:56:42 by rcaputo; lib/POE/Filter/HTTPD.pm 1.39
Applied Martijn van Beers' patch to allow more than one request on a
single connection. Also adjusted the code's style and spacing.
2005-02-09 16:26:48 by rcaputo; lib/POE/Loop/TkCommon.pm 1.12
Tk::After timers don't use stop(). Rather, they use cancel(). I'm
shocked---SHOCKED, I SAY---that I never ran into this before.
2005-02-03 20:48:56 by rcaputo; lib/POE/Kernel.pm 1.312
Fix the call() example in the docs. Thanks to Tim Klein for spotting
the error.
2005-02-02 06:02:21 by rcaputo; lib/POE/Wheel/Run.pm 1.64
Apply Matt Trout's NoSetSid patch to POE::Wheel::Run. When set, it
disables setsid() in the child process. This closes rt.cpan.org
ticket #3763.
2005-02-02 04:44:37 by rcaputo; lib/POE/Kernel.pm 1.311;
lib/POE/Loop/Event.pm 1.42; lib/POE/Loop/PerlSignals.pm 1.9;
lib/POE/Loop/Select.pm 1.58; lib/POE/Loop/TkCommon.pm 1.11;
lib/POE/Resource/Signals.pm 1.13;
tests/10_units/03_base/11_assert_usage.t 1.2;
tests/20_resources/00_base/aliases.pm 1.2;
tests/20_resources/00_base/events.pm 1.4;
tests/20_resources/00_base/extrefs.pm 1.3;
tests/20_resources/00_base/filehandles.pm 1.2
Only poll for SIGCHLD when someone actually requests sig(CHLD)
events. Most programs, most of the time, will be a lot less noisy
when TRACE_EVENTS and friends are active. This closes rt.cpan.org
ticket #8821.
2005-02-02 02:22:16 by rcaputo; lib/POE/Loop/Select.pm 1.57
Remove the minimum timeslice constant. Nobody complained while it was
set to 0, so the old Linux bug it worked around must surely be
flushed out of most systems by now.
2005-01-29 20:11:41 by rcaputo; lib/POE/Wheel/FollowTail.pm 1.53
Add a tell() method so programs can resume tailing a log where they
previously left off. Feature requested by Thomas Nagel. Closes
rt.cpan.org ticket 8461.
2005-01-28 22:57:30 by rcaputo; samples/fakelogin.perl 1.10;
samples/forkbomb.perl 1.15; samples/names.perl 1.10;
samples/objmaps.perl 1.6; samples/objsessions.perl 1.12;
samples/packagesessions.perl 1.9; samples/selects.perl 1.14;
samples/sessions.perl 1.21; samples/signals.perl 1.15;
samples/thrash.perl 1.14; samples/wheels2.perl 1.7
Remove POE::Session->new() from the tarball samples. Resolves
rt.cpan.org ticket 8465.
2005-01-28 22:55:33 by rcaputo;
tests/20_resources/00_base/events.pm 1.3;
tests/30_loops/00_base/all_errors.pm 1.3;
tests/30_loops/00_base/k_signals.pm 1.4;
tests/30_loops/00_base/ses_session.pm 1.8
Remove POE::Session->new() from tests. This wasn't an RT ticket, but
it should have been.
2005-01-28 22:53:31 by rcaputo
lib/POE/Kernel.pm 1.310; lib/POE/Session.pm 1.109
Remove new() from documentation samples. This resolves rt.cpan.org
ticket 8464.
2005-01-28 17:54:25 by rcaputo; lib/POE/Queue.pm 1.4
Remove link to ADT::PriorityQueue per Sam Carmalt's report.
2005-01-28 16:29:19 by lotr; lib/POE/Session.pm 1.108
Create a instantiate method, so you can override that when you want
to process extra parameters when subclassing POE::Session. closes bug
#8450
2005-01-28 08:07:35 by rcaputo; lib/POE/Wheel/Run.pm 1.63
Applying Jay Kim's patch from RT ticket 8807. This adds checks to
make sure redirection actually works in the child program. Nasty
deathy things happen if redirection fails, so we should at least know
why, right?
2005-01-28 07:52:45 by rcaputo; lib/POE/Wheel/Run.pm 1.62
Jay Kim reported that setsid() wasn't being effectively called. It
would have thrown an "Undefined subroutine" error had it not been
encased in eval{}. Applied Jay's patch.
2005-01-28 07:48:41 by rcaputo; lib/POE/Session.pm 1.107
Fix a typo in the documentation, thanks to an anonymous tip in
rt.cpan.org bug 8716.
2005-01-28 07:38:33 by rcaputo; MANIFEST 1.114;
lib/POE/Component/Server/TCP.pm 1.50;
tests/90_regression/ferrari-server-unix.t 1.1
Martin Ferrari pointed out that there's an annoying warning when
using POE::Component::Server::TCP in the undocumented AF_UNIX mode.
This commit applies his patch and adds his test case so it won't
happen again.
===========================
2005-01-17 17:48:28 v0_3009
===========================
2005-01-17 17:48:28 by rcaputo; lib/POE.pm 1.191
Bump the version to 0.3009 for a new CPAN bugfix release.
2005-01-17 17:46:28 by rcaputo
tests/90_regression/rt1648-tied-stderr.t 1.2
This regression test requires fork(), but it didn't skip if the
system can't support fork(). This commit addresses rt.cpan.org ticket
#9808 and testers.cpan.org report #176869 by skipping the tests on
lame platforms.
===========================
2005-01-02 17:45:38 v0_3007
===========================
2005-01-02 17:45:38 by rcaputo
lib/POE.pm 1.190; lib/POE/Filter/HTTPD.pm 1.38
Richard Clamp pointed out that Filter::HTTPD doesn't import all the
symbols it needs. This indicates a Great Need to have that filter
tested properly. Also bumped POE.pm to 0.3007 for a quick bugfix
release.
2004-12-30 20:58:42 by rcaputo; lib/POE.pm 1.189
Bump the distro version to 0.3006 to differentiate the CVS version
from the CPAN release.
===========================
2004-12-30 20:35:45 v0_3005
===========================
2004-12-30 20:35:45 by rcaputo; lib/POE.pm 1.188
Bump version to 0.3005 for release.
2004-12-30 16:25:24 by rcaputo; mylib/PoeBuildInfo.pm 1.3
Because there's a behavioral difference between Test::More releases,
require the one the tests have been verified to work with.
2004-12-30 16:22:48 by rcaputo
tests/20_resources/00_base/signals.pm 1.3
Khisanth on IRC reported a problem with the signals test. Somni
tracked the problem down to a change in Test::More behavior. Once I
knew the source of the problem, I was able to reproduce it easily
(upgrade Test::More). Now it's fixed. Thanks!
2004-12-18 04:24:57 by rcaputo
lib/POE.pm 1.187; lib/POE/Loop.pm 1.6; lib/POE/Preprocessor.pm 1.35
Mike Castle found references to the old POE::Loop::Poll in the
documentation. Now they are corrected to refer to POE::Loop::IO_Poll.
2004-12-03 03:35:36 by rcaputo; lib/POE/NFA.pm 1.31
Tom Klein pointed out a typo in one of the POE::NFA error messages.
This commit fixes it, and also undoes the emacs-centric (also known
as "funky groupers") grouping and indenting in the code and
documentation.
2004-12-02 16:21:20 by rcaputo; lib/POE/Session.pm 1.106
Point the user at the RT ticket 8462, which is the umbrella for all
the tasks in the deprecation.
2004-12-02 07:30:27 by apocal; lib/POE/Session.pm 1.105
Actually document the new() deprecation as per RT#8469
2004-12-02 00:20:59 by apocal; lib/POE.pm 1.186;
lib/POE/API/Ctl.pm 1.3; lib/POE/Filter/HTTPD.pm 1.37;
lib/POE/Kernel.pm 1.309; lib/POE/Pipe.pm 1.13;
lib/POE/Pipe/OneWay.pm 1.14; lib/POE/Pipe/TwoWay.pm 1.17;
lib/POE/Resource/Controls.pm 1.4; lib/POE/Wheel/Curses.pm 1.12;
lib/POE/Wheel/FollowTail.pm 1.52; lib/POE/Wheel/ListenAccept.pm 1.30;
lib/POE/Wheel/ReadLine.pm 1.36; lib/POE/Wheel/ReadWrite.pm 1.70;
lib/POE/Wheel/SocketFactory.pm 1.79
This patch is the beginning of RT#1692, hopefully I got them all,
help me test, test, test!
2004-11-27 16:52:13 by rcaputo; MANIFEST 1.113;
lib/POE/Wheel/Run.pm 1.61; tests/90_regression/rt1648-tied-stderr.t 1.1
Resolve rt.cpan.org #1648. Tied STDOUT, STDERR would cause
POE::Wheel::Run child processes to eat output, never sending it back
to the parent. This change unties STDOUT, STDERR if they're tied,
griping at the user in the process. So to speak.
2004-11-27 16:25:03 by rcaputo; lib/POE.pm 1.185
POE 0.3003 seems to be stable. The first couple CPAN testers' reports
came back PASS rather than FAIL, anyway. Bump the version te 0.3004
for CVS development.
===========================
2004-11-26 22:25:25 v0_3003
===========================
2004-11-26 22:25:25 by rcaputo; lib/POE.pm 1.184
Increase minor version for another 0.30 fix release. Hopefully the
installer will succeed on more CPAN testers' machines.
2004-11-26 22:13:07 by rcaputo; MANIFEST 1.112
Oh, and we'll need to distribute PoeBuildInfo.pm, so put it in
MANIFEST.
2004-11-26 21:21:54 by rcaputo; mylib/Makefile-5004.pm 1.34;
mylib/Makefile-5005.pm 1.52; mylib/PoeBuildInfo.pm 1.2;
mylib/gen-meta.perl 1.2
Switch from variables to "constant" subroutines. Just because it
compiles, and it looks like it's runnig, doesn't mean it works. Check
the messages more carefully before committing next time.
2004-11-26 19:02:19 by rcaputo; mylib/Makefile-5004.pm 1.33
Fix a syntax error, and have "make dist" fail all the time under old
versions of Perl.
2004-11-26 18:53:12 by rcaputo; Makefile.PL 1.34
Add some comments.
2004-11-26 18:51:21 by rcaputo
mylib/Makefile-5004.pm 1.32; mylib/Makefile-5005.pm 1.51
Use PoeBuildInfo.pm rather than hardcode common data in both versions
of Makefile.pm.
2004-11-26 18:49:55 by rcaputo; mylib/PoeBuildInfo.pm 1.1
Moved prerequisites, recommended modules, file cleanup configuration,
and a few other bits into a common library. The same data is used by
the 5.004 and 5.005 versions of Makefile.PL, and it's also needed by
the new gen-meta.perl utility.
2004-11-26 18:47:57 by rcaputo; mylib/gen-meta.perl 1.1
Moved the META.yml generation to a separate utility. This lets us
build a proper META.yml without Build.PL fouling up installation and
testing. It also avoids moving the Module::Build code into
Makefile.PL, where it would become a mandatory prerequisite. It's
only used during "make dist" anyway.
2004-11-26 18:41:00 by rcaputo; MANIFEST 1.111
Remove Build.PL. CPANPLUS spots it and tries to build POE with it,
which wouldn't be so bad if Module::Build didn't eat test.pl's
STDOUT. Hilarity (such as this CPAN testers failure) ensues:
test....FAILED before any test output arrived FAILED--1 test script
could be run, alas--no output ever seen
2004-11-26 16:41:38 by rcaputo; mylib/Makefile-5004.pm 1.31
The test reports are generated based on which perl is running. The
5.004 makefile would run the reports under whichever perl was caught
first in the user's path. This commit propagates the perl version
that was used to run Makefile.PL down to the test report.
===========================
2004-11-25 21:10:41 v0_3002
===========================
2004-11-25 21:10:41 by rcaputo; lib/POE.pm 1.183
Clean cup! Clean cup! Move down! Move down!
In this case, move up. Move the version up for another release.
2004-11-25 21:09:02 by rcaputo; mylib/testreport.pl 1.15
I broke the test report tool when I renamed the test directories.
Furthermore, the tool checked in Makefile, and the whole point of
renaming the directory was to get them OUT of Makefile. It should be
fixed now.
===========================
2004-11-25 20:11:19 v0_3001
===========================
2004-11-25 20:11:19 by rcaputo; lib/POE.pm 1.182
Module::Build seems to enable YAML support at install time. If you
don't have YAML then, then you don't get full META.yml files later
on.
Bump the release to 0.3001. This distribution's built AFTER
reinstalling YAML then Module::Build at gunpoint.
=========================
2004-11-25 19:44:12 v0_30
=========================
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 Nilson
Santos (nilsonsfj on the CPAN) 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!
=============================
Beginning of Recorded History
=============================