diff -Nru libdata-printer-perl-1.000001/Changes libdata-printer-perl-1.000004/Changes --- libdata-printer-perl-1.000001/Changes 2021-02-25 03:52:39.000000000 +0000 +++ libdata-printer-perl-1.000004/Changes 2021-03-03 22:27:02.000000000 +0000 @@ -1,5 +1,22 @@ Revision history for Data-Printer +1.0.4 2021-03-03 + BUG FIXES: + - fix DBIx::Class print when literal SQL is present (Veesh Goldman) + +1.0.3 2021-03-02 + OTHER: + - fixup documentation on how to convert from the old .dataprinter + format to the new one (GH#157) + - test fixes + +1.0.2 2021-02-28 + OTHER: + - Material's color for caller_info and code is now a bit brighter + to improve readability on terminals with dark background. + - improve MS Windows support + - increase test coverage + 1.0.1 2021-02-25 BUG FIXES: - properly parse the "n" option in regexes diff -Nru libdata-printer-perl-1.000001/debian/changelog libdata-printer-perl-1.000004/debian/changelog --- libdata-printer-perl-1.000001/debian/changelog 2021-02-28 02:16:46.000000000 +0000 +++ libdata-printer-perl-1.000004/debian/changelog 2021-05-03 07:52:58.000000000 +0000 @@ -1,11 +1,9 @@ -libdata-printer-perl (1.000001-1) unstable; urgency=medium +libdata-printer-perl (1.000004-1) unstable; urgency=medium - * Team upload. - * Import upstream version 1.000001. - * Update debian/upstream/metadata. - * Set Rules-Requires-Root: no. + [ upstream ] + * new bugfix releases - -- gregor herrmann Sun, 28 Feb 2021 03:16:46 +0100 + -- Jonas Smedegaard Mon, 03 May 2021 09:52:58 +0200 libdata-printer-perl (1.000000-1) unstable; urgency=medium diff -Nru libdata-printer-perl-1.000001/debian/control libdata-printer-perl-1.000004/debian/control --- libdata-printer-perl-1.000001/debian/control 2021-02-28 02:16:46.000000000 +0000 +++ libdata-printer-perl-1.000004/debian/control 2021-02-24 15:32:22.000000000 +0000 @@ -17,7 +17,6 @@ Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libdata-printer-perl Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libdata-printer-perl.git Homepage: https://metacpan.org/release/Data-Printer -Rules-Requires-Root: no Package: libdata-printer-perl Architecture: all diff -Nru libdata-printer-perl-1.000001/debian/upstream/metadata libdata-printer-perl-1.000004/debian/upstream/metadata --- libdata-printer-perl-1.000001/debian/upstream/metadata 2021-02-28 02:16:46.000000000 +0000 +++ libdata-printer-perl-1.000004/debian/upstream/metadata 2021-02-24 14:59:59.000000000 +0000 @@ -1,6 +1,6 @@ --- Archive: CPAN -Bug-Database: https://github.com/garu/Data-Printer/issues -Bug-Submit: https://github.com/garu/Data-Printer/issues/new +Bug-Database: https://github.com/garu/Data-Printer/issues/ +Bug-Submit: https://github.com/garu/Data-Printer/issues//new Repository: https://github.com/garu/Data-Printer.git Repository-Browse: https://github.com/garu/Data-Printer diff -Nru libdata-printer-perl-1.000001/lib/Data/Printer/Config.pm libdata-printer-perl-1.000004/lib/Data/Printer/Config.pm --- libdata-printer-perl-1.000001/lib/Data/Printer/Config.pm 2021-02-21 02:31:27.000000000 +0000 +++ libdata-printer-perl-1.000004/lib/Data/Printer/Config.pm 2021-03-03 01:42:24.000000000 +0000 @@ -200,9 +200,9 @@ if ($counter == 1 && /\A\s*\{/s) { Data::Printer::Common::_warn( undef, - "RC file format changed in 1.00. Usually all it takes is:\n" - . "cp $filename $filename.old && perl -MData::Printer::Config -E 'say Data::Printer::Config::convert(q($filename))' > $filename\n" - . "Please visit https://metacpan.org/pod/Data::Printer::Config for details." + "\nRC file format changed in 1.00. Usually all it takes is:\n" + . " cp $filename $filename.old && perl -MData::Printer::Config -E 'say Data::Printer::Config::convert(q($filename.old))' > $filename\n" + . "Please visit https://metacpan.org/pod/Data::Printer::Config for details.\n" ); } return {}; diff -Nru libdata-printer-perl-1.000001/lib/Data/Printer/Filter/DB.pm libdata-printer-perl-1.000004/lib/Data/Printer/Filter/DB.pm --- libdata-printer-perl-1.000001/lib/Data/Printer/Filter/DB.pm 2021-01-30 03:03:25.000000000 +0000 +++ libdata-printer-perl-1.000004/lib/Data/Printer/Filter/DB.pm 2021-03-03 22:17:30.000000000 +0000 @@ -201,8 +201,8 @@ $attrs = { %{ $rs->_resolved_attrs } }; 1; } && ref $attrs eq 'HASH' ) { - if (exists $attrs->{where} && keys %{$attrs->{where}}) { - $output .= $ddp->parse($attrs->{where}); + if (exists $attrs->{where}) { + $output .= $ddp->parse($attrs->{where}) } else { $output .= '-'; @@ -224,8 +224,12 @@ ; if (@query_data) { $output .= $ddp->newline . join( $ddp->newline, map { - $_->[1] . ' ' . $ddp->maybe_colorize('(', 'brackets') - . $_->[0]{sqlt_datatype} . $ddp->maybe_colorize(')', 'brackets') + my $bound = $_->[1]; + if ($_->[0]{sqlt_datatype}) { + $bound .= ' ' . $ddp->maybe_colorize('(', 'brackets') + . $_->[0]{sqlt_datatype} . $ddp->maybe_colorize(')', 'brackets'); + } + $bound } @query_data ); } diff -Nru libdata-printer-perl-1.000001/lib/Data/Printer/Theme/Material.pm libdata-printer-perl-1.000004/lib/Data/Printer/Theme/Material.pm --- libdata-printer-perl-1.000001/lib/Data/Printer/Theme/Material.pm 2021-02-24 03:36:59.000000000 +0000 +++ libdata-printer-perl-1.000004/lib/Data/Printer/Theme/Material.pm 2021-03-01 18:13:23.000000000 +0000 @@ -8,10 +8,7 @@ my %code_for = ( 'very_light_gray' => '#EEFFFF', 'light_gray' => '#A1BBC5', - 'middle_gray' => '#808080', - 'gray' => '#373b41', - 'dark_gray' => '#282a2e', - 'very_dark_gray' => '#263238', + 'gray' => '#4f5a61', 'green' => '#90B55A', #'#C3E88D', 'teal' => '#009688', 'light_teal' => '#73d1c8', @@ -41,7 +38,7 @@ lvalue => $code_for{strong_orange}, # lvalue label format => $code_for{strong_orange}, # format type repeated => $code_for{red}, # references to seen values - caller_info => $code_for{very_dark_gray}, # details on what's being printed + caller_info => $code_for{gray}, # details on what's being printed weak => $code_for{green}, # weak references flag tainted => $code_for{light_orange}, # tainted flag unicode => $code_for{light_orange}, # utf8 flag diff -Nru libdata-printer-perl-1.000001/lib/Data/Printer.pm libdata-printer-perl-1.000004/lib/Data/Printer.pm --- libdata-printer-perl-1.000001/lib/Data/Printer.pm 2021-02-25 03:44:28.000000000 +0000 +++ libdata-printer-perl-1.000004/lib/Data/Printer.pm 2021-03-03 22:27:47.000000000 +0000 @@ -5,7 +5,7 @@ use Data::Printer::Common; use Data::Printer::Config; -our $VERSION = '1.000001'; +our $VERSION = '1.000004'; $VERSION = eval $VERSION; my $rc_arguments; @@ -1005,20 +1005,20 @@ Many thanks to everyone who helped design and develop this module with patches, bug reports, wishlists, comments and tests. They are (alphabetically): -Adam Rosenstein, Alexandr Ciornii (chorny), Allan Whiteford, -Anatoly (Snelius30), Andreas König (andk), Andy Bach, Anthony DeRobertis, -Árpád Szász, Athanasios Douitsis (aduitsis), Baldur Kristinsson, -Benct Philip Jonsson (bpj), brian d foy, Chad Granum (exodist), -Chris Prather (perigrin), Curtis Poe (Ovid), David D Lowe (Flimm), -David Golden (xdg), David Precious (bigpresh), David Raab, -David E. Wheeler (theory), Damien Krotkine (dams), Denis Howe, dirk, -Dotan Dimet, Eden Cardim (edenc), Elliot Shank (elliotjs), Eugen Konkov (KES777), -Fernando Corrêa (SmokeMachine), Fitz Elliott, Florian (fschlich), -Frew Schmidt (frew), GianniGi, Graham Knop (haarg), Graham Todd, -Gregory J. Oschwald, grr, Håkon Hægland, Iaroslav O. Kosmina (darviarush), -Ivan Bessarabov (bessarabv), J Mash, James E. Keenan (jkeenan), -Jarrod Funnell (Timbus), Jay Allen (jayallen), Jay Hannah (jhannah), -jcop, Jesse Luehrs (doy), Joel Berger (jberger), +Adam Rosenstein, Alexandr Ciornii (chorny), Alexander Hartmaier (abraxxa), +Allan Whiteford, Anatoly (Snelius30), Andreas König (andk), Andy Bach, +Anthony DeRobertis, Árpád Szász, Athanasios Douitsis (aduitsis), +Baldur Kristinsson, Benct Philip Jonsson (bpj), brian d foy, +Chad Granum (exodist), Chris Prather (perigrin), Curtis Poe (Ovid), +David D Lowe (Flimm), David E. Condon (hhg7), David Golden (xdg), +David Precious (bigpresh), David Raab, David E. Wheeler (theory), +Damien Krotkine (dams), Denis Howe, dirk, Dotan Dimet, Eden Cardim (edenc), +Elliot Shank (elliotjs), Eugen Konkov (KES777), Fernando Corrêa (SmokeMachine), +Fitz Elliott, Florian (fschlich), Frew Schmidt (frew), GianniGi, +Graham Knop (haarg), Graham Todd, Gregory J. Oschwald, grr, Håkon Hægland, +Iaroslav O. Kosmina (darviarush), Ivan Bessarabov (bessarabv), J Mash, +James E. Keenan (jkeenan), Jarrod Funnell (Timbus), Jay Allen (jayallen), +Jay Hannah (jhannah), jcop, Jesse Luehrs (doy), Joel Berger (jberger), John S. Anderson (genehack), Karen Etheridge (ether), Kartik Thakore (kthakore), Kevin Dawson (bowtie), Kevin McGrath (catlgrep), Kip Hampton (ubu), Londran, Marcel Grünauer (hanekomu), @@ -1033,8 +1033,9 @@ Stanislaw Pusep (syp), Stephen Thirlwall (sdt), sugyan, Tai Paul, Tatsuhiko Miyagawa (miyagawa), Thomas Sibley (tsibley), Tim Heaney (oylenshpeegul), Toby Inkster (tobyink), Torsten Raudssus (Getty), -Tokuhiro Matsuno (tokuhirom), trapd00r, Tsai Chung-Kuan, vividsnow, -Wesley Dal`Col (blabos), y, Yanick Champoux (yanick). +Tokuhiro Matsuno (tokuhirom), trapd00r, Tsai Chung-Kuan, +Veesh Goldman (rabbiveesh), vividsnow, Wesley Dal`Col (blabos), y, +Yanick Champoux (yanick). If I missed your name, please drop me a line! diff -Nru libdata-printer-perl-1.000001/META.json libdata-printer-perl-1.000004/META.json --- libdata-printer-perl-1.000001/META.json 2021-02-25 03:56:21.000000000 +0000 +++ libdata-printer-perl-1.000004/META.json 2021-03-03 22:28:28.000000000 +0000 @@ -53,6 +53,6 @@ "url" : "https://github.com/garu/Data-Printer" } }, - "version" : "1.000001", + "version" : "1.000004", "x_serialization_backend" : "JSON::PP version 4.06" } diff -Nru libdata-printer-perl-1.000001/META.yml libdata-printer-perl-1.000004/META.yml --- libdata-printer-perl-1.000001/META.yml 2021-02-25 03:56:21.000000000 +0000 +++ libdata-printer-perl-1.000004/META.yml 2021-03-03 22:28:27.000000000 +0000 @@ -28,5 +28,5 @@ bugtracker: https://github.com/garu/Data-Printer/issues/ license: http://dev.perl.org/licenses/ repository: https://github.com/garu/Data-Printer -version: '1.000001' +version: '1.000004' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -Nru libdata-printer-perl-1.000001/t/002-scalar.t libdata-printer-perl-1.000004/t/002-scalar.t --- libdata-printer-perl-1.000001/t/002-scalar.t 2021-02-21 02:31:18.000000000 +0000 +++ libdata-printer-perl-1.000004/t/002-scalar.t 2021-02-28 22:25:20.000000000 +0000 @@ -223,8 +223,9 @@ # one very specific Perl dualvar TODO: { + local $TODO; if ($^O eq 'MSWin32') { - local $TODO = q(Windows sometimes doesn't respect $! as a dualvar); + $TODO = q(Windows sometimes doesn't respect $! as a dualvar [lax]); } local $! = 2; like( @@ -271,8 +272,9 @@ # one very specific Perl dualvar TODO: { - if ($^O ne 'MSWin32') { - local $TODO = q(Windows somestimes doesn't respect $! as a dualvar); + local $TODO; + if ($^O eq 'MSWin32') { + $TODO = q(Windows sometimes doesn't respect $! as a dualvar [strict]); } local $! = 2; like( diff -Nru libdata-printer-perl-1.000001/t/019-output.t libdata-printer-perl-1.000004/t/019-output.t --- libdata-printer-perl-1.000001/t/019-output.t 2021-01-30 03:03:25.000000000 +0000 +++ libdata-printer-perl-1.000004/t/019-output.t 2021-03-03 22:22:43.000000000 +0000 @@ -17,7 +17,7 @@ plan skip_all => 'Capture::Tiny not found'; } else { - plan tests => 10; + plan tests => 13; } #===================== @@ -66,7 +66,6 @@ #===================== $item++; - my $fh = tempfile; ($stdout, $stderr) = Capture::Tiny::capture( sub { p $item, output => $fh; @@ -78,3 +77,22 @@ is $buffer, $item . $/, 'redirected output to a file handle'; is $stdout, '', 'redirecting to file handle leaves STDOUT empty'; is $stderr, '', 'redirecting to file handle leaves STDERR empty'; + + +#==================== +# testing file name +#==================== +$item++; + +my $filename; +($fh, $filename) = tempfile; +($stdout, $stderr) = Capture::Tiny::capture( sub { + p $item, output => $filename, multiline => 0; +}); + +seek( $fh, 0, SEEK_SET ); +$buffer = do { local $/; <$fh> }; + +like $buffer, qr{\A$item\s*\z}, 'redirected output to a filename'; +is $stdout , '' , 'redirecting to filename leaves STDOUT empty'; +is $stderr , '' , 'redirecting to filename leaves STDERR empty'; diff -Nru libdata-printer-perl-1.000001/t/101-filter_db.t libdata-printer-perl-1.000004/t/101-filter_db.t --- libdata-printer-perl-1.000001/t/101-filter_db.t 2021-02-19 02:39:52.000000000 +0000 +++ libdata-printer-perl-1.000004/t/101-filter_db.t 2021-03-03 22:20:44.000000000 +0000 @@ -1,6 +1,6 @@ use strict; use warnings; -use Test::More tests => 23; +use Test::More tests => 24; use Data::Printer::Object; test_dbi(); @@ -177,12 +177,12 @@ EOPACKAGES SKIP: { - skip 'DBD::SQLite not available', 15 unless eval "use DBD::SQLite; 1"; - skip 'DBIx::Class not available', 15 unless eval "$packages"; + skip 'DBD::SQLite not available', 16 unless eval "use DBD::SQLite; 1"; + skip 'DBIx::Class not available', 16 unless eval "$packages"; diag('filter tests for DBIC ' . $DBIx::Class::VERSION . ' and DBD::SQLite ' . $DBD::SQLite::VERSION); package main; my $schema; - skip 'could not connect with DBIx::Class + SQLite: '. $@, 15, unless eval { + skip 'could not connect with DBIx::Class + SQLite: '. $@, 16, unless eval { MyDDPTest::Schema->load_classes({ 'MyDDPTest::Schema::Result' => [qw(Pet BigPet User)] }); @@ -499,5 +499,16 @@ user_id: 1 }), 'db entry with extra col'); # TODO: test some ->all() with prefetch + # + my $arrayrefref = $schema->resultset('User')->search(\[ 'email REGEXP ?' => 'gmail']); + is ($ddp->parse($arrayrefref), 'User ResultSet { + current search parameters: [ + [0] "email REGEXP ?", + [1] "gmail" + ] + as query: + (SELECT me.user_id, me.identity, me.email, me.city, me.state, me.code1, me.created FROM user me WHERE ( email REGEXP ? )) + gmail +}', 'literal sql with bind params'); }; } diff -Nru libdata-printer-perl-1.000001/t/998-color.t libdata-printer-perl-1.000004/t/998-color.t --- libdata-printer-perl-1.000001/t/998-color.t 2021-02-16 16:40:02.000000000 +0000 +++ libdata-printer-perl-1.000004/t/998-color.t 2021-03-03 02:07:21.000000000 +0000 @@ -63,9 +63,9 @@ \e[0;38;2;121;134;203mnumber\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;247;140;106m3.14\e[0m\e[0;38;2;102;217;239m,\e[0m \e[0;38;2;121;134;203mref\e[0m \e[0;38;2;102;217;239m \e[0m\\ \e[0;38;2;247;140;106m42\e[0m (read-only)\e[0;38;2;102;217;239m,\e[0m \e[0;38;2;121;134;203mregex\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;255;203;107m(?:\\s+)\$\e[0m (modifiers: ix)| . (q{ (refcount: 2)}x!!($] =~ /5.01100[12]/)) . qq|\e[0;38;2;102;217;239m,\e[0m - \e[0;38;2;121;134;203mspecial\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;144;181;90mone\e[0;38;2;0;150;136m\\t\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\x{2603}\e[0;38;2;144;181;90mtwo\e[0;38;2;0;150;136m\\0\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\n\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\e\e[0;38;2;144;181;90m[0m\e[0;38;2;0;150;136m\\x{2603}\e[0;38;2;144;181;90mBBBBBBBBBBBBBBB\e[0;38;2;38;50;56m(...skipping 85 chars...)\e[0;38;2;144;181;90m\e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;102;217;239m,\e[0m + \e[0;38;2;121;134;203mspecial\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;144;181;90mone\e[0;38;2;0;150;136m\\t\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\x{2603}\e[0;38;2;144;181;90mtwo\e[0;38;2;0;150;136m\\0\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\n\e[0;38;2;144;181;90m\e[0;38;2;0;150;136m\\e\e[0;38;2;144;181;90m[0m\e[0;38;2;0;150;136m\\x{2603}\e[0;38;2;144;181;90mBBBBBBBBBBBBBBB\e[0;38;2;79;90;97m(...skipping 85 chars...)\e[0;38;2;144;181;90m\e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;102;217;239m,\e[0m \e[0;38;2;121;134;203mstring\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;144;181;90mthis is a string\e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;102;217;239m,\e[0m - \e[0;38;2;121;134;203msub\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;55;59;65msub { ... }\e[0m (refcount: 2)\e[0;38;2;102;217;239m,\e[0m + \e[0;38;2;121;134;203msub\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;79;90;97msub { ... }\e[0m (refcount: 2)\e[0;38;2;102;217;239m,\e[0m \e[0;38;2;121;134;203mundef\e[0m \e[0;38;2;102;217;239m \e[0m\e[0;38;2;255;83;112mundef\e[0m\e[0;38;2;102;217;239m,\e[0m \e[0;38;2;102;217;239m"\e[0m\e[0;38;2;121;134;203mwe\e[0;38;2;0;150;136m\\e\e[0;38;2;121;134;203m[0mird\e[0;38;2;0;150;136m\\0\e[0;38;2;121;134;203mkey\e[0;38;2;0;150;136m\\x{2603}\e[0;38;2;121;134;203m!\e[0m\e[0;38;2;102;217;239m"\e[0m\e[0;38;2;102;217;239m \e[0m\e[0;38;2;247;140;106m1\e[0m \e[0;38;2;102;217;239m}\e[0m