This version was released on 2002-09-03.

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

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

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

	correct the test directory. 

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

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

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

	get the actual user id not the root one. 

  2002-07-07 01:01:31; 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-07 03:11:09; rcaputo; MANIFEST 1.68

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

  2002-07-07 03:41:12; sungo; lib/Test/Harness/Assert.pm 1.1;
  lib/Test/Harness.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 04:32:35; sungo; MANIFEST 1.69

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

  2002-07-07 04:38:59; 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 18:13:00; sungo; MANIFEST 1.70

	correct the test::harness::iterator entry 

  2002-07-07 18:30:08; 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:40:09; sungo; lib/testreport.pl 1.8

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

  2002-07-07 19:12:07; 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-08 03:09:56; rcaputo; samples/proxy.perl 1.18;
  samples/refsender.perl 1.15; samples/followtail.perl 1.9;
  samples/httpd.perl 1.16; samples/refserver.perl 1.16;
  samples/neural-net.perl 1.2; samples/ref-type.perl 1.5

	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-08 13:31:29; rcaputo; POE.pm 1.144

	Document that the samples are moving to the POE Cookbook. 

  2002-07-08 13:32:27; 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 23:04:54; rcaputo
  t/00_coverage.t 1.13; POE/Wheel/Run.pm 1.36

	Tidy up a skip message for the test scoreboard. 

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

	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:23:26; 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-09 21:14:48; rcaputo
  POE/Kernel/Event.pm 1.17; POE/Kernel/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-09 21:15:53; rcaputo; POE/Kernel.pm 1.188

	Fix a documentation nit pointed out by Randal Schwartz. 

  2002-07-15 23:20:10; rcaputo; t/00_coverage.t 1.14; t/07_event.t 1.14;
  t/06_tk.t 1.36; t/01_sessions.t 1.21; t/09_wheels_unix.t 1.13

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

  2002-07-15 23:20:11; rcaputo; t/17_filter_ref.t 1.5;
  t/22_wheel_run.t 1.25; t/27_poll.t 1.5; t/19_filterchange.t 1.10;
  t/28_windows.t 1.3; t/11_signals_poe.t 1.21; t/12_signals_ev.t 1.16;
  t/18_filter_line.t 1.6; t/21_gtk.t 1.14

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

  2002-07-15 23:21:27; 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-16 17:40:15; rcaputo; POE/Kernel/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-17 06:39:21; 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-29 22:34:44; 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-31 18:40:51; rcaputo
  POE/Component/Client/TCP.pm 1.16; POE/Component/Server/TCP.pm 1.24

	[[May Break Code]] 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-31 18:43:01; 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:50:21; 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 20:05:18; rcaputo; POE/Kernel.pm 1.190; MANIFEST 1.71

	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 20:05:20; rcaputo
  POE/Filter/Block.pm 1.11; POE/Driver/SysRW.pm 1.22

	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 20:05:21; rcaputo; POE/Filter/HTTPD.pm 1.26

	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 20:05:22; rcaputo; POE/Filter/Reference.pm 1.26

	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 20:05:23; rcaputo
  POE/Macro/UseBytes.pm 1.1; POE/Wheel/ReadLine.pm 1.20

	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 20:05:24; rcaputo; 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-08-04 18:55:40; rcaputo; POE/Session.pm 1.79

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

  2002-08-04 18:58:15; rcaputo
  POE/Kernel.pm 1.191; POE/Kernel/Poll.pm 1.5; POE/Kernel/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 19:14:04; rcaputo; POE/Macro/UseBytes.pm 1.2

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

  2002-08-15 19:49:44; 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-18 18:17:01; sungo
  lib/Makefile-5005.pm 1.18; lib/Makefile-5004.pm 1.6

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

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

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

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

	script to upload a test report 

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

	add make targets for reportupload 

  2002-08-19 03:52:01; 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-20 19:37:31; rcaputo; POE/Kernel.pm 1.192

	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-20 19:37:32; rcaputo; POE/Kernel/Event.pm 1.18;
  t/00_coverage.t 1.15; t/07_event.t 1.15; t/04_selects.t 1.15;
  t/06_tk.t 1.37; 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-26 22:25:13; rcaputo; POE.pm 1.145

	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-26 22:25:26; rcaputo; POE/Kernel.pm 1.193

	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-26 22:25:28; rcaputo; 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-27 02:32:01; 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-27 04:12:33; 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-29 05:25:41; rcaputo; MANIFEST 1.72

	Added initial IPv6 support. 

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

	Added initial IPv6 support. 

  2002-08-29 14:48:29; rcaputo; POE/Wheel/SocketFactory.pm 1.60

	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 14:48:30; rcaputo; 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 20:40:11; rcaputo; lib/Makefile-5004.pm 1.9

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

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

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

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

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

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

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

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

	Skip all tests if Socket6 is not loadable. 

  2002-08-30 03:59:57; rcaputo; POE/Component/Client/TCP.pm 1.19

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

  2002-08-30 03:59:58; rcaputo; 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 05:14:38; rcaputo; samples/tutorial-chat.perl 1.12;
  samples/filterchange.perl 1.7; samples/socketfactory.perl 1.17

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

  2002-08-30 22:17:41; 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-31 22:41:03; sungo; README 1.97

	document the test server and the makefile targets 

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

	Bump the version to 0.2201 and start a feature freeze. 

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

	remove Macro/UseBytes from the manifest 

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

	revert last patch. my mistake 

  2002-09-01 16:05:33; 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-09-03 04:39:23; rcaputo; POE/Filter/HTTPD.pm 1.27

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

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

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

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

	Last minute tweaks. 

  2002-09-03 15:47:23; rcaputo; lib/Makefile-5004.pm 1.10

	Fix paths to cvs-log.perl. 

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

	Fix paths to cvs-log.perl. 

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

	Rebuild the XML test report if Makefile has changed. 

Back to POE CHANGES.