Hello community,

here is the log from the commit of package perl-Test-Simple for 
openSUSE:Factory checked in at 2019-02-14 14:11:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Simple (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Test-Simple.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Test-Simple"

Thu Feb 14 14:11:30 2019 rev:21 rq:672859 version:1.302162

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Test-Simple/perl-Test-Simple.changes        
2019-02-01 11:43:29.588672803 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-Test-Simple.new.28833/perl-Test-Simple.changes 
    2019-02-14 14:11:33.432275177 +0100
@@ -1,0 +2,14 @@
+Wed Feb  6 06:30:18 UTC 2019 - Stephan Kulow <[email protected]>
+
+- updated to 1.302162
+   see /usr/share/doc/packages/perl-Test-Simple/Changes
+
+  1.302162  2019-02-05 19:55:14-08:00 America/Los_Angeles
+  
+      - Typo fixes in documentation
+  
+  1.302161  2019-01-29 09:34:27-08:00 America/Los_Angeles (TRIAL RELEASE)
+  
+      - Remove SHM Optimization
+
+-------------------------------------------------------------------

Old:
----
  Test-Simple-1.302160.tar.gz

New:
----
  Test-Simple-1.302162.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Test-Simple.spec ++++++
--- /var/tmp/diff_new_pack.JE2uME/_old  2019-02-14 14:11:34.680274555 +0100
+++ /var/tmp/diff_new_pack.JE2uME/_new  2019-02-14 14:11:34.684274552 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           perl-Test-Simple
-Version:        1.302160
+Version:        1.302162
 Release:        0
 %define cpan_name Test-Simple
 Summary:        Basic utilities for writing tests

++++++ Test-Simple-1.302160.tar.gz -> Test-Simple-1.302162.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/Changes 
new/Test-Simple-1.302162/Changes
--- old/Test-Simple-1.302160/Changes    2019-01-18 20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/Changes    2019-02-06 04:55:15.000000000 +0100
@@ -1,3 +1,11 @@
+1.302162  2019-02-05 19:55:14-08:00 America/Los_Angeles
+
+    - Typo fixes in documentation
+
+1.302161  2019-01-29 09:34:27-08:00 America/Los_Angeles (TRIAL RELEASE)
+
+    - Remove SHM Optimization
+
 1.302160  2019-01-18 11:44:33-08:00 America/Los_Angeles
 
     - No Changes since last trial release
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/META.json 
new/Test-Simple-1.302162/META.json
--- old/Test-Simple-1.302160/META.json  2019-01-18 20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/META.json  2019-02-06 04:55:15.000000000 +0100
@@ -48,7 +48,7 @@
          "url" : "http://github.com/Test-More/test-more/";
       }
    },
-   "version" : "1.302160",
+   "version" : "1.302162",
    "x_breaks" : {
       "Log::Dispatch::Config::TestLog" : "<= 0.02",
       "Net::BitTorrent" : "<= 0.052",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/META.yml 
new/Test-Simple-1.302162/META.yml
--- old/Test-Simple-1.302160/META.yml   2019-01-18 20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/META.yml   2019-02-06 04:55:15.000000000 +0100
@@ -22,7 +22,7 @@
 resources:
   bugtracker: http://github.com/Test-More/test-more/issues
   repository: http://github.com/Test-More/test-more/
-version: '1.302160'
+version: '1.302162'
 x_breaks:
   Log::Dispatch::Config::TestLog: '<= 0.02'
   Net::BitTorrent: '<= 0.052'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/Makefile.PL 
new/Test-Simple-1.302162/Makefile.PL
--- old/Test-Simple-1.302160/Makefile.PL        2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/Makefile.PL        2019-02-06 04:55:15.000000000 
+0100
@@ -23,7 +23,7 @@
     "Storable" => 0,
     "utf8" => 0
   },
-  "VERSION" => "1.302160",
+  "VERSION" => "1.302162",
   "test" => {
     "TESTS" => "t/*.t t/Legacy/*.t t/Legacy/Bugs/*.t t/Legacy/Builder/*.t 
t/Legacy/Regression/*.t t/Legacy/Simple/*.t t/Legacy/Test2/*.t 
t/Legacy/Tester/*.t t/Legacy/subtest/*.t t/Legacy_And_Test2/*.t 
t/Test2/acceptance/*.t t/Test2/behavior/*.t t/Test2/legacy/*.t 
t/Test2/modules/*.t t/Test2/modules/API/*.t t/Test2/modules/Event/*.t 
t/Test2/modules/Event/TAP/*.t t/Test2/modules/EventFacet/*.t 
t/Test2/modules/Formatter/*.t t/Test2/modules/Hub/*.t 
t/Test2/modules/Hub/Interceptor/*.t t/Test2/modules/IPC/*.t 
t/Test2/modules/IPC/Driver/*.t t/Test2/modules/Tools/*.t 
t/Test2/modules/Util/*.t t/Test2/regression/*.t t/regression/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Builder/Formatter.pm 
new/Test-Simple-1.302162/lib/Test/Builder/Formatter.pm
--- old/Test-Simple-1.302160/lib/Test/Builder/Formatter.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder/Formatter.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::Formatter::TAP; our @ISA = qw(Test2::Formatter::TAP) }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Builder/Module.pm 
new/Test-Simple-1.302162/lib/Test/Builder/Module.pm
--- old/Test-Simple-1.302160/lib/Test/Builder/Module.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder/Module.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -7,7 +7,7 @@
 require Exporter;
 our @ISA = qw(Exporter);
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 =head1 NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Test-Simple-1.302160/lib/Test/Builder/Tester/Color.pm 
new/Test-Simple-1.302162/lib/Test/Builder/Tester/Color.pm
--- old/Test-Simple-1.302160/lib/Test/Builder/Tester/Color.pm   2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder/Tester/Color.pm   2019-02-06 
04:55:15.000000000 +0100
@@ -1,7 +1,7 @@
 package Test::Builder::Tester::Color;
 
 use strict;
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 require Test::Builder::Tester;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Builder/Tester.pm 
new/Test-Simple-1.302162/lib/Test/Builder/Tester.pm
--- old/Test-Simple-1.302160/lib/Test/Builder/Tester.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder/Tester.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -1,7 +1,7 @@
 package Test::Builder::Tester;
 
 use strict;
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test::Builder;
 use Symbol;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Builder/TodoDiag.pm 
new/Test-Simple-1.302162/lib/Test/Builder/TodoDiag.pm
--- old/Test-Simple-1.302160/lib/Test/Builder/TodoDiag.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder/TodoDiag.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::Event::Diag; our @ISA = qw(Test2::Event::Diag) }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Builder.pm 
new/Test-Simple-1.302162/lib/Test/Builder.pm
--- old/Test-Simple-1.302160/lib/Test/Builder.pm        2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Builder.pm        2019-02-06 
04:55:15.000000000 +0100
@@ -4,7 +4,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN {
     if( $] < 5.008 ) {
@@ -27,7 +27,6 @@
         Test2::IPC::Driver::Files->import;
         Test2::API::test2_ipc_enable_polling();
         Test2::API::test2_no_wait(1);
-        Test2::API::test2_ipc_enable_shm();
     }
 }
 
@@ -1760,7 +1759,6 @@
     my $ipc = Test2::IPC::apply_ipc($self->{Stack});
     $ipc->set_no_fatal(1);
     Test2::API::test2_no_wait(1);
-    Test2::API::test2_ipc_enable_shm();
 }
 
 sub no_log_results { $_[0]->{no_log_results} = 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/More.pm 
new/Test-Simple-1.302162/lib/Test/More.pm
--- old/Test-Simple-1.302160/lib/Test/More.pm   2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test/More.pm   2019-02-06 04:55:15.000000000 
+0100
@@ -17,7 +17,7 @@
     return warn @_, " at $file line $line\n";
 }
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test::Builder::Module;
 our @ISA    = qw(Test::Builder::Module);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Simple.pm 
new/Test-Simple-1.302162/lib/Test/Simple.pm
--- old/Test-Simple-1.302160/lib/Test/Simple.pm 2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test/Simple.pm 2019-02-06 04:55:15.000000000 
+0100
@@ -4,7 +4,7 @@
 
 use strict;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test::Builder::Module;
 our @ISA    = qw(Test::Builder::Module);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Tester/Capture.pm 
new/Test-Simple-1.302162/lib/Test/Tester/Capture.pm
--- old/Test-Simple-1.302160/lib/Test/Tester/Capture.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Tester/Capture.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 
 package Test::Tester::Capture;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test::Builder;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Test-Simple-1.302160/lib/Test/Tester/CaptureRunner.pm 
new/Test-Simple-1.302162/lib/Test/Tester/CaptureRunner.pm
--- old/Test-Simple-1.302160/lib/Test/Tester/CaptureRunner.pm   2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Tester/CaptureRunner.pm   2019-02-06 
04:55:15.000000000 +0100
@@ -3,7 +3,7 @@
 
 package Test::Tester::CaptureRunner;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test::Tester::Capture;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Tester/Delegate.pm 
new/Test-Simple-1.302162/lib/Test/Tester/Delegate.pm
--- old/Test-Simple-1.302160/lib/Test/Tester/Delegate.pm        2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test/Tester/Delegate.pm        2019-02-06 
04:55:15.000000000 +0100
@@ -3,7 +3,7 @@
 
 package Test::Tester::Delegate;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Scalar::Util();
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/Tester.pm 
new/Test-Simple-1.302162/lib/Test/Tester.pm
--- old/Test-Simple-1.302160/lib/Test/Tester.pm 2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test/Tester.pm 2019-02-06 04:55:15.000000000 
+0100
@@ -18,7 +18,7 @@
 
 use vars qw( @ISA @EXPORT );
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 @EXPORT = qw( run_tests check_tests check_test cmp_results show_space );
 @ISA = qw( Exporter );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test/use/ok.pm 
new/Test-Simple-1.302162/lib/Test/use/ok.pm
--- old/Test-Simple-1.302160/lib/Test/use/ok.pm 2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test/use/ok.pm 2019-02-06 04:55:15.000000000 
+0100
@@ -1,7 +1,7 @@
 package Test::use::ok;
 use 5.005;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 __END__
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/API/Breakage.pm 
new/Test-Simple-1.302162/lib/Test2/API/Breakage.pm
--- old/Test-Simple-1.302160/lib/Test2/API/Breakage.pm  2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/API/Breakage.pm  2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test2::Util qw/pkg_to_file/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/API/Context.pm 
new/Test-Simple-1.302162/lib/Test2/API/Context.pm
--- old/Test-Simple-1.302160/lib/Test2/API/Context.pm   2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/API/Context.pm   2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Carp qw/confess croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/API/Instance.pm 
new/Test-Simple-1.302162/lib/Test2/API/Instance.pm
--- old/Test-Simple-1.302160/lib/Test2/API/Instance.pm  2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/API/Instance.pm  2019-02-06 
04:55:15.000000000 +0100
@@ -2,8 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
-
+our $VERSION = '1.302162';
 
 our @CARP_NOT = qw/Test2::API Test2::API::Instance Test2::IPC::Driver 
Test2::Formatter/;
 use Carp qw/confess carp/;
@@ -26,14 +25,10 @@
     -preload
 
     ipc_disabled
-    ipc_shm_size
-    ipc_shm_last
-    ipc_shm_id
     ipc_polling
     ipc_drivers
     ipc_timeout
     formatters
-    _shm_warned
 
     exit_callbacks
     post_load_callbacks
@@ -217,7 +212,6 @@
     for my $driver (@{$self->{+IPC_DRIVERS}}) {
         next unless $driver->can('is_viable') && $driver->is_viable;
         $self->{+IPC} = $driver->new or next;
-        $self->ipc_enable_shm if $self->{+IPC}->use_shm;
         return;
     }
 
@@ -367,91 +361,19 @@
         # $_[0] is a context object
         sub {
             return unless $self->{+IPC_POLLING};
-            return $_[0]->{hub}->cull unless $self->{+IPC_SHM_ID};
-
-            # You may notice that we are not handling the error case of shmread
-            # returning false. In the case where SHM returns false it falls
-            # through to the call to 'cull'. shmread is used as an optimization
-            # to avoid needing to call cull() too often. In the case of failure
-            # the optimization fails and we call 'cull' more often than needed,
-            # this is slower, but completely safe.
-            my $val;
-            if(shmread($self->{+IPC_SHM_ID}, $val, 0, $self->{+IPC_SHM_SIZE})) 
{
-                return if $val eq $self->{+IPC_SHM_LAST};
-                $self->{+IPC_SHM_LAST} = $val;
-                return $_[0]->{hub}->cull;
-            }
-
-            # Do not come back if shm is gone.
-            delete $self->{+IPC_SHM_ID};
-            return;
+            return unless $self->{+IPC};
+            return unless $self->{+IPC}->pending();
+            return $_[0]->{hub}->cull;
         }
     ) unless defined $self->ipc_polling;
 
     $self->set_ipc_polling(1);
 }
 
-sub ipc_enable_shm {
-    my $self = shift;
-
-    return 1 if defined $self->{+IPC_SHM_ID};
-
-    $self->{+_PID} = $$        unless defined $self->{+_PID};
-    $self->{+_TID} = get_tid() unless defined $self->{+_TID};
-
-    my ($ok, $err) = try {
-        # SysV IPC can be available but not enabled.
-        #
-        # In some systems (*BSD) accessing the SysV IPC APIs without
-        # them being enabled can cause a SIGSYS.  We suppress the SIGSYS
-        # and then get ENOSYS from the calls.
-        local $SIG{SYS} = 'IGNORE' if CAN_SIGSYS;
-
-        require IPC::SysV;
-
-        my $ipc_key = IPC::SysV::IPC_PRIVATE();
-        my $shm_size = $self->{+IPC}->can('shm_size') ? 
$self->{+IPC}->shm_size : 64;
-        my $shm_id = shmget($ipc_key, $shm_size, 0666) or die "Could not get 
shm: $!";
-
-        my $initial = 'a' x $shm_size;
-        shmwrite($shm_id, $initial, 0, $shm_size) or die "Could not write to 
shm: $!";
-        my $val;
-        shmread($shm_id, $val, 0, $shm_size) or die "Could not read from shm: 
$!";
-        die "Read SHM value does not match the initial value ('$val' vs 
'$initial')"
-            unless $val eq $initial;
-
-        $self->{+IPC_SHM_SIZE} = $shm_size;
-        $self->{+IPC_SHM_ID}   = $shm_id;
-        $self->{+IPC_SHM_LAST} = $initial;
-    };
-
-    return $ok;
-}
-
-sub ipc_free_shm {
-    my $self = shift;
-
-    my $id = delete $self->{+IPC_SHM_ID};
-    return unless defined $id;
-
-    $self->{+IPC}->stop_shm() if $self->{+IPC} && 
$self->{+IPC}->can('stop_shm');
-    shmctl($id, IPC::SysV::IPC_RMID(), 0);
-}
-
 sub get_ipc_pending {
     my $self = shift;
-    return -1 unless defined $self->{+IPC_SHM_ID};
-    my $val;
-
-    if (shmread($self->{+IPC_SHM_ID}, $val, 0, $self->{+IPC_SHM_SIZE})) {
-        return 0 if $val eq $self->{+IPC_SHM_LAST};
-        $self->{+IPC_SHM_LAST} = $val;
-        return 1;
-    }
-
-    $self->{+IPC}->stop_shm() if $self->{+IPC} && 
$self->{+IPC}->can('stop_shm');
-    delete $self->{+IPC_SHM_ID};
-    return -1;
+    return -1 unless $self->{+IPC};
+    $self->{+IPC}->pending();
 }
 
 sub _check_pid {
@@ -462,61 +384,13 @@
 
 sub set_ipc_pending {
     my $self = shift;
-
-    return undef unless defined $self->{+IPC_SHM_ID};
-
+    return unless $self->{+IPC};
     my ($val) = @_;
 
     confess "value is required for set_ipc_pending"
         unless $val;
 
-    return if shmwrite($self->{+IPC_SHM_ID}, $val, 0, $self->{+IPC_SHM_SIZE});
-    my $errno = 0 + $!;
-    my $err = "$!";
-
-    # Do not come back if shm is gone.
-    my $id = delete $self->{+IPC_SHM_ID};
-
-    my $ppid = defined $self->{+_PID} ? $self->{+_PID} : '?';
-    my $ptid = defined $self->{+_TID} ? $self->{+_TID} : '?';
-    my $cpid = $$;
-    my $ctid = get_tid();
-
-    my $shm_stopped = $self->{+IPC} && $self->{+IPC}->can('shm_stopped') && 
$self->{+IPC}->shm_stopped || 0;
-
-    if (defined($self->{+_PID}) && ($ppid == $$ || $self->_check_pid($ppid)) 
&& !$shm_stopped) {
-        return if $self->{+_SHM_WARNED}++;
-
-        my $warn = "($$) It looks like SHM has gone away unexpectedly ($errno: 
$err). The parent process is still active. This is not fatal, but may slow 
things down slightly.";
-        $warn = Carp::longmess($warn) if Carp->can('longmess');
-        warn $warn;
-        return;
-    }
-
-    chomp(my $msg = <<"    EOT");
-IPC shmwrite($id, '$val', 0, $self->{+IPC_SHM_SIZE}) failed, the parent 
process appears to have exited. This is a fatal error.
-  Error: ($errno) $err
-  Parent  PID: $ppid
-  Current PID: $cpid
-  Parent  TID: $ptid
-  Current TID: $ctid
-  SHM State:   $shm_stopped
-  IPC errors like this usually indicate a race condition in a test where the
-  parent thread/process is allowed to exit before all child processes/threads
-  are complete.
-  Trace:
-    EOT
-    $self->_fatal_error($msg);
-}
-
-sub _fatal_error {
-    my $self = shift;
-    my ($msg) = @_;
-
-    $msg = Carp::longmess($msg) if Carp->can('longmess');
-
-    print STDERR $msg;
-    CORE::exit(255);
+    $self->{+IPC}->set_pending($val);
 }
 
 sub disable_ipc_polling {
@@ -583,19 +457,6 @@
     return 255;
 }
 
-sub DESTROY {
-    my $self = shift;
-
-    return if $self->{+PRELOAD};
-
-    return unless defined($self->{+_PID}) && $self->{+_PID} == $$;
-    return unless defined($self->{+_TID}) && $self->{+_TID} == get_tid();
-
-    $self->{+IPC}->stop_shm() if $self->{+IPC} && 
$self->{+IPC}->can('stop_shm');
-    shmctl($self->{+IPC_SHM_ID}, IPC::SysV::IPC_RMID(), 0)
-        if defined $self->{+IPC_SHM_ID} && IPC::SysV->can('IPC_RMID');
-}
-
 sub set_exit {
     my $self = shift;
 
@@ -807,42 +668,20 @@
 test state and set $?. This will also call any end callbacks, and wait on child
 processes/threads.
 
-=item $obj->ipc_enable_shm()
-
-Turn on SHM for IPC (if possible)
-
-=item $shm_id = $obj->ipc_shm_id()
-
-If SHM is enabled for IPC this will be the shm_id for it.
-
-=item $shm_size = $obj->ipc_shm_size()
-
-If SHM is enabled for IPC this will be the size of it.
-
-=item $shm_last_val = $obj->ipc_shm_last()
-
-If SHM is enabled for IPC this will return the last SHM value seen.
-
 =item $obj->set_ipc_pending($val)
 
-use the IPC SHM to tell other processes and threads there is a pending event.
-C<$val> should be a unique value no other thread/process will generate.
+Tell other processes and threads there is a pending event. C<$val> should be a
+unique value no other thread/process will generate.
 
-B<Note:> This will also make the current process see a pending event. It does
-not set C<ipc_shm_last()>, this is important because doing so could hide a
-previous change.
+B<Note:> This will also make the current process see a pending event.
 
 =item $pending = $obj->get_ipc_pending()
 
-This returns -1 if SHM is not enabled for IPC.
-
-This returns 0 if the SHM value matches the last known value, which means there
-are no pending events.
+This returns -1 if it is not possible to know.
 
-This returns 1 if the SHM value has changed, which means there are probably
-pending events.
+This returns 0 if there are no pending events.
 
-When 1 is returned this will set C<< $obj->ipc_shm_last() >>.
+This returns 1 if there are pending events.
 
 =item $timeout = $obj->ipc_timeout;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/API/Stack.pm 
new/Test-Simple-1.302162/lib/Test2/API/Stack.pm
--- old/Test-Simple-1.302160/lib/Test2/API/Stack.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/API/Stack.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test2::Hub();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/API.pm 
new/Test-Simple-1.302162/lib/Test2/API.pm
--- old/Test-Simple-1.302160/lib/Test2/API.pm   2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2/API.pm   2019-02-06 04:55:15.000000000 
+0100
@@ -9,7 +9,7 @@
     $ENV{TEST2_ACTIVE} = 1;
 }
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 my $INST;
@@ -129,7 +129,6 @@
     test2_ipc_set_pending
     test2_ipc_get_timeout
     test2_ipc_set_timeout
-    test2_ipc_enable_shm
 
     test2_formatter
     test2_formatters
@@ -231,7 +230,7 @@
 sub test2_ipc_set_pending     { $INST->set_ipc_pending(@_) }
 sub test2_ipc_set_timeout     { $INST->set_ipc_timeout(@_) }
 sub test2_ipc_get_timeout     { $INST->ipc_timeout() }
-sub test2_ipc_enable_shm      { $INST->ipc_enable_shm }
+sub test2_ipc_enable_shm      { 0 }
 
 sub test2_formatter     {
     if ($ENV{T2_FORMATTER} && $ENV{T2_FORMATTER} =~ m/^(\+)?(.*)$/) {
@@ -1298,7 +1297,7 @@
 
 These functions return the filehandles that test output should be written to.
 They are primarily useful when writing a custom formatter and code that turns
-events into actual output (TAP, etc.)  They will return a dupe of the original
+events into actual output (TAP, etc.).  They will return a dupe of the original
 filehandles that formatted output can be sent to regardless of whatever state
 the currently running test may have left STDOUT and STDERR in.
 
@@ -1474,8 +1473,7 @@
 
 =item test2_ipc_enable_shm()
 
-Turn on IPC SHM. Only some IPC drivers use this, and most will turn it on
-themselves.
+Legacy, this is currently a no-op that returns 0;
 
 =item test2_ipc_set_pending($uniq_val)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Bail.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Bail.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Bail.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Bail.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Diag.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Diag.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Diag.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Diag.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Encoding.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Encoding.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Encoding.pm        2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Encoding.pm        2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Carp qw/croak/;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Exception.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Exception.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Exception.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Exception.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Fail.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Fail.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Fail.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Fail.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test2::EventFacet::Info;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Generic.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Generic.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Generic.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Generic.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -5,7 +5,7 @@
 use Carp qw/croak/;
 use Scalar::Util qw/reftype/;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
 use Test2::Util::HashBase;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Note.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Note.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Note.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Note.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Ok.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Ok.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Ok.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Ok.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Pass.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Pass.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Pass.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Pass.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test2::EventFacet::Info;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Plan.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Plan.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Plan.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Plan.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Skip.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Skip.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Skip.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Skip.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event::Ok; our @ISA = qw(Test2::Event::Ok) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Subtest.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Subtest.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Subtest.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Subtest.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::Event::Ok; our @ISA = qw(Test2::Event::Ok) }
 use Test2::Util::HashBase qw{subevents buffered subtest_id subtest_uuid};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/TAP/Version.pm 
new/Test-Simple-1.302162/lib/Test2/Event/TAP/Version.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/TAP/Version.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/TAP/Version.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Carp qw/croak/;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/V2.pm 
new/Test-Simple-1.302162/lib/Test2/Event/V2.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/V2.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/V2.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Scalar::Util qw/reftype/;
 use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event/Waiting.pm 
new/Test-Simple-1.302162/lib/Test2/Event/Waiting.pm
--- old/Test-Simple-1.302160/lib/Test2/Event/Waiting.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Event/Waiting.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Event.pm 
new/Test-Simple-1.302162/lib/Test2/Event.pm
--- old/Test-Simple-1.302160/lib/Test2/Event.pm 2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2/Event.pm 2019-02-06 04:55:15.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Scalar::Util qw/blessed reftype/;
 use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/About.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/About.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/About.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/About.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 use Test2::Util::HashBase qw{ -package -no_display -uuid -eid };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Amnesty.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Amnesty.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Amnesty.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Amnesty.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 sub is_list { 1 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Assert.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Assert.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Assert.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Assert.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 use Test2::Util::HashBase qw{ -pass -no_debug -number };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Control.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Control.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Control.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Control.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 use Test2::Util::HashBase qw{ -global -terminate -halt -has_callback -encoding 
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Error.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Error.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Error.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Error.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 sub facet_key { 'errors' }
 sub is_list { 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Hub.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Hub.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Hub.pm        2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Hub.pm        2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 sub is_list { 1 }
 sub facet_key { 'hubs' }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Info.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Info.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Info.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Info.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 sub is_list { 1 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Meta.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Meta.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Meta.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Meta.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 use vars qw/$AUTOLOAD/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Parent.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Parent.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Parent.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Parent.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Carp qw/confess/;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Plan.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Plan.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Plan.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Plan.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 use Test2::Util::HashBase qw{ -count -skip -none };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Render.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Render.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Render.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Render.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 sub is_list { 1 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet/Trace.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet/Trace.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet/Trace.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet/Trace.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/EventFacet.pm 
new/Test-Simple-1.302162/lib/Test2/EventFacet.pm
--- old/Test-Simple-1.302160/lib/Test2/EventFacet.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/EventFacet.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test2::Util::HashBase qw/-details/;
 use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Formatter/TAP.pm 
new/Test-Simple-1.302162/lib/Test2/Formatter/TAP.pm
--- old/Test-Simple-1.302160/lib/Test2/Formatter/TAP.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Formatter/TAP.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Test2::Util qw/clone_io/;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Formatter.pm 
new/Test-Simple-1.302162/lib/Test2/Formatter.pm
--- old/Test-Simple-1.302160/lib/Test2/Formatter.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Formatter.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 my %ADDED;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Test-Simple-1.302160/lib/Test2/Hub/Interceptor/Terminator.pm 
new/Test-Simple-1.302162/lib/Test2/Hub/Interceptor/Terminator.pm
--- old/Test-Simple-1.302160/lib/Test2/Hub/Interceptor/Terminator.pm    
2019-01-18 20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Hub/Interceptor/Terminator.pm    
2019-02-06 04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Hub/Interceptor.pm 
new/Test-Simple-1.302162/lib/Test2/Hub/Interceptor.pm
--- old/Test-Simple-1.302160/lib/Test2/Hub/Interceptor.pm       2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Hub/Interceptor.pm       2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test2::Hub::Interceptor::Terminator();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Hub/Subtest.pm 
new/Test-Simple-1.302162/lib/Test2/Hub/Subtest.pm
--- old/Test-Simple-1.302160/lib/Test2/Hub/Subtest.pm   2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Hub/Subtest.pm   2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::Hub; our @ISA = qw(Test2::Hub) }
 use Test2::Util::HashBase qw/nested exit_code manual_skip_all/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Hub.pm 
new/Test-Simple-1.302162/lib/Test2/Hub.pm
--- old/Test-Simple-1.302160/lib/Test2/Hub.pm   2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2/Hub.pm   2019-02-06 04:55:15.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Carp qw/carp croak confess/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/IPC/Driver/Files.pm 
new/Test-Simple-1.302162/lib/Test2/IPC/Driver/Files.pm
--- old/Test-Simple-1.302160/lib/Test2/IPC/Driver/Files.pm      2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/IPC/Driver/Files.pm      2019-02-06 
04:55:15.000000000 +0100
@@ -2,11 +2,11 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Test2::IPC::Driver; our @ISA = qw(Test2::IPC::Driver) }
 
-use Test2::Util::HashBase qw{tempdir event_ids read_ids timeouts tid pid 
globals shm_stop_file};
+use Test2::Util::HashBase qw{tempdir event_ids read_ids timeouts tid pid 
globals};
 
 use Scalar::Util qw/blessed/;
 use File::Temp();
@@ -17,24 +17,8 @@
 use Test2::Util qw/try get_tid pkg_to_file IS_WIN32 ipc_separator do_rename 
do_unlink try_sig_mask/;
 use Test2::API qw/test2_ipc_set_pending/;
 
-sub use_shm { 1 }
-sub shm_size() { 64 }
-
 sub is_viable { 1 }
 
-sub stop_shm {
-    my $self = shift;
-    open(my $fh, '>>', $self->{+SHM_STOP_FILE}) or die "Could not open shm top 
file: $!";
-    print $fh $$, "\n";
-    return;
-}
-
-sub shm_stopped {
-    my $self = shift;
-    return 1 if -e $self->{+SHM_STOP_FILE};
-    return 0;
-}
-
 sub init {
     my $self = shift;
 
@@ -48,8 +32,6 @@
 
     $self->{+TEMPDIR} = File::Spec->canonpath($tmpdir);
 
-    $self->{+SHM_STOP_FILE} = File::Spec->catfile($tmpdir, 'stop_shm');
-
     print STDERR "\nIPC Temp Dir: $tmpdir\n\n"
         if $ENV{T2_KEEP_TEMPDIR};
 
@@ -182,7 +164,7 @@
 
     if ($ok) {
         $self->abort("Could not rename file '$file' -> '$ready': $ren_err") 
unless $ren_ok;
-        test2_ipc_set_pending(substr($file, -(shm_size)));
+        test2_ipc_set_pending($file);
     }
     else {
         my $src_file = __FILE__;
@@ -397,7 +379,7 @@
         my $full = File::Spec->catfile($tempdir, $file);
 
         my $sep = ipc_separator;
-        if ($aborted || $file =~ m/^(GLOBAL|HUB$sep|stop_shm)/) {
+        if ($aborted || $file =~ m/^(GLOBAL|HUB$sep)/) {
             $full =~ m/^(.*)$/;
             $full = $1; # Untaint it
             next if $ENV{T2_KEEP_TEMPDIR};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/IPC/Driver.pm 
new/Test-Simple-1.302162/lib/Test2/IPC/Driver.pm
--- old/Test-Simple-1.302160/lib/Test2/IPC/Driver.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/IPC/Driver.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Carp qw/confess/;
@@ -18,7 +18,8 @@
     test2_ipc_add_driver($class);
 }
 
-sub use_shm { 0 }
+sub pending { -1 }
+sub set_pending { -1 }
 
 for my $meth (qw/send cull add_hub drop_hub waiting is_viable/) {
     no strict 'refs';
@@ -89,11 +90,6 @@
 This is the same as C<< $ipc->abort($msg) >> except that it uses
 C<Carp::longmess> to add a stack trace to the message.
 
-=item $false = $self->use_shm
-
-The base class always returns false for this method. You may override it if you
-wish to use the SHM made available in L<Test2::API>/L<Test2::API::Instance>.
-
 =back
 
 =head1 LOADING DRIVERS
@@ -141,8 +137,7 @@
 
         ... # Send the event to the proper hub.
 
-        # If you are using the SHM you should notify other procs/threads that
-        # there is a pending event.
+        # This may notify other procs/threads that there is a pending event.
         Test2::API::test2_ipc_set_pending($uniq_val);
     }
 
@@ -213,8 +208,7 @@
 
         ... # Send the event to the proper hub.
 
-        # If you are using the SHM you should notify other procs/threads that
-        # there is a pending event.
+        # This may notify other procs/threads that there is a pending event.
         Test2::API::test2_ipc_set_pending($uniq_val);
     }
 
@@ -258,23 +252,6 @@
 chance to cleanup when an abort happens. You cannot prevent the abort, but you
 can gracefully except it.
 
-=item $bool = $ipc->use_shm()
-
-True if you want to make use of the L<Test2::API>/L<Test2::API::Instance> SHM.
-
-=item $bites = $ipc->shm_size()
-
-Use this to customize the size of the SHM space. There are no guarantees about
-what the size will be if you do not implement this.
-
-=item $ipc->stop_shm()
-
-The Test2 API will call this when it is about to free the SHM memory.
-
-=item $bool = $ipc->shm_stopped()
-
-Returns true if C<< $ipc->stop_shm >> has been called.
-
 =back
 
 =head1 SOURCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/IPC.pm 
new/Test-Simple-1.302162/lib/Test2/IPC.pm
--- old/Test-Simple-1.302160/lib/Test2/IPC.pm   2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2/IPC.pm   2019-02-06 04:55:15.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Test2::API::Instance;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Tools/Tiny.pm 
new/Test-Simple-1.302162/lib/Test2/Tools/Tiny.pm
--- old/Test-Simple-1.302160/lib/Test2/Tools/Tiny.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Tools/Tiny.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -16,7 +16,7 @@
 use Test2::Hub::Interceptor();
 use Test2::Hub::Interceptor::Terminator();
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 BEGIN { require Exporter; our @ISA = qw(Exporter) }
 our @EXPORT = qw{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Util/ExternalMeta.pm 
new/Test-Simple-1.302162/lib/Test2/Util/ExternalMeta.pm
--- old/Test-Simple-1.302160/lib/Test2/Util/ExternalMeta.pm     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Util/ExternalMeta.pm     2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Util/Facets2Legacy.pm 
new/Test-Simple-1.302162/lib/Test2/Util/Facets2Legacy.pm
--- old/Test-Simple-1.302160/lib/Test2/Util/Facets2Legacy.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Util/Facets2Legacy.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use Carp qw/croak confess/;
 use Scalar::Util qw/blessed/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Util/HashBase.pm 
new/Test-Simple-1.302162/lib/Test2/Util/HashBase.pm
--- old/Test-Simple-1.302160/lib/Test2/Util/HashBase.pm 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Util/HashBase.pm 2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 #################################################################
 #                                                               #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Util/Trace.pm 
new/Test-Simple-1.302162/lib/Test2/Util/Trace.pm
--- old/Test-Simple-1.302160/lib/Test2/Util/Trace.pm    2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/Test2/Util/Trace.pm    2019-02-06 
04:55:15.000000000 +0100
@@ -2,7 +2,7 @@
 require Test2::EventFacet::Trace;
 @ISA = ('Test2::EventFacet::Trace');
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 1;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2/Util.pm 
new/Test-Simple-1.302162/lib/Test2/Util.pm
--- old/Test-Simple-1.302160/lib/Test2/Util.pm  2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2/Util.pm  2019-02-06 04:55:15.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use POSIX();
 use Config qw/%Config/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/Test2.pm 
new/Test-Simple-1.302162/lib/Test2.pm
--- old/Test-Simple-1.302160/lib/Test2.pm       2019-01-18 20:44:34.000000000 
+0100
+++ new/Test-Simple-1.302162/lib/Test2.pm       2019-02-06 04:55:15.000000000 
+0100
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 
 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/lib/ok.pm 
new/Test-Simple-1.302162/lib/ok.pm
--- old/Test-Simple-1.302160/lib/ok.pm  2019-01-18 20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/lib/ok.pm  2019-02-06 04:55:15.000000000 +0100
@@ -1,5 +1,5 @@
 package ok;
-our $VERSION = '1.302160';
+our $VERSION = '1.302162';
 
 use strict;
 use Test::More ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Simple-1.302160/t/Test2/modules/API/Instance.t 
new/Test-Simple-1.302162/t/Test2/modules/API/Instance.t
--- old/Test-Simple-1.302160/t/Test2/modules/API/Instance.t     2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/t/Test2/modules/API/Instance.t     2019-02-06 
04:55:15.000000000 +0100
@@ -472,6 +472,7 @@
 
 {
     my $one = $CLASS->new;
+    $one->{ipc} = Test2::IPC::Driver::Files->new;
 
     ok(!@{$one->context_init_callbacks}, "no callbacks");
     is($one->ipc_polling, undef, "no polling, undef");
@@ -490,7 +491,6 @@
     ok(defined($one->{_tid}), "tid is defined");
     is(@{$one->context_init_callbacks}, 1, "added the callback");
     is($one->ipc_polling, 1, "polling on");
-    $one->set_ipc_shm_last('abc1');
     $one->context_init_callbacks->[0]->({'hub' => 'Fake::Hub'});
     is($cull, 1, "called cull once");
     $cull = 0;
@@ -498,7 +498,6 @@
     $one->disable_ipc_polling;
     is(@{$one->context_init_callbacks}, 1, "kept the callback");
     is($one->ipc_polling, 0, "no polling, set to 0");
-    $one->set_ipc_shm_last('abc3');
     $one->context_init_callbacks->[0]->({'hub' => 'Fake::Hub'});
     is($cull, 0, "did not call cull");
     $cull = 0;
@@ -506,7 +505,6 @@
     $one->enable_ipc_polling;
     is(@{$one->context_init_callbacks}, 1, "did not add the callback");
     is($one->ipc_polling, 1, "polling on");
-    $one->set_ipc_shm_last('abc3');
     $one->context_init_callbacks->[0]->({'hub' => 'Fake::Hub'});
     is($cull, 1, "called cull once");
 }
@@ -536,128 +534,6 @@
     ok($one->ipc_disabled, "IPC is disabled directly");
 }
 
-SKIP: {
-    last SKIP if $] lt "5.008";
-    no warnings 'redefine';
-    my $error;
-    local *Test2::API::Instance::_fatal_error = sub { die "$_[1]\n" };
-
-    my $two = $CLASS->new;
-    $two->{ipc_shm_id} = undef;
-    is($two->set_ipc_pending, undef, "No shm");
-
-    $two->{ipc_shm_id} = -1;
-    $two->{ipc_shm_size} = 32;
-
-    my $ok = eval { $two->set_ipc_pending(); 1 };
-    ok(!$ok, "Exception");
-    like($@, qr/value is required for set_ipc_pending/, "Got expected 
exception");
-
-    my $ctid = get_tid();
-
-    my $ec;
-    {
-        local $! = 22;
-        $ec = "$!";
-    }
-
-    $ok = eval { $two->set_ipc_pending('message'); 1 };
-    my $err = $@;
-    ok(!$ok, "Exception");
-
-    is($err, <<"    EOT", "Got exception when shm write fails (no tid/pid)") 
unless $err =~ m/not implemented/;
-IPC shmwrite(-1, 'message', 0, 32) failed, the parent process appears to have 
exited. This is a fatal error.
-  Error: (22) $ec
-  Parent  PID: ?
-  Current PID: $$
-  Parent  TID: ?
-  Current TID: $ctid
-  SHM State:   0
-  IPC errors like this usually indicate a race condition in a test where the
-  parent thread/process is allowed to exit before all child processes/threads
-  are complete.
-  Trace:
-    EOT
-
-    # Need a fake PID that cannot actually be signaled, but is a real 
number....
-    $two->{_pid} = 10000000000000000;
-    $two->{_tid} = $ctid;
-
-    $two->{ipc_shm_id} = -1; # Reset this
-    $ok = eval {
-        # override check_pid, some platforms will return true with our absurd 
PID above.
-        no warnings 'redefine';
-        local *Test2::API::Instance::_check_pid = sub { () };
-        $two->set_ipc_pending('message');
-        1;
-    };
-    $err = $@;
-    ok(!$ok, "Exception");
-
-    is($err, <<"    EOT", "Got exception when shm write fails (with tid/pid)") 
unless $err =~ m/not implemented/;
-IPC shmwrite(-1, 'message', 0, 32) failed, the parent process appears to have 
exited. This is a fatal error.
-  Error: (22) $ec
-  Parent  PID: $two->{_pid}
-  Current PID: $$
-  Parent  TID: $ctid
-  Current TID: $ctid
-  SHM State:   0
-  IPC errors like this usually indicate a race condition in a test where the
-  parent thread/process is allowed to exit before all child processes/threads
-  are complete.
-  Trace:
-    EOT
-
-    $two->{_pid} = $$; # Parent that has not exited
-    $two->{_tid} = $ctid;
-
-    my $warn = undef;
-    $two->{ipc_shm_id} = -1; # Reset this
-    $ok = eval {
-        local $SIG{__WARN__} = sub { $warn = $_[0] };
-        $two->set_ipc_pending('message');
-        1;
-    };
-    $err = $@;
-    unless ($err =~ m/not implemented/) {
-        ok($ok, "No Exception");
-
-        like(
-            $warn,
-            qr/^\($$\) It looks like SHM has gone away unexpectedly \(22: 
$ec\)\. The parent process is still active\. This is not fatal, but may slow 
things down slightly/,
-            "Got warning when shm write fails but parent is open"
-        );
-    }
-}
-
-
-if (CAN_REALLY_FORK && $] ge "5.008") {
-    my ($rh, $wh);
-    pipe($rh, $wh) or die "no pipe: $!";
-
-    my $pid = fork;
-    die "Could not fork" unless defined $pid;
-    if ($pid) {
-        close($wh);
-        my $check = waitpid($pid, 0);
-        my $exit = $?;
-        is($check, $pid, "Waited on process");
-        my $err = ($exit >> 8);
-        my $sig = ($exit & 127);
-        ok(!$sig, "did not exit via a signal");
-        is($err, 255, "exit code 255");
-
-        my $msg = join "" => <$rh>;
-        like($msg, qr/^blah, I died\nfoo bar at \Q${ \__FILE__ }\E line \d+/, 
"Saw error message");
-    }
-    else {
-        close($rh);
-        open(STDERR, '>&', $wh) or print "Could not open: $!";
-        $CLASS->_fatal_error("blah, I died\nfoo bar");
-        exit 1;
-    }
-}
-
 Test2::API::test2_ipc_wait_enable();
 
 done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Test-Simple-1.302160/t/Test2/modules/IPC/Driver/Files.t 
new/Test-Simple-1.302162/t/Test2/modules/IPC/Driver/Files.t
--- old/Test-Simple-1.302160/t/Test2/modules/IPC/Driver/Files.t 2019-01-18 
20:44:34.000000000 +0100
+++ new/Test-Simple-1.302162/t/Test2/modules/IPC/Driver/Files.t 2019-02-06 
04:55:15.000000000 +0100
@@ -94,11 +94,6 @@
 my @got = $ipc->cull($hid);
 ok(@got == 0, "did not get our own global event");
 
-ok(!-e $ipc->shm_stop_file, "No stop file");
-$ipc->stop_shm;
-ok(-e $ipc->shm_stop_file, "stop file added");
-ok($ipc->shm_stopped, "stopped shm");
-
 my $tmpdir = $ipc->tempdir;
 ok(-d $tmpdir, "still have temp dir");
 $ipc = undef;


Reply via email to