diff -Nru liblog-any-perl-1.706/Changes liblog-any-perl-1.707/Changes --- liblog-any-perl-1.706/Changes 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/Changes 2018-08-02 03:55:07.000000000 +0000 @@ -2,6 +2,15 @@ ** denotes an incompatible change +1.707 2018-08-01 22:55:01-05:00 America/Chicago + + [Fixed] + + - The local context hash (`$log->context`) and the log hash + (`$log->$level( $message, $hash )`) now get merged correctly, + combining contextual logging and structured logging. Thanks + @mephinet! [Github #76] [Github #73] + 1.706 2018-07-06 20:20:00-05:00 America/Chicago [Fixed] diff -Nru liblog-any-perl-1.706/debian/changelog liblog-any-perl-1.707/debian/changelog --- liblog-any-perl-1.706/debian/changelog 2018-07-09 17:52:54.000000000 +0000 +++ liblog-any-perl-1.707/debian/changelog 2018-08-11 19:22:42.000000000 +0000 @@ -1,3 +1,10 @@ +liblog-any-perl (1.707-1) unstable; urgency=medium + + * Import upstream version 1.707 + * Declare compliance with policy 4.2.0 + + -- Xavier Guimard Sat, 11 Aug 2018 21:22:42 +0200 + liblog-any-perl (1.706-1) unstable; urgency=medium [ Salvatore Bonaccorso ] diff -Nru liblog-any-perl-1.706/debian/control liblog-any-perl-1.707/debian/control --- liblog-any-perl-1.706/debian/control 2018-07-09 17:52:54.000000000 +0000 +++ liblog-any-perl-1.707/debian/control 2018-08-11 19:22:42.000000000 +0000 @@ -8,7 +8,7 @@ Priority: optional Build-Depends: debhelper (>= 10) Build-Depends-Indep: perl -Standards-Version: 4.1.5 +Standards-Version: 4.2.0 Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/liblog-any-perl Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/liblog-any-perl.git Homepage: https://metacpan.org/release/Log-Any diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Base.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Base.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Base.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Base.pm 2018-08-02 03:55:07.000000000 +0000 @@ -4,7 +4,7 @@ package Log::Any::Adapter::Base; -our $VERSION = '1.706'; +our $VERSION = '1.707'; 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.706 +version 1.707 =head1 AUTHORS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Development.pod liblog-any-perl-1.707/lib/Log/Any/Adapter/Development.pod --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Development.pod 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Development.pod 2018-08-02 03:55:07.000000000 +0000 @@ -16,7 +16,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/File.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/File.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/File.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/File.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::File; # ABSTRACT: Simple adapter for logging to files -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Config; use Fcntl qw/:flock/; @@ -80,7 +80,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Null.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Null.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Null.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Null.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::Null; # ABSTRACT: Discards all log messages -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Base; our @ISA = qw/Log::Any::Adapter::Base/; @@ -33,7 +33,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Stderr.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Stderr.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Stderr.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Stderr.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::Stderr; # ABSTRACT: Simple adapter for logging to STDERR -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util (); @@ -62,7 +62,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Stdout.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Stdout.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Stdout.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Stdout.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::Stdout; # ABSTRACT: Simple adapter for logging to STDOUT -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util (); @@ -62,7 +62,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Syslog.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Syslog.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Syslog.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Syslog.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::Syslog; # ABSTRACT: Send Log::Any logs to syslog -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util qw{make_method}; use base qw{Log::Any::Adapter::Base}; @@ -141,7 +141,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Test.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Test.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Test.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Test.pm 2018-08-02 03:55:07.000000000 +0000 @@ -4,7 +4,7 @@ package Log::Any::Adapter::Test; -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util qw/dump_one_line/; use Test::Builder; @@ -218,7 +218,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 AUTHORS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter/Util.pm liblog-any-perl-1.707/lib/Log/Any/Adapter/Util.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter/Util.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter/Util.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter::Util; # ABSTRACT: Common utility functions for Log::Any -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Exporter; our @ISA = qw/Exporter/; @@ -241,7 +241,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 DESCRIPTION diff -Nru liblog-any-perl-1.706/lib/Log/Any/Adapter.pm liblog-any-perl-1.707/lib/Log/Any/Adapter.pm --- liblog-any-perl-1.706/lib/Log/Any/Adapter.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Adapter.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Adapter; # ABSTRACT: Tell Log::Any where to send its logs -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any; our @CARP_NOT = ( 'Log::Any::Manager' ); @@ -39,7 +39,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Manager.pm liblog-any-perl-1.707/lib/Log/Any/Manager.pm --- liblog-any-perl-1.706/lib/Log/Any/Manager.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Manager.pm 2018-08-02 03:55:07.000000000 +0000 @@ -4,7 +4,7 @@ package Log::Any::Manager; -our $VERSION = '1.706'; +our $VERSION = '1.707'; sub new { my $class = shift; @@ -249,7 +249,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 AUTHORS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Proxy/Null.pm liblog-any-perl-1.707/lib/Log/Any/Proxy/Null.pm --- liblog-any-perl-1.706/lib/Log/Any/Proxy/Null.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Proxy/Null.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Proxy::Null; # ABSTRACT: Log::Any generator proxy for no adapters -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util (); use Log::Any::Proxy; @@ -57,7 +57,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 AUTHORS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Proxy/Test.pm liblog-any-perl-1.707/lib/Log/Any/Proxy/Test.pm --- liblog-any-perl-1.706/lib/Log/Any/Proxy/Test.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Proxy/Test.pm 2018-08-02 03:55:07.000000000 +0000 @@ -4,7 +4,7 @@ package Log::Any::Proxy::Test; -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Proxy; our @ISA = qw/Log::Any::Proxy/; @@ -42,7 +42,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 AUTHORS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Proxy.pm liblog-any-perl-1.707/lib/Log/Any/Proxy.pm --- liblog-any-perl-1.706/lib/Log/Any/Proxy.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Proxy.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Proxy; # ABSTRACT: Log::Any generator proxy object -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Adapter::Util (); use overload; @@ -94,19 +94,22 @@ my $structured_logging = $self->{adapter}->can('structured') && !$self->{filter}; + my $data_from_parts = pop @parts + if ( @parts && ( ( ref $parts[-1] || '' ) eq ref {} ) ); + my $data_from_context = $self->{context}; + my $data = + { map {%$_} grep {$_ && %$_} $data_from_context, $data_from_parts }; + if ($structured_logging) { unshift @parts, $self->{prefix} if $self->{prefix}; $self->{adapter} - ->structured( $realname, $self->{category}, @parts, grep { scalar keys %$_ } $self->{context}); + ->structured( $realname, $self->{category}, @parts, grep {%$_} $data ); return unless defined wantarray; } @parts = grep { defined($_) && length($_) } @parts; + push @parts, _stringify_params($data) if %$data; - # last part might be a hashref - if so, stringify - push @parts, _stringify_params(pop @parts) if ( @parts && ((ref $parts[-1] || '') eq ref {})); - - push @parts, _stringify_params($self->{context}) if %{$self->{context}}; my $message = join( " ", @parts ); if ( length $message && !$structured_logging ) { $message = @@ -147,7 +150,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any/Test.pm liblog-any-perl-1.707/lib/Log/Any/Test.pm --- liblog-any-perl-1.706/lib/Log/Any/Test.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any/Test.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any::Test; # ABSTRACT: Test what you're logging with Log::Any -our $VERSION = '1.706'; +our $VERSION = '1.707'; no warnings 'once'; $Log::Any::OverrideDefaultAdapterClass = 'Log::Any::Adapter::Test'; @@ -25,7 +25,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/lib/Log/Any.pm liblog-any-perl-1.707/lib/Log/Any.pm --- liblog-any-perl-1.706/lib/Log/Any.pm 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/lib/Log/Any.pm 2018-08-02 03:55:07.000000000 +0000 @@ -5,7 +5,7 @@ package Log::Any; # ABSTRACT: Bringing loggers and listeners together -our $VERSION = '1.706'; +our $VERSION = '1.707'; use Log::Any::Manager; use Log::Any::Proxy::Null; @@ -134,7 +134,7 @@ =head1 VERSION -version 1.706 +version 1.707 =head1 SYNOPSIS diff -Nru liblog-any-perl-1.706/Makefile.PL liblog-any-perl-1.707/Makefile.PL --- liblog-any-perl-1.706/Makefile.PL 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/Makefile.PL 2018-08-02 03:55:07.000000000 +0000 @@ -38,7 +38,7 @@ "IPC::Open3" => 0, "Test::More" => 0 }, - "VERSION" => "1.706", + "VERSION" => "1.707", "test" => { "TESTS" => "t/*.t" } diff -Nru liblog-any-perl-1.706/META.json liblog-any-perl-1.707/META.json --- liblog-any-perl-1.706/META.json 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/META.json 2018-08-02 03:55:07.000000000 +0000 @@ -75,63 +75,63 @@ "provides" : { "Log::Any" : { "file" : "lib/Log/Any.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter" : { "file" : "lib/Log/Any/Adapter.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Base" : { "file" : "lib/Log/Any/Adapter/Base.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::File" : { "file" : "lib/Log/Any/Adapter/File.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Null" : { "file" : "lib/Log/Any/Adapter/Null.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Stderr" : { "file" : "lib/Log/Any/Adapter/Stderr.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Stdout" : { "file" : "lib/Log/Any/Adapter/Stdout.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Syslog" : { "file" : "lib/Log/Any/Adapter/Syslog.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Test" : { "file" : "lib/Log/Any/Adapter/Test.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Adapter::Util" : { "file" : "lib/Log/Any/Adapter/Util.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Manager" : { "file" : "lib/Log/Any/Manager.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Proxy" : { "file" : "lib/Log/Any/Proxy.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Proxy::Null" : { "file" : "lib/Log/Any/Proxy/Null.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Proxy::Test" : { "file" : "lib/Log/Any/Proxy/Test.pm", - "version" : "1.706" + "version" : "1.707" }, "Log::Any::Test" : { "file" : "lib/Log/Any/Test.pm", - "version" : "1.706" + "version" : "1.707" } }, "release_status" : "stable", @@ -146,7 +146,7 @@ "web" : "https://github.com/preaction/Log-Any" } }, - "version" : "1.706", + "version" : "1.707", "x_authority" : "cpan:PREACTION", "x_contributors" : [ "bj5004 ", diff -Nru liblog-any-perl-1.706/META.yml liblog-any-perl-1.707/META.yml --- liblog-any-perl-1.706/META.yml 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/META.yml 2018-08-02 03:55:07.000000000 +0000 @@ -34,49 +34,49 @@ provides: Log::Any: file: lib/Log/Any.pm - version: '1.706' + version: '1.707' Log::Any::Adapter: file: lib/Log/Any/Adapter.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Base: file: lib/Log/Any/Adapter/Base.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::File: file: lib/Log/Any/Adapter/File.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Null: file: lib/Log/Any/Adapter/Null.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Stderr: file: lib/Log/Any/Adapter/Stderr.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Stdout: file: lib/Log/Any/Adapter/Stdout.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Syslog: file: lib/Log/Any/Adapter/Syslog.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Test: file: lib/Log/Any/Adapter/Test.pm - version: '1.706' + version: '1.707' Log::Any::Adapter::Util: file: lib/Log/Any/Adapter/Util.pm - version: '1.706' + version: '1.707' Log::Any::Manager: file: lib/Log/Any/Manager.pm - version: '1.706' + version: '1.707' Log::Any::Proxy: file: lib/Log/Any/Proxy.pm - version: '1.706' + version: '1.707' Log::Any::Proxy::Null: file: lib/Log/Any/Proxy/Null.pm - version: '1.706' + version: '1.707' Log::Any::Proxy::Test: file: lib/Log/Any/Proxy/Test.pm - version: '1.706' + version: '1.707' Log::Any::Test: file: lib/Log/Any/Test.pm - version: '1.706' + version: '1.707' requires: B: '0' Carp: '0' @@ -96,7 +96,7 @@ 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.706' +version: '1.707' x_authority: cpan:PREACTION x_contributors: - 'bj5004 ' diff -Nru liblog-any-perl-1.706/t/context.t liblog-any-perl-1.707/t/context.t --- liblog-any-perl-1.706/t/context.t 2018-07-07 01:20:05.000000000 +0000 +++ liblog-any-perl-1.707/t/context.t 2018-08-02 03:55:07.000000000 +0000 @@ -18,13 +18,14 @@ sub process_file { my ($file) = @_; my $log2 = Log::Any->get_logger( category => 'MyApp::FileProcessor' ); - $log2->info('Performing work'); + $log2->info('Performing work', {file => $file}); } sub process_dir { my ($dir) = @_; my $log1 = Log::Any->get_logger( category => 'MyApp::DirWalker' ); local $log1->context->{directory} = $dir; + local $log1->context->{file} = 'will be overwritten...'; for ( 1 .. 3 ) { local $log1->context->{pass} = $_; process_file("$dir/$_"); @@ -41,13 +42,14 @@ } my @expected_text_log = map { - qq(Performing work {directory => "/foo",pass => $_,pid => 42,progname => "context.t"}) + qq(Performing work {directory => "/foo",file => "/foo/$_",pass => $_,pid => 42,progname => "context.t"}) } ( 1 .. 3 ); my @expected_structured_log = map { { category => 'MyApp::FileProcessor', data => [ { directory => '/bar', + file => "/bar/$_", pass => $_, pid => 84, progname => 'context.t'