Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Log-Any for openSUSE:Factory 
checked in at 2023-07-12 17:26:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Log-Any (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Log-Any.new.8922 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Log-Any"

Wed Jul 12 17:26:58 2023 rev:32 rq:1098161 version:1.716

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Log-Any/perl-Log-Any.changes        
2023-06-03 00:07:06.977950885 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Log-Any.new.8922/perl-Log-Any.changes      
2023-07-12 17:27:20.266497166 +0200
@@ -1,0 +2,15 @@
+Tue Jun 27 03:07:17 UTC 2023 - Tina Müller <[email protected]>
+
+- updated to 1.716
+   see /usr/share/doc/packages/perl-Log-Any/Changes
+
+  1.716     2023-06-26 14:14:46-05:00 America/Chicago
+
+    [Added]
+
+    - Added a parameter to show stack trace arguments when using the
+      WithStackTrace proxy. Since these arguments may contain sensitive
+      information, they are now removed by default. Thanks @sam-ng and
+      @GrantStreetGroup for submitting this patch! [Github #97]
+
+-------------------------------------------------------------------

Old:
----
  Log-Any-1.715.tar.gz

New:
----
  Log-Any-1.716.tar.gz

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

Other differences:
------------------
++++++ perl-Log-Any.spec ++++++
--- /var/tmp/diff_new_pack.v4FdSh/_old  2023-07-12 17:27:20.786500766 +0200
+++ /var/tmp/diff_new_pack.v4FdSh/_new  2023-07-12 17:27:20.790500794 +0200
@@ -18,7 +18,7 @@
 
 %define cpan_name Log-Any
 Name:           perl-Log-Any
-Version:        1.715
+Version:        1.716
 Release:        0
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Bringing loggers and listeners together

++++++ Log-Any-1.715.tar.gz -> Log-Any-1.716.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/Changes new/Log-Any-1.716/Changes
--- old/Log-Any-1.715/Changes   2023-05-04 20:09:28.000000000 +0200
+++ new/Log-Any-1.716/Changes   2023-06-26 21:14:53.000000000 +0200
@@ -2,6 +2,15 @@
 
 ** denotes an incompatible change
 
+1.716     2023-06-26 14:14:46-05:00 America/Chicago
+
+  [Added]
+
+  - Added a parameter to show stack trace arguments when using the
+    WithStackTrace proxy. Since these arguments may contain sensitive
+    information, they are now removed by default. Thanks @sam-ng and
+    @GrantStreetGroup for submitting this patch! [Github #97]
+
 1.715     2023-05-04 13:09:22-05:00 America/Chicago
 
   [Fixed]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/META.json new/Log-Any-1.716/META.json
--- old/Log-Any-1.715/META.json 2023-05-04 20:09:28.000000000 +0200
+++ new/Log-Any-1.716/META.json 2023-06-26 21:14:53.000000000 +0200
@@ -57,75 +57,75 @@
    "provides" : {
       "Log::Any" : {
          "file" : "lib/Log/Any.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter" : {
          "file" : "lib/Log/Any/Adapter.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Base" : {
          "file" : "lib/Log/Any/Adapter/Base.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Capture" : {
          "file" : "lib/Log/Any/Adapter/Capture.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::File" : {
          "file" : "lib/Log/Any/Adapter/File.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Multiplex" : {
          "file" : "lib/Log/Any/Adapter/Multiplex.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Null" : {
          "file" : "lib/Log/Any/Adapter/Null.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Stderr" : {
          "file" : "lib/Log/Any/Adapter/Stderr.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Stdout" : {
          "file" : "lib/Log/Any/Adapter/Stdout.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Syslog" : {
          "file" : "lib/Log/Any/Adapter/Syslog.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Test" : {
          "file" : "lib/Log/Any/Adapter/Test.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Adapter::Util" : {
          "file" : "lib/Log/Any/Adapter/Util.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Manager" : {
          "file" : "lib/Log/Any/Manager.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Proxy" : {
          "file" : "lib/Log/Any/Proxy.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Proxy::Null" : {
          "file" : "lib/Log/Any/Proxy/Null.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Proxy::Test" : {
          "file" : "lib/Log/Any/Proxy/Test.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Proxy::WithStackTrace" : {
          "file" : "lib/Log/Any/Proxy/WithStackTrace.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       },
       "Log::Any::Test" : {
          "file" : "lib/Log/Any/Test.pm",
-         "version" : "1.715"
+         "version" : "1.716"
       }
    },
    "release_status" : "stable",
@@ -140,10 +140,11 @@
          "web" : "https://github.com/preaction/Log-Any";
       }
    },
-   "version" : "1.715",
+   "version" : "1.716",
    "x_authority" : "cpan:PREACTION",
    "x_contributors" : [
       "Andrew Grechkin <[email protected]>",
+      "Andrew Hewus Fresh <[email protected]>",
       "bj5004 <[email protected]>",
       "cm-perl <[email protected]>",
       "Doug Bell <[email protected]>",
@@ -161,6 +162,8 @@
       "Paul Durden <[email protected]>",
       "Philipp Gortan <[email protected]>",
       "Phill Legault <[email protected]>",
+      "Samuel Ng <[email protected]>",
+      "Samuel Ng <[email protected]>",
       "Shlomi Fish <[email protected]>",
       "Sven Willenbuecher <[email protected]>",
       "XSven <[email protected]>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/META.yml new/Log-Any-1.716/META.yml
--- old/Log-Any-1.715/META.yml  2023-05-04 20:09:28.000000000 +0200
+++ new/Log-Any-1.716/META.yml  2023-06-26 21:14:53.000000000 +0200
@@ -34,66 +34,67 @@
 provides:
   Log::Any:
     file: lib/Log/Any.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter:
     file: lib/Log/Any/Adapter.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Base:
     file: lib/Log/Any/Adapter/Base.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Capture:
     file: lib/Log/Any/Adapter/Capture.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::File:
     file: lib/Log/Any/Adapter/File.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Multiplex:
     file: lib/Log/Any/Adapter/Multiplex.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Null:
     file: lib/Log/Any/Adapter/Null.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Stderr:
     file: lib/Log/Any/Adapter/Stderr.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Stdout:
     file: lib/Log/Any/Adapter/Stdout.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Syslog:
     file: lib/Log/Any/Adapter/Syslog.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Test:
     file: lib/Log/Any/Adapter/Test.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Adapter::Util:
     file: lib/Log/Any/Adapter/Util.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Manager:
     file: lib/Log/Any/Manager.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Proxy:
     file: lib/Log/Any/Proxy.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Proxy::Null:
     file: lib/Log/Any/Proxy/Null.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Proxy::Test:
     file: lib/Log/Any/Proxy/Test.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Proxy::WithStackTrace:
     file: lib/Log/Any/Proxy/WithStackTrace.pm
-    version: '1.715'
+    version: '1.716'
   Log::Any::Test:
     file: lib/Log/Any/Test.pm
-    version: '1.715'
+    version: '1.716'
 resources:
   bugtracker: https://github.com/preaction/Log-Any/issues
   homepage: https://github.com/preaction/Log-Any
   repository: https://github.com/preaction/Log-Any.git
-version: '1.715'
+version: '1.716'
 x_authority: cpan:PREACTION
 x_contributors:
   - 'Andrew Grechkin <[email protected]>'
+  - 'Andrew Hewus Fresh <[email protected]>'
   - 'bj5004 <[email protected]>'
   - 'cm-perl <[email protected]>'
   - 'Doug Bell <[email protected]>'
@@ -111,6 +112,8 @@
   - 'Paul Durden <[email protected]>'
   - 'Philipp Gortan <[email protected]>'
   - 'Phill Legault <[email protected]>'
+  - 'Samuel Ng <[email protected]>'
+  - 'Samuel Ng <[email protected]>'
   - 'Shlomi Fish <[email protected]>'
   - 'Sven Willenbuecher <[email protected]>'
   - 'XSven <[email protected]>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/Makefile.PL 
new/Log-Any-1.716/Makefile.PL
--- old/Log-Any-1.715/Makefile.PL       2023-05-04 20:09:28.000000000 +0200
+++ new/Log-Any-1.716/Makefile.PL       2023-06-26 21:14:53.000000000 +0200
@@ -23,7 +23,7 @@
     "IPC::Open3" => 0,
     "Test::More" => 0
   },
-  "VERSION" => "1.715",
+  "VERSION" => "1.716",
   "test" => {
     "TESTS" => "t/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Base.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Base.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Base.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Base.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -4,7 +4,7 @@
 
 package Log::Any::Adapter::Base;
 
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 our @CARP_NOT = ( 'Log::Any::Adapter' );
 
 # we import these in case any legacy adapter uses them as class methods
@@ -52,7 +52,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Capture.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Capture.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Capture.pm    2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Capture.pm    2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Capture;
 
 # ABSTRACT: Adapter for capturing log messages into an arrayref
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util ();
 
@@ -114,7 +114,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Development.pod 
new/Log-Any-1.716/lib/Log/Any/Adapter/Development.pod
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Development.pod       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Development.pod       2023-06-26 
21:14:53.000000000 +0200
@@ -16,7 +16,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/File.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/File.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/File.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/File.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::File;
 
 # ABSTRACT: Simple adapter for logging to files
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Config;
 use Fcntl qw/:flock/;
@@ -80,7 +80,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Multiplex.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Multiplex.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Multiplex.pm  2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Multiplex.pm  2023-06-26 
21:14:53.000000000 +0200
@@ -1,6 +1,6 @@
 package Log::Any::Adapter::Multiplex;
 # ABSTRACT: Adapter to use allow structured logging across other adapters
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any;
 use Log::Any::Adapter;
@@ -115,7 +115,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Null.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Null.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Null.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Null.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Null;
 
 # ABSTRACT: Discards all log messages
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Base;
 our @ISA = qw/Log::Any::Adapter::Base/;
@@ -33,7 +33,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Stderr.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Stderr.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Stderr.pm     2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Stderr.pm     2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Stderr;
 
 # ABSTRACT: Simple adapter for logging to STDERR
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util ();
 
@@ -62,7 +62,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Stdout.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Stdout.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Stdout.pm     2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Stdout.pm     2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Stdout;
 
 # ABSTRACT: Simple adapter for logging to STDOUT
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util ();
 
@@ -62,7 +62,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Syslog.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Syslog.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Syslog.pm     2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Syslog.pm     2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Syslog;
 
 # ABSTRACT: Send Log::Any logs to syslog
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util qw{make_method};
 use base qw{Log::Any::Adapter::Base};
@@ -151,7 +151,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Test.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Test.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Test.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Test.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -4,7 +4,7 @@
 
 package Log::Any::Adapter::Test;
 
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util qw/dump_one_line/;
 use Test::Builder;
@@ -218,7 +218,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter/Util.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter/Util.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter/Util.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter/Util.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter::Util;
 
 # ABSTRACT: Common utility functions for Log::Any
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Exporter;
 our @ISA = qw/Exporter/;
@@ -241,7 +241,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 DESCRIPTION
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Adapter.pm 
new/Log-Any-1.716/lib/Log/Any/Adapter.pm
--- old/Log-Any-1.715/lib/Log/Any/Adapter.pm    2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Adapter.pm    2023-06-26 21:14:53.000000000 
+0200
@@ -5,7 +5,7 @@
 package Log::Any::Adapter;
 
 # ABSTRACT: Tell Log::Any where to send its logs
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any;
 our @CARP_NOT = ( 'Log::Any::Manager' );
@@ -44,7 +44,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Manager.pm 
new/Log-Any-1.716/lib/Log/Any/Manager.pm
--- old/Log-Any-1.715/lib/Log/Any/Manager.pm    2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Manager.pm    2023-06-26 21:14:53.000000000 
+0200
@@ -4,7 +4,7 @@
 
 package Log::Any::Manager;
 
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 sub new {
     my $class = shift;
@@ -248,7 +248,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Proxy/Null.pm 
new/Log-Any-1.716/lib/Log/Any/Proxy/Null.pm
--- old/Log-Any-1.715/lib/Log/Any/Proxy/Null.pm 2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Proxy/Null.pm 2023-06-26 21:14:53.000000000 
+0200
@@ -5,7 +5,7 @@
 package Log::Any::Proxy::Null;
 
 # ABSTRACT: Log::Any generator proxy for no adapters
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util ();
 use Log::Any::Proxy;
@@ -57,7 +57,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Proxy/Test.pm 
new/Log-Any-1.716/lib/Log/Any/Proxy/Test.pm
--- old/Log-Any-1.715/lib/Log/Any/Proxy/Test.pm 2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Proxy/Test.pm 2023-06-26 21:14:53.000000000 
+0200
@@ -4,7 +4,7 @@
 
 package Log::Any::Proxy::Test;
 
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Proxy;
 our @ISA = qw/Log::Any::Proxy/;
@@ -42,7 +42,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Proxy/WithStackTrace.pm 
new/Log-Any-1.716/lib/Log/Any/Proxy/WithStackTrace.pm
--- old/Log-Any-1.715/lib/Log/Any/Proxy/WithStackTrace.pm       2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any/Proxy/WithStackTrace.pm       2023-06-26 
21:14:53.000000000 +0200
@@ -5,12 +5,13 @@
 package Log::Any::Proxy::WithStackTrace;
 
 # ABSTRACT: Log::Any proxy to upgrade string errors to objects with stack 
traces
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Proxy;
 our @ISA = qw/Log::Any::Proxy/;
 
 use Devel::StackTrace 2.00;
+use Devel::StackTrace::Extract qw(extract_stack_trace);
 use Log::Any::Adapter::Util ();
 use overload;
 
@@ -18,6 +19,9 @@
 #pod
 #pod   use Log::Any qw( $log, proxy_class => 'WithStackTrace' );
 #pod
+#pod   # Turns on argument logging in stack traces
+#pod   use Log::Any qw( $log, proxy_class => 'WithStackTrace', 
proxy_show_stack_trace_args => 1 );
+#pod
 #pod   # Some adapter that knows how to handle both structured data,
 #pod   # and log messages which are actually objects with a
 #pod   # "stack_trace" method:
@@ -40,7 +44,8 @@
 #pod C<Log::Any::MessageWithStackTrace> object with a C<stack_trace> method,
 #pod and that method will return a trace relative to where the logging method
 #pod was called.  A string overload is provided on the object to return the
-#pod original message.
+#pod original message. Unless a C<proxy_show_stack_trace_args> flag is 
specified, arguments
+#pod in the stack trace will be scrubbed.
 #pod
 #pod B<Important:> This proxy should be used with a L<Log::Any::Adapter> that
 #pod is configured to handle structured data.  Otherwise the object created
@@ -59,13 +64,14 @@
 
     sub new
     {
-        my ($class, $message) = @_;
+        my ($class, $proxy_show_stack_trace_args, $message) = @_;
         croak 'no "message"' unless defined $message;
         return bless {
             message     => $message,
             stack_trace => Devel::StackTrace->new(
                 # Filter e.g "Log::Any::Proxy", "My::Log::Any::Proxy", etc.
                 ignore_package => [ qr/(?:^|::)Log::Any(?:::|$)/ ],
+                no_args => !$proxy_show_stack_trace_args,
             ),
         }, $class;
     }
@@ -82,7 +88,8 @@
 #pod This is an internal use method that will convert a non-reference scalar
 #pod message into a C<Log::Any::MessageWithStackTrace> object with a
 #pod C<stack_trace> method.  A string overload is provided to return the
-#pod original message.
+#pod original message. Args are scrubbed out in case they contain sensitive 
data,
+#pod unless the C<proxy_show_stack_trace_args> option has been set.
 #pod
 #pod =cut
 
@@ -93,11 +100,21 @@
     # Only want a non-ref arg, optionally followed by a structured data
     # context hashref:
     #
+    unless ($self->{proxy_show_stack_trace_args}) {
+        for my $i (0 .. $#args) { # Check if there's a stack trace to scrub 
args from
+            my $trace = extract_stack_trace($args[$i]);
+            if ($trace) {
+                $self->delete_args_from_stack_trace($trace);
+                $args[$i] = $trace;
+            }
+        }
+    }
+
     return @args unless   @args == 1 ||
                         ( @args == 2 && ref $args[1] eq 'HASH' );
     return @args if ref $args[0];
 
-    $args[0] = Log::Any::MessageWithStackTrace->new($args[0]);
+    $args[0] = 
Log::Any::MessageWithStackTrace->new($self->{proxy_show_stack_trace_args}, 
$args[0]);
 
     return @args;
 }
@@ -118,6 +135,26 @@
     };
 }
 
+#pod =head2 delete_args_from_stack_trace($trace)
+#pod
+#pod     $self->delete_args_from_stack_trace($trace)
+#pod
+#pod To scrub potentially sensitive data from C<Devel::StackTrace> arguments, 
this method deletes
+#pod arguments from all of the C<Devel::StackTrace::Frame> in the trace.
+#pod
+#pod =cut
+
+sub delete_args_from_stack_trace
+{
+    my ($self, $trace) = @_;
+
+    return unless $trace;
+
+    foreach my $frame ($trace->frames) {
+        $frame->{args} = [];
+    }
+}
+
 1;
 
 __END__
@@ -132,12 +169,15 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
   use Log::Any qw( $log, proxy_class => 'WithStackTrace' );
 
+  # Turns on argument logging in stack traces
+  use Log::Any qw( $log, proxy_class => 'WithStackTrace', 
proxy_show_stack_trace_args => 1 );
+
   # Some adapter that knows how to handle both structured data,
   # and log messages which are actually objects with a
   # "stack_trace" method:
@@ -160,7 +200,8 @@
 C<Log::Any::MessageWithStackTrace> object with a C<stack_trace> method,
 and that method will return a trace relative to where the logging method
 was called.  A string overload is provided on the object to return the
-original message.
+original message. Unless a C<proxy_show_stack_trace_args> flag is specified, 
arguments
+in the stack trace will be scrubbed.
 
 B<Important:> This proxy should be used with a L<Log::Any::Adapter> that
 is configured to handle structured data.  Otherwise the object created
@@ -174,7 +215,15 @@
 This is an internal use method that will convert a non-reference scalar
 message into a C<Log::Any::MessageWithStackTrace> object with a
 C<stack_trace> method.  A string overload is provided to return the
-original message.
+original message. Args are scrubbed out in case they contain sensitive data,
+unless the C<proxy_show_stack_trace_args> option has been set.
+
+=head2 delete_args_from_stack_trace($trace)
+
+    $self->delete_args_from_stack_trace($trace)
+
+To scrub potentially sensitive data from C<Devel::StackTrace> arguments, this 
method deletes
+arguments from all of the C<Devel::StackTrace::Frame> in the trace.
 
 =head1 AUTHORS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Proxy.pm 
new/Log-Any-1.716/lib/Log/Any/Proxy.pm
--- old/Log-Any-1.715/lib/Log/Any/Proxy.pm      2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Proxy.pm      2023-06-26 21:14:53.000000000 
+0200
@@ -5,7 +5,7 @@
 package Log::Any::Proxy;
 
 # ABSTRACT: Log::Any generator proxy object
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Adapter::Util ();
 use overload;
@@ -150,7 +150,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any/Test.pm 
new/Log-Any-1.716/lib/Log/Any/Test.pm
--- old/Log-Any-1.715/lib/Log/Any/Test.pm       2023-05-04 20:09:28.000000000 
+0200
+++ new/Log-Any-1.716/lib/Log/Any/Test.pm       2023-06-26 21:14:53.000000000 
+0200
@@ -5,7 +5,7 @@
 package Log::Any::Test;
 
 # ABSTRACT: Test what you're logging with Log::Any
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 no warnings 'once';
 $Log::Any::OverrideDefaultAdapterClass = 'Log::Any::Adapter::Test';
@@ -25,7 +25,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/lib/Log/Any.pm 
new/Log-Any-1.716/lib/Log/Any.pm
--- old/Log-Any-1.715/lib/Log/Any.pm    2023-05-04 20:09:28.000000000 +0200
+++ new/Log-Any-1.716/lib/Log/Any.pm    2023-06-26 21:14:53.000000000 +0200
@@ -5,7 +5,7 @@
 package Log::Any;
 
 # ABSTRACT: Bringing loggers and listeners together
-our $VERSION = '1.715';
+our $VERSION = '1.716';
 
 use Log::Any::Manager;
 use Log::Any::Proxy::Null;
@@ -135,7 +135,7 @@
 
 =head1 VERSION
 
-version 1.715
+version 1.716
 
 =head1 SYNOPSIS
 
@@ -478,7 +478,7 @@
 
 =head1 CONTRIBUTORS
 
-=for stopwords Andrew Grechkin bj5004 cm-perl Doug Bell Jonathan Rubin Karen 
Etheridge Konstantin S. Uvarin Larry Leszczynski Lucas Kanashiro Maros Kollar 
Maxim Vuets mephinet Michael Conrad Nick Tonkin Paul Durden Philipp Gortan 
Phill Legault Shlomi Fish Sven Willenbuecher XSven
+=for stopwords Andrew Grechkin Hewus Fresh bj5004 cm-perl Doug Bell Jonathan 
Rubin Karen Etheridge Konstantin S. Uvarin Larry Leszczynski Lucas Kanashiro 
Maros Kollar Maxim Vuets mephinet Michael Conrad Nick Tonkin Paul Durden 
Philipp Gortan Phill Legault Samuel Ng Shlomi Fish Sven Willenbuecher XSven
 
 =over 4
 
@@ -488,6 +488,10 @@
 
 =item *
 
+Andrew Hewus Fresh <[email protected]>
+
+=item *
+
 bj5004 <[email protected]>
 
 =item *
@@ -556,6 +560,14 @@
 
 =item *
 
+Samuel Ng <[email protected]>
+
+=item *
+
+Samuel Ng <[email protected]>
+
+=item *
+
 Shlomi Fish <[email protected]>
 
 =item *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Log-Any-1.715/t/proxy-with-stack-trace.t 
new/Log-Any-1.716/t/proxy-with-stack-trace.t
--- old/Log-Any-1.715/t/proxy-with-stack-trace.t        2023-05-04 
20:09:28.000000000 +0200
+++ new/Log-Any-1.716/t/proxy-with-stack-trace.t        2023-06-26 
21:14:53.000000000 +0200
@@ -2,9 +2,10 @@
 use strict;
 use warnings;
 use Test::More;
+use List::Util qw( any );
 use Log::Any;
 
-plan tests => 48;
+plan tests => 61;
 
 use FindBin;
 use lib $FindBin::RealBin;
@@ -18,46 +19,60 @@
     if ( $@ ) {
         plan skip_all => 'Devel::StackTrace >= 2.00 is required for this test';
     }
-    else {
-        eval {
-            require Storable;
-            Storable->VERSION( 3.08 );
-        };
-        if ( $@ ) {
-            plan skip_all => 'Storable >= 3.08 is required for this test';
-        }
+    eval {
+        require Storable;
+        Storable->VERSION( 3.08 );
+    };
+    if ( $@ ) {
+        plan skip_all => 'Storable >= 3.08 is required for this test';
+    }
+    eval {
+        require Devel::StackTrace::Extract;
+    };
+    if ( $@ ) {
+        plan skip_all => 'Devel::StackTrace::Extract is required for this 
test';
     }
 }
 
 use Log::Any::Proxy::WithStackTrace;    # necessary?
 
-my $default_log = Log::Any->get_logger;
-my $log         = Log::Any->get_logger( proxy_class => 'WithStackTrace' );
+my $default_log   = Log::Any->get_logger;
+my $log           = Log::Any->get_logger( proxy_class => 'WithStackTrace' );
+my $log_show_args = Log::Any->get_logger( proxy_class => 'WithStackTrace', 
proxy_show_stack_trace_args => 1);
 
-is ref $default_log, 'Log::Any::Proxy::Null',
+is ref $default_log,   'Log::Any::Proxy::Null',
     'no adapter default proxy is Null';
-is ref $log,         'Log::Any::Proxy::WithStackTrace',
+is ref $log,           'Log::Any::Proxy::WithStackTrace',
     'no adapter explicit proxy is WithStackTrace';
+is ref $log_show_args, 'Log::Any::Proxy::WithStackTrace',
+    'no adapter explicit proxy with proxy_show_stack_trace_args flag is 
WithStackTrace';
 
-$default_log->info("test");
-$log        ->info("test");
+$default_log  ->info("test");
+$log          ->info("test");
+$log_show_args->info("test");
 
-is ref $default_log, 'Log::Any::Proxy::Null',
+is ref $default_log,   'Log::Any::Proxy::Null',
     'no adapter default proxy is still Null after logging';
-is ref $log,         'Log::Any::Proxy::WithStackTrace',
+is ref $log,           'Log::Any::Proxy::WithStackTrace',
     'no adapter explicit proxy is still WithStackTrace after logging';
+is ref $log_show_args, 'Log::Any::Proxy::WithStackTrace',
+    'no adapter explicit proxy with proxy_show_stack_trace_args flag is still 
WithStackTrace after logging';
 
 Log::Any->set_adapter('+TestAdapters::Structured');
 
-is ref $default_log, 'Log::Any::Proxy',
+is ref $default_log,   'Log::Any::Proxy',
     'existing default proxy is reblessed after adapter';
-is ref $log,         'Log::Any::Proxy::WithStackTrace',
+is ref $log,           'Log::Any::Proxy::WithStackTrace',
     'existing explicit proxy is still WithStackTrace after adapter';
+is ref $log_show_args, 'Log::Any::Proxy::WithStackTrace',
+    'existing explicit proxy with proxy_show_stack_trace_args flag is still 
WithStackTrace after adapter';
 
-is ref $default_log->adapter, 'TestAdapters::Structured',
+is ref $default_log->adapter,   'TestAdapters::Structured',
     'existing default proxy has correct adapter';
-is ref $log->adapter,         'TestAdapters::Structured',
+is ref $log->adapter,           'TestAdapters::Structured',
     'existing explicit proxy has correct adapter';
+is ref $log_show_args->adapter, 'TestAdapters::Structured',
+    'existing explicit proxy with proxy_show_stack_trace_args flag has correct 
adapter';
 
 my @test_cases = (
     [
@@ -132,6 +147,27 @@
             is_deeply $more_data, $args->[1],
                 "expected structured data from $type logger";
         }
+        foreach my $frame ($trace->frames) {
+            is scalar @{ $frame->{args} }, 0,
+                "stack_trace frame does not have args by default";
+        }
+
+        @TestAdapters::STRUCTURED_LOG = ();
+        $log_show_args->$method(@$args);
+        $msgs = \@TestAdapters::STRUCTURED_LOG;
+        $msg = $msgs->[0]->{data}->[0];  # "data" for non-text
+
+        $trace = $msg->stack_trace;
+
+        ok(
+            any (
+                sub {
+                    ($_->args >= 1);
+                },
+                $trace->frames
+            ),
+            "stack_trace frame has args if proxy_show_stack_trace_args => 1 is 
passed to logger",
+        );
     }
 }
 

Reply via email to