The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
=========================
2003-05-10 17:20:21 v0_26
=========================

  2003-05-10 17:20:21 by rcaputo; POE.pm 1.159; README 1.104

    Increase the version number to 0.26 for release. Revise the README
    for clarity, conciseness, etc. 

  2003-05-08 22:54:43 by rcaputo; t/29_sockfact6.t 1.8

    Add a warning to explain the most likely cause of this module
    hanging. Thanks to Somni for reminding me of the problem. 

  2003-05-04 04:35:59 by rcaputo; POE.pm 1.158

    Increase version from 0.2502 (first release candidate for 0.26) to
    0.2503 (live CVS for any last minute bug fixes before 0.26). 

  2003-05-04 04:33:37 by rcaputo; POE.pm 1.157

    Increasing the version from 0.2501 (CVS after 0.25) to 0.2502 (first
    release candidate for 0.26). 

  2003-05-03 01:46:16 by rcaputo; POE/Wheel/SocketFactory.pm 1.71

    A previous patch to shutdown client sockets before they had closed
    used $self in closures which themselves were stored in $self,
    resulting in circular references that would prevent the patch from
    actually working. This patch goes through some gyrations to break
    those circular references. 

  2003-05-02 12:55:23 by rcaputo; lib/Makefile-5005.pm 1.28

    Require ExtUtils::AutoInstall version 0.50. 

  2003-05-02 12:48:14 by rcaputo; lib/Makefile-5005.pm 1.27

    Add ExtUtils::AutoInstall's postamble() so the automatic installation
    things work. 

  2003-05-02 12:36:20 by rcaputo; POE/Wheel/ReadWrite.pm 1.62

    Added the ability to shutdown() input/output on a ReadWrite wheel
    attached to a socket. Thanks to Peter Chen for suggesting it. 

  2003-04-29 22:18:31 by rcaputo; POE/Kernel.pm 1.240

    Applied Nick Williams' patch to avoid internal inconsistency problems
    with signals use:

    > When using the kernel's signal() method to send a user-defined >
    signal, it's possible to get a signal dispatched to a session which >
    is in the process of shutting down (i.e. about to call the _stop >
    event). However, the garbage collection in >
    _data_sig_free_terminated_sessions doesn't take this into account >
    and can cause POE to die screaming with an internal inconsistency >
    error in _data_ses_collect_garbage. 

  2003-04-29 15:52:59 by rcaputo
  POE/Kernel.pm 1.239; POE/NFA.pm 1.19; t/23_nfa.t 1.6

    Fix POE::NFA's stop() method. Previously it was using POE::Kernel's
    session_free() method, which was recently renamed. 

  2003-04-21 14:54:36 by rcaputo; POE/Kernel.pm 1.238

    Work around the persistent double-GC problem by avoiding a second GC
    on a defunct session. 

  2003-04-08 01:01:44 by rcaputo; POE/Kernel.pm 1.237

    Applied Brandon Beamer's POD patch for $poe_main_window when using Tk
    with POE. 

  2003-04-07 06:19:28 by rcaputo; lib/ExtUtils/AutoInstall.pm 1.3

    Update to version 0.50. 

  2003-04-07 04:22:02 by rcaputo; POE/Wheel/SocketFactory.pm 1.70

    Fixed a leak discovered by dynweb. In client mode, SocketFactory
    would did release its grip on the socket until destroyed. He found
    the leak in a program that passed the socket to
    $kernel->select_read() without destroying the SocketFactory. 

  2003-04-05 06:45:37 by rcaputo; t/08_errors.t 1.44

    Commit Alan Hastings' more proper patch for Cygwin support. 

  2003-04-03 04:01:56 by rcaputo; POE/Wheel/Run.pm 1.46

    Apply Alan Hastings' Cygwin support patch. 

  2003-04-03 04:00:47 by rcaputo; POE/Wheel/SocketFactory.pm 1.69

    Patch the documentation for the Reuse parameter. Also support another
    reasonable alternative. It might be best, however, to trust the user
    to supply a proper Perl boolean value. 

  2003-03-24 16:48:58 by rcaputo
  POE/Wheel/Run.pm 1.45; t/22_wheel_run.t 1.31

    Applied and documented Dmitri Tikhonov's patch for the ProgramArgs
    feature. This lets master programs specify parameters for
    code/programs that are forked off, avoiding closures and the possible
    memory leaks created by them. The tests were extended to exercise the
    new feature. 

  2003-03-24 16:46:32 by rcaputo; lib/cvs-log.perl 1.4

    It seems impossible to avoid duplicate tags (identical timestamp) for
    the initial import of a source tree into CVS. The usual convention is
    to tag the first import as "start", so we ignore any other tags that
    coincide with that. 

  2003-03-16 07:46:10 by rcaputo; t/28_windows.t 1.5

    The two-second timeout was too slow for the 486 I'm using to test
    Windows NT. Increased the timeout to five seconds so that the test
    doesn't trigger false failures on slow machines. 

  2003-03-05 17:22:23 by rcaputo; POE/Kernel.pm 1.236

    Hachi's double-free fix leaves the code in this file, but it's
    commented out. I'm commenting it so archaeologists will know what he
    was thinking. 

  2003-03-05 17:20:13 by rcaputo; POE/Component/Client/TCP.pm 1.31

    Clear the Client::TCP component's alias on shutdown. Otherwise, if
    something else in the program is active, the Client will disconnect
    but its internal session won't _stop. "Buzz Darkyear" on MagNet #poe
    reported this one. 

  2003-03-03 16:27:01 by sungo; POE/Kernel.pm 1.235

    add the ability to disable Time::HiRes usage via a constant. document
    this interface 

  2003-03-03 15:51:46 by sungo; POE/Loop/Select.pm 1.44

    oops. still need to set a minumum select timeout 

  2003-03-03 15:47:18 by sungo; POE/Loop/Select.pm 1.43

    comment out the linux select timeout workaround and comment why 

  2003-03-02 07:20:40 by hachi; POE/Kernel.pm 1.234

    Bug squashing attempt, sessions that used postbacks may in the past
    get garbage collected twice, there was an internal consistency check
    to this effect which made a confess() call.

    I hope I wasn't supposed to increment the version to .2502 or
    something before committing. 

  2003-02-28 22:40:47 by rcaputo; Makefile.PL 1.26

    <sky> what happens is that the code is compiled twice, and the first

    time in the same scope as the ST_TIME <dngnand> This is the 0.22 bug?
    <sky> yes <sky> the bug exists in non threaded and threaded perl
    <sky> but because threaded perl keeps constants on the pad, it

    actually shows <dngnand> Oh! Does it also do this in blead, then?
    <sky> no, but maintblead <sky> blead fixes it <sky> but blead has
    mucho rewritten pad handling <dngnand> Do you think this is something
    that will bite regular

    POE/Perl users? <sky> not in 0.23+ <dngnand> I'll remove the warning
    from Makefile.PL, then. 

  2003-02-27 00:10:35 by cwest; POE/Wheel/FollowTail.pm 1.43

    From the mailing list:

    Date: Tue, 25 Feb 2003 16:28:11 -0800

    From: Jim Westfall <jwestfall@surrealistic.net>

    To: poe@perl.org

    Subject: FollowTail behavior change with SeekBack

    I recently upgraded to 0.25 from 0.23 and noticed there is a

    behavior change to FollowTail with the SeekBack option. A

    'SeekBack' => 0 is now causing it to seek back instead of seeking to

    the EOF like one would expect. The code was as follows

    my $seek_back = ( (defined $params{SeekBack})

    ? $params{SeekBack}

    : 4096

    );

    and has been changed to

    my $seek_back = $params{SeekBack} || 4096;

    so now if $params{SeekBack} is undefined or set to 0 it will make

    $seek_back 4096. simple workaround on my part is to set SeekBack to

    -1.

    A simular situation exists with the PollInterval option, tho I dunno

    if 0 would be a valid option for it.

    __END__

    This was a short sided change. The old behaviour is correct and has
    been restored. 

  2003-02-22 03:00:35 by sungo; lib/events_per_second.pl 1.1

    first stab at a benchmark of various event loops. run with --help
    option for usage 

  2003-02-18 15:08:55 by rcaputo; t/08_errors.t 1.43

    Cygwin doesn't give us warnings when creating this bogus
    SocketFactory. This patch works around Cygwin's strange behavior in a
    most unsatisfying way. 

  2003-02-07 19:34:20 by rcaputo; POE.pm 1.156

    Bump the version to the next "CVS" number. 

=========================
2003-02-07 17:48:47 v0_25
=========================

  2003-02-07 17:48:47 by rcaputo; POE.pm 1.155; README 1.103

    Finalize things for the imminent 0.25 release. 

  2003-02-07 05:03:43 by hachi
  POE/Component/Client/TCP.pm 1.30; POE/Component/Server/TCP.pm 1.35

    Documentation cleanup in PoCo::Client::TCP and PoCo::Server::TCP

    First time I committed CVS (outside of my own hard drive) Yay me! 

  2003-02-06 20:07:15 by rcaputo; t/04_selects.t 1.17

    This fix is against against revision 1.14. Forcing that new test to
    use "inet" pipes breaks on systems where localhost is firewalled.
    Tweaked the test to use whichever pipes it can under non-Windows
    operating systems, and forced it to "inet" for MSWin32. A real
    solution would be to skip the test entirely if the pipe can't be
    built. I suspect we'll need to revisit this later. 

  2003-02-06 03:30:38 by rcaputo; t/06_tk.t 1.40

    It is unfortunate, but a bug in ActivePerl 5.8.0's version of Tk
    prevents us from supporting Tk at all in this build. We regret the
    inconvenience and hope that support can resume in a future ActivePerl
    build. Meanwhile, you may follow the status of the bug at
    http://bugs.activestate.com/show_bug.cgi?id=22619 

  2003-02-06 03:25:52 by rcaputo; POE/Loop/Tk.pm 1.39

    Collateral refactoring while trying to work around ActivePerl's
    problem with Tk, and Tk's problem with my preferred workaround. 

  2003-02-05 16:22:11 by rcaputo; POE/Kernel.pm 1.233

    Nancy Grady pointed out that Randal Schwartz's listing at
    http://www.stonehenge.com/merlyn/LinuxMag/col41.listing.txt was not
    exiting when it was done. This turned out to be a missing garbage
    collection test in POE::Kernel, introduced during the Great
    Refactoring of 2002. This fix adds back the GC test that was removed. 

  2003-02-04 03:32:01 by rcaputo; POE/Pipe.pm 1.9

    Bad Rocco! Always verify copied/pasted/tweaked code has actually been
    tweaked, or you'll keep doing things like what was fixed here.
    Luckily it hadn't caused any trouble to speak of. 

  2003-02-01 19:13:27 by cwest
  POE/Component/Client/TCP.pm 1.29; POE/Component/Server/TCP.pm 1.34

    The code to validate SessionParams was broken. Even when
    SessionParams was defined correctly, it was overwritten with an empty
    array reference. This has been fixed. 

  2003-02-01 04:52:07 by cwest; t/001_queue.t 1.2; t/00_coverage.t 1.17;
  t/01_sessions.t 1.22; t/02_alarms.t 1.12; t/03_aliases.t 1.12;
  t/04_selects.t 1.16; t/05_macros.t 1.6; t/06_tk.t 1.39;
  t/07_event.t 1.16; t/08_errors.t 1.42; t/09_wheels_unix.t 1.14;
  t/10_wheels_tcp.t 1.13; t/11_signals_poe.t 1.24;
  t/12_signals_ev.t 1.17; t/13_wheels_udp.t 1.4; t/14_wheels_ft.t 1.11;
  t/15_filter_block.t 1.4; t/16_filter_stream.t 1.3;
  t/17_filter_ref.t 1.6; t/18_filter_line.t 1.7;
  t/19_filterchange.t 1.11; t/20_accept.t 1.5; t/21_gtk.t 1.16;
  t/22_wheel_run.t 1.30; t/23_nfa.t 1.5; t/24_filter_stack.t 1.3;
  t/25_detach.t 1.4; t/26_comp_tcp.t 1.3; t/27_poll.t 1.6;
  t/28_windows.t 1.4; t/29_sockfact6.t 1.7

    Resolving Ticket #1597 on rt.cpan.org

    All tests now look in ./lib, ../lib, .., and . for libraries so as to
    not go testing already installed libraries. 

  2003-02-01 04:17:41 by cwest; POE/Component/Client/TCP.pm 1.28

    Added new() parameters SessionType and SessionParams. SessionType
    allows you to override the default POE session handler, POE::Session,
    with your choice of drop in replacement such as
    POE::Session::MultiDispatch. SessionParams allows you to pass extra
    arguments to the SessionType's constructor. Most useful are things in
    the options hash. 

  2003-02-01 04:04:39 by cwest; POE/Component/Server/TCP.pm 1.33

    Added create() parameters SessionType and SessionParams. SessionType
    allows you to override the default POE session handler, POE::Session,
    with your choice of drop in replacement such as
    POE::Session::MultiDispatch. SessionParams allows you to pass extra
    arguments to the SessionType's constructor. Most useful are things in
    the options hash. 

  2003-01-26 03:30:39 by rcaputo
  POE/Kernel.pm 1.232; POE/Wheel/Run.pm 1.44

    The old HP-UX SIGRTMIN bug in Perl bit us again on Gentoo Linux. It
    appears the hints for that platform allow all these non-signal
    /SIG.*/ symbols into the %SIG hash, and setting them causes perl to
    segfault. Normally we wouldn't know about it, but recent signal
    reforms have reintroduced the errors. This time we build a single
    list of safe signals and use that instead of keys(%SIG). If we're
    lucky, this will be the last of that. 

  2003-01-21 22:22:35 by rcaputo; POE/Wheel/FollowTail.pm 1.42

    One cannot assume that filehandles have methods such as clearerr().
    If one does, someone (Hi, Rob Bloodgood) using Perl 5.005_03 will
    inform one that one's code doesn't work. One will therefore be
    required to commit patches such as this one that replaces
    $handle->clearerr() with IO::Handle::clearerr($handle). One might be
    somewhat bitter about all these tethers holding one from using more
    modern coding techniques. Gulliver probably felt similar upon
    awakening Lilliput. 

  2003-01-21 07:27:59 by rcaputo; t/08_errors.t 1.41

    Wheel::Run can change input/output filters now, so remove the tests
    which no longer generate errors. 

  2003-01-21 07:26:43 by rcaputo
  POE/Kernel.pm 1.231; POE/Pipe.pm 1.8; POE/Wheel/SocketFactory.pm 1.68

    The introduction of $handle->blocking() for ActivePerl 5.8.0 breaks
    perl 5.005_03 on two counts. First, filehandles aren't blessed into
    IO::Handle by default. Second, blocking() doesn't exist in the older
    Perl. Reintroduce the homegrown non/blocking code for legacy Perl,
    but use the portable IO::Handle version for modern Perl. 

  2003-01-17 18:26:57 by cwest; POE/Component/Server/TCP.pm 1.32

    POE::Component::Server::TCP->new() now accepts an 'Args' parameter.
    It does the same thing as 'Args' does for
    POE::Component::Client::TCP. A list of arguments are passed to the
    ClientConnected callback filling @{ARG0..$#_}. This is helpful for
    setting up sessions with important data. 

  2003-01-11 04:33:35 by rcaputo; POE/Component/Server/TCP.pm 1.31

    Bob Maccione discovered that ECONNABORTED (a connection was closed
    before it could be accepted) was killing off PoCo::Server::HTTP. This
    change ignores ECONNABORTED, so clients can't use it to kill servers. 

  2003-01-09 17:56:09 by rcaputo; POE/Kernel.pm 1.230

    Mark each "resource" section with the name of the module it will
    become. 

  2003-01-04 04:23:55 by rcaputo; t/22_wheel_run.t 1.29

    Halfjack discovered six subtests that failed. We tracked them down to
    a bogus $Configure{perlpath}. I changed the tests to discover the
    perl path via $^X instead, which exists at least as far back as
    5.005_03. 

  2003-01-02 06:19:03 by rcaputo; POE/Component/Client/TCP.pm 1.27

    Document Started in the SYNOPSIS. 

  2003-01-01 04:24:40 by rcaputo; POE/Session.pm 1.83

    Doc patch for Averell. 

  2002-12-31 22:59:57 by rcaputo; POE/Wheel/Run.pm 1.43

    Applied Jason Stillwell's patch to finish several features in this
    wheel. We can now pause and resume Stdout and Stderr events, and the
    wheel now supports changing filters at runtime. 

  2002-12-31 22:09:46 by rcaputo; POE/Kernel.pm 1.229

    Jason Stillwell discovered that event handlers can't return undef.
    Nothing seems to rely on this behavior, so now it's removed. 

  2002-12-24 03:53:02 by rcaputo; POE/Kernel.pm 1.228

    Scott Beck pointed out that statement-modifier foreach isn't
    supported in older versions of Perl. This patch replaces them with
    C<foreach BLOCK> versions, which should work much farther back in
    Perl history. 

  2002-12-21 04:39:13 by rcaputo; POE/Kernel.pm 1.227

    Damien Neil discovered a temporary Session reference leak in the new
    signal handling code. The leak prevents sessions from stopping when
    they should (they do stop on subsequent signals, though). We were
    able to fix the problem thanks to his information. 

  2002-12-19 05:32:06 by rcaputo
  POE/Kernel.pm 1.226; POE/Pipe.pm 1.7; POE/Wheel/SocketFactory.pm 1.67

    Replace the homegrown blocking and nonblocking handle code with
    IO::Handle's blocking() method. This should do the right thing in
    more places with less work. For example, it fixes the ioctl() errors
    introduced in ActiveState 5.8.0 without breaking things on FreeBSD
    5.6.1. 

  2002-12-18 17:38:25 by rcaputo; POE/Kernel.pm 1.225

    Applied Garrett Goebel's patch that allows call() to honor wantarray
    context. 

  2002-12-18 17:26:46 by rcaputo; POE/Kernel.pm 1.224

    Applied Garrett Goebel's patch to clean up calls to
    _data_ev_refcount_dec(). This does three things: 1) Disambiguates a
    $_ in a foreach loop. 2) Removes a few temporary lexical variables.
    3) Reduces the number of lines of code. 

  2002-12-16 17:32:55 by rcaputo; POE/Wheel/FollowTail.pm 1.41

    Applied Matt Sergeant's globref patch. 

  2002-12-13 03:44:26 by rcaputo; POE/Wheel/FollowTail.pm 1.40

    Removed an unneeded Fcntl module use that was also causing trouble
    with Rob Bloodgood's 5.005_03 system. 

  2002-12-13 03:28:18 by rcaputo; POE/Kernel.pm 1.223

    Apply Rob Bloodgood's patch to support 5.005_03 in POE::Kernel. 

  2002-12-10 03:09:17 by rcaputo; POE/Session.pm 1.82

    Damien Neil pointed out that Session.pm destroys its package_states
    parameter. This is rude and has been fixed. 

  2002-12-09 20:22:41 by rcaputo; POE.pm 1.154

    Bump POE's version to 0.2301 for development. 

=========================
2002-12-09 18:14:46 v0_24
=========================

  2002-12-09 18:14:46 by rcaputo; POE/Wheel/SocketFactory.pm 1.66

    Remove some Win32 warnings about constant prototypes. 

  2002-12-09 16:21:42 by rcaputo; POE.pm 1.153

    Bump version to 0.24. 

  2002-12-09 16:20:15 by rcaputo; README 1.102

    Pre-release tweaks. 

  2002-12-08 16:54:23 by rcaputo; MANIFEST 1.80

    Include MANIFEST.SKIP. 

  2002-12-05 20:37:20 by rcaputo; POE/Driver/SysRW.pm 1.23

    Applied Garrett Goebel's patch to support EWOULDBLOCK as a
    recoverable error on MSWin32. 

  2002-12-05 20:24:38 by rcaputo
  MANIFEST.SKIP 1.1; lib/Makefile-5005.pm 1.26

    Add Makefile targets for PPM-compatible tarballs. 

  2002-11-27 20:55:30 by rcaputo; POE/Component/Client/TCP.pm 1.26

    Fix the documentation for Started (was documeted as Start, which is
    wrong). Thanks to Rob Fugina for spotting this. 

  2002-11-27 17:52:28 by rcaputo; POE/Wheel/SocketFactory.pm 1.65

    Cygwin requires the exception flag be checked on sockets in order to
    detect connect() errors. As far as I know, no other system does.
    Disable the exception check on non-cygwin systems, as it interferes
    with Tk (which cannot check for exceptions as of version 800.023). 

  2002-11-27 08:06:26 by rcaputo; POE/Component/Client/TCP.pm 1.25

    Applied Pedro Melo Cunha's patch to add a Started callback and an
    Args list for passing values into the component without using
    closures. 

  2002-11-20 18:00:50 by rcaputo; POE/Wheel/SocketFactory.pm 1.64

    Added and documented pause_accept() and resume_accept() methods. 

  2002-11-20 17:57:41 by rcaputo; POE/Wheel/ReadWrite.pm 1.61

    Fixed a paste error in the documentation. 

  2002-11-19 19:23:00 by rcaputo; POE/Wheel/ReadLine.pm 1.26

    Carthag on efnet #poe pointed out that the last patch (also a
    response to his feedback) died outright if LE wasn't present. Also,
    there is no "ri" in termcap(5), so I'm faking it by printing part of
    the input string again. It works pretty well for being icky. :) 

  2002-11-19 18:44:05 by rcaputo; POE/Wheel/ReadLine.pm 1.25

    Support le and ri in addition to LE and RI. We'll need to support
    Term::Info (or the moral equivalent) also, because many operating
    systems don't deign to include termcap. Bleah. 

  2002-11-19 18:02:09 by rcaputo; POE/Kernel.pm 1.222

    Found and fixed the error in TRACE_DEFAULT: _dispatch_event() was
    trying to look up session aliases and other information before a
    session had started, so that stuff didn't exist. Instant crash. 

  2002-11-19 17:42:06 by rcaputo; POE/Kernel.pm 1.221

    Fixed explained return values when using TRACE_RETVALS. 

  2002-11-12 17:18:25 by rcaputo; POE/Wheel/SocketFactory.pm 1.63

    Apply Garrett Goebel's patch to make dynamic constants inline-able. 

====================================
2002-11-08 17:11:54 before_xs_branch
====================================

  2002-11-08 17:11:54 by rcaputo
  POE/Kernel.pm 1.220; POE/Wheel/SocketFactory.pm 1.62

    Applied Garrett Goebel's SocketFactory patch to support non-blocking
    connect() on MSWin32. The patch also includes his notes on possible
    side effects and a better algorithms for avoiding them. This may fix
    several long-standing problems under Windows. 

  2002-11-08 16:20:11 by rcaputo; POE/Wheel/Run.pm 1.42

    Jos Boumans provided a testcase for Wheel::Run not sending
    CloseEvent. It turned out that we were setting socket readers based
    on the presence of StdoutEvent and StderrEvent, but we were
    incrementing the internal activitiy counter based on the presence of
    pipe handles. Two handles always exist (for pipes) regardless of the
    presence of events for them. The fix is to always register readers
    for child STDERR and STDOUT (lest one block!) but not emit events
    when they aren't wanted. We catch their closure, and things should
    work better now. 

  2002-11-07 20:04:14 by rcaputo; POE/Kernel.pm 1.219

    Fixed some of the Kernel traces that were confessing instead of
    warning. That caused POE to exit after the message, which was
    definitely not right. 

  2002-11-05 21:03:32 by rcaputo; POE/Wheel.pm 1.17

    Applied Garrett Goebel's doc fixes. 

  2002-11-03 14:40:17 by rcaputo; POE/Loop.pm 1.2

    Described the timer features needed in more detail, per Stef's
    feedback. 

  2002-11-01 16:43:26 by rcaputo; POE.pm 1.152

    Fixed a typo reported by Jeffz. 

  2002-11-01 14:59:16 by rcaputo
  POE/Component/Client/TCP.pm 1.24; POE/Component/Server/TCP.pm 1.30

    Add examples of Filter and ClientFilter parameters, thanks to a
    question on their nature by Abdul Fatah. 

  2002-10-27 22:57:53 by rcaputo; POE/Kernel.pm 1.218

    Addi mentioned using event counts to short-circuit queue sweeps. I
    forgot to do that in _data_ev_clear_session(). This patch adds it. 

  2002-10-26 11:59:39 by rcaputo; POE.pm 1.151; POE/Filter/Grep.pm 1.4;
  POE/Filter/Map.pm 1.4; POE/Filter/Reference.pm 1.27;
  POE/Filter/Stackable.pm 1.4; POE/Kernel.pm 1.217;
  POE/Loop/Select.pm 1.42; POE/Wheel/ReadLine.pm 1.24

    I discovered the podchecker utility, and ran it on POE's
    documentation. Ow! The errors are fixed, but not the warnings. 

  2002-10-26 06:21:28 by rcaputo; POE.pm 1.150

    Bump the version up to 0.2303. Feature freeze is over, la la la. 

===========================
2002-10-25 17:04:16 v0_2302
===========================

  2002-10-25 17:04:16 by rcaputo; Makefile.PL 1.25

    Update the ithreads warning, and make the delay for it a little
    longer so people can digest it. 

  2002-10-25 16:13:36 by rcaputo; POE.pm 1.149

    Bump the version to 0.2302 for release. Feature freeze. Only commit
    bug fixes. 

  2002-10-25 15:53:46 by rcaputo; README 1.101

    Minor edits before 0.2302 is tarred up. 

  2002-10-25 15:04:38 by rcaputo; t/00_coverage.t 1.16

    Clean up an error message regarding Wheel::ReadLine and Term::Cap. 

  2002-10-25 06:56:09 by rcaputo; POE/Kernel.pm 1.216;
  POE/Loop/Event.pm 1.32; POE/Loop/Gtk.pm 1.31; POE/Loop/Poll.pm 1.19;
  POE/Loop/Select.pm 1.41; POE/Loop/Tk.pm 1.38

    [May Break Code] Clean up the ASSERT_ and TRACE_ messages, and
    standardize their categories. The _DEFAULT ones still work. :) 

  2002-10-25 06:52:29 by rcaputo; lib/cpan-test.perl 1.2

    Fixed a problem where the newest versions of a module were deleted
    rather than the oldest ones. Minor aesthetic changes, too. 

  2002-10-21 00:08:02 by rcaputo; POE/Wheel/Run.pm 1.41

    Only import what we need. 

  2002-10-20 20:55:22 by rcaputo; POE/Component/Client/TCP.pm 1.23;
  POE/Component/Server/TCP.pm 1.29; POE/Kernel.pm 1.215; POE/NFA.pm 1.18;
  POE/Session.pm 1.81; t/03_aliases.t 1.11; t/11_signals_poe.t 1.23;
  t/22_wheel_run.t 1.28; t/23_nfa.t 1.4

    Added a mandatory warning whenever a signal is handled by returning
    true from its event handler. POE versions since 0.20 have recommended
    using sig_handled() instead.

    Added a mandatory warning whenever a "_signal" event handler is
    registered. POE versions since 0.20 have recommended using sig() to
    register explicit handlers rather than using catch-all _signal event.

    Added a mandatory warning when calling sig_handled() in a "_signal"
    handler. This includes handling signals from "_default".

    Removed _signal handlers from components and tests, since they now
    cause warnings. For the tests which need to handle signals, we now
    call sig() to register those handlers.

    Removed _signal from the list of events which generate the "... but
    session foo has neither that state nor a _default state to handle it"
    warnings. Otherwise removing _signal handlers would trade one warning
    for another. 

  2002-10-20 20:35:51 by rcaputo; POE/Wheel/FollowTail.pm 1.39;
  POE/Wheel/ListenAccept.pm 1.26; POE/Wheel/ReadWrite.pm 1.60;
  POE/Wheel/SocketFactory.pm 1.61

    Removed support for /.*State/ parameters and upgraded their use from
    warnings to errors. This is a scheduled change, per
    http://poe.perl.org/?POE_RFCs/XyzState_to_XyzEvent 

  2002-10-18 20:43:22 by rcaputo; POE/Component/Client/TCP.pm 1.22

    Applied Casey Zacek's patch adding a ConnectTimeout to Client::TCP. 

  2002-10-14 23:04:45 by rcaputo; lib/cpan-test.perl 1.1

    This little ditty runs all the /^POE::/ modules on the CPAN against
    the local CVS version of POE. Useful for regression testing and
    uncovering problems in components. 

  2002-10-14 17:44:41 by rcaputo; POE/Kernel.pm 1.214

    Applied James March's patch to move the final leak checking out of
    END and into explicitly called finalize() functions. This prevents
    the checks from being triggered on crashes (which always leave some
    cruft behind). 

  2002-10-11 21:21:41 by rcaputo
  MANIFEST 1.79; POE/Queue.pm 1.1; POE/Queue/Array.pm 1.2

    Moved POE::Queue::Array documentation to POE::Queue and made it
    generic (only minor edits). Replaced POE::Queue::Array documentation
    with a pointer to POE::Queue's. 

  2002-10-09 14:36:27 by rcaputo; MANIFEST 1.78; POE/Kernel.pm 1.213;
  POE/Loop.pm 1.1; POE/Loop/Event.pm 1.31; POE/Loop/Gtk.pm 1.30;
  POE/Loop/Poll.pm 1.18; POE/Loop/Select.pm 1.40; POE/Loop/Tk.pm 1.37

    Classified the unclassified accessors as helpers, and tidied up their
    names to match their new category. Documented the abstract POE::Loop
    interface as POE/Loop.pm, and documented the specific loops with
    pointers back to it. 

  2002-10-07 20:40:24 by rcaputo; lib/cvs-log.perl 1.3

    While just admiring the cvs logs this generates, I noticed that I had
    badly formatted the dates. This swaps month and day in the log so
    that the dates make sense. 

  2002-10-04 16:30:30 by rcaputo; POE/Kernel.pm 1.212

    Renamed the VEC_* constants to MODE_* because they no longer are tied
    to select() bit vectors. Also renamed the FVC_* constants to FMO_*
    for the same reason. Tweaked the way _dispatch_event() is called as
    part of the voodoo of fixing Gtk and Event (see earlier commit). 

  2002-10-04 16:27:38 by rcaputo
  POE/Loop/Event.pm 1.30; POE/Loop/Gtk.pm 1.29

    Fixed file descriptor tracking. The first rewrite was broken because
    different access modes (read, write) would overwrite themselves for
    the same file descriptor. This version separates watchers by
    descriptor and mode, fixing LordVorp's problem and probaly also
    jerakeen's.

    Also cleaned up some of the warning messages, renamed VEC to MODE
    throughout, and fixed the _dispatch_event calls to match Kernel.pm's
    definition for that function. 

  2002-10-04 16:19:49 by rcaputo
  POE/Loop/Poll.pm 1.17; POE/Loop/Select.pm 1.39; POE/Loop/Tk.pm 1.36

    Clean up the trace/assert messages a little bit. Rename VEC to MODE
    throughout. Standardize the _dispatch_event() calls to match changes
    in Kernel.pm. 

  2002-10-03 18:59:38 by rcaputo; POE/Wheel/Run.pm 1.40

    Reset all signal handlers to DEFAULT in the child process. Leaving
    POE's signal handlers active was the wrong thing to do. Thanks to
    JamesCOU for finding this bug. 

  2002-10-03 12:43:17 by rcaputo; POE/Kernel.pm 1.211

    Add TRACE_RELATIONS, and move extra-reference garbage collection so
    that it doesn't trigger a duplicate _stop event *from* a _stop event.
    This clears up the last of the known bugs introduced by accessorizing
    POE::Kernel's internal structures. 

  2002-10-03 06:55:26 by rcaputo; POE/Kernel.pm 1.210;
  POE/Loop/Event.pm 1.29; POE/Loop/Gtk.pm 1.28; POE/Loop/Poll.pm 1.16;
  POE/Loop/Select.pm 1.38; POE/Loop/Tk.pm 1.35

    Normalized the parameters for the enqueue and dequeue functions in
    POE::Kernel, and their use throughout all the files. Tracked down and
    stomped a file descriptor reference count inconsistency. Tested POE
    against its own tests, and tested my components against POE. All
    tests successful. However, more work needs to be done: A lot of
    warnings come up when SIGINT'ing a program. 

  2002-10-02 22:58:20 by rcaputo; POE/Kernel.pm 1.209

    Implement POE_TRACE_FOO and POE_ASSERT_FOO environment variables.
    These let you turn on traces and assertions without modifying any
    code. Also cleaned up a leak in the extra refcount management, and
    tidied up some error messages. 

  2002-10-02 18:54:59 by rcaputo; POE/Kernel.pm 1.208

    Undo the inline "optimization" from the last commit. The function
    needs to exist for scoping reasons. 

  2002-10-02 18:38:33 by rcaputo; POE/Kernel.pm 1.207

    Chop up all the long (>79 chars) lines. Inline a function that was
    only called from one place. Fix a misspelled method name, which
    caused Rob Bloodgood's program to fail. 

  2002-10-02 07:01:36 by rcaputo; POE/Kernel.pm 1.206;
  POE/Loop/Event.pm 1.28; POE/Loop/Gtk.pm 1.27; POE/Loop/Poll.pm 1.15;
  POE/Loop/Select.pm 1.37; POE/Loop/Tk.pm 1.34

    Split Kernel.pm into several subsystems. Although they are in the
    same file, their data structures have been separated and hidden as
    lexicals in private scopes. The only way to modify them is through
    public accessors. The next step in the refactor will be to clean up
    the accessors, but I wanted to commit things while it still passes
    "make test". 

  2002-10-02 06:58:20 by rcaputo; t/08_errors.t 1.40

    I copped out, sorry. I removed some parameter syntax test which
    created wheels outside of any session. The resulting good syntax came
    out as errors because POE freaked when it tried to put the wheels
    somewhere that didn't exist. I hope to make up for tonight's lameness
    with a decent suite of unit tests later. 

  2002-10-02 06:54:56 by rcaputo; POE.pm 1.148

    We're going to try a different version numbering scheme. Odd
    subversions will be for CVS stuff. Even subversions will be web-only
    releases. As always, plain versions (which only go out to the
    hundredths place) are reserved for stable CPAN releases. Bump the
    version to 0.2301 to kick off the CVS phase (kind of late, though). 

  2002-10-02 06:27:41 by rcaputo; t/22_wheel_run.t 1.27

    Wheel::Run contains its own exit code, which tries to thwart object
    destruction so POE's own destructors aren't triggered. The exit
    statement in the coderef test was thwarting it, causing all kinds of
    false leak detection. 

  2002-09-30 02:43:46 by sungo; POE/Wheel/FollowTail.pm 1.38

    remove -l check on files which fixes spurious warning when
    encountering a filehandle 

  2002-09-28 02:53:26 by rcaputo; POE/Wheel/FollowTail.pm 1.37

    Be more conscientious about cleaning up when FollowTail is destroyed. 

  2002-09-28 00:20:57 by rcaputo
  POE/Wheel/FollowTail.pm 1.36; t/14_wheels_ft.t 1.10

    Split FollowTail into two modes: plain-file mode which uses
    "blocking" I/O and timer based polling on disk files, and fifo/socket
    mode which uses non-blocking I/O and select-based polling on special
    files. This should do the right things for sockets, pipes, and plain
    files. Because it avoids NBIO and select() on disk files, it should
    also work on Windows and VMS. 

  2002-09-27 02:23:24 by rcaputo; POE/Kernel.pm 1.205;
  POE/Loop/Event.pm 1.27; POE/Loop/Gtk.pm 1.26; POE/Loop/Poll.pm 1.14;
  POE/Loop/Select.pm 1.36; POE/Loop/Tk.pm 1.33

    Attempt to binmode() tied files, although do it in a block eval in
    case it fails. Don't bother making plain files (-f $handle)
    nonblocking, since it rarely makes a difference and sometimes really
    honks off the operating system (aka: POE dies in the attempt). Oh,
    and much code movement (aka: refactoring). Still not done with that. 

  2002-09-26 19:51:09 by rcaputo; samples/preforkedserver.perl 1.13

    Deprecated and moved. The entire program is replaced by a brief
    message pointing to its new location on the web. 

  2002-09-25 19:45:00 by rcaputo; MANIFEST 1.77; POE/Kernel.pm 1.204;
  POE/Loop/Event.pm 1.26; POE/Loop/Gtk.pm 1.25; POE/Loop/Poll.pm 1.13;
  POE/Loop/Select.pm 1.35; POE/Loop/Tk.pm 1.32; t/08_errors.t 1.39

    Rename POE::Kernel::* to POE::Loop::*. People following along with
    CVS will need to "cvs update -dP" or check the whole thing out again. 

  2002-09-25 06:30:20 by rcaputo; POE/Kernel.pm 1.203;
  POE/Loop/Event.pm 1.25; POE/Loop/Gtk.pm 1.24; POE/Loop/Poll.pm 1.12;
  POE/Loop/Select.pm 1.34; POE/Loop/Tk.pm 1.31

    Beginning of the refactoring that will move all POE data structure
    access into accessors. When this is done, the public interfaces will
    be totally separate from the internal data munging. That should let
    the data structures be redone in C without affecting the public
    interfaces. 

  2002-09-25 03:05:29 by rcaputo; POE/Queue/Array.pm 1.1

    How could I have forgotten to add this before? Duh! 

  2002-09-24 23:47:18 by rcaputo; t/22_wheel_run.t 1.26

    Apply sungo's fix for tcaine's Wheel::Run test failures on MacOS X.
    It turns out I forgot to catch an unhandled event after I made
    ASSERT_DEFAULT die outright on those things. It never occurred in
    testing, although it could have at any time. 

  2002-09-24 22:26:22 by rcaputo; POE/Kernel.pm 1.202;
  POE/Loop/Event.pm 1.24; POE/Loop/Gtk.pm 1.23; POE/Loop/Poll.pm 1.11;
  POE/Loop/Select.pm 1.33; POE/Loop/Tk.pm 1.30

    Finish separating POE::Kernel from the event loop bridges. 

  2002-09-24 06:32:41 by rcaputo; MANIFEST 1.76; POE/Kernel.pm 1.201;
  POE/Loop/Event.pm 1.23; POE/Loop/Gtk.pm 1.22; POE/Loop/Poll.pm 1.10;
  POE/Loop/Select.pm 1.32; POE/Loop/Tk.pm 1.29; t/001_queue.t 1.1

    Extract POE's queue code into POE::Queue::Array. 

  2002-09-24 06:22:55 by rcaputo; t/02_alarms.t 1.11

    Increase the size of the "large queue" tests. They were never made
    larger when POE's "large queue" threshold was raised. 

  2002-09-24 06:18:05 by rcaputo; TODO 1.34

    Fix the URL of POE's RFCs. 

  2002-09-22 23:55:27 by sungo; Makefile.PL 1.24

    add a warning about ithreads bug to Makefile.PL. 

  2002-09-19 01:49:32 by sungo; POE/Wheel/ReadLine.pm 1.23

    convert the last remaining macros to subroutines.
    samples/readline.perl runs flawlessly and all tests pass 

============================================
2002-09-21 05:57:28 before_queue_abstraction
============================================

  2002-09-21 05:57:28 by rcaputo; POE/Kernel.pm 1.200;
  POE/Loop/Event.pm 1.22; POE/Loop/Gtk.pm 1.21; POE/Loop/Poll.pm 1.9;
  POE/Loop/Select.pm 1.31; POE/Loop/Tk.pm 1.28

    More code cleanup. Simplified Select.pm and Poll.pm by removing a
    block of code that already exists as a function in Kernel.pm. Minor
    optimizations in Select.pm by moving a loop into a function rather
    than calling the function once per iteration. 

  2002-09-18 07:03:18 by rcaputo; POE/Kernel.pm 1.199;
  POE/Loop/Event.pm 1.21; POE/Loop/Gtk.pm 1.20; POE/Loop/Poll.pm 1.8;
  POE/Loop/Select.pm 1.30; POE/Loop/Tk.pm 1.27

    Remove a public interface symbol from the event loop bridges. Add it
    to POE::Kernel instead, and have Kernel call the loops as necessary. 

  2002-09-18 04:04:20 by rcaputo; POE/Kernel.pm 1.198;
  POE/Loop/Event.pm 1.20; POE/Loop/Gtk.pm 1.19; POE/Loop/Poll.pm 1.7;
  POE/Loop/Select.pm 1.29; POE/Loop/Tk.pm 1.26

    Renamed the event loop "substrate" functions to "loop" functions,
    since they implement bridges for underlying event loops. Transplanted
    some loop-specific things from Kernel.pm to the appropriate bridges.
    The tentacles between Kernel and each event loop are not entirely
    untangled, but they are much more separate now than before. 

  2002-09-17 07:09:30 by rcaputo; POE/Filter/HTTPD.pm 1.28

    Tatsuhiko Miyagawa pointed out that this module uses HTTP::Response
    but doesn't load it. 

  2002-09-17 07:08:18 by rcaputo; POE/Kernel.pm 1.197

    Added two environment variables to set ASSERT_DEFAULT and
    TRACE_DEFAULT for testing. 

  2002-09-17 05:45:30 by rcaputo; POE/Kernel.pm 1.196;
  POE/Loop/Event.pm 1.19; POE/Loop/Gtk.pm 1.18; POE/Loop/Poll.pm 1.6;
  POE/Loop/Select.pm 1.28; POE/Loop/Tk.pm 1.25; POE/NFA.pm 1.17;
  POE/Session.pm 1.80; POE/Wheel/ReadLine.pm 1.22; t/08_errors.t 1.38

    Removed the use of POE::Preprocessor, except in ReadLine.pm which
    would have a circular reference in closures that I'm not sure how to
    break otherwise. 

==========================================
2002-09-17 03:00:08 before_removing_macros
==========================================

  2002-09-17 03:00:08 by rcaputo; POE/Wheel/Run.pm 1.39

    Explanation of the ErrorEvent parameters. Patch by Erick Calder. 

  2002-09-15 16:49:21 by rcaputo; POE/Pipe.pm 1.6

    Retry on EWOULDBLOCK or EINPROGRESS rather than dying outright. James
    March discovered that it would sometimes die outright with those
    conditions, which is bad for recoverable, advisory errors like those. 

  2002-09-15 05:09:13 by rcaputo; POE/Kernel.pm 1.195

    Erick Calder's clarifications on a couple points regarding delay(). 

  2002-09-13 07:58:04 by rcaputo; t/06_tk.t 1.38

    Fix a misleading skip message (Tk *is* supported, just not fully). 

=========================
2002-09-12 16:56:26 v0_23
=========================

  2002-09-12 16:56:26 by rcaputo; README 1.100

    Bring it up to date with what's going on. 

  2002-09-12 16:34:52 by rcaputo; POE.pm 1.147

    Bump the version number to 0.23. 

  2002-09-12 15:07:00 by rcaputo; t/29_sockfact6.t 1.6

    Skip a third test which was failing when AF_INET6 was not configured
    in the kernel. 

  2002-09-12 14:59:20 by rcaputo; t/29_sockfact6.t 1.5

    Skip tests rather than fail if AF_INET6 gethostbyname2() works but
    none of the socket calls do. This might indicate that while localhost
    (::1) is resolvable, the interface is not actually configured. It may
    also indicate while the interface is configured, an unconfigured ipv6
    firewall's "deny all" may be blocking it. 

  2002-09-12 02:46:25 by rcaputo
  POE/Component/Client/TCP.pm 1.21; POE/Component/Server/TCP.pm 1.28

    A previous change to Server::TCP "optimized" some code by moving the
    ClientDisconnected code to _stop. However, since very little can be
    done from _stop, this prevented post() calls from working there. I
    discovered the problem when one of the POE Cookbook recipes stopped
    exiting as it should. This change moves the ClientDisconnected code
    back out of _stop. It also pretties the default error handlers for
    Client::TCP and Server::TCP. 

  2002-09-11 22:11:05 by rcaputo; POE/Wheel/Run.pm 1.38

    Peter Chen discovered and helped solve a problem where the subroutine
    form of Program caused file handles to bleed into the child process.
    The result is that sockets linger open beyond the time they're
    needed-- at least until the child exits. This patch introduces
    CloseOnCall, which emulates close-on-exec as Perl uses it. 

  2002-09-10 19:55:32 by rcaputo
  lib/Makefile-5004.pm 1.12; lib/Makefile-5005.pm 1.25

    Compatibility enhancements for running test reports on Windows
    platforms. 

  2002-09-08 22:05:50 by rcaputo; POE/Wheel/Run.pm 1.37

    Apply JamesCOU's doc patch that stops saying things are optional when
    they aren't. 

  2002-09-08 15:05:09 by rcaputo; POE/Component/Server/TCP.pm 1.27

    Publish ClientShutdownOnError, which sets the defalut value of all
    client sessions' $heap->{shutdown_on_error} flags. 

  2002-09-08 00:26:20 by rcaputo; README 1.99

    Remove the link to the deprecated stinky hand-maintained test
    results. The shiny, pretty automated one is much better. Go there, or
    else! 

  2002-09-05 17:08:01 by rcaputo; lib/cvs-log.perl 1.2

    Multi-file commits on slow links are sometimes smeared across several
    timestamps. Previously the report would present them as separate
    commits with identical descriptions. Now it detects and combines
    them. 

  2002-09-04 01:18:47 by rcaputo; POE/Wheel/ReadLine.pm 1.21

    Applied James M.'s patch to correct some bad example code in the
    SYNOPSIS. 

  2002-09-03 19:54:03 by rcaputo; t/29_sockfact6.t 1.4

    It is possible to load Socket6 yet still not have IPv6 configured on
    the system. Added a check for IPv6 localhost ("::1") and skip the
    tests if one isn't available. 

===========================
2002-09-03 16:01:42 v0_2201
===========================

  2002-09-03 16:01:42 by rcaputo
  lib/Makefile-5004.pm 1.11; lib/Makefile-5005.pm 1.24

    Rebuild the XML test report if Makefile has changed. 

  2002-09-03 15:47:24 by rcaputo
  lib/Makefile-5004.pm 1.10; lib/Makefile-5005.pm 1.23

    Fix paths to cvs-log.perl. 

  2002-09-03 15:45:57 by rcaputo; README 1.98

    Last minute tweaks. 

  2002-09-03 04:40:04 by rcaputo; MANIFEST 1.75; lib/cvs-log.perl 1.1

    Added cvs-log.perl; added the report upload utility to MANIFEST. 

  2002-09-03 04:39:23 by rcaputo; POE/Filter/HTTPD.pm 1.27

    Fixed an undefined warning in a seldom-used block of code. 

  2002-09-01 16:05:33 by rcaputo; t/03_aliases.t 1.10

    sungo spotted a warning in this test. It turns out that the test was
    printing "ok 15" twice instead of 15 and 16. Fixed. 

  2002-08-31 23:13:22 by sungo; MANIFEST 1.74

    revert last patch. my mistake 

  2002-08-31 23:10:14 by sungo; MANIFEST 1.73

    remove Macro/UseBytes from the manifest 

  2002-08-31 22:54:28 by rcaputo; POE.pm 1.146

    Bump the version to 0.2201 and start a feature freeze. 

  2002-08-31 22:41:03 by sungo; README 1.97

    document the test server and the makefile targets 

  2002-08-30 22:17:41 by rcaputo
  POE/Component/Client/TCP.pm 1.20; POE/Component/Server/TCP.pm 1.26

    Added a heap flag for these components: shutdown_on_error. When
    cleared, it becomes the end developer's responsibility to handle
    errors and shut down connections when they occur. It defaults to
    true, which preserves the old behavior of the components shutting
    connections down. 

  2002-08-30 05:14:38 by rcaputo; samples/filterchange.perl 1.7;
  samples/socketfactory.perl 1.17; samples/tutorial-chat.perl 1.12

    Replaced three sample programs with pointers to their updated
    counterparts on the web. 

  2002-08-30 03:59:58 by rcaputo
  POE/Component/Client/TCP.pm 1.19; t/29_sockfact6.t 1.3

    Added BindAddress and BindPort support, allowing client connections
    to come from specific interfaces on a multi-host system. 

  2002-08-30 03:29:47 by rcaputo; t/29_sockfact6.t 1.2

    Skip all tests if Socket6 is not loadable. 

  2002-08-29 20:43:30 by rcaputo; lib/testreport.pl 1.11

    Add an AUTHOR section. Pedantic, yes, but credit where it's due. 

  2002-08-29 20:42:45 by rcaputo; lib/reportupload.pl 1.2

    Added documentation and a note at the end where submitters can find
    their results. 

  2002-08-29 20:40:19 by rcaputo
  lib/Makefile-5004.pm 1.9; lib/Makefile-5005.pm 1.22

    Replace cvs2cl with a home-made program that creates much nicer
    CHANGES files. 

  2002-08-29 14:48:30 by rcaputo
  POE/Wheel/SocketFactory.pm 1.60; t/29_sockfact6.t 1.1

    Fixed SocketFactory to support ipv6 host names rather than
    presentation (human readable numeric) addresses. Added the test
    program I forgot when the initial support went in. 

  2002-08-29 05:25:42 by rcaputo; MANIFEST 1.72;
  POE/Component/Client/TCP.pm 1.18; POE/Component/Server/TCP.pm 1.25;
  POE/Wheel/SocketFactory.pm 1.59; lib/Makefile-5005.pm 1.21

    Added initial IPv6 support. 

  2002-08-27 04:12:33 by rcaputo; POE/Kernel.pm 1.194; t/03_aliases.t 1.9

    Applied jinzougen's patch to have alias_list return an arbitrary
    alias in scalar context. 

  2002-08-27 02:32:01 by rcaputo; POE/Component/Client/TCP.pm 1.17

    Applied a modified version of Averell's patch to let a Client::TCP
    component connect to a different address and/or port. It first
    disconnects from any established server. This feature is experimental
    pending documentation and tests. 

  2002-08-26 22:25:28 by rcaputo
  POE.pm 1.145; POE/Kernel.pm 1.193; t/11_signals_poe.t 1.22

    Michael Stevens discovered a situation where signals could trigger a
    session's destruction twice. The symptom is a "session does not
    exist" error in Session.pm. This patch adds a simplified version of
    his test case to t/11_signals_poe.t, clarifies the "session does not
    exist" error message, and prevents what is essentially a double-free
    error in POE::Kernel. Other files, such as Session.pm and Select.pm
    were touched during the course of this fix but essentially remain
    unchanged. 

  2002-08-20 19:37:32 by rcaputo; POE/Kernel.pm 1.192;
  POE/Loop/Event.pm 1.18; t/00_coverage.t 1.15; t/04_selects.t 1.15;
  t/06_tk.t 1.37; t/07_event.t 1.15; t/21_gtk.t 1.15

    L. Leo reported that run() could not be called twice in the same
    program. That was true for a number of reasons revolving around
    signal handling and the need to clean up the Kernel's data structures
    before run() returned. I have made run() re-callable by re-setting
    the signal handlers from within run() and by re-initializing the
    Kernel's data structures too. All tests pass, including L. Leo's test
    case. 

  2002-08-19 03:52:01 by rcaputo; POE/Wheel/SocketFactory.pm 1.58

    Cristiano Lincoln Mattos reported that SocketFactory was not emitting
    connect errors on Cygwin+Win2k. His debugging pinpointed the section
    in the code where the problem lay, and with his assistance I was able
    to put together a working patch. He also tested the patch on Win2k
    and Linux, while I tested it on FreeBSD. Other tests are forthcoming,
    but I wanted to get the patch into CVS before that. 

  2002-08-19 03:10:21 by sungo
  lib/Makefile-5004.pm 1.8; lib/Makefile-5005.pm 1.20

    add make targets for reportupload 

  2002-08-19 03:07:49 by sungo; lib/reportupload.pl 1.1

    script to upload a test report 

  2002-08-18 18:35:09 by sungo
  lib/Makefile-5004.pm 1.7; lib/Makefile-5005.pm 1.19

    make the testreport target smarter. checks for existence of
    poe_report.xml and doesnt rerun the report generator if it exists. 

  2002-08-18 18:17:01 by sungo
  lib/Makefile-5004.pm 1.6; lib/Makefile-5005.pm 1.18

    add make testreport target to, guess what, generate the test report
    :) 

  2002-08-15 19:49:44 by rcaputo; POE/Wheel/FollowTail.pm 1.35

    LordVorp discovered that Wheel/FollowTail does not document its
    defaults for Filter and Driver. They are now documented. 

  2002-08-04 19:14:04 by rcaputo; POE/Macro/UseBytes.pm 1.2

    James March found some debugging prints leftover from testing. They
    are removed. 

  2002-08-04 18:58:15 by rcaputo
  POE/Kernel.pm 1.191; POE/Loop/Poll.pm 1.5; POE/Loop/Select.pm 1.27

    James March is trying to tweak a POE program for performance. He was
    kind enough to provide some Devel::SmallProf output so I could track
    bottlenecks within POE itself. It turns out that @kr_filenos was a
    very hot data structure, and it was used primarily in ways that made
    more sense as a hash. This commit changes @kr_filenos into
    %kr_filenos. All tests pass. 

  2002-08-04 18:55:40 by rcaputo; POE/Session.pm 1.79

    Invoke inline states with idiomatically correct Perl. This is
    probably just a syntactic tweak. 

  2002-07-31 20:05:24 by rcaputo; MANIFEST 1.71;
  POE/Driver/SysRW.pm 1.22; POE/Filter/Block.pm 1.11;
  POE/Filter/HTTPD.pm 1.26; POE/Filter/Reference.pm 1.26;
  POE/Kernel.pm 1.190; POE/Macro/UseBytes.pm 1.1;
  POE/Wheel/ReadLine.pm 1.20; POE/Wheel/SocketFactory.pm 1.57

    Sergey Skvortsov reported that Driver::SysRW uses length() to count
    octets in buffers, which is broken in newer versions of Perl that
    support Unicode. In the Unicode sense, length() returns the number of
    CHARACTERS in a buffer, which may be fewer than the number of octets.
    This change adds POE/Macro/UseBytes, which is a backward-compatible
    way of including C<use bytes> in files. It also adds use_bytes
    directives to wherever looks appropriate. 

  2002-07-31 18:50:21 by rcaputo; POE/Kernel.pm 1.189

    "When three people tell you you're sick, lie down." Matt Cashner,
    Artur Bergman, and Todd Caine told me the "POE::Kernel's run() method
    was never called." warning was annoying. I suggested not emitting the
    warning if no sessions were created (so perl -c and some tests don't
    carp). That seemed ok with everyone, so this commit implements that
    change. 

  2002-07-31 18:43:01 by rcaputo; t/26_comp_tcp.t 1.2

    Changes in Client::TCP and server::TCP caused errors in the tests. I
    cleaned up some of the error checking and added some subtests. 

  2002-07-31 18:40:51 by rcaputo
  POE/Component/Client/TCP.pm 1.16; POE/Component/Server/TCP.pm 1.24

    (!!!) Peter Chen is writing a SOAP server that exercises
    Server::TCP's error handling and shutdown semantics. These changes
    apply modified versions of his patches to Server::TCP, and
    corresponding shutdown patches to Client::TCP. Error handling is
    subtly different now; check your code for lingering connections. 

  2002-07-29 22:34:44 by rcaputo
  POE/Component/Client/TCP.pm 1.15; POE/Component/Server/TCP.pm 1.23

    James March noted that Client::TCP and Server::TCP don't mention how
    to send a response on their connected sockets. While omitting such an
    important fact from the docs is a great way to make people read them
    carefully, it's better to include the information. 

  2002-07-17 06:39:21 by rcaputo; POE/Filter/Reference.pm 1.25

    Added tentative (untested) YAML support. It was a trivial extension
    of the Storable and FreezeThaw code. What could possibly go wrong? 

  2002-07-16 17:40:15 by rcaputo; POE/Loop/Gtk.pm 1.17

    In a tight yield() loop, POE::Kernel::Gtk would fire and reset timers
    so fast that it would pre-empt window painting. The symptom was empty
    Gtk windows. This patch interleaves timer and idle events so that Gtk
    has a chance to catch up with POE. 

  2002-07-15 23:21:27 by rcaputo; t/08_errors.t 1.37

    Standardize skip messages, and use Symbol's delete_package() function
    instead of the hand-rolled function to delete all the symbols in a
    package. This should vastly reduce the number of warnings we need to
    work around. 

  2002-07-15 23:20:11 by rcaputo; t/00_coverage.t 1.14;
  t/01_sessions.t 1.21; t/06_tk.t 1.36; t/07_event.t 1.14;
  t/09_wheels_unix.t 1.13; t/11_signals_poe.t 1.21;
  t/12_signals_ev.t 1.16; t/17_filter_ref.t 1.5; t/18_filter_line.t 1.6;
  t/19_filterchange.t 1.10; t/21_gtk.t 1.14; t/22_wheel_run.t 1.25;
  t/27_poll.t 1.5; t/28_windows.t 1.3

    Standardize the skip messages. See the style guide at poe.perl.org
    for a list of message formats. 

  2002-07-09 21:15:53 by rcaputo; POE/Kernel.pm 1.188

    Fix a documentation nit pointed out by Randal Schwartz. 

  2002-07-09 21:14:48 by rcaputo
  POE/Loop/Event.pm 1.17; POE/Loop/Tk.pm 1.24

    Randal Schwartz discovered a problem in POE::Kernel::Event where it
    would not permit an idle program to shut down. It turned out that an
    optimization in Kernel garbage collection prevented GC from being
    tested if there were events in the queue. Newer SIGCHLD polling keeps
    at least one event in the queue at all times, so GC was never being
    tweaked. It turns out that POE::Kernel::Tk has the same problem.
    These beg the question: How were the tests ever working? Note: It
    might be better to differentiate between Kernel's events and
    Sessions' events, and force GC when Sessions' count reached 0. 

  2002-07-08 23:23:26 by rcaputo; lib/Makefile-5005.pm 1.17

    Some people find the dependency prompts annoying. This change adds a
    note telling these heathens how they can bypass the prompts. 

  2002-07-08 23:10:28 by rcaputo
  POE/Kernel.pm 1.187; t/01_sessions.t 1.20; t/03_aliases.t 1.8

    PerlPanda on dalnet was disturbed that POE exports $poe_kernel into
    main. While that can't be changed right now, this change supports two
    other ways to call run(). Either first call POE::Kernel->new() to get
    a copy of $poe_kernel, or just call POE::Kernel->run() directly. They
    are essentially syntactic sugar to mollify OO purists. 

  2002-07-08 23:04:54 by rcaputo
  POE/Wheel/Run.pm 1.36; t/00_coverage.t 1.13

    Tidy up a skip message for the test scoreboard. 

  2002-07-08 13:32:27 by rcaputo; lib/testreport.pl 1.10

    Don't accuse MacOS Classic (and other user-less operating systems) of
    being Windows. That's just uncalled for. 

  2002-07-08 13:31:29 by rcaputo; POE.pm 1.144

    Document that the samples are moving to the POE Cookbook. 

  2002-07-08 03:09:56 by rcaputo; samples/followtail.perl 1.9;
  samples/httpd.perl 1.16; samples/neural-net.perl 1.2;
  samples/proxy.perl 1.18; samples/ref-type.perl 1.5;
  samples/refsender.perl 1.15; samples/refserver.perl 1.16

    Replaced these files with pointers to their counterparts in the POE
    Cookbook. Eventually these files will be removed altogether, along
    with the directory they rode in on. 

  2002-07-07 19:12:07 by sungo; lib/testreport.pl 1.9

    strip the t/ off the file name in case its run from the root of the
    checkout 

  2002-07-07 18:40:09 by sungo; lib/testreport.pl 1.8

    adding closing quotes on the skip reason helps with parsing :) 

  2002-07-07 18:30:08 by sungo; lib/testreport.pl 1.7

    fix use lib to make testreport runnable from the root of the
    checkout. stop deleting detailed results. fixes failing test reports.
    add skipped test detail to the report. 

  2002-07-07 18:13:00 by sungo; MANIFEST 1.70

    correct the test::harness::iterator entry 

  2002-07-07 04:38:59 by rcaputo; lib/testreport.pl 1.6

    Move C<use lib> higher so it catches Test::Harness and friends. Work
    around some unsupported things under Windows. 

  2002-07-07 04:32:35 by sungo; MANIFEST 1.69

    update manifest for test::harness goodness so it'll ship with the
    tarball 

  2002-07-07 03:41:12 by sungo; lib/Test/Harness.pm 1.1;
  lib/Test/Harness/Assert.pm 1.1; lib/Test/Harness/Iterator.pm 1.1;
  lib/Test/Harness/Straps.pm 1.1

    add new version of test::harness for convenience use in testreport.pl 

  2002-07-07 03:11:09 by rcaputo; MANIFEST 1.68

    Added testreport.pl so it will be included in tarballs. 

  2002-07-07 01:01:31 by rcaputo; lib/testreport.pl 1.5

    Make the program runnable from lib/ or /, and make it fetch the tests
    to run from Makefile (so it doesn't run tests skipped by
    AutoInstall). 

  2002-07-06 23:25:18 by sungo; lib/testreport.pl 1.4

    get the actual user id not the root one. 

  2002-07-06 23:07:23 by sungo; lib/testreport.pl 1.3

    strip file names better. add username, hostname, and gmtime to the
    report 

  2002-07-06 22:02:25 by sungo; lib/testreport.pl 1.2

    correct the test directory. 

  2002-07-06 21:34:05 by sungo; lib/testreport.pl 1.1

    move testreport.pl to lib. add failing test reporting to
    testreport.pl 

=========================
2002-07-04 03:10:05 v0_22
=========================

  2002-07-04 03:10:05 by rcaputo; POE.pm 1.143

    All the mentioned problems in 0.2101 were fixed. Looks like it's
    clean. Bump the version to 0.22 for release. 

  2002-07-01 15:57:43 by rcaputo; t/08_errors.t 1.36

    Cleared up a warning about Filter being deprecated. Thanks to ignatz
    for pointing it out. 

===========================
2002-07-01 04:26:05 v0_2101
===========================

  2002-07-01 04:26:05 by rcaputo; POE.pm 1.142

    Bump version to 0.2101 for release. 

  2002-07-01 02:16:31 by rcaputo; POE/Wheel/Run.pm 1.35

    Todd Caine requested a "Driver" parameter for Wheel::Run. While I was
    adding one, I realized that STDIN, STDOUT *and* STDERR were all
    sharing a single internal driver instance. That's bad because three
    handles cannot reliably share a single driver (which can only read on
    one handle and write on one handle reliably). This may have uncovered
    a nasty bug in Wheel::Run. Thankfully, 0.22 has not yet been
    released. 

  2002-06-30 21:37:46 by rcaputo; lib/ExtUtils/AutoInstall.pm 1.2

    Updated to ExtUtils::AutoInstall 0.33. 

  2002-06-30 21:14:59 by rcaputo; POE/Driver/SysRW.pm 1.21

    Document why SysRW does not use BlockSize for syswrite(), and fix the
    BlockSize documentation so that it does not apply to syswrite(). 

  2002-06-30 20:24:11 by rcaputo; POE/Loop/Poll.pm 1.4; t/27_poll.t 1.4

    As I once learned long ago, IO::Foo tends to be slow. In the old
    case, it was IO::Select. Now I've discovered that IO::Poll is slow as
    well. This is the price one pays for using generic modules, however.
    I researched IO::Poll and discovered its internal _poll function,
    which is written in XS. POE::Kernel::Poll was revised to use that
    directly rather than incurring overhead from using the public
    interface. I only hope I can keep up with IO::Poll changes.
    POE::Kernel::Poll should really be better than select() now regarding
    latency and scalability, if only a little bit. 

  2002-06-28 02:22:30 by rcaputo; POE/Kernel.pm 1.186

    Matt Sergeant noticed that POE::Wheel::Run sometimes creates defunct
    (zombie) processes. I suspected that it was a race between program
    shutdown and POE::Kernel's reaper. Matt was able to verify this by
    adding some non-blocking reaper code after run() was called. I added
    code to POE::Kernel that keeps it alive as long as there are
    outstanding child processes. This will ensure that they're reaped (no
    more defunct zombies). 

  2002-06-28 02:17:01 by rcaputo; POE.pm 1.141

    Clean up the overview of Filter::Reference after someone (I forget!
    Baud? Kane?) pointed out a typo. Thanks, whoever you are. 

  2002-06-25 07:12:15 by rcaputo; POE/Loop/Tk.pm 1.23

    Worked around a memory leak in Tk 800.023. Thanks to Zoltan Kandi for
    reporting the leak (usenet message-ID:3D16D3B2.11FC919E@tellabs.com)
    and Slaven Rezic (usenet message-ID:87elevetz9.fsf@vran.herceg.de)
    for the way to avoid it. 

  2002-06-22 06:39:31 by rcaputo; POE/Wheel/Run.pm 1.34

    Update the documentation and carps and croaks to guide people away
    from the deprecated Filter parameter. 

  2002-06-22 06:24:52 by rcaputo
  POE/Wheel/Run.pm 1.33; t/22_wheel_run.t 1.24

    (!!!) POE::Wheel::Run's Filter parameter was broken as designed. A
    single Filter instance cannot possibly filter three filehandles! The
    fix was to replace Filter with StdioFilter, which only filters STDIN
    and STDOUT. StderrFilter must be specified separately. It's easy to
    write code that is compatible with the old and new interfaces (for a
    module, for example). Just use StdinFilter, StdoutFilter, and
    StderrFilter explicitly. 

  2002-06-22 06:21:29 by rcaputo; t/00_coverage.t 1.12;
  t/01_sessions.t 1.19; t/08_errors.t 1.35; t/09_wheels_unix.t 1.12;
  t/28_windows.t 1.2

    Iain Chalmers reported 0.20 test failures under MacOS 9.1. These
    changes address some of the the issues he discovered. They mainly
    fall under the categories of signals, UNIX sockets, socketpair(), and
    fork() incompatibilities between UNIX systems and MacOS pre-X. 

  2002-06-22 06:18:11 by rcaputo
  POE/Loop/Poll.pm 1.3; lib/Makefile-5005.pm 1.16; t/27_poll.t 1.3

    Richard Soderberg pointed out a couple things, which are now fixed.
    First, it's possible to run the IO::Poll tests with an older version
    by saying "no" to installing a newer one. That leads to test failures
    later on. The work-around is to add checks in POE::Kernel::Poll and
    t/27_poll.t for the proper IO::Poll version. Second, he pointed out
    that a few dependencies were missing from the installer. Added! 

  2002-06-22 06:15:33 by rcaputo
  POE/Pipe.pm 1.5; POE/Pipe/OneWay.pm 1.10; POE/Pipe/TwoWay.pm 1.12

    Skip socketpair() and pipe() on MacOS pre-X. Even with a vastly
    improved Perl build, these systems seem to have strange problems with
    non-blocking socketpair() and pipe(). 

=========================
2002-06-19 17:24:58 v0_21
=========================

  2002-06-19 17:24:58 by rcaputo; POE.pm 1.140

    Increase the version number to 0.21. 

  2002-06-18 22:18:37 by rcaputo
  POE/Component/Client/TCP.pm 1.14; POE/Component/Server/TCP.pm 1.22

    (!!!) Change the ClientFilter and Filter parameters in Server::TCP
    and Client::TCP respectively. They were recently "enhanced" to accept
    filter instances, and they would create filter instances from class
    names internally. However, this new "feature" meant that every
    connection SHARED THE SAME FILTER. The changes now let them accept
    class names and optional constructor parameters, and the components
    will instantiate new filters for each connection. "MarkClone" on
    efnet reported that the POE Cookbook web server was only honoring its
    first request; the remainders were bombing out with an error which
    led me to this problem. 

  2002-06-18 22:13:11 by rcaputo; POE/Wheel/SocketFactory.pm 1.56

    Extend the description of SuccessEvent's INET address field. This is
    in response to Jos Boumans' question about it. 

  2002-06-18 21:59:02 by rcaputo; POE/Filter/HTTPD.pm 1.25

    Prettied up the error dump some more. 

  2002-06-18 21:23:13 by rcaputo; POE/Filter/HTTPD.pm 1.24

    Justify the offsets in error dumps so things line up better. 

  2002-06-18 21:21:24 by rcaputo; POE/Filter/HTTPD.pm 1.23

    When the HTTP parser writes a hex dump, make it use a fixed font so
    things line up. 

  2002-06-13 23:49:32 by rcaputo; POE/Preprocessor.pm 1.30

    Update the instructions for using POE::Processor with PerlApp. Thanks
    to Zoltan Kandi for making sure it works. 

  2002-06-11 17:02:59 by rcaputo; NEEDS 1.7

    Peter Chen noticed that the NEEDS file did not list Storable as one
    of POE::Filter::Reference's dependencies. Now it does. :) 

  2002-06-10 17:53:18 by rcaputo; t/00_coverage.t 1.11

    This test never called POE::Kernel's run() method, so we got a
    warning about that. Now it's all better. 

  2002-06-10 17:47:07 by rcaputo; POE/Kernel.pm 1.185

    feelicks had a problem where his program never ran. It was traced
    back to not calling $poe_kernel->run(). This happens to me ALL THE
    TIME, and feelicks (and I) is sure it happens to a lot of people. I
    added a flag that's set when run() is called. POE::Kernel's DESTROY
    will warn the programmer/operator if that flag is not set. 

  2002-06-09 18:32:12 by rcaputo
  lib/Makefile-5004.pm 1.5; lib/Makefile-5005.pm 1.15

    Fix the cvs2cl invocations so they really include CHANGES files in
    tarballs. The order of operations in "make dist" means that PREOP
    occurs AFTER CHANGES is copied into the tarball tree. D'oh! 

=========================
2002-06-08 03:29:19 v0_20
=========================

  2002-06-08 03:29:19 by rcaputo; POE.pm 1.139; README 1.96

    Final preparations for releasing POE 0.20. 

  2002-06-08 01:58:31 by rcaputo
  lib/Makefile-5004.pm 1.4; lib/Makefile-5005.pm 1.14

    Have Makefile.PL touch the CHANGES file so that "make dist" will find
    it. Even though we generate CHANGES from the CVS log, WriteMakeFile
    needs to see something there first. 

  2002-06-07 04:17:09 by rcaputo; lib/Makefile-5004.pm 1.3

    Perl 5.004_03 didn't like AUTHOR and ABSTRACT, so I removed them. 

  2002-06-07 04:14:26 by rcaputo; lib/Makefile-5005.pm 1.13

    Perl 5.005_03 didn't like bareword IO::Poll on the left side of the
    => operator. I put quotes around it, and things seem to be generally
    better. 

  2002-06-07 04:13:18 by rcaputo; POE/Loop/Tk.pm 1.22; t/06_tk.t 1.35

    Philip Gwyn discovered a "modification of a read-only value" error in
    POE::Kernel::Tk's file watcher pause/resume code. I adapted a
    previous plain-Tk testcase to verify the behavior outside POE. It's
    there in Tk on Perl 5.004_05. The testcase doesn't fail with Perl
    5.005_03, so it looks like an incompatibility between Tk and the
    older version of Perl. I've decided to discontinue Tk support in Perl
    versions before 5.005_03. If anyone has a vested interest in the
    older Perls + Tk + POE, I can provide the test case for their
    debugging pleasure. 

  2002-06-06 05:19:59 by rcaputo; t/27_poll.t 1.2

    Philip Gwyn spotted that TestSetup wasn't being used here. That's
    what I get for testing stuff on systems that have everything. 

  2002-06-03 15:34:34 by rcaputo
  lib/Makefile-5004.pm 1.2; lib/Makefile-5005.pm 1.12

    Added the second bit of sungo's Makefile magic. This part generates
    POE's CHANGES automatically from the cvs log. No more twiddling with
    it by hand! Yay! P.S., Everybody better commit decent change
    descriptions, or else. 

  2002-06-03 04:46:04 by rcaputo; lib/Makefile-5005.pm 1.11

    Remove IPC::Run (we're not using it yet). 

===========================
2002-06-02 16:03:24 v0_1901
===========================

  2002-06-02 16:03:24 by rcaputo; POE.pm 1.138

    Bump version number to 0.1901 

  2002-06-02 16:02:50 by rcaputo; POE/Preprocessor.pm 1.29

    Fixed a missing symbol warning when expanded source dumping is off. 

  2002-06-01 22:13:56 by rcaputo; lib/Makefile-5005.pm 1.10

    Disable t/27_poll.t if IO::Poll is not installed. 

  2002-06-01 22:13:17 by rcaputo; t/00_coverage.t 1.10

    Prettified another message pertaining to a missing optional
    dependency. Made an old one more cleare (gods, I hope) about the
    missing module being optional. 

  2002-06-01 22:12:07 by rcaputo; POE/Wheel/ReadLine.pm 1.19

    Jos Boumans discovered some segfault-like behavior when using
    POE::Wheel::ReadLine on MSWin32. ActiveState Perl does not gracefully
    handle BEGIN{eval{}}, so the BEGIN{} parts were successfully removed. 

  2002-06-01 22:08:20 by rcaputo; POE/Loop/Poll.pm 1.2

    Increased the amount of debugging information when TRACE_SELECT is
    enabled. Part of the effort to make IO::Poll work on MSWin32. 

  2002-06-01 22:06:16 by rcaputo; POE/Kernel.pm 1.184

    Fixed the bug Ted Suzman reported on MSWin32 (re: SIGCHLD returning
    positive PIDs). Worked around the fact that IO::Poll is broken (or at
    least behaving inconsistent with its documentation) on MSWin32. 

  2002-06-01 22:04:25 by rcaputo; MANIFEST 1.67; t/28_windows.t 1.1

    Properly attributed Matt Sergeant (not Scott Beck) for IO::Poll
    support. Fixed the bug that Ted Suzman reported in Kernel.pm's
    SIGCHLD handling. True processes return positive PIDs, which were
    being treated as inconsistencies in POE::Kernel. Added a regression
    test for this condition.
    ---------------------------------------------------------------------
    -
    ---------------------------------------------------------------------
    - 

  2002-05-30 06:40:13 by rcaputo; MANIFEST 1.66; POE.pm 1.137;
  POE/Kernel.pm 1.183; POE/Loop/Poll.pm 1.1; lib/Makefile-5005.pm 1.9;
  t/08_errors.t 1.34; t/27_poll.t 1.1

    Matt Sergeant contributed POE::Kernel::Poll, an event loop substrate
    based on IO::Poll. IO::Poll is potentially faster than select() in
    large scale servers (and other multi-connection programs). I also
    tweaked a description in the 5005 Makefile so the intent of some
    modules is more clear. Test 27_poll.t is neat, and I'm glad that it
    works. It reruns test 04_selects.t with IO::Poll loaded, forcing
    POE::Kernel::Poll to be used instead of POE::Kernel::Select. 

  2002-05-30 06:29:40 by rcaputo; t/12_signals_ev.t 1.15

    Try to make the skip message so friendly that Windows users don't
    wonder whether they should install Event.pm. 

  2002-05-29 05:27:05 by rcaputo; POE/Preprocessor.pm 1.28

    Added the ability to dump files with expanded macros. This should let
    perlapp and perl2exe "compile" POE programs now. 

  2002-05-29 05:25:53 by rcaputo; POE/Kernel.pm 1.182

    Moved C<use POE::Preprocessor;> to the top of C<package POE::Kernel;>
    so it would see all of the code therein. The "# include" directives
    are incompatible with the new POE::Preprocessor dump feature, so I
    removed them. 

  2002-05-29 05:24:10 by rcaputo; POE/Loop/Event.pm 1.16;
  POE/Loop/Gtk.pm 1.16; POE/Loop/Select.pm 1.26; POE/Loop/Tk.pm 1.21;
  POE/NFA.pm 1.16; POE/Session.pm 1.78; POE/Wheel/ReadLine.pm 1.18

    Moved the C<use POE::Preprocessor;> statement to the top of each
    package it was in. This lets the preprocessor (and the resulting
    expanded files) include everything in the package. 

  2002-05-28 22:53:23 by rcaputo; POE/Kernel.pm 1.181

    Applied some of the feedback from Android18, errr, and hdm on #poe.
    These are minor doc patches to clarify some finer points. 

  2002-05-28 22:49:15 by rcaputo
  POE/Wheel/Run.pm 1.32; t/08_errors.t 1.33

    I patched POE::Wheel::Run to use POE::Filter::Line by default. This
    broke a subtest in t/08_errors.t when previously illegal usage became
    okay. Heh! 

  2002-05-28 22:46:06 by rcaputo; POE/Wheel/FollowTail.pm 1.34

    My previous "fixes" for FollowTail weren't very good. This set of
    fixes seems to work much better in tests. The problem? Not properly
    detecting when log files were reset. In the process of fixing it,
    more debugging information was added, and the BUGS were updated. 

  2002-05-28 02:01:26 by rcaputo; t/08_errors.t 1.32

    Skipped more Wheel::Run based tests. 

  2002-05-28 02:00:44 by rcaputo; t/04_selects.t 1.14

    The new select bug test failed on Win32 because it assumed select()
    and non-blocking I/O worked on plain files. Fixed it to use a socket
    instead, which Windows can cope with. 

  2002-05-28 01:59:48 by rcaputo
  t/01_sessions.t 1.18; t/22_wheel_run.t 1.23

    Make the Win32 skip messages a little friendlier. 

  2002-05-27 21:53:17 by rcaputo; lib/Makefile-5005.pm 1.8

    Re-revised the module categories. I know it's silly to think there
    ever will be a wording that will satisfy everyone, but still I try.
    :) 

  2002-05-27 21:52:24 by rcaputo; POE/Wheel/ReadLine.pm 1.17

    ReadLine now assumes vt100 if a TERM environment variable isn't set. 

  2002-05-27 21:49:51 by rcaputo; POE/Filter/Reference.pm 1.24

    Document how easy it is to use YAML with Filter::Reference. Damn,
    that's sexy. 

  2002-05-27 21:48:24 by rcaputo
  POE/Component/Client/TCP.pm 1.13; POE/Component/Server/TCP.pm 1.21

    Standardized the semantics of Filter and ClientFilter. Both may now
    take a POE::Filter class instance or name. For class names, they try
    building a standard (no parameters) instance of the class internally. 

  2002-05-27 21:36:31 by rcaputo; POE/Session.pm 1.77

    Fixed a typo that Kane found in the docs. 

  2002-05-27 02:35:54 by rcaputo; lib/Makefile-5005.pm 1.7

    ttyS on IRC was confused about the "Optional Full-Screen Child
    Process Support" message, so I revised them all to be a little less
    dense. 

  2002-05-25 19:45:36 by rcaputo
  POE/Kernel.pm 1.180; t/04_selects.t 1.13

    Scott Beck discovered a long-standing (but rarely, if ever heretofore
    tickled) bug in POE::Kernel's _internal_select(). I tracked it down
    to a leftover hash key that wasn't removed when necessary.
    POE::Kernel now deletes it, and t/04_selects.t has a new test. 

  2002-05-24 21:00:20 by rcaputo
  POE/Wheel/Run.pm 1.31; t/22_wheel_run.t 1.22

    After spending several days beating my head against the fork/exec
    paradigm on Win32, I have finally concluded that it is not
    consistently implemented from one Windows version to the next, making
    it a veritable nightmare of twisty variations to work around. Neither
    IPC::Open2, IPC::Open3, nor IPC::Run work across the myriad flavors
    of "Win32", and I have neither the time nor inclination to attempt
    success where three such modules-- all dedicated to performing this
    very task, and it alone-- have failed. Arf fthagn poit! (Anyone who
    does have the time or inclination to fix it is welcome to, though.) 

  2002-05-24 20:55:52 by rcaputo; lib/Makefile-5005.pm 1.6

    Increase the required version for ExtUtils::AutoInstall. 

  2002-05-23 12:45:19 by rcaputo
  POE/Wheel/Run.pm 1.30; t/22_wheel_run.t 1.21

    Added ARG4 to Wheel::Run's ErrorEvent. This extra parameter indicates
    the child filehandle that generated the error. For example, "read"
    error "0" on "STDOUT" means that the child's STDOUT was closed. I
    also updated the Wheel::Run test to use CloseEvent instead of signals
    to detect when a child was done. 

  2002-05-22 22:38:37 by rcaputo; POE/Wheel/Run.pm 1.29

    I added CloseEvent to Wheel::Run. This should address a long-standing
    issue where it was difficult to tell when child processes were done
    sending information. 

  2002-05-22 19:06:10 by rcaputo; POE/Driver/SysRW.pm 1.20

    Remove a spurious $|=1 leftover from testing. 

  2002-05-22 18:48:50 by rcaputo; POE/NFA.pm 1.15; POE/Session.pm 1.76

    Differentiate between package and object methods in an error message. 

  2002-05-22 01:41:04 by rcaputo; POE/Kernel.pm 1.179

    Made some of the TRACE_SELECT warnings a little more descriptive. 

  2002-05-21 23:02:22 by rcaputo; MANIFEST 1.65;
  lib/ExtUtils/AutoInstall.pm 1.1; lib/Makefile-5005.pm 1.5

    Moved ExtUtils::AutoInstall to a location where it may be found with
    a simple "use" statement. Also upgraded it to 0.32. 

  2002-05-21 22:58:52 by rcaputo; t/09_wheels_unix.t 1.11

    Make the "Windows don't do dat!" message a little more professional. 

  2002-05-21 22:51:22 by rcaputo; t/06_tk.t 1.34

    I confirmed that Tk's fileevent watchers are broken on Win32. POE's
    Tk I/O tests fail without any reads, and the test is being run under
    Win32, assume that the installed Tk is a broken one. In that case,
    skip the tests rather than fail them. For all other situations
    (including working Tk on Win32), the tests should behave normally. 

  2002-05-21 02:26:01 by rcaputo; POE/Wheel/FollowTail.pm 1.33

    While writing a sample program for POE's cookbook, I found that
    POE::Wheel::FollowTail would detect log resets even when none
    happened. I revised the way log file resets are detected, and it
    seems to work much better now. 

  2002-05-20 19:18:01 by rcaputo; POE/Wheel/ReadLine.pm 1.16

    Ekkis found a system where POSIX::Termios::getospeed() on STDIN
    returned undef. Default the terminal output speed to 38400 in this
    case. 

  2002-05-19 02:52:15 by rcaputo; lib/Makefile-5005.pm 1.4

     Fixed the filename in the auto-generated CHANGES magic. That's still
    commented out, though. "make dist" will fail if CHANGES isn't there
    already; this is because it's in MANIFEST, and the Makefile won't
    build an incomplete tarball. Added a bit of code to touch the CHANGES
    file so it always exists after "perl Makefile.PL". That's also
    commented out for now. 

  2002-05-18 04:10:02 by rcaputo; lib/Makefile-5005.pm 1.3

    Thanks to sungo, I was able to add magic to automatically generate
    CHANGES from the cvs log. Requires a local copy of cvs2cl.pl. The
    magic is commented out, however. We'll be hand-rolling CHANGES
    through the next release since there's already much custom change doc
    lovin' going on there. 

  2002-05-18 03:59:03 by rcaputo; POE/Driver/SysRW.pm 1.19

    Peter Barabas was going through POE's source and uncovered a logic
    anomaly :) in Driver::SysRW. I made the logic clearer and hopefully
    more correct, and I documented a strangeness between what's expected
    of sysread() and what actually happens. 

  2002-05-17 01:34:19 by sungo; lib/Makefile-5005.pm 1.2

    default the gtk/tk/event tests to not installing all their deps 

  2002-05-17 01:32:48 by sungo; Makefile.PL 1.23

    drop the spurious warn from the makefile 

  2002-05-15 18:21:54 by rcaputo; Makefile.PL 1.22

    Tone down the old-Perl warning. POE hasn't deprecated 5.004 just yet. 

  2002-05-15 17:44:12 by rcaputo; Makefile.PL 1.21

    Change the deprecation warning back to pre-5.005_03. It was at
    pre-5.005_05 for testing. 

  2002-05-15 17:38:47 by rcaputo; MANIFEST 1.64; Makefile.PL 1.20;
  lib/Makefile-5004.pm 1.1; lib/Makefile-5005.pm 1.1

    Added sungo's makefile magic. 

  2002-05-15 17:34:22 by rcaputo; POE/Wheel/Run.pm 1.28;
  t/08_errors.t 1.31; t/11_signals_poe.t 1.20; t/12_signals_ev.t 1.14;
  t/22_wheel_run.t 1.20; t/23_nfa.t 1.3

    Various work-arounds for fork() not being supported under MacOS 9.x. 

  2002-05-11 12:52:44 by rcaputo
  POE/Kernel.pm 1.178; POE/Session.pm 1.75; samples/tk.perl 1.8

    Deprecate _signal event, and by association using _default to handle
    signals. 

=============================
Beginning of Recorded History
=============================