Subject: CVS commit: pkgsrc/devel/p5-POE
From: Stoned Elipot
Date: 2009-11-28 07:33:38
Message id: 20091128063338.9D387175DD@cvs.netbsd.org

Log Message:
Update p5-POE from version 1.005 to version 1.280.

Approved by MAINTAINER.

Pkgsrc changes:
- Adjust dependencies
- Change LICENSE to Perl5's one

Upstream changes (as announced on POE's mailing list):
[Message ID: 4A77B6BD-77ED-4A93-A110-16B083E010F5@pobox.com]
I/O Dispatch is Faster

I/O events jump the queue in POE 1.280. Skipping an enqueue and
dequeue saves significant time. The drawback is that I/O is dispatched
in a different order relative to other kinds of events. Most people
won't care, but it has affected one of POE::Component::Client::HTTP's
tests. Speak up if you think it's affecting you.

Session Cleanup is Faster

In POE 1.280, session cleanup is done just before the event loop
would wait for new events. Programs that aren't event bound should
show decreased latency because the cleanup will be scheduled during
idle times. This optimization changes the timing of session cleanup
and their resulting _stop events. While I don't think it affects
many people, it has already bitten Adam Kennedy. Please let us know
if you suspect it's gnawing on you, too.

Other Changes

POE::Wheel::Run::Win32 code has been merged into POE::Wheel::Run.
Many thanks to Chris Williams for developing and contributing
POE::Wheel::Run::Win32, and Andrew Feren for the patch.

The tests should be a little faster since the full tracing has been
turned off. Tracing is only enabled when running coverage tests
now. This also exposes more warnings to the console, most of which
have been fixed.

POE::Wheel::ReadLine memory leaks have been fixed. Unfortunately,
it requires the use of Scalar::Util::weaken(). This wheel won't run
on really old versions of Perl anymore. Patches that don't reintroduce
the memory leak are welcome.

Miscellaneous $kernel->has_forked() fixes.

The mark and sweep session garbage collection fixed an issue where
call() would sometimes sidestep garbage collection. Mysterious
program hangs should be eliminated by this release.

Lots of MSWin32 fixes! Not nearly enough, but it's improved by a
leap and a bound.

... and a bunch of really minor things in the CHANGES file.

[Message ID: 86EE3691-481B-4841-9558-8280D5CC6E52@pobox.com]
POE 1.020 is released!  It's a 13-point jump from the last release.
Here are the change highlights, beginning with a few potential
compatibility issues.

(!!!) Thanks to the mailing list, POE::Component::Server::TCP's
ClientConnected callback parameters have been fixed.  Unfortunately,
if your code relies on the previous mis-documented parameters, then
it may now be broken.  Please review your ClientConnected callbacks
with respect to the new behavior and documentation.

(!!!) POE::Loop::Event, POE::Loop::Gtk and POE::Loop::Tk have been
spun off into their own distributions.  This and future POE upgrades
won't update those modules.  Set your dependencies accordingly.

(!!!) With the help of Philip Gwyn, I overhauled POE::Filter::HTTPD to
use plainer code and better support RFC 2616.  As bizarre as it may
sound, GET requests may have content, among other things.  Please make
sure the changes don't break your code.  HTTP is a twisty maze of
specification, all different, and you could be relying on something we
haven't tested.

(!!!) Subversion $Id$ and $Revision$ tags have been removed from the
source.  This is one of two major prerequisites towards moving the
repository to git.  Unfortunately, standardizing modules on the master
version (1.020) has caused retrograde versioning on those modules.  I
will probably release POE 1.300 shortly in an attempt to fix the issue.

Philip Gwyn fixed a pty leak in POE::Wheel::Run!  I had thought
closing them was enough, but noooooo!

Chris Williams fixed some tests, and of course, his legion of robots
have been diligently testing POE and thousands of other modules around
the clock!

Documented some of the caveats and side effects of running code blocks
with POE::Wheel::Run.  It's not quite like using exec() to run
external programs.

Added experimental support for "weak" callbacks and postbacks.  Adam
Kennedy has a use case for postbacks and callbacks that don't keep
their sessions alive.

Fixed a bug where rethrowing unhandled exceptions would corrupt POE's
internal data.  The rethrow has been moved after data cleanup.

Revised POE::Kernel->run() documentation for enhanced clarity, in
hopes that a certain person may grow to understand the "run() wasn't
called" warning can actually be disabled.

[Message ID: F8022A58-D129-40A8-97A2-DA413B7AFD98@pobox.com]
Highlights of POE 1.007:

call() has been optimized slightly.  DrGeek on irc.perl.org #poe
pointed out in irc.perl.org that call() doesn't need to do a garbage
collection check.  It never intrinsically affects a session's
reference count.

Michael Fowler fixed POE::Component::Server::TCP documentation and
added a regression test for the component.

Philip Gwyn added a signal pipe to make signals more reliable when the
USE_SIGNALS switch is enabled.

Gcola on irc.perl.org #poe did substantial testing on ActivePerl for
Windows.

Adam Kennedy wrested some Windows machines from Microsoft for testing,
which helped a lot.

Some of the signals tests were moved out to POE::Test::Loops so that
other event loop adapter writers can take advantage of them.  If
POE::Loop authors have their own tests they'd like to share, let me
know what I can include.

Clarified a couple warnings: the run() was never called warning now
points to documentation to disable it.  The PID reap warnings explain
themselves better.

Files:
RevisionActionfile
1.16modifypkgsrc/devel/p5-POE/Makefile
1.8modifypkgsrc/devel/p5-POE/distinfo