Sat Nov 28 06:33:38 2009 UTC ()
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.


(seb)
diff -r1.15 -r1.16 pkgsrc/devel/p5-POE/Makefile
diff -r1.7 -r1.8 pkgsrc/devel/p5-POE/distinfo

cvs diff -r1.15 -r1.16 pkgsrc/devel/p5-POE/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/p5-POE/Makefile 2009/04/23 07:25:50 1.15
+++ pkgsrc/devel/p5-POE/Makefile 2009/11/28 06:33:38 1.16
@@ -1,32 +1,32 @@ @@ -1,32 +1,32 @@
1# $NetBSD: Makefile,v 1.15 2009/04/23 07:25:50 sno Exp $ 1# $NetBSD: Makefile,v 1.16 2009/11/28 06:33:38 seb Exp $
2 2
3DISTNAME= POE-1.005 3DISTNAME= POE-1.280
4PKGNAME= p5-${DISTNAME} 4PKGNAME= p5-${DISTNAME}
5CATEGORIES= devel perl5 5CATEGORIES= devel perl5
6MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=POE/} 6MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=POE/}
7 7
8MAINTAINER= minskim@NetBSD.org 8MAINTAINER= minskim@NetBSD.org
9HOMEPAGE= http://poe.perl.org/ 9HOMEPAGE= http://poe.perl.org/
10#HOMEPAGE= http://search.cpan.org/dist/POE/ 10#HOMEPAGE= http://search.cpan.org/dist/POE/
11COMMENT= Perl Object Environment 11COMMENT= Perl Object Environment
12LICENSE= artistic-2.0 12LICENSE= ${PERL5_LICENSE}
13 13
14DEPENDS+= p5-IO-Compress>=2.017:../../devel/p5-IO-Compress 14DEPENDS+= p5-IO-Compress>=2.017:../../devel/p5-IO-Compress
15DEPENDS+= p5-Curses>=1.08:../../devel/p5-Curses 15DEPENDS+= p5-Curses>=1.08:../../devel/p5-Curses
16DEPENDS+= p5-Event>=1.00:../../devel/p5-Event 16DEPENDS+= p5-Event>=1.00:../../devel/p5-Event
17DEPENDS+= p5-IO-tty>=1.08:../../devel/p5-IO-Tty 17DEPENDS+= p5-IO-tty>=1.08:../../devel/p5-IO-Tty
18DEPENDS+= p5-IO>=1.2301:../../devel/p5-IO 18DEPENDS+= p5-IO>=1.2301:../../devel/p5-IO
19DEPENDS+= p5-POE-Test-Loops>=1.004:../../devel/p5-POE-Test-Loops 19DEPENDS+= p5-POE-Test-Loops>=1.030:../../devel/p5-POE-Test-Loops
20DEPENDS+= p5-Socket6>=0.14:../../net/p5-Socket6 20DEPENDS+= p5-Socket6>=0.14:../../net/p5-Socket6
21DEPENDS+= p5-Term-ReadKey>=2.21:../../devel/p5-Term-ReadKey 21DEPENDS+= p5-Term-ReadKey>=2.21:../../devel/p5-Term-ReadKey
22DEPENDS+= p5-Term-Cap>=1.09:../../devel/p5-Term-Cap 22DEPENDS+= p5-Term-Cap>=1.09:../../devel/p5-Term-Cap
23DEPENDS+= p5-Time-HiRes>=1.59:../../time/p5-Time-HiRes 23DEPENDS+= p5-Time-HiRes>=1.59:../../time/p5-Time-HiRes
24DEPENDS+= p5-URI>=1.30:../../www/p5-URI 24DEPENDS+= p5-URI>=1.30:../../www/p5-URI
25DEPENDS+= p5-libwww-[0-9]*:../../www/p5-libwww 25DEPENDS+= p5-libwww-[0-9]*:../../www/p5-libwww
26 26
27PKG_INSTALLATION_TYPES= overwrite pkgviews 27PKG_INSTALLATION_TYPES= overwrite pkgviews
28PKG_DESTDIR_SUPPORT= user-destdir 28PKG_DESTDIR_SUPPORT= user-destdir
29 29
30MAKE_PARAMS+= --default 30MAKE_PARAMS+= --default
31PERL5_PACKLIST= auto/POE/.packlist 31PERL5_PACKLIST= auto/POE/.packlist
32 32

cvs diff -r1.7 -r1.8 pkgsrc/devel/p5-POE/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/p5-POE/distinfo 2009/04/23 07:25:50 1.7
+++ pkgsrc/devel/p5-POE/distinfo 2009/11/28 06:33:38 1.8
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.7 2009/04/23 07:25:50 sno Exp $ 1$NetBSD: distinfo,v 1.8 2009/11/28 06:33:38 seb Exp $
2 2
3SHA1 (POE-1.005.tar.gz) = aae1983781f6e3b5ddc153819d81266e8c0c543f 3SHA1 (POE-1.280.tar.gz) = a6712d74fe272fc9609b98ba94b6a60668b5d769
4RMD160 (POE-1.005.tar.gz) = 639f2fd0573bab7eae08b93180a9c8779b935020 4RMD160 (POE-1.280.tar.gz) = 089eba1b946327e4a81e025039385233e3ea51a7
5Size (POE-1.005.tar.gz) = 353833 bytes 5Size (POE-1.280.tar.gz) = 361597 bytes