Hello community, here is the log from the commit of package perl-POE for openSUSE:Factory checked in at 2015-04-21 10:51:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-POE (Old) and /work/SRC/openSUSE:Factory/.perl-POE.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-POE" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-POE/perl-POE.changes 2014-08-06 15:32:06.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-POE.new/perl-POE.changes 2015-04-21 10:51:29.000000000 +0200 @@ -1,0 +2,117 @@ +Tue Apr 14 20:46:22 UTC 2015 - [email protected] + +- updated to 1.366 + see /usr/share/doc/packages/perl-POE/CHANGES + + 2014-11-03 13:39:18 -0500 v1_366 + ================================ + + commit 63e55125e55b4220984cc51dc3eb68ae1eb9cb21 + Author: Rocco Caputo <[email protected]> + Date: Mon Nov 3 13:39:18 2014 -0500 + + Bump versions and dependencies for release. + + commit b800fb63188ac415b9f706428289d89b9d90e32f + Author: Rocco Caputo <[email protected]> + Date: Fri Oct 31 12:23:41 2014 -0400 + + Fall back to getprotobyname() if Socket doesn't export IPPROTO_TCP or + IPPROTO_UDP. + + CPAN testers were failing POE because Socket didn't provide these on + the full range of test machines. The common thread seems to be Perl + prior to 5.9. While quite old, there's no compelling reason not to + support it. + + This change also caches the protocol numbers at startup, rather than + looking them up every time. It should be slightly faster as a result. + + commit 90d04a311e463749dfeb10f3032866a723e7ca82 + Author: Philip Gwyn <[email protected]> + Date: Fri Oct 31 11:12:11 2014 -0400 + + [rt.cpan.org 91406] Use empty string instead of undef for __DIE__ + handler. + + The rt.cpan.org bug alleges that the empty string is more compatible. + It doesn't seem to make a difference for contemporary versions of + Perl, so why not? + + commit c6f8e4f9dabbef51a75dbb043c01c92807fc604c + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 30 12:26:25 2014 -0400 + + Trigger POE::Session _stop handlers when POE::Kernel->stop() is + called. + + commit ad6056b4bf5f928f87694fb274b7f30ae1534eb7 + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 30 12:18:00 2014 -0400 + + Remove Data::Dump. It's not used, but use() is FAILing tests. + + commit 4d3cc9fb8310050b4854a5f17ebb3821a870edae + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 2 16:12:42 2014 -0400 + + Clarify the "now running in a different process" warning. + + ================================ + 2014-10-01 19:38:47 -0400 v1_365 + ================================ + + commit ac32695a49330c0543eb985c7e7024f29b14ea28 + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:38:47 2014 -0400 + + Bump the version for release. + + commit 0ffe08ceb164a53003a28364b9a9e3012961ecbb + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:28:11 2014 -0400 + + Expose exceptions thrown from SIGDIE handlers. + + This change causes both the error that triggered a SIGDIE and the + error within the SIGDIE handler to be rethrown together. + + commit 786a6080bf3df744ad91d0b108ea2e4143a59e07 + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:22:25 2014 -0400 + + Add a failing test case for reporting die() from within SIGDIE. + + Grinnz provided this test case on Freenode #perl. It shows that die() + within a SIGDIE handler is not reported. Instead, the original error + is thrown without any indication why it wasn't handled as intended. + + commit 2eacf6bb69ab0843ed02a842a58de676c1cde06e + Author: Rocco Caputo <[email protected]> + Date: Mon Sep 29 08:58:50 2014 -0400 + + SeekBack of 0 is fine on special files. + + Problem found by coworkers at Plixer International. + + commit 1092eff5dfde3ebc9db1f7e0948e332d794b38a7 + Author: Rocco Caputo <[email protected]> + Date: Fri Sep 12 13:57:31 2014 -0400 + + Import carp() into POE::Filter::HTTPD. + + Passing a bogus parameter to POE::Filter::HTTPD->new() caused a + complaint that carp() wasn't defined, rather than the proper + complaint the carp() call was making. + + Thanks go to gbjk for passing on an anonymous report in IRC. + + commit 3155fff17f189be2674fb7870c8fc9d289392c37 + Author: Brian Fraser <[email protected]> + Date: Sun Jul 27 03:25:47 2014 +0200 + + Workaround for systems without getprotobyn* (e.g. android) + + ================================ + +------------------------------------------------------------------- Old: ---- POE-1.364.tar.gz New: ---- POE-1.366.tar.gz cpanspec.yml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-POE.spec ++++++ --- /var/tmp/diff_new_pack.uJIcgP/_old 2015-04-21 10:51:30.000000000 +0200 +++ /var/tmp/diff_new_pack.uJIcgP/_new 2015-04-21 10:51:30.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package perl-POE # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,14 +17,15 @@ Name: perl-POE -Version: 1.364 +Version: 1.366 Release: 0 %define cpan_name POE -Summary: portable multitasking and networking framework for any event loop +Summary: Portable Multitasking and Networking Framework for Any Event Loop License: Artistic-1.0 or GPL-1.0+ Group: Development/Libraries/Perl Url: http://search.cpan.org/dist/POE/ -Source: http://www.cpan.org/authors/id/R/RC/RCAPUTO/%{cpan_name}-%{version}.tar.gz +Source0: http://www.cpan.org/authors/id/R/RC/RCAPUTO/%{cpan_name}-%{version}.tar.gz +Source1: cpanspec.yml BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl @@ -33,17 +34,18 @@ BuildRequires: perl(IO::Handle) >= 1.27 BuildRequires: perl(IO::Pipely) >= 0.005 BuildRequires: perl(IO::Tty) >= 1.08 -BuildRequires: perl(POE::Test::Loops) >= 1.358 +BuildRequires: perl(POE::Test::Loops) >= 1.360 BuildRequires: perl(Storable) >= 2.16 Requires: perl(IO) >= 1.24 Requires: perl(IO::Handle) >= 1.27 Requires: perl(IO::Pipely) >= 0.005 Requires: perl(IO::Tty) >= 1.08 -Requires: perl(POE::Test::Loops) >= 1.358 +Requires: perl(POE::Test::Loops) >= 1.360 Requires: perl(Storable) >= 2.16 %{perl_requires} -# MANUAL +# MANUAL BEGIN BuildRequires: netcfg +# MANUAL END %description POE is a framework for cooperative, event driven multitasking and ++++++ POE-1.364.tar.gz -> POE-1.366.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/CHANGES new/POE-1.366/CHANGES --- old/POE-1.364/CHANGES 2014-07-13 00:25:39.000000000 +0200 +++ new/POE-1.366/CHANGES 2014-11-03 19:42:52.000000000 +0100 @@ -1,4 +1,114 @@ ================================ +2014-11-03 13:39:18 -0500 v1_366 +================================ + + commit 63e55125e55b4220984cc51dc3eb68ae1eb9cb21 + Author: Rocco Caputo <[email protected]> + Date: Mon Nov 3 13:39:18 2014 -0500 + + Bump versions and dependencies for release. + + commit b800fb63188ac415b9f706428289d89b9d90e32f + Author: Rocco Caputo <[email protected]> + Date: Fri Oct 31 12:23:41 2014 -0400 + + Fall back to getprotobyname() if Socket doesn't export IPPROTO_TCP or + IPPROTO_UDP. + + CPAN testers were failing POE because Socket didn't provide these on + the full range of test machines. The common thread seems to be Perl + prior to 5.9. While quite old, there's no compelling reason not to + support it. + + This change also caches the protocol numbers at startup, rather than + looking them up every time. It should be slightly faster as a result. + + commit 90d04a311e463749dfeb10f3032866a723e7ca82 + Author: Philip Gwyn <[email protected]> + Date: Fri Oct 31 11:12:11 2014 -0400 + + [rt.cpan.org 91406] Use empty string instead of undef for __DIE__ + handler. + + The rt.cpan.org bug alleges that the empty string is more compatible. + It doesn't seem to make a difference for contemporary versions of + Perl, so why not? + + commit c6f8e4f9dabbef51a75dbb043c01c92807fc604c + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 30 12:26:25 2014 -0400 + + Trigger POE::Session _stop handlers when POE::Kernel->stop() is + called. + + commit ad6056b4bf5f928f87694fb274b7f30ae1534eb7 + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 30 12:18:00 2014 -0400 + + Remove Data::Dump. It's not used, but use() is FAILing tests. + + commit 4d3cc9fb8310050b4854a5f17ebb3821a870edae + Author: Rocco Caputo <[email protected]> + Date: Thu Oct 2 16:12:42 2014 -0400 + + Clarify the "now running in a different process" warning. + +================================ +2014-10-01 19:38:47 -0400 v1_365 +================================ + + commit ac32695a49330c0543eb985c7e7024f29b14ea28 + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:38:47 2014 -0400 + + Bump the version for release. + + commit 0ffe08ceb164a53003a28364b9a9e3012961ecbb + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:28:11 2014 -0400 + + Expose exceptions thrown from SIGDIE handlers. + + This change causes both the error that triggered a SIGDIE and the + error within the SIGDIE handler to be rethrown together. + + commit 786a6080bf3df744ad91d0b108ea2e4143a59e07 + Author: Rocco Caputo <[email protected]> + Date: Wed Oct 1 19:22:25 2014 -0400 + + Add a failing test case for reporting die() from within SIGDIE. + + Grinnz provided this test case on Freenode #perl. It shows that die() + within a SIGDIE handler is not reported. Instead, the original error + is thrown without any indication why it wasn't handled as intended. + + commit 2eacf6bb69ab0843ed02a842a58de676c1cde06e + Author: Rocco Caputo <[email protected]> + Date: Mon Sep 29 08:58:50 2014 -0400 + + SeekBack of 0 is fine on special files. + + Problem found by coworkers at Plixer International. + + commit 1092eff5dfde3ebc9db1f7e0948e332d794b38a7 + Author: Rocco Caputo <[email protected]> + Date: Fri Sep 12 13:57:31 2014 -0400 + + Import carp() into POE::Filter::HTTPD. + + Passing a bogus parameter to POE::Filter::HTTPD->new() caused a + complaint that carp() wasn't defined, rather than the proper + complaint the carp() call was making. + + Thanks go to gbjk for passing on an anonymous report in IRC. + + commit 3155fff17f189be2674fb7870c8fc9d289392c37 + Author: Brian Fraser <[email protected]> + Date: Sun Jul 27 03:25:47 2014 +0200 + + Workaround for systems without getprotobyn* (e.g. android) + +================================ 2014-07-12 18:24:36 -0400 v1_364 ================================ @@ -700,362 +810,6 @@ FollowTail does not trigger multiple input events when multiple lines are written to the followed file at the same time. -================================ -2013-08-20 16:36:06 -0400 v1_356 -================================ - - commit 35e779316e1de7293401c57f6e9652e66cab28c6 - Author: Rocco Caputo <[email protected]> - Date: Tue Aug 20 16:36:06 2013 -0400 - - Another day, another release. Or at least another four hours. Bump - version. - - commit b81670f1b41aab62aeb9828407c038258a9a2518 - Author: Rocco Caputo <[email protected]> - Date: Tue Aug 20 16:27:22 2013 -0400 - - [rt.cpan.org 1648] Tk may also tie STDIN to an object. - - Tied file handles must be untied before they can be redirected. - Otherwise, as in the case of Tk-wrapped handles, there's no OPEN() - implementation, and the redirection fails. - - commit de91fb45e6d35dae71011a7bfa45c7a9eb63b8ad - Author: Rocco Caputo <[email protected]> - Date: Tue Aug 20 16:19:21 2013 -0400 - - Remove trailing whitespace. - - commit 5282c8e449b32d77eece3fe7857f115bb58adfc7 - Author: Rocco Caputo <[email protected]> - Date: Tue Aug 20 16:17:47 2013 -0400 - - I think it should be _filespec_to_fh() since it returns a handle. - -================================ -2013-08-20 13:23:05 -0400 v1_355 -================================ - - commit e408a83c9a5342887954800c9ec9b109aeb8bc1d - Author: Rocco Caputo <[email protected]> - Date: Tue Aug 20 13:23:05 2013 -0400 - - Bump version and dependencies for release. - - commit 012098ebc019e1cd1c74d23fab7b4e7112a3adec - Author: Rocco Caputo <[email protected]> - Date: Mon Aug 19 18:39:56 2013 -0400 - - [rt.cpan.org 87931] Redo _data_ev_adjust in terms of peek_items(). - - We can't add to the POE::Queue API without breaking third-party - extensions. This takes the performance hit to avoid breaking other - CPAN modules. - - commit 810cba7763ac815b914af3967b8d33b0a84aca13 - Author: Rocco Caputo <[email protected]> - Date: Mon Aug 19 17:32:28 2013 -0400 - - [rt.cpan.org 87928] POE::Queue::Array didn't need - POE::Resource::Clock? - - commit dea8746ea464ea343389d2bf604cc5bd9cf78a0f - Author: Rocco Caputo <[email protected]> - Date: Mon Aug 19 03:51:46 2013 -0400 - - Skip POD::Coverage checks for POE::Pipe::OneWay and TwoWay. - - The documentation has been replaced by deprecations. POD coverage is - moot. - - commit deccbf370f3b2a2d89c5331acf1b4d84d972a61d - Author: Rocco Caputo <[email protected]> - Date: Mon Aug 19 03:50:06 2013 -0400 - - Remove unused code from POE::Resource::Clock. - - A number of functions aren't being used. More are only being used - privately within the module. Comment out some of the unused ones - (more dead code checking is needed). Add leading underscores to the - private ones. - - commit 9c34ae0c06d339c5de81a538f05847bbf61ff5c5 - Author: Rocco Caputo <[email protected]> - Date: Mon Aug 19 03:47:48 2013 -0400 - - Make a new POE::Queue::Array method private. - - It's currently experimental, and it currently breaks other event - queue nimplementations, so it has to go. Making it private will - temporarily reduce temptation to use it, and it helps the POD - coverage tests pass. - - commit bcf5d4451637bab12a2c20ccbc028d042323389b - Author: Joseph Huckaby <[email protected]> - Date: Mon Aug 19 01:04:45 2013 -0400 - - [rt.cpan.org 87922] Don't crash when ClientPreConnect returns undef. - - ClientPreConnect should be allowed to return an undefined value to - abort the client connection. Instead, it caused PoCo::Server::TCP to - crash. This change catches that condition. - - commit f42a26db921db2bbbb951a1becd02800d8ceb2d2 - Author: Nicko Dehaine <[email protected]> - Date: Mon Aug 19 00:03:29 2013 -0400 - - [rt.cpan.org 87721] Clear $! in Driver::SysRW::flush(). - - Nothing prevents the user from calling flush() when there is nothing - to flush. In these cases, $! remained unchanged, which could lead to - detection of false error conditions. This change clears $! to avoid - the problem. - - commit 4e7961d6370cef5741d4ac2f9023fb7e2dad309d - Author: Markus Müller <[email protected]> - Date: Sun Aug 18 21:52:36 2013 -0400 - - [rt.cpan.org 87635] Fix PoCo::Client::TCP "Connected" event - w/watermarks. - - If you use watermarks, the Connected Event will not get triggert - because of a wrong return. This change corrects that. - - commit 7bce20d1366f2bb3e6014a8d4db19aa93c00e9aa - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 04:44:12 2013 -0400 - - Eliminate an uninitialized value warning in the tests. - - commit cb8a944db305c3d9adb1752d2d730bdec192cfd7 - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 03:35:25 2013 -0400 - - Add t/10_units/05_filters/51_reference_die.t to MANIFEST. - - commit b07d2ccdc10c19f087166125ca91fc8b8468d417 - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 02:50:22 2013 -0400 - - Replace POE::Pipe::* guts with IO::Pipely. - - This change doesn't change the way POE or its tests use POE::Pipe::*. - All tests pass in my development environment, so I expect no obvious - problems using IO::Pipely. - - commit c8974aa92080b684a2976c7574b80ca7cac00c6a - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 02:19:15 2013 -0400 - - Update copyright dates. - - commit 890244dd7b20a86301c024b9e994c36d993f9180 - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 02:08:45 2013 -0400 - - Move the signal information out of the signal pipe. - - The signal pipe included all signal information. This reduces the - number of signals that can be dispatched in a single event loop - iteration. It also limits the amount and/or type of information we - can include in the signal. - - This change puts the signal information in a plain Perl list and only - uses the signal pipe to wake up the event loop to dispatch the - signals in a safer place. - - commit c88d1d20c151909b823e279af95a1d826368cc46 - Author: Rocco Caputo <[email protected]> - Date: Sun Aug 18 01:59:15 2013 -0400 - - Update sample programs. - - commit 78722c75e36ccd9ae8280a3202adb9840a7bedbe - Author: Rocco Caputo <[email protected]> - Date: Sat Aug 17 17:19:24 2013 -0400 - - Add lib/POE/Resource/Clock.pm to MANIFEST. - - Help wanted: Migrate build/release process to Dist::Zilla, or advise - on same. It's complicated right now. Probably too complicated. - - commit 3fb1edba213e10ef85559eabfbbf3e9790841564 - Author: Rocco Caputo <[email protected]> - Date: Tue Jul 16 00:55:03 2013 -0400 - - [rt.cpan.org 81550] Untaint %ENV as it's examined for TRACE/ASSERTs. - - commit 055ccf3a4eb5645272c3a076641f9ca89e5d88fa - Author: Rocco Caputo <[email protected]> - Date: Mon Jul 15 22:39:15 2013 -0400 - - Fix a typo introduced in an earlier commit. - - commit 0f36f724df6c77d0c53d248fc74e71e7cbdf8057 - Author: Mike <[email protected]> - Date: Sat Jul 6 15:10:38 2013 -0400 - - Add a test case for the MSWin32 stat() bug fixed a few commits ago. - - commit 6ecb93be7fc24fadf5efd1d351e69070d37a2cab - Author: Rocco Caputo <[email protected]> - Date: Sat Jul 6 15:09:47 2013 -0400 - - Turn off debugging. - - commit bf9514fbddfc5e954b3c2f5e54724ee2da3868fe - Merge: 223a8cc 940189d - Author: Rocco Caputo <[email protected]> - Date: Sat Jun 8 21:54:52 2013 -0400 - - Merge remote-tracking branch 'remotes/sf/master' - - commit 940189dfb8177e3685bc46fcf256bf6752024f32 - Author: Philip Gwyn <[email protected]> - Date: Sat Jun 8 12:36:31 2013 -0400 - - Added POE::Resource::Clock - - commit 223a8cca126e70aed5f15979cb3ea9fc661909b1 - Author: Rocco Caputo <[email protected]> - Date: Fri Jun 7 17:08:20 2013 -0400 - - Consistently stat file names or handles. - - stat() on Windows reports different device IDs for a file depending - whether it was stat()ed via name or opened handle. If used - inconsistently, stat() will always report differences. Discovered by - "pru-mike" at - blogs.perl.org/users/pru-mike/2013/06/creepy-perl-stat-functions-on-w - indows.html - - commit 0aa938883c65605c057f7d234b2f2fd01cafad74 - Author: Rocco Caputo <[email protected]> - Date: Thu May 2 22:10:22 2013 -0400 - - Fix iThread-safety issue in POE::Component docs. - - Stringified object references aren't iThread-safe. Spawn a new - interpreter, and copies of object have different memory addresses. - Previously stringified versions are not fixed to match. Thanks to - Paul Evans for pointing it out. - - commit 219f5e1f4e526905d452d6112924224a2568e5da - Author: Rocco Caputo <[email protected]> - Date: Sun Apr 28 16:29:27 2013 -0400 - - Note how to get ClosedEvent when killing processes in Windows. - - Rafael Kitover provided a test case where kill() would prevent - ClosedEvent from firing on Winodws. We worked out a work-around, - which he'll be using in MooseX::Workers. I've documented it here for - others. - - commit 42a5f9cae2d6cc29339d022153d44926a8ac4711 - Author: Rocco Caputo <[email protected]> - Date: Sat Apr 20 22:50:37 2013 -0400 - - Replace Z<comment> with =for comment, per perlpod. - - commit b7eec09b0f052c210925999b09a921a165b24f0f - Author: Rocco Caputo <[email protected]> - Date: Tue Dec 18 01:37:52 2012 -0500 - - [rt.cpan.org 77907] Apply Alexander Becker's documentation - suggestion. - - commit 032420f716604cac2914d692e3c5d3c8a7dbeefa - Author: Rocco Caputo <[email protected]> - Date: Tue Dec 18 01:34:44 2012 -0500 - - [rt.cpan.org 77233] Apply Lukas Mai's suggested POD fix. - - commit 814486ce85ac3846267a4e3aeb85c5f62c4c0e5c - Author: Philip Gwyn <[email protected]> - Date: Tue Dec 4 17:13:32 2012 -0500 - - Added POE::Resource::Clock which exports monotime() and walltime() - The Queue uses monotime() as a priority, but the public API uses - walltime() Fixed EV_TIME to EV_FROMSTATE EV_SEQ is set again - - commit 513999b229c682a25773be4199f93685223957ee - Author: Rocco Caputo <[email protected]> - Date: Mon Oct 29 18:27:52 2012 -0400 - - Don't bother with IO::Tty on Cygwin. - - average_drifter on freenode #perl-cats pointed out that IO::Tty fails - to install on contemporary Cygwin. This change skips that requirement - when $^O eq 'cygwin'. - - After investigating, I found and reported two problems. These must be - resolved before undoing this work-around: - - IO::Tty compile failure: - https://rt.cpan.org/Ticket/Display.html?id=80477 - - App::cpanminus conrigure timeout is too short: - https://rt.cpan.org/Ticket/Display.html?id=80478 - - commit ec43fcdf40ff511de6cd08785298670181a6b7e6 - Author: Rocco Caputo <[email protected]> - Date: Thu Oct 11 09:26:16 2012 -0400 - - Don't confess on the use of AF_INET6 or PF_INET6 in SocketFactory. - - SocketFactory uses those constants unconditionally during - initialization, so things that don't even need them fail. - - http://www.cpantesters.org/cpan/report/9c1ad42e-12dc-11e2-81a5-a3382b - 22a531 is a Perl 5.6.2 test failure, but as far as I can tell all the - errors are due to missing IPv6 support on that platform. - - commit d8eec5291a94ad006e4f98d43db11a7d1821627b - Author: Rocco Caputo <[email protected]> - Date: Thu Oct 11 01:31:26 2012 -0400 - - [rt.cpan.org 79379] Document repositories and online change log - browsers. - - Greg Sabino Mullane pointed out the difficulty of finding a complete, - up to date change log. The CHANGES file distributed with POE only - goes back a year, and he needed to go farther back. - - commit 616bb1050e8f01150c6db1a02570d6dff9c0320c - Author: Philip Gwyn <[email protected]> - Date: Thu Sep 27 15:33:33 2012 -0400 - - [rt.cpan.org 79886] Fix SIGDIE handler save/restore for Perl 5.8.8. - - Applied a modified version of the patch and test case included in the - RT ticket. - - commit cb4f65f0aefdf7ed7b22d5db8ea8f0773f47d41b - Author: Rocco Caputo <[email protected]> - Date: Fri Aug 31 11:09:35 2012 -0400 - - Optionally export FIRST_UNUSED so subclasses know where in @$self to - start. - - commit f7f761cd596cafac6d86e3d69e74965f9747bf9b - Author: Rocco Caputo <[email protected]> - Date: Thu Jun 28 00:17:40 2012 -0400 - - Add more signal handling diagnostics when asserting data at shutdown. - - commit f27fa471d95ac270c1a927a27438587cc92bccf8 - Author: Rocco Caputo <[email protected]> - Date: Thu Jun 28 00:13:31 2012 -0400 - - Docment that waitpid() calls interfere with sig_child(). - - Programs that reap their own child processes AND use sig_child() to - watch for those processes MUST call sig_child($pid, undef) to clear - the watchers. sig_child() only notifies programs after some event - loop reaps the process. If an application reaps it first, POE may - never know the child went away. - ============== End of Excerpt ============== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/MANIFEST new/POE-1.366/MANIFEST --- old/POE-1.364/MANIFEST 2014-07-13 00:25:34.000000000 +0200 +++ new/POE-1.366/MANIFEST 2014-11-03 19:42:44.000000000 +0100 @@ -144,6 +144,7 @@ t/90_regression/broeren-win32-nbio.t t/90_regression/cfedde-filter-httpd.t t/90_regression/ferrari-server-unix.t +t/90_regression/grinnz-die-in-die.t t/90_regression/hinrik-wheel-run-die.t t/90_regression/kjeldahl-stop-start-polling.t t/90_regression/kjeldahl-stop-start-sig-nopipe.t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/META.json new/POE-1.366/META.json --- old/POE-1.364/META.json 2014-07-13 00:25:33.000000000 +0200 +++ new/POE-1.366/META.json 2014-11-03 19:42:44.000000000 +0100 @@ -4,7 +4,7 @@ "Rocco Caputo <[email protected]>" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520", + "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690", "license" : [ "perl_5" ], @@ -23,12 +23,12 @@ "prereqs" : { "build" : { "requires" : { - "POE::Test::Loops" : "1.358" + "POE::Test::Loops" : "1.360" } }, "configure" : { "requires" : { - "POE::Test::Loops" : "1.358" + "POE::Test::Loops" : "1.360" } }, "runtime" : { @@ -41,7 +41,7 @@ "IO::Handle" : "1.27", "IO::Pipely" : "0.005", "IO::Tty" : "1.08", - "POE::Test::Loops" : "1.358", + "POE::Test::Loops" : "1.360", "POSIX" : "1.02", "Socket" : "1.7", "Storable" : "2.16", @@ -60,5 +60,5 @@ "url" : "https://github.com/rcaputo/poe" } }, - "version" : "1.364" + "version" : "1.366" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/META.yml new/POE-1.366/META.yml --- old/POE-1.364/META.yml 2014-07-13 00:25:33.000000000 +0200 +++ new/POE-1.366/META.yml 2014-11-03 19:42:44.000000000 +0100 @@ -3,11 +3,11 @@ author: - 'Rocco Caputo <[email protected]>' build_requires: - POE::Test::Loops: '1.358' + POE::Test::Loops: '1.360' configure_requires: - POE::Test::Loops: '1.358' + POE::Test::Loops: '1.360' dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141520' +generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -27,7 +27,7 @@ IO::Handle: '1.27' IO::Pipely: '0.005' IO::Tty: '1.08' - POE::Test::Loops: '1.358' + POE::Test::Loops: '1.360' POSIX: '1.02' Socket: '1.7' Storable: '2.16' @@ -37,4 +37,4 @@ homepage: http://poe.perl.org/ license: http://dev.perl.org/licenses/ repository: https://github.com/rcaputo/poe -version: '1.364' +version: '1.366' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/README new/POE-1.366/README --- old/POE-1.364/README 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/README 2014-11-03 19:38:16.000000000 +0100 @@ -1,4 +1,4 @@ -Version 1.364 +Version 1.366 -------------------- Detailed Information diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Component/Client/TCP.pm new/POE-1.366/lib/POE/Component/Client/TCP.pm --- old/POE-1.364/lib/POE/Component/Client/TCP.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Component/Client/TCP.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(carp croak); use Errno qw(ETIMEDOUT ECONNRESET); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Component/Server/TCP.pm new/POE-1.366/lib/POE/Component/Server/TCP.pm --- old/POE-1.364/lib/POE/Component/Server/TCP.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Component/Server/TCP.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(carp croak); use Socket qw(INADDR_ANY inet_ntoa inet_aton AF_INET AF_UNIX PF_UNIX); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Component.pm new/POE-1.366/lib/POE/Component.pm --- old/POE-1.364/lib/POE/Component.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Component.pm 2014-11-03 19:38:16.000000000 +0100 @@ -5,7 +5,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Driver/SysRW.pm new/POE-1.366/lib/POE/Driver/SysRW.pm --- old/POE-1.364/lib/POE/Driver/SysRW.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Driver/SysRW.pm 2014-11-03 19:38:16.000000000 +0100 @@ -7,7 +7,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Errno qw(EAGAIN EWOULDBLOCK); use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Driver.pm new/POE-1.366/lib/POE/Driver.pm --- old/POE-1.364/lib/POE/Driver.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Driver.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Block.pm new/POE-1.366/lib/POE/Filter/Block.pm --- old/POE-1.364/lib/POE/Filter/Block.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Block.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Grep.pm new/POE-1.366/lib/POE/Filter/Grep.pm --- old/POE-1.364/lib/POE/Filter/Grep.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Grep.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(croak carp); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/HTTPD.pm new/POE-1.366/lib/POE/Filter/HTTPD.pm --- old/POE-1.364/lib/POE/Filter/HTTPD.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/HTTPD.pm 2014-11-03 19:38:16.000000000 +0100 @@ -13,7 +13,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); @@ -33,7 +33,7 @@ sub ST_HEADERS () { 0x01 } # waiting for complete header block sub ST_CONTENT () { 0x02 } # waiting for complete body -use Carp qw(croak); +use Carp qw(croak cluck carp); use HTTP::Status qw( status_message RC_BAD_REQUEST RC_OK RC_LENGTH_REQUIRED RC_REQUEST_ENTITY_TOO_LARGE ); use HTTP::Request (); @@ -70,7 +70,7 @@ if( $@ ) { DEBUG and warn "We don't have Email::MIME::RFC2047::Encoder"; *encode_value = sub { - Carp::cluck( + cluck( "Downgrading wide characters in HTTP header. " . "Consier installing Email::MIME::RFC2047::Encoder" ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Line.pm new/POE-1.366/lib/POE/Filter/Line.pm --- old/POE-1.364/lib/POE/Filter/Line.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Line.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(carp croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Map.pm new/POE-1.366/lib/POE/Filter/Map.pm --- old/POE-1.364/lib/POE/Filter/Map.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Map.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(croak carp); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/RecordBlock.pm new/POE-1.366/lib/POE/Filter/RecordBlock.pm --- old/POE-1.364/lib/POE/Filter/RecordBlock.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/RecordBlock.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Reference.pm new/POE-1.366/lib/POE/Filter/Reference.pm --- old/POE-1.364/lib/POE/Filter/Reference.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Reference.pm 2014-11-03 19:38:16.000000000 +0100 @@ -7,7 +7,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(carp croak confess); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Stackable.pm new/POE-1.366/lib/POE/Filter/Stackable.pm --- old/POE-1.364/lib/POE/Filter/Stackable.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Stackable.pm 2014-11-03 19:38:16.000000000 +0100 @@ -12,7 +12,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter/Stream.pm new/POE-1.366/lib/POE/Filter/Stream.pm --- old/POE-1.364/lib/POE/Filter/Stream.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter/Stream.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ use POE::Filter; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Filter); #------------------------------------------------------------------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Filter.pm new/POE-1.366/lib/POE/Filter.pm --- old/POE-1.364/lib/POE/Filter.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Filter.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Kernel.pm new/POE-1.366/lib/POE/Kernel.pm --- old/POE-1.364/lib/POE/Kernel.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Kernel.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use POE::Resource::Clock qw( monotime sleep mono2wall wall2mono walltime time ); @@ -270,6 +270,7 @@ sub ET_ALARM () { 0x0200 } # Alarm events. sub ET_SELECT () { 0x0400 } # File activity events. sub ET_SIGCLD () { 0x0800 } # sig_child() events. +sub ET_SIGDIE () { 0x1000 } # SIGDIE exception events. # A mask for all events generated by/for users. sub ET_MASK_USER () { ~(ET_GC | ET_SCPOLL) } @@ -961,7 +962,7 @@ # the signal ad nauseam. $self->_dispatch_event( $target_session, $self, - $target_event, ET_SIGNAL_RECURSIVE, [ @$etc, @$target_etc ], + $target_event, ET_SIGNAL_RECURSIVE | $type, [ @$etc, @$target_etc ], $file, $line, $fromstate, monotime(), -__LINE__ ); } @@ -981,7 +982,11 @@ my $handled_session_count = (_data_sig_handled_status())[0]; if ($signal eq "DIE" and !$handled_session_count) { - $kr_exception = $etc->[1]{error_str}; + $kr_exception = $etc->[1]{error_str} . ( + (defined $kr_exception) + ? "Additional error thrown in handler for previous error:\n$kr_exception" + : '' + ); } # Signal completely dispatched. Thanks for flying! @@ -1057,10 +1062,11 @@ # Quiet SIGDIE if it's DEFAULT. If it's something special, then # someone had better know what they're doing. + # 'DEFAULT', undef and '' are all the same. my $old_sig_die = $SIG{__DIE__}; $SIG{__DIE__} = \&_dummy_sigdie_handler if ( - not defined $old_sig_die or $old_sig_die eq 'DEFAULT' + not defined $old_sig_die or $old_sig_die eq 'DEFAULT' or $old_sig_die eq '' ); eval { @@ -1100,13 +1106,13 @@ # We can't enqueue them--the session is about to go away. # Also if the active session has been forced back to $self via # POE::Kernel->stop(). - if ($type & ET_STOP or $kr_active_session eq $self) { + if ($type & (ET_STOP | ET_SIGDIE) or $kr_active_session eq $self) { # Propagate the exception up to the safe rethrow point. $kr_exception = $@; } else { $self->_data_ev_enqueue( - $session, $self, EN_SIGNAL, ET_SIGNAL, [ + $session, $self, EN_SIGNAL, ET_SIGDIE, [ 'DIE' => { source_session => $source_session, dest_session => $session, @@ -1322,7 +1328,7 @@ # Walk backwards to avoid inconsistency errors. foreach my $session (reverse @children) { - $self->_data_ses_free($session->ID); + $self->_data_ses_stop($session->ID); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Loop/IO_Poll.pm new/POE-1.366/lib/POE/Loop/IO_Poll.pm --- old/POE-1.364/lib/POE/Loop/IO_Poll.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Loop/IO_Poll.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ package POE::Loop::IO_Poll; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # Include common signal handling. use POE::Loop::PerlSignals; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Loop/PerlSignals.pm new/POE-1.366/lib/POE/Loop/PerlSignals.pm --- old/POE-1.364/lib/POE/Loop/PerlSignals.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Loop/PerlSignals.pm 2014-11-03 19:38:16.000000000 +0100 @@ -8,7 +8,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # Everything plugs into POE::Kernel. package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Loop/Select.pm new/POE-1.366/lib/POE/Loop/Select.pm --- old/POE-1.364/lib/POE/Loop/Select.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Loop/Select.pm 2014-11-03 19:38:16.000000000 +0100 @@ -9,7 +9,7 @@ use POE::Loop::PerlSignals; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) =for poe_tests diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Loop.pm new/POE-1.366/lib/POE/Loop.pm --- old/POE-1.364/lib/POE/Loop.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Loop.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/NFA.pm new/POE-1.366/lib/POE/NFA.pm --- old/POE-1.364/lib/POE/NFA.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/NFA.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(carp croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Pipe/OneWay.pm new/POE-1.366/lib/POE/Pipe/OneWay.pm --- old/POE-1.364/lib/POE/Pipe/OneWay.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Pipe/OneWay.pm 2014-11-03 19:38:16.000000000 +0100 @@ -8,7 +8,7 @@ use base qw( POE::Pipe ); use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use IO::Pipely qw(pipely); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Pipe/TwoWay.pm new/POE-1.366/lib/POE/Pipe/TwoWay.pm --- old/POE-1.364/lib/POE/Pipe/TwoWay.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Pipe/TwoWay.pm 2014-11-03 19:38:16.000000000 +0100 @@ -8,7 +8,7 @@ use base qw( POE::Pipe ); use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use IO::Pipely qw(socketpairly); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Pipe.pm new/POE-1.366/lib/POE/Pipe.pm --- old/POE-1.364/lib/POE/Pipe.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Pipe.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use IO::Pipely; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Queue/Array.pm new/POE-1.366/lib/POE/Queue/Array.pm --- old/POE-1.364/lib/POE/Queue/Array.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Queue/Array.pm 2014-11-03 19:38:16.000000000 +0100 @@ -5,7 +5,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) @ISA = qw(POE::Queue); use Errno qw(ESRCH EPERM); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Queue.pm new/POE-1.366/lib/POE/Queue.pm --- old/POE-1.364/lib/POE/Queue.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Queue.pm 2014-11-03 19:38:16.000000000 +0100 @@ -1,7 +1,7 @@ package POE::Queue; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Aliases.pm new/POE-1.366/lib/POE/Resource/Aliases.pm --- old/POE-1.364/lib/POE/Resource/Aliases.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Aliases.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ package POE::Resource::Aliases; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Clock.pm new/POE-1.366/lib/POE/Resource/Clock.pm --- old/POE-1.364/lib/POE/Resource/Clock.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Clock.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ package POE::Resource::Clock; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use strict; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Events.pm new/POE-1.366/lib/POE/Resource/Events.pm --- old/POE-1.364/lib/POE/Resource/Events.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Events.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ package POE::Resource::Events; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; @@ -378,7 +378,7 @@ # TODO - Reversing them could avoid entering and removing GC marks. $self->_data_ev_refcount_dec($event->[EV_SOURCE], $event->[EV_SESSION]); - if ($event->[EV_TYPE] & ET_SIGNAL) { + if ($event->[EV_TYPE] & (ET_SIGNAL | ET_SIGDIE)) { $self->_dispatch_signal_event(@{$event}[EV_SESSION..EV_FROMSTATE], $priority, $id); } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Extrefs.pm new/POE-1.366/lib/POE/Resource/Extrefs.pm --- old/POE-1.364/lib/POE/Resource/Extrefs.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Extrefs.pm 2014-11-03 19:38:16.000000000 +0100 @@ -5,7 +5,7 @@ package POE::Resource::Extrefs; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/FileHandles.pm new/POE-1.366/lib/POE/Resource/FileHandles.pm --- old/POE-1.364/lib/POE/Resource/FileHandles.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/FileHandles.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ package POE::Resource::FileHandles; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/SIDs.pm new/POE-1.366/lib/POE/Resource/SIDs.pm --- old/POE-1.364/lib/POE/Resource/SIDs.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/SIDs.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ package POE::Resource::SIDs; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Sessions.pm new/POE-1.366/lib/POE/Resource/Sessions.pm --- old/POE-1.364/lib/POE/Resource/Sessions.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Sessions.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ package POE::Resource::Sessions; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource/Signals.pm new/POE-1.366/lib/POE/Resource/Signals.pm --- old/POE-1.364/lib/POE/Resource/Signals.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource/Signals.pm 2014-11-03 19:38:16.000000000 +0100 @@ -4,7 +4,7 @@ package POE::Resource::Signals; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) # These methods are folded into POE::Kernel; package POE::Kernel; @@ -917,9 +917,12 @@ if( $$ != $signal_pipe_pid ) { _warn( - "<sg> Kernel now running in a different process " . - "(is=$$ was=$signal_pipe_pid ). " . - "You must call call \$poe_kernel->has_forked() in the child process." + "<sg> Signal caught in different process than POE::Kernel initialized " . + "(newPID=$$ oldPID=$signal_pipe_pid sig=$signal_name).\n" + ); + _warn( + "Call POE::Kernel->has_forked() in the child process " . + "to relocate the signal handler.\n" ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resource.pm new/POE-1.366/lib/POE/Resource.pm --- old/POE-1.364/lib/POE/Resource.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resource.pm 2014-11-03 19:38:16.000000000 +0100 @@ -1,7 +1,7 @@ package POE::Resource; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Resources.pm new/POE-1.366/lib/POE/Resources.pm --- old/POE-1.364/lib/POE/Resources.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Resources.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) my @resources = qw( POE::XS::Resource::Aliases diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Session.pm new/POE-1.366/lib/POE/Session.pm --- old/POE-1.364/lib/POE/Session.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Session.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(carp croak); use Errno; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/Curses.pm new/POE-1.366/lib/POE/Wheel/Curses.pm --- old/POE-1.364/lib/POE/Wheel/Curses.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/Curses.pm 2014-11-03 19:38:16.000000000 +0100 @@ -5,7 +5,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(croak); use Curses qw( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/FollowTail.pm new/POE-1.366/lib/POE/Wheel/FollowTail.pm --- old/POE-1.364/lib/POE/Wheel/FollowTail.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/FollowTail.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw( croak carp ); use Symbol qw( gensym ); @@ -190,10 +190,11 @@ croak "FollowTail does not tail directories"; } - # Handle is not a plain file. Can't honor SeekBack. + # Handle is not a plain file. + # Can only honor SeekBack if it's zero. carp "POE::Wheel::FollowTail can't SeekBack special files" - if defined $params{SeekBack}; + if $params{SeekBack}; # The handle isn't legal to multiplex on this platform. if (POE::Kernel::RUNNING_IN_HELL and not -S $handle) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/ListenAccept.pm new/POE-1.366/lib/POE/Wheel/ListenAccept.pm --- old/POE-1.364/lib/POE/Wheel/ListenAccept.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/ListenAccept.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw( croak carp ); use Symbol qw( gensym ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/ReadLine.pm new/POE-1.366/lib/POE/Wheel/ReadLine.pm --- old/POE-1.364/lib/POE/Wheel/ReadLine.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/ReadLine.pm 2014-11-03 19:38:16.000000000 +0100 @@ -5,7 +5,7 @@ BEGIN { eval { require bytes } and bytes->import; } use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw( croak carp ); use Symbol qw(gensym); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/ReadWrite.pm new/POE-1.366/lib/POE/Wheel/ReadWrite.pm --- old/POE-1.364/lib/POE/Wheel/ReadWrite.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/ReadWrite.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw( croak carp ); use POE qw(Wheel Driver::SysRW Filter::Line); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/Run.pm new/POE-1.366/lib/POE/Wheel/Run.pm --- old/POE-1.364/lib/POE/Wheel/Run.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/Run.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(carp croak); use POSIX qw( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel/SocketFactory.pm new/POE-1.366/lib/POE/Wheel/SocketFactory.pm --- old/POE-1.364/lib/POE/Wheel/SocketFactory.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel/SocketFactory.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw( carp croak ); use Symbol qw( gensym ); @@ -68,8 +68,27 @@ *PF_INET6 = sub { -1 }; } } + + eval { Socket->import( 'IPPROTO_TCP' ) }; + if ($@) { + *IPPROTO_TCP = (getprotobyname 'tcp')[2]; + } + + eval { Socket->import( 'IPPROTO_UDP' ) }; + if ($@) { + *IPPROTO_UDP = (getprotobyname 'udp')[2]; + } } +# Common protocols to help support systems that don't have +# getprotobyname(). +my %proto_by_name = ( + tcp => IPPROTO_TCP, + udp => IPPROTO_UDP, +); + +my %proto_by_number = reverse %proto_by_name; + #------------------------------------------------------------------------------ # These tables customize the socketfactory. Many protocols share the # same operations, it seems, and this is a way to add new ones with a @@ -537,8 +556,9 @@ : 'tcp' ); + if ($socket_protocol !~ /^\d+$/) { - unless ($socket_protocol = getprotobyname($socket_protocol)) { + unless ($socket_protocol = $proto_by_name{$socket_protocol} || eval { getprotobyname($socket_protocol) }) { $poe_kernel->yield( $event_failure, 'getprotobyname', $!+0, $!, $self->[MY_UNIQUE_ID] ); @@ -549,7 +569,7 @@ # Get the protocol's name regardless of what was provided. If the # protocol isn't supported, croak now instead of making the # programmer wonder why things fail later. - $protocol_name = lc(getprotobynumber($socket_protocol)); + $protocol_name = $proto_by_number{$socket_protocol} || eval { lc(getprotobynumber($socket_protocol)) }; unless ($protocol_name) { $poe_kernel->yield( $event_failure, 'getprotobynumber', $!+0, $!, $self->[MY_UNIQUE_ID] @@ -598,7 +618,7 @@ # Turn on socket overlapped IO attribute per MSKB: Q181611. eval { - socket(POE, AF_INET, SOCK_STREAM, getprotobyname("tcp")) + socket(POE, AF_INET, SOCK_STREAM, IPPROTO_TCP) or die "socket failed: $!"; my $opt = unpack("I", getsockopt(POE, SOL_SOCKET, SO_OPENTYPE())); $win32_socket_opt = $opt; @@ -630,7 +650,7 @@ # the socket we created... and not all subsequent sockets. if ( POE::Kernel::RUNNING_IN_HELL) { eval { - socket(POE, AF_INET, SOCK_STREAM, getprotobyname("tcp")) + socket(POE, AF_INET, SOCK_STREAM, IPPROTO_TCP) or die "socket failed: $!"; setsockopt(POE, SOL_SOCKET, SO_OPENTYPE(), $win32_socket_opt); close POE; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE/Wheel.pm new/POE-1.366/lib/POE/Wheel.pm --- old/POE-1.364/lib/POE/Wheel.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE/Wheel.pm 2014-11-03 19:38:16.000000000 +0100 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use Carp qw(croak); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/lib/POE.pm new/POE-1.366/lib/POE.pm --- old/POE-1.364/lib/POE.pm 2014-07-13 00:24:26.000000000 +0200 +++ new/POE-1.366/lib/POE.pm 2014-11-03 19:38:16.000000000 +0100 @@ -6,7 +6,7 @@ use Carp qw( croak ); use vars qw($VERSION); -$VERSION = '1.364'; # NOTE - Should be #.### (three decimal places) +$VERSION = '1.366'; # NOTE - Should be #.### (three decimal places) use POE::Resource::Clock qw( monotime time walltime sleep mono2wall wall2mono ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/mylib/PoeBuildInfo.pm new/POE-1.366/mylib/PoeBuildInfo.pm --- old/POE-1.364/mylib/PoeBuildInfo.pm 2014-07-13 00:24:17.000000000 +0200 +++ new/POE-1.366/mylib/PoeBuildInfo.pm 2014-11-03 19:39:09.000000000 +0100 @@ -25,7 +25,7 @@ sub CONFIG_REQUIREMENTS () { ( - "POE::Test::Loops" => '1.358', + "POE::Test::Loops" => '1.360', ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/t/10_units/07_exceptions/02_turn_off.t new/POE-1.366/t/10_units/07_exceptions/02_turn_off.t --- old/POE-1.364/t/10_units/07_exceptions/02_turn_off.t 2010-09-05 02:21:22.000000000 +0200 +++ new/POE-1.366/t/10_units/07_exceptions/02_turn_off.t 2014-10-30 17:22:09.000000000 +0100 @@ -1,5 +1,5 @@ # vim: ts=2 sw=2 filetype=perl expandtab -use Test::More tests => 3; +use Test::More tests => 4; sub POE::Kernel::CATCH_EXCEPTIONS () { 0 } use POE; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/t/10_units/07_exceptions/03_not_handled.t new/POE-1.366/t/10_units/07_exceptions/03_not_handled.t --- old/POE-1.364/t/10_units/07_exceptions/03_not_handled.t 2011-04-17 06:14:43.000000000 +0200 +++ new/POE-1.366/t/10_units/07_exceptions/03_not_handled.t 2014-10-30 17:23:21.000000000 +0100 @@ -1,5 +1,5 @@ # vim: ts=2 sw=2 filetype=perl expandtab -use Test::More tests => 7; +use Test::More tests => 8; use POE; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/t/90_regression/grinnz-die-in-die.t new/POE-1.366/t/90_regression/grinnz-die-in-die.t --- old/POE-1.364/t/90_regression/grinnz-die-in-die.t 1970-01-01 01:00:00.000000000 +0100 +++ new/POE-1.366/t/90_regression/grinnz-die-in-die.t 2014-10-02 01:19:29.000000000 +0200 @@ -0,0 +1,44 @@ +#!/usr/bin/env perl + +use strict; +use warnings; + +use Test::More tests => 3; +use POE; + +POE::Session->create( + inline_states => { + _start => sub { + $_[KERNEL]->sig(DIE => 'sig_DIE'); + die 'original error'; + }, + sig_DIE => sub { + my $exception = $_[ARG1]; + my $event = $exception->{'event'}; + my $error = $exception->{'error_str'}; + + chomp $error; + + is($event, '_start', "die in $event caught"); + + die 'error in error handler'; + + # The die() above bypasses this call. + POE::Kernel->sig_handled(); + }, + } +); + +eval { + POE::Kernel->run(); +}; + +like( + $@, qr/original error/, + "run() rethrown exception contains original error" +); + +like( + $@, qr/error in error handler/, + "run() rethrown exception contains error in error handler" +); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/t/90_regression/leolo-sig-die.t new/POE-1.366/t/90_regression/leolo-sig-die.t --- old/POE-1.364/t/90_regression/leolo-sig-die.t 2013-09-06 00:41:58.000000000 +0200 +++ new/POE-1.366/t/90_regression/leolo-sig-die.t 2014-10-31 16:06:07.000000000 +0100 @@ -71,7 +71,8 @@ is( $ret, 42, 'scalar_ctx3 return value' ); # Undefine SIGDIE handler to cause a hard death. - $SIG{__DIE__} = undef; + # Really setting it to an empty string for compatibility reasons. + $SIG{__DIE__} = ''; my @ret = $poe_kernel->call( $_[SESSION], 'array_ctx3' ); fail( 'array_ctx3 returned unexpectedly' ); }, @@ -84,7 +85,7 @@ array_ctx3 => sub { # now we throw an execption up to our __DIE__ handler - is($SIG{__DIE__}, undef, 'array_ctx3'); + is($SIG{__DIE__}, '', 'array_ctx3'); $WANT = "array_ctx3"; die "$WANT\nmore\n"; return ( 1..17 ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/POE-1.364/t/90_regression/ton-stop-corruption.t new/POE-1.366/t/90_regression/ton-stop-corruption.t --- old/POE-1.364/t/90_regression/ton-stop-corruption.t 2010-09-05 02:21:22.000000000 +0200 +++ new/POE-1.366/t/90_regression/ton-stop-corruption.t 2014-10-30 17:25:12.000000000 +0100 @@ -45,6 +45,6 @@ POE::Kernel->run(); -ok( !$stop_was_called, "stop was not called" ); +is( $stop_was_called, 1, "stop was only called once" ); exit; ++++++ cpanspec.yml ++++++ --- #description_paragraphs: 3 #no_testing: broken upstream #sources: # - source1 # - source2 #patches: # foo.patch: -p1 # bar.patch: preamble: |- BuildRequires: netcfg #post_prep: |- # hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'` # sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL #post_install: |- # sed on %{name}.files #license: SUSE-NonFree #skip_noarch: 1 #custom_build: - #./Build build flags=%{?_smp_mflags} --myflag
