Merge the relationship resolution rework
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / Statistics.pm
index 7b0193d..f521658 100644 (file)
@@ -5,27 +5,7 @@ use warnings;
 
 use DBIx::Class::_Util qw(sigwarn_silencer qsub);
 use IO::Handle ();
-
-# DO NOT edit away without talking to riba first, he will just put it back
-# BEGIN pre-Moo2 import block
-BEGIN {
-  my $initial_fatal_bits = (${^WARNING_BITS}||'') & $warnings::DeadBits{all};
-
-  local $ENV{PERL_STRICTURES_EXTRA} = 0;
-  # load all of these now, so that lazy-loading does not escape
-  # the current PERL_STRICTURES_EXTRA setting
-  require Sub::Quote;
-  require Sub::Defer;
-  require Moo;
-  require Moo::Object;
-  require Method::Generate::Accessor;
-  require Method::Generate::Constructor;
-
-  Moo->import;
-  ${^WARNING_BITS} &= ( $initial_fatal_bits | ~ $warnings::DeadBits{all} );
-}
-# END pre-Moo2 import block
-
+use Moo;
 extends 'DBIx::Class';
 use namespace::clean;
 
@@ -65,20 +45,11 @@ already set).
 
 =cut
 
-# FIXME - there ought to be a way to fold this into _debugfh itself
-# having the undef re-trigger the builder (or better yet a default
-# which can be folded in as a qsub)
-sub debugfh {
-  my $self = shift;
-
-  return $self->_debugfh(@_) if @_;
-  $self->_debugfh || $self->_build_debugfh;
-}
-
-has _debugfh => (
+has debugfh => (
   is => 'rw',
   lazy => 1,
-  trigger => qsub '$_[0]->_defaulted_to_stderr(undef)',
+  trigger => qsub '$_[0]->_defaulted_to_stderr(undef); $_[0]->_clear_debugfh unless $_[1];',
+  clearer => '_clear_debugfh',
   builder => '_build_debugfh',
 );