Hello community,

here is the log from the commit of package perl-Devel-StackTrace for 
openSUSE:Factory checked in at 2014-09-19 22:27:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Devel-StackTrace (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Devel-StackTrace.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Devel-StackTrace"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-Devel-StackTrace/perl-Devel-StackTrace.changes  
    2014-02-24 14:12:23.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-Devel-StackTrace.new/perl-Devel-StackTrace.changes
 2014-09-19 22:27:48.000000000 +0200
@@ -1,0 +2,19 @@
+Fri Sep 19 12:15:46 UTC 2014 - [email protected]
+
+- updated to 1.34
+ - Fixed use of // operator (my use, not Graham's) in previous release.
+ 
+ 
+ 1.33   2014-06-26
+ 
+ - Added a skip_frames option. This causes the stack trace to skip an arbitrary
+   number of frames. Patch by Graham Knopp. PR #5.
+ 
+ 
+ 1.32   2014-05-05
+ 
+ - Added a filter_frames_early option to filter frames before arguments are
+   stringified. Added by Dagfinn Ilmari Mannsåker. PR #4.
+ 
+
+-------------------------------------------------------------------

Old:
----
  Devel-StackTrace-1.31.tar.gz

New:
----
  Devel-StackTrace-1.34.tar.gz

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

Other differences:
------------------
++++++ perl-Devel-StackTrace.spec ++++++
--- /var/tmp/diff_new_pack.sRI2NG/_old  2014-09-19 22:27:49.000000000 +0200
+++ /var/tmp/diff_new_pack.sRI2NG/_new  2014-09-19 22:27:49.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           perl-Devel-StackTrace
-Version:        1.31
+Version:        1.34
 Release:        0
 %define cpan_name Devel-StackTrace
 Summary:        An object representing a stack trace

++++++ Devel-StackTrace-1.31.tar.gz -> Devel-StackTrace-1.34.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/Changes 
new/Devel-StackTrace-1.34/Changes
--- old/Devel-StackTrace-1.31/Changes   2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/Changes   2014-06-26 23:49:42.000000000 +0200
@@ -1,3 +1,20 @@
+1.34   2014-06-26
+
+- Fixed use of // operator (my use, not Graham's) in previous release.
+
+
+1.33   2014-06-26
+
+- Added a skip_frames option. This causes the stack trace to skip an arbitrary
+  number of frames. Patch by Graham Knopp. PR #5.
+
+
+1.32   2014-05-05
+
+- Added a filter_frames_early option to filter frames before arguments are
+  stringified. Added by Dagfinn Ilmari Mannsåker. PR #4.
+
+
 1.31   2014-01-16
 
 - No code changes, just doc updates, including documenting the as_string()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/MANIFEST 
new/Devel-StackTrace-1.34/MANIFEST
--- old/Devel-StackTrace-1.31/MANIFEST  2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/MANIFEST  2014-06-26 23:49:42.000000000 +0200
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v5.012.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v5.019.
 Changes
 INSTALL
 LICENSE
@@ -18,6 +18,8 @@
 t/05-back-compat.t
 t/06-dollar-at.t
 t/07-no-args.t
+t/08-filter-early.t
+t/09-skip-frames.t
 t/author-pod-spell.t
 t/release-cpan-changes.t
 t/release-eol.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/META.json 
new/Devel-StackTrace-1.34/META.json
--- old/Devel-StackTrace-1.31/META.json 2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/META.json 2014-06-26 23:49:42.000000000 +0200
@@ -4,7 +4,7 @@
       "Dave Rolsky <[email protected]>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 5.012, CPAN::Meta::Converter version 
2.120921",
+   "generated_by" : "Dist::Zilla version 5.019, CPAN::Meta::Converter version 
2.120921",
    "license" : [
       "artistic_2"
    ],
@@ -22,6 +22,8 @@
       "develop" : {
          "requires" : {
             "Pod::Coverage::TrustPod" : "0",
+            "Test::More" : "0",
+            "Test::NoTabs" : "0",
             "Test::Pod" : "1.41",
             "Test::Pod::Coverage" : "1.08"
          }
@@ -60,10 +62,12 @@
          "web" : "http://git.urth.org/Devel-StackTrace.git";
       }
    },
-   "version" : "1.31",
+   "version" : "1.34",
    "x_authority" : "cpan:DROLSKY",
    "x_contributors" : [
+      "Dagfinn Ilmari Mannsåker <[email protected]>",
       "David Cantrell <[email protected]>",
+      "Graham Knop <[email protected]>",
       "Ricardo Signes <[email protected]>",
       "autarch <devnull@localhost>",
       "convert-repo <devnull@localhost>",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/META.yml 
new/Devel-StackTrace-1.34/META.yml
--- old/Devel-StackTrace-1.31/META.yml  2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/META.yml  2014-06-26 23:49:42.000000000 +0200
@@ -12,7 +12,7 @@
 configure_requires:
   ExtUtils::MakeMaker: 6.30
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.012, CPAN::Meta::Converter version 
2.120921'
+generated_by: 'Dist::Zilla version 5.019, CPAN::Meta::Converter version 
2.120921'
 license: artistic_2
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -29,10 +29,12 @@
   bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Devel-StackTrace
   homepage: http://metacpan.org/release/Devel-StackTrace
   repository: git://git.urth.org/Devel-StackTrace.git
-version: 1.31
+version: 1.34
 x_authority: cpan:DROLSKY
 x_contributors:
+  - 'Dagfinn Ilmari Mannsåker <[email protected]>'
   - 'David Cantrell <[email protected]>'
+  - 'Graham Knop <[email protected]>'
   - 'Ricardo Signes <[email protected]>'
   - 'autarch <devnull@localhost>'
   - 'convert-repo <devnull@localhost>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/Makefile.PL 
new/Devel-StackTrace-1.34/Makefile.PL
--- old/Devel-StackTrace-1.31/Makefile.PL       2014-01-16 23:35:53.000000000 
+0100
+++ new/Devel-StackTrace-1.34/Makefile.PL       2014-06-26 23:49:42.000000000 
+0200
@@ -1,5 +1,5 @@
 
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker 
v5.012.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker 
v5.019.
 use strict;
 use warnings;
 
@@ -12,7 +12,6 @@
 my %WriteMakefileArgs = (
   "ABSTRACT" => "An object representing a stack trace",
   "AUTHOR" => "Dave Rolsky <autarch\@urth.org>",
-  "BUILD_REQUIRES" => {},
   "CONFIGURE_REQUIRES" => {
     "ExtUtils::MakeMaker" => "6.30"
   },
@@ -35,7 +34,7 @@
     "base" => 0,
     "bytes" => 0
   },
-  "VERSION" => "1.31",
+  "VERSION" => "1.34",
   "test" => {
     "TESTS" => "t/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/README 
new/Devel-StackTrace-1.34/README
--- old/Devel-StackTrace-1.31/README    2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/README    2014-06-26 23:49:42.000000000 +0200
@@ -2,7 +2,7 @@
     Devel::StackTrace - An object representing a stack trace
 
 VERSION
-    version 1.31
+    version 1.34
 
 SYNOPSIS
       use Devel::StackTrace;
@@ -76,6 +76,16 @@
         The filter should return true if the frame should be included, or
         false if it should be skipped.
 
+    *   filter_frames_early => $boolean
+
+        If this parameter is true, "frame_filter" will be called as soon as
+        the stacktrace is created, and before refs are stringified (if
+        "no_refs" is true), rather than being filtered lazily when
+        Devel::StackTrace::Frame objects are first needed.
+
+        This is useful if you want to filter based on the frame's arguments
+        and want to be able to examine object properties, for example.
+
     *   ignore_package => $package_name OR \@package_names
 
         Any frames where the package is one of these packages will not be on
@@ -91,6 +101,13 @@
         ignored. However, if you create a subclass of Devel::StackTrace it
         will not be ignored.
 
+    *   skip_frames => $integer
+
+        This will cause this number of stack frames to be excluded from top
+        of the stack trace. This prevents the frames from being captured at
+        all, and applies before the "frame_filter", "ignore_package", or
+        "ignore_class" options, even with "filter_frames_early".
+
     *   no_refs => $boolean
 
         If this parameter is true, then Devel::StackTrace will not store
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/dist.ini 
new/Devel-StackTrace-1.34/dist.ini
--- old/Devel-StackTrace-1.31/dist.ini  2014-01-16 23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/dist.ini  2014-06-26 23:49:42.000000000 +0200
@@ -3,7 +3,7 @@
 license = Artistic_2_0
 copyright_holder = Dave Rolsky
 
-version = 1.31
+version = 1.34
 
 [@DROLSKY]
 dist = Devel-StackTrace
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/lib/Devel/StackTrace/Frame.pm 
new/Devel-StackTrace-1.34/lib/Devel/StackTrace/Frame.pm
--- old/Devel-StackTrace-1.31/lib/Devel/StackTrace/Frame.pm     2014-01-16 
23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/lib/Devel/StackTrace/Frame.pm     2014-06-26 
23:49:42.000000000 +0200
@@ -1,9 +1,5 @@
 package Devel::StackTrace::Frame;
-$Devel::StackTrace::Frame::VERSION = '1.31';
-BEGIN {
-  $Devel::StackTrace::Frame::AUTHORITY = 'cpan:DROLSKY';
-}
-
+$Devel::StackTrace::Frame::VERSION = '1.34';
 use strict;
 use warnings;
 
@@ -159,7 +155,7 @@
 
 =head1 VERSION
 
-version 1.31
+version 1.34
 
 =head1 DESCRIPTION
 
@@ -194,8 +190,8 @@
 
 =head2 $frame->args()
 
-Returns the arguments passed to the frame.  Note that any arguments
-that are references are returned as references, not copies.
+Returns the arguments passed to the frame.  Note that any arguments that are
+references are returned as references, not copies.
 
 =head2 $frame->hints()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/lib/Devel/StackTrace.pm 
new/Devel-StackTrace-1.34/lib/Devel/StackTrace.pm
--- old/Devel-StackTrace-1.31/lib/Devel/StackTrace.pm   2014-01-16 
23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/lib/Devel/StackTrace.pm   2014-06-26 
23:49:42.000000000 +0200
@@ -1,9 +1,5 @@
 package Devel::StackTrace;
-$Devel::StackTrace::VERSION = '1.31';
-BEGIN {
-  $Devel::StackTrace::AUTHORITY = 'cpan:DROLSKY';
-}
-
+$Devel::StackTrace::VERSION = '1.34';
 use 5.006;
 
 use strict;
@@ -41,8 +37,11 @@
 sub _record_caller_data {
     my $self = shift;
 
-    # We exclude this method by starting one frame back.
-    my $x = 1;
+    my $filter = $self->{filter_frames_early} && $self->_make_frame_filter();
+
+    # We exclude this method by starting at least one frame back.
+    my $x = 1 + ( $self->{skip_frames} || 0 );
+
     while (
         my @c
         = $self->{no_args}
@@ -57,19 +56,20 @@
 
         my @args;
 
-        unless ( $self->{no_args} ) {
-            @args = @DB::args;
+        @args = $self->{no_args} ? () : @DB::args;
+
+        my $raw = {
+            caller => \@c,
+            args => \@args,
+        };
+
+        next if $filter && !$filter->($raw);
 
-            if ( $self->{no_refs} ) {
-                @args = map { ref $_ ? $self->_ref_to_string($_) : $_ } @args;
-            }
+        if ( $self->{no_refs} ) {
+            $raw->{args} = [ map { ref $_ ? $self->_ref_to_string($_) : $_ } 
@{$raw->{args}} ];
         }
 
-        push @{ $self->{raw} },
-            {
-            caller => \@c,
-            args   => \@args,
-            };
+        push @{ $self->{raw} }, $raw;
     }
 }
 
@@ -93,11 +93,11 @@
 sub _make_frames {
     my $self = shift;
 
-    my $filter = $self->_make_frame_filter;
+    my $filter = !$self->{filter_frames_early} && $self->_make_frame_filter();
 
     my $raw = delete $self->{raw};
     for my $r ( @{$raw} ) {
-        next unless $filter->($r);
+        next if $filter && ! $filter->($r);
 
         $self->_add_frame( $r->{caller}, $r->{args} );
     }
@@ -268,7 +268,7 @@
 
 =head1 VERSION
 
-version 1.31
+version 1.34
 
 =head1 SYNOPSIS
 
@@ -349,6 +349,16 @@
 The filter should return true if the frame should be included, or
 false if it should be skipped.
 
+=item * filter_frames_early => $boolean
+
+If this parameter is true, C<frame_filter> will be called as soon as the
+stacktrace is created, and before refs are stringified (if C<no_refs> is
+true), rather than being filtered lazily when L<Devel::StackTrace::Frame>
+objects are first needed.
+
+This is useful if you want to filter based on the frame's arguments and want
+to be able to examine object properties, for example.
+
 =item * ignore_package => $package_name OR \@package_names
 
 Any frames where the package is one of these packages will not be on
@@ -364,6 +374,13 @@
 ignored. However, if you create a subclass of Devel::StackTrace it
 will not be ignored.
 
+=item * skip_frames => $integer
+
+This will cause this number of stack frames to be excluded from top of the
+stack trace. This prevents the frames from being captured at all, and applies
+before the C<frame_filter>, C<ignore_package>, or C<ignore_class> options,
+even with C<filter_frames_early>.
+
 =item * no_refs => $boolean
 
 If this parameter is true, then Devel::StackTrace will not store
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/t/08-filter-early.t 
new/Devel-StackTrace-1.34/t/08-filter-early.t
--- old/Devel-StackTrace-1.31/t/08-filter-early.t       1970-01-01 
01:00:00.000000000 +0100
+++ new/Devel-StackTrace-1.34/t/08-filter-early.t       2014-06-26 
23:49:42.000000000 +0200
@@ -0,0 +1,31 @@
+use strict;
+use warnings;
+
+use Test::More;
+
+use Devel::StackTrace;
+
+{
+    my $trace = foo( [] );
+    is(
+        0 + grep( ref, map { $_->args } $trace->frames ), 0,
+        'args stringified in trace'
+    );
+}
+
+done_testing();
+
+sub foo {
+    return Devel::StackTrace->new(
+        frame_filter => sub {
+            my $frame = shift;
+            if ( $frame->{caller}[3] eq "main::foo" ) {
+                ok( ref $frame->{args}[0], 'ref arg passed to filter' );
+            }
+            1;
+        },
+        filter_frames_early => 1,
+        no_refs             => 1,
+    );
+}
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/t/09-skip-frames.t 
new/Devel-StackTrace-1.34/t/09-skip-frames.t
--- old/Devel-StackTrace-1.31/t/09-skip-frames.t        1970-01-01 
01:00:00.000000000 +0100
+++ new/Devel-StackTrace-1.34/t/09-skip-frames.t        2014-06-26 
23:49:42.000000000 +0200
@@ -0,0 +1,41 @@
+use strict;
+use warnings;
+
+use Test::More;
+
+use Devel::StackTrace;
+
+{
+    my $trace = baz();
+    my @f;
+    while ( my $f = $trace->next_frame ) { push @f, $f; }
+
+    my $cnt = scalar @f;
+    is(
+        $cnt, 2,
+        "Trace should have 2 frames"
+    );
+
+    is(
+        $f[0]->subroutine, 'main::bar',
+        "First frame subroutine should be main::bar"
+    );
+    is(
+        $f[1]->subroutine, 'main::baz',
+        "First frame subroutine should be main::baz"
+    );
+}
+
+done_testing();
+
+sub foo {
+    return Devel::StackTrace->new( skip_frames => 2 );
+}
+
+sub bar {
+    foo();
+}
+
+sub baz {
+    bar();
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/t/release-no-tabs.t 
new/Devel-StackTrace-1.34/t/release-no-tabs.t
--- old/Devel-StackTrace-1.31/t/release-no-tabs.t       2014-01-16 
23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/t/release-no-tabs.t       2014-06-26 
23:49:42.000000000 +0200
@@ -8,9 +8,35 @@
 
 use strict;
 use warnings;
-use Test::More;
 
-eval 'use Test::NoTabs';
-plan skip_all => 'Test::NoTabs required' if $@;
+# this test was generated with Dist::Zilla::Plugin::Test::NoTabs 0.07
 
-all_perl_files_ok();
+use Test::More 0.88;
+use Test::NoTabs;
+
+my @files = (
+    'lib/Devel/StackTrace.pm',
+    'lib/Devel/StackTrace/Frame.pm',
+    't/00-compile.t',
+    't/01-basic.t',
+    't/02-bad-utf8.t',
+    't/03-message.t',
+    't/04-indent.t',
+    't/05-back-compat.t',
+    't/06-dollar-at.t',
+    't/07-no-args.t',
+    't/08-filter-early.t',
+    't/09-skip-frames.t',
+    't/author-pod-spell.t',
+    't/release-cpan-changes.t',
+    't/release-eol.t',
+    't/release-no-tabs.t',
+    't/release-pod-coverage.t',
+    't/release-pod-linkcheck.t',
+    't/release-pod-no404s.t',
+    't/release-pod-syntax.t',
+    't/release-synopsis.t'
+);
+
+notabs_ok($_) foreach @files;
+done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/t/release-pod-coverage.t 
new/Devel-StackTrace-1.34/t/release-pod-coverage.t
--- old/Devel-StackTrace-1.31/t/release-pod-coverage.t  2014-01-16 
23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/t/release-pod-coverage.t  2014-06-26 
23:49:42.000000000 +0200
@@ -9,14 +9,7 @@
 
 # This file was automatically generated by 
Dist::Zilla::Plugin::PodCoverageTests.
 
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.08";
-plan skip_all => "Test::Pod::Coverage 1.08 required for testing POD coverage"
-  if $@;
-
-eval "use Pod::Coverage::TrustPod";
-plan skip_all => "Pod::Coverage::TrustPod required for testing POD coverage"
-  if $@;
+use Test::Pod::Coverage 1.08;
+use Pod::Coverage::TrustPod;
 
 all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Devel-StackTrace-1.31/t/release-pod-syntax.t 
new/Devel-StackTrace-1.34/t/release-pod-syntax.t
--- old/Devel-StackTrace-1.31/t/release-pod-syntax.t    2014-01-16 
23:35:53.000000000 +0100
+++ new/Devel-StackTrace-1.34/t/release-pod-syntax.t    2014-06-26 
23:49:42.000000000 +0200
@@ -9,8 +9,6 @@
 
 # This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests.
 use Test::More;
-
-eval "use Test::Pod 1.41";
-plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
+use Test::Pod 1.41;
 
 all_pod_files_ok();

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to