Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Test-Differences for 
openSUSE:Factory checked in at 2023-10-17 20:22:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Differences (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Test-Differences.new.20540 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Test-Differences"

Tue Oct 17 20:22:31 2023 rev:18 rq:1118103 version:0.710.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-Test-Differences/perl-Test-Differences.changes  
    2023-07-30 20:57:34.199147744 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Test-Differences.new.20540/perl-Test-Differences.changes
   2023-10-17 20:22:36.378257745 +0200
@@ -1,0 +2,12 @@
+Fri Oct 13 03:07:35 UTC 2023 - Tina Müller <timueller+p...@suse.de>
+
+- updated to 0.71
+   see /usr/share/doc/packages/perl-Test-Differences/Changes
+
+  0.71   2023-10-12
+
+      - Document and test different behaviour regarding Booleans in perl
+        5.38.0 compared to earlier versions.
+        See https://github.com/DrHyde/perl-modules-Test-Differences/issues/21
+
+-------------------------------------------------------------------

Old:
----
  Test-Differences-0.70.tar.gz

New:
----
  Test-Differences-0.71.tar.gz

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

Other differences:
------------------
++++++ perl-Test-Differences.spec ++++++
--- /var/tmp/diff_new_pack.8B0rYI/_old  2023-10-17 20:22:36.866274828 +0200
+++ /var/tmp/diff_new_pack.8B0rYI/_new  2023-10-17 20:22:36.866274828 +0200
@@ -18,10 +18,9 @@
 
 %define cpan_name Test-Differences
 Name:           perl-Test-Differences
-Version:        0.700.0
+Version:        0.710.0
 Release:        0
-%define cpan_version 0.70
-Provides:       perl(Test::Differences) = 0.700.0
+%define cpan_version 0.71
 #Upstream:  All Rights Reserved. You may use, distribute and modify this 
software under the terms of the GNU public license, any version, or the 
Artistic license.
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Test strings and data structures and show differences if not ok
@@ -39,6 +38,7 @@
 Requires:       perl(Data::Dumper) >= 2.126
 Requires:       perl(Test::More) >= 0.88
 Requires:       perl(Text::Diff) >= 1.43
+Provides:       perl(Test::Differences) = 0.710.0
 %define         __perllib_provides /bin/true
 %{perl_requires}
 

++++++ Test-Differences-0.70.tar.gz -> Test-Differences-0.71.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/Changes 
new/Test-Differences-0.71/Changes
--- old/Test-Differences-0.70/Changes   2023-07-07 20:07:49.000000000 +0200
+++ new/Test-Differences-0.71/Changes   2023-10-12 22:19:05.000000000 +0200
@@ -1,5 +1,11 @@
 Changes file for Test::Differences
 
+0.71   2023-10-12
+
+    - Document and test different behaviour regarding Booleans in perl
+      5.38.0 compared to earlier versions.
+      See https://github.com/DrHyde/perl-modules-Test-Differences/issues/21
+
 0.70   2023-07-07
     - Stop pointless use of taint-mode in tests, so tests pass when perl is
       built without taint support
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/MANIFEST 
new/Test-Differences-0.71/MANIFEST
--- old/Test-Differences-0.70/MANIFEST  2023-07-07 20:09:18.000000000 +0200
+++ new/Test-Differences-0.71/MANIFEST  2023-10-12 22:52:19.000000000 +0200
@@ -24,5 +24,6 @@
 t/sub-refs.t
 t/unknown-values.t
 t/script/unknown-values
+t/bools.t
 META.yml                                 Module YAML meta-data (added by 
MakeMaker)
 META.json                                Module JSON meta-data (added by 
MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/META.json 
new/Test-Differences-0.71/META.json
--- old/Test-Differences-0.70/META.json 2023-07-07 20:09:17.000000000 +0200
+++ new/Test-Differences-0.71/META.json 2023-10-12 22:52:18.000000000 +0200
@@ -50,6 +50,6 @@
          "url" : "https://github.com/DrHyde/Test-Differences";
       }
    },
-   "version" : "0.70",
+   "version" : "0.71",
    "x_serialization_backend" : "JSON::PP version 4.02"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/META.yml 
new/Test-Differences-0.71/META.yml
--- old/Test-Differences-0.70/META.yml  2023-07-07 20:09:17.000000000 +0200
+++ new/Test-Differences-0.71/META.yml  2023-10-12 22:52:18.000000000 +0200
@@ -25,5 +25,5 @@
 resources:
   bugtracker: https://github.com/DrHyde/Test-Differences/issues
   repository: https://github.com/DrHyde/Test-Differences
-version: '0.70'
+version: '0.71'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/lib/Test/Differences.pm 
new/Test-Differences-0.71/lib/Test/Differences.pm
--- old/Test-Differences-0.70/lib/Test/Differences.pm   2023-07-07 
19:20:28.000000000 +0200
+++ new/Test-Differences-0.71/lib/Test/Differences.pm   2023-10-12 
22:19:05.000000000 +0200
@@ -251,7 +251,7 @@
 
 =cut
 
-our $VERSION = "0.70"; # or "0.001_001" for a dev release
+our $VERSION = "0.71"; # or "0.001_001" for a dev release
 $VERSION = eval $VERSION;
 
 use Exporter;
@@ -500,6 +500,20 @@
 willing to do.  Use the eval and my_ok deployment shown above if you want some
 level of automation.
 
+=head2 Booleans
+
+Historically, true and false (whether resulting from logical-not C<!> or from
+equality checks like C<==>) were represented in perl as numeric C<1> for true
+and the empty string C<''> for false. In perl 5.36.0 they became real Boolean
+values which for backward compatibility also have their old numeric/string
+values. In 5.38 (and in dev releases from 5.37.2 onwards) L<Data::Dumper>
+belatedly learned about this, and so Test::Differences (which uses Data::Dumper
+under the bonnet) can also tell the difference.
+
+This means that `eq_or_diff(1, !!1)` will behave differently depending on
+whether you are using perl 5.38 or later (in which case it will say they are
+different) or 5.36 or earlier (which will say they are the same).
+
 =head2 Unicode
 
 Perls before 5.6.0 don't support characters > 255 at all, and 5.6.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Differences-0.70/t/bools.t 
new/Test-Differences-0.71/t/bools.t
--- old/Test-Differences-0.70/t/bools.t 1970-01-01 01:00:00.000000000 +0100
+++ new/Test-Differences-0.71/t/bools.t 2023-10-12 22:42:50.000000000 +0200
@@ -0,0 +1,51 @@
+use strict;
+use warnings;
+
+use lib 't/lib';
+use Test::Differences::TestUtils::Capture;
+
+use Test::More;
+use Test::Differences;
+
+use Data::Dumper;
+# same options at Test::Differences guts use
+$Data::Dumper::Deparse   = 1;
+$Data::Dumper::Indent    = 1;
+$Data::Dumper::Purity    = 0;
+$Data::Dumper::Terse     = 1;
+$Data::Dumper::Deepcopy  = 1;
+$Data::Dumper::Quotekeys = 0;
+$Data::Dumper::Useperl   = 1;
+$Data::Dumper::Sortkeys  = 0;
+
+my $stderr = capture_error { system (
+    $^X, (map { "-I$_" } (@INC)),
+    qw(-Mstrict -Mwarnings -MTest::More -MTest::Differences),
+    '-e', '
+        END { done_testing(); }
+        eq_or_diff(1, !!1);
+    '
+) };
+if($] >= 5.038000) {
+    ok(1 == !!1, "sanity check: 1 and !!1 are numerically the same on this 
perl");
+    ok(''.1 == ''.(!!1), "sanity check: 1 and !!1 stringify the same on this 
perl");
+    isnt(Dumper(1), Dumper(!!1), "sanity check: 1 and !!1 are Data::Dumper-ly 
different on this perl");
+    is($stderr,
+'#   Failed test at -e line 3.
+# +---+-----+----------+
+# | Ln|Got  |Expected  |
+# +---+-----+----------+
+# *  1|1    |!!1       *
+# +---+-----+----------+
+# Looks like you failed 1 test of 1.
+',
+    "spotted that 1 and !! are different");
+} else {
+    ok(1 == !!1, "sanity check: 1 and !!1 are numerically the same on this 
perl");
+    ok(''.1 == ''.(!!1), "sanity check: 1 and !!1 stringify the same on this 
perl");
+    is(Dumper(1), Dumper(!!1), "sanity check: 1 and !!1 are Data::Dumper-ly 
the same on this perl");
+    is($stderr, '', "got no error output for a boolean true vs 1 on Ye Olde 
Perls");
+    eq_or_diff(1, !!1, 'say that 1 and !!1 are the same');
+}
+
+done_testing;

Reply via email to