POE 1.280 has just been released, but it may take up to a day before
your favorite CPAN mirror catches wind of it. You'll also need the
latest POE::Test::Loops, version 1.030.
Several contributors helped make this release happen. Notably but not
exclusively:
Craig
Andrew Feren
Adam Kennedy
Marius Kjeldahl
Chris Williams
The people of irc.perl.org #poe.
The people of poe(a)perl.org.
Let me know if I left you out.
Those of you following along may notice that the version numbers
jumped a little. That's because POE has undergone a couple
optimizations that alter its behavior a little.
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.
Thanks everyone! What's next?
--
Rocco Caputo - rcap...@pobox.com