The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.17

  • This is the second release today. It fixes a test failure on Linux.
  • Brian Knox discovered (the hard way) that POE::Wheel::Run wasn't flushing STDOUT and STDERR when executing coderefs. Added auto-flush to those handles and explicit close() calls after the coderef was run.
  • Added coral's idea and algorithm for timesliced code to TODO.
  • Fixed POE::Pipe's custom socketpair on Linux. Calling getpeername on a connecting socket returns a value that does not equal accept's return value, despite both ends of the socket being on the same machine, in the same program.
  • Added dynweb's Solaris test results for 0.16. Added my own test results for 0.17 on FreeBSD and Linux.

Modules

POE
perl application kernel with event driven threads
a POE servlet class
a simplified TCP server
an abstract file driver
an abstract sysread/syswrite file driver
a protocol abstraction
filter between streams and blocks
POE Data Grepping Filter
convert stream to HTTP::Request; HTTP::Response to stream
filter data as lines
POE Data Mapping Filter
POE Record Block Abstraction
freeze data for sending; thaw data when it arrives
POE Multiple Filter Abstraction
pass through data unchanged (a do-nothing filter)
an event driven threaded application kernel in Perl
even driven nondeterministic finite automaton
common functions for POE::Pipe::OneWay and ::TwoWay
portable one-way pipe creation (works without POE)
portable two-way pipe creation (works without POE)
a macro/const/enum preprocessor
an event driven abstract state machine
high-level protocol logic
non-blocking Curses.pm input for full-screen console apps
follow the tail of an ever-growing file
accept connections from regular listening sockets
prompted terminal input with basic editing keys
buffered non-blocking I/O
event driven fork/exec with added value
non-blocking socket creation and management

Provides

in lib/MyOtherFreezer.pm
in lib/Devel/Null.pm
in POE/Kernel/Event.pm
in POE/Kernel/Gtk.pm
in POE/Kernel/Select.pm
in POE/Kernel/Tk.pm
in POE/Kernel/Event.pm
in POE/Kernel/Gtk.pm
in POE/Kernel/Select.pm
in POE/Kernel/Tk.pm
in lib/TestSetup.pm
in lib/Devel/Trace.pm