Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Text-CSV_XS for 
openSUSE:Factory checked in at 2026-05-13 20:59:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Text-CSV_XS (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Text-CSV_XS.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Text-CSV_XS"

Wed May 13 20:59:00 2026 rev:60 rq:1352899 version:1.620.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Text-CSV_XS/perl-Text-CSV_XS.changes        
2025-08-27 21:33:20.927344992 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Text-CSV_XS.new.1966/perl-Text-CSV_XS.changes  
    2026-05-13 20:59:06.856587069 +0200
@@ -1,0 +2,12 @@
+Thu Apr 30 07:42:45 UTC 2026 - Tina Müller <[email protected]>
+
+- updated to 1.620.0 (1.62)
+   see /usr/share/doc/packages/perl-Text-CSV_XS/ChangeLog
+
+  1.62 - 2026-04-29, H.Merijn Brand
+      * It is 2026
+      * Fix possible stack corruption (thanks leont) (issue 65)
+        Fixes CVE-2026-7111
+        bsc#1263690
+
+-------------------------------------------------------------------

Old:
----
  Text-CSV_XS-1.61.tgz

New:
----
  Text-CSV_XS-1.62.tgz

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

Other differences:
------------------
++++++ perl-Text-CSV_XS.spec ++++++
--- /var/tmp/diff_new_pack.mB50K9/_old  2026-05-13 20:59:07.548615602 +0200
+++ /var/tmp/diff_new_pack.mB50K9/_new  2026-05-13 20:59:07.552615767 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Text-CSV_XS
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,10 +18,10 @@
 
 %define cpan_name Text-CSV_XS
 Name:           perl-Text-CSV_XS
-Version:        1.610.0
+Version:        1.620.0
 Release:        0
-# 1.61 -> normalize -> 1.610.0
-%define cpan_version 1.61
+# 1.62 -> normalize -> 1.620.0
+%define cpan_version 1.62
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Comma-Separated Values manipulation routines
 URL:            https://metacpan.org/release/%{cpan_name}
@@ -32,7 +32,7 @@
 BuildRequires:  perl-macros
 Provides:       perl(Text::CSV_XS) = %{version}
 %undefine       __perllib_provides
-Recommends:     perl(Encode) >= 3.21
+Recommends:     perl(Encode) >= 3.22
 %{perl_requires}
 
 %description

++++++ Text-CSV_XS-1.61.tgz -> Text-CSV_XS-1.62.tgz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/CSV_XS.pm 
new/Text-CSV_XS-1.62/CSV_XS.pm
--- old/Text-CSV_XS-1.61/CSV_XS.pm      2025-07-10 19:02:16.000000000 +0200
+++ new/Text-CSV_XS-1.62/CSV_XS.pm      2026-04-26 16:24:14.000000000 +0200
@@ -1,6 +1,6 @@
 package Text::CSV_XS;
 
-# Copyright (c) 2007-2025 H.Merijn Brand.  All rights reserved.
+# Copyright (c) 2007-2026 H.Merijn Brand.  All rights reserved.
 # Copyright (c) 1998-2001 Jochen Wiedmann. All rights reserved.
 # Copyright (c) 1997 Alan Citterman.       All rights reserved.
 #
@@ -23,7 +23,7 @@
 use Carp;
 
 use vars qw( $VERSION @ISA @EXPORT_OK %EXPORT_TAGS );
-$VERSION = "1.61";
+$VERSION = "1.62";
 @ISA     = qw( Exporter );
 XSLoader::load ("Text::CSV_XS", $VERSION);
 
@@ -187,7 +187,7 @@
     my $proto = shift;
     my $class = ref $proto || $proto   or  return;
     @_ > 0 &&   ref $_[0] ne "HASH"    and return;
-    my $attr  = shift || {};
+    my $attr  = shift || +{};
     my %attr  = map {
        my $k = m/^[a-zA-Z]\w+$/ ? lc $_ : $_;
        exists $attr_alias{$k} and $k = $attr_alias{$k};
@@ -1100,7 +1100,7 @@
 sub print_hr {
     my ($self, $io, $hr) = @_;
     $self->{'_COLUMN_NAMES'} or croak ($self->SetDiag (3009));
-    ref $hr eq "HASH"      or croak ($self->SetDiag (3010));
+    ref $hr eq "HASH"        or croak ($self->SetDiag (3010));
     $self->print ($io, [ map { $hr->{$_} } $self->column_names () ]);
     } # print_hr
 
@@ -1208,7 +1208,16 @@
 my $csv_usage = q{usage: my $aoa = csv (in => $file);};
 
 sub _csv_attr {
-    my %attr = (@_ == 1 && ref $_[0] eq "HASH" ? %{$_[0]} : @_) or croak ();
+    my %attr;
+    if (@_ == 1 && ref $_[0] eq "HASH") {
+       %attr = %{$_[0]};
+       }
+    elsif (scalar @_ % 2) {
+       croak (Text::CSV_XS->SetDiag (1502));
+       }
+    else {
+       %attr = @_;
+       }
 
     $attr{'binary'}     = 1;
     $attr{'strict_eol'} = 1;
@@ -5332,7 +5341,7 @@
 
 =head1 COPYRIGHT AND LICENSE
 
- Copyright (C) 2007-2025 H.Merijn Brand.  All rights reserved.
+ Copyright (C) 2007-2026 H.Merijn Brand.  All rights reserved.
  Copyright (C) 1998-2001 Jochen Wiedmann. All rights reserved.
  Copyright (C) 1997      Alan Citterman.  All rights reserved.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/CSV_XS.xs 
new/Text-CSV_XS-1.62/CSV_XS.xs
--- old/Text-CSV_XS-1.61/CSV_XS.xs      2025-07-10 19:02:08.000000000 +0200
+++ new/Text-CSV_XS-1.62/CSV_XS.xs      2026-04-28 14:57:08.000000000 +0200
@@ -1,4 +1,4 @@
-/*  Copyright (c) 2007-2025 H.Merijn Brand.  All rights reserved.
+/*  Copyright (c) 2007-2026 H.Merijn Brand.  All rights reserved.
  *  Copyright (c) 1998-2001 Jochen Wiedmann. All rights reserved.
  *  This program is free software; you can redistribute it and/or
  *  modify it under the same terms as Perl itself.
@@ -122,6 +122,12 @@
        croak ("self is not a hash ref");               \
     hv = (HV *)SvRV (self)
 
+#define undef &PL_sv_undef
+#define PUT_RETURN(x)  \
+    SPAGAIN;           \
+    ST (0) = x;                \
+    XSRETURN (1)
+
 /* Keep in sync with .pm! */
 #define CACHE_ID_quote_char            0
 #define CACHE_ID_escape_char           1
@@ -2603,7 +2609,7 @@
     Perl_load_module (aTHX_ PERL_LOADMOD_NOIMPORT, newSVpvs ("IO::Handle"), 
NULL, NULL, NULL);
 
 void
-SetDiag (SV *self, int xse, ...)
+SetDiag (SV *self, int xse, SV *line = undef)
 
   PPCODE:
     HV         *hv;
@@ -2619,8 +2625,8 @@
        ST (0) = sv_2mortal (SvDiag (xse));
        }
 
-    if (xse && items > 2 && SvPOK (ST (2))) {
-       sv_setpvn (ST (0),  SvPVX (ST (2)), SvCUR (ST (2)));
+    if (xse && SvPOK (line)) {
+       sv_setpvn (ST (0),  SvPVX (line), SvCUR (line));
        SvIOK_on  (ST (0));
        }
 
@@ -2665,13 +2671,14 @@
     HV *hv;
     AV *av;
     AV *avf;
+    int  r;
 
     CSV_XS_SELF;
     av  = (AV *)SvRV (fields);
     avf = (AV *)SvRV (fflags);
 
-    ST (0) = xsParse (self, hv, av, avf, src, 0) ? &PL_sv_yes : &PL_sv_no;
-    XSRETURN (1);
+    r = xsParse (self, hv, av, avf, src, 0);
+    PUT_RETURN (r ? &PL_sv_yes : &PL_sv_no);
     /* XS Parse */
 
 void
@@ -2680,6 +2687,7 @@
   PPCODE:
     HV  *hv;
     AV  *av;
+    int   r;
 
     CSV_XS_SELF;
     if (fields == &PL_sv_undef)
@@ -2691,8 +2699,8 @@
        av = (AV *)SvRV (fields);
        }
 
-    ST (0) = xsCombine (self, hv, av, io, 1) ? &PL_sv_yes : &PL_sv_no;
-    XSRETURN (1);
+    r = xsCombine (self, hv, av, io, 1);
+    PUT_RETURN (r ? &PL_sv_yes : &PL_sv_no);
     /* XS print */
 
 void
@@ -2702,30 +2710,26 @@
     HV *hv;
     AV *av;
     AV *avf;
+    int  r;
 
     CSV_XS_SELF;
     av  = newAV ();
     avf = newAV ();
-    ST (0) = xsParse (self, hv, av, avf, io, 1)
-       ? sv_2mortal (newRV_noinc ((SV *)av))
-       : &PL_sv_undef;
-    XSRETURN (1);
+    r   = xsParse (self, hv, av, avf, io, 1);
+    PUT_RETURN (r ? sv_2mortal (newRV_noinc ((SV *)av)) : undef);
     /* XS getline */
 
 void
-getline_all (SV *self, SV *io, ...)
+getline_all (SV *self, SV *io, SV *offset = undef, SV *length = undef)
 
   PPCODE:
     HV *hv;
-    SV  *offset, *length;
+    SV  *rv;
 
     CSV_XS_SELF;
 
-    offset = items > 2 ? ST (2) : &PL_sv_undef;
-    length = items > 3 ? ST (3) : &PL_sv_undef;
-
-    ST (0) = xsParse_all (self, hv, io, offset, length);
-    XSRETURN (1);
+    rv = xsParse_all (self, hv, io, offset, length);
+    PUT_RETURN (rv);
     /* XS getline_all */
 
 void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/ChangeLog 
new/Text-CSV_XS-1.62/ChangeLog
--- old/Text-CSV_XS-1.61/ChangeLog      2025-07-26 15:43:19.000000000 +0200
+++ new/Text-CSV_XS-1.62/ChangeLog      2026-04-29 09:29:21.000000000 +0200
@@ -1,3 +1,8 @@
+1.62   - 2026-04-29, H.Merijn Brand
+    * It is 2026
+    * Fix possible stack corruption (thanks leont) (issue 65)
+      Fixes CVE-2026-7111
+
 1.61   - 2025-07-26, H.Merijn Brand
     * Add love letter to CSV from xan project with reference
     * Bugtracker to github (long overdue) (issue 63)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/META.json 
new/Text-CSV_XS-1.62/META.json
--- old/Text-CSV_XS-1.61/META.json      2025-07-26 16:50:05.000000000 +0200
+++ new/Text-CSV_XS-1.62/META.json      2026-04-29 10:18:27.000000000 +0200
@@ -1,70 +1,70 @@
 {
-   "prereqs" : {
-      "build" : {
-         "requires" : {
-            "Config" : "0"
+   "abstract" : "Comma-Separated Values manipulation routines",
+   "generated_by" : "Author",
+   "meta-spec" : {
+      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec";,
+      "version" : 2
+      },
+   "provides" : {
+      "Text::CSV_XS" : {
+         "version" : "1.62",
+         "file" : "CSV_XS.pm"
+         }
+      },
+   "dynamic_config" : 1,
+   "name" : "Text-CSV_XS",
+   "version" : "1.62",
+   "release_status" : "stable",
+   "resources" : {
+      "x_IRC" : "irc://irc.perl.org/#csv",
+      "homepage" : "https://metacpan.org/pod/Text::CSV_XS";,
+      "license" : [
+         "http://dev.perl.org/licenses/";
+         ],
+      "bugtracker" : {
+         "web" : "https://github.com/Tux/Text-CSV_XS/issues";
+         },
+      "repository" : {
+         "url" : "https://github.com/Tux/Text-CSV_XS";,
+         "web" : "https://github.com/Tux/Text-CSV_XS";,
+         "type" : "git"
          }
       },
+   "prereqs" : {
+      "test" : {
+         "requires" : {
+            "Tie::Scalar" : "0",
+            "Test::More" : "0"
+            }
+         },
       "runtime" : {
+         "recommends" : {
+            "Encode" : "3.22"
+            },
          "requires" : {
+            "IO::Handle" : "0",
             "perl" : "5.006001",
-            "XSLoader" : "0",
-            "IO::Handle" : "0"
+            "XSLoader" : "0"
+            }
          },
-         "recommends" : {
-            "Encode" : "3.21"
-         }
-      },
       "configure" : {
          "requires" : {
             "ExtUtils::MakeMaker" : "0"
-         },
+            },
          "recommends" : {
-            "ExtUtils::MakeMaker" : "7.76"
-         }
-      },
-      "test" : {
+            "ExtUtils::MakeMaker" : "7.78"
+            }
+         },
+      "build" : {
          "requires" : {
-            "Test::More" : "0",
-            "Tie::Scalar" : "0"
+            "Config" : "0"
+            }
          }
-      }
-   },
+      },
    "author" : [
       "H.Merijn Brand <[email protected]>"
-   ],
-   "provides" : {
-      "Text::CSV_XS" : {
-         "file" : "CSV_XS.pm",
-         "version" : "1.61"
-      }
-   },
-   "abstract" : "Comma-Separated Values manipulation routines",
-   "resources" : {
-      "homepage" : "https://metacpan.org/pod/Text::CSV_XS";,
-      "repository" : {
-         "type" : "git",
-         "url" : "https://github.com/Tux/Text-CSV_XS";,
-         "web" : "https://github.com/Tux/Text-CSV_XS";
-      },
-      "bugtracker" : {
-         "web" : "https://github.com/Tux/Text-CSV_XS/issues";
-      },
-      "x_IRC" : "irc://irc.perl.org/#csv",
-      "license" : [
-         "http://dev.perl.org/licenses/";
-      ]
-   },
-   "version" : "1.61",
-   "dynamic_config" : 1,
-   "meta-spec" : {
-      "version" : 2,
-      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec";
-   },
-   "generated_by" : "Author",
-   "name" : "Text-CSV_XS",
+      ],
    "license" : [
       "perl_5"
-   ],
-   "release_status" : "stable"
-}
+      ]
+   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/META.yml 
new/Text-CSV_XS-1.62/META.yml
--- old/Text-CSV_XS-1.61/META.yml       2025-07-26 16:50:05.000000000 +0200
+++ new/Text-CSV_XS-1.62/META.yml       2026-04-29 10:18:27.000000000 +0200
@@ -1,34 +1,34 @@
---- 
+---
 abstract: Comma-Separated Values manipulation routines
-author: 
+author:
   - H.Merijn Brand <[email protected]>
-build_requires: 
+build_requires:
   Config: 0
-configure_requires: 
+configure_requires:
   ExtUtils::MakeMaker: 0
 dynamic_config: 1
-generated_by: Author, CPAN::Meta::Converter version 2.150010
+generated_by: Author, CPAN::Meta::Converter version 2.150013
 license: perl
-meta-spec: 
+meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
   version: '1.4'
 name: Text-CSV_XS
-provides: 
-  Text::CSV_XS: 
+provides:
+  Text::CSV_XS:
     file: CSV_XS.pm
-    version: '1.61'
-recommends: 
-  Encode: '3.21'
-requires: 
+    version: '1.62'
+recommends:
+  Encode: '3.22'
+requires:
   IO::Handle: 0
   Test::More: 0
   Tie::Scalar: 0
   XSLoader: 0
   perl: '5.006001'
-resources: 
+resources:
   IRC: irc://irc.perl.org/#csv
   bugtracker: https://github.com/Tux/Text-CSV_XS/issues
   homepage: https://metacpan.org/pod/Text::CSV_XS
   license: http://dev.perl.org/licenses/
   repository: https://github.com/Tux/Text-CSV_XS
-version: '1.61'
+version: '1.62'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/Makefile.PL 
new/Text-CSV_XS-1.62/Makefile.PL
--- old/Text-CSV_XS-1.61/Makefile.PL    2025-01-20 17:02:13.000000000 +0100
+++ new/Text-CSV_XS-1.62/Makefile.PL    2026-04-29 10:17:14.000000000 +0200
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# Copyright PROCURA B.V. (c) 2006-2025 H.Merijn Brand
+# Copyright PROCURA B.V. (c) 2006-2026 H.Merijn Brand
 
 require 5.006001; # <- also see postamble at the bottom for META.yml
 use strict;
@@ -113,14 +113,19 @@
            '   -@env TEST_FILES="xt/*.t" make -e test_dynamic',
            ''
        : "";
-    my $no_inc = join " " => map { "-ignore $_" } grep { -s $_ }
-       map { "$_/CORE/inline.h" } @INC;
+    my %no_inc =
+       map  { $_ => 1 }
+       map  { s{^(.*/)inline.h$}{-ignore_re $1.*}; $_ }
+       grep { -s $_ }
+       map  { "$_/CORE/inline.h" }
+       @INC;
+    my $no_inc = join " " => "-ignore doc/make-doc.pl", sort keys %no_inc;
     join "\n" =>
        'cover $make_sep test_cover:',
        '       ccache -C',
        '       -@rm -f *.gc??',
-       '       cover -test',
-       "       cover -report html_basic $no_inc",
+       '       env AUTOMATED_TESTING=1 cover -test -jobs 17',
+       "       cover -report html $no_inc",
        '',
        'leakrun:',
        '       env HARNESS_PERL=sandbox/leakperl make test',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/README new/Text-CSV_XS-1.62/README
--- old/Text-CSV_XS-1.61/README 2025-01-03 12:43:14.000000000 +0100
+++ new/Text-CSV_XS-1.62/README 2026-01-25 13:04:15.000000000 +0100
@@ -19,7 +19,7 @@
     That process is described in the documentation.
 
 Copying:
-    Copyright (c) 2007-2025 H.Merijn Brand.  All rights reserved.
+    Copyright (c) 2007-2026 H.Merijn Brand.  All rights reserved.
     Copyright (c) 1998-2001 Jochen Wiedmann. All rights reserved.
     Portions Copyright (c) 1997 Alan Citterman. All rights reserved.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/cpanfile 
new/Text-CSV_XS-1.62/cpanfile
--- old/Text-CSV_XS-1.61/cpanfile       2025-07-26 16:50:04.000000000 +0200
+++ new/Text-CSV_XS-1.62/cpanfile       2026-04-29 10:18:17.000000000 +0200
@@ -1,12 +1,12 @@
 requires   "IO::Handle";
 requires   "XSLoader";
 
-recommends "Encode"                   => "3.21";
+recommends "Encode"                   => "3.22";
 
 on "configure" => sub {
     requires   "ExtUtils::MakeMaker";
 
-    recommends "ExtUtils::MakeMaker"      => "7.76";
+    recommends "ExtUtils::MakeMaker"      => "7.78";
     };
 
 on "build" => sub {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/csv-check 
new/Text-CSV_XS-1.62/examples/csv-check
--- old/Text-CSV_XS-1.61/examples/csv-check     2025-01-03 12:47:09.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/csv-check     2026-01-25 13:03:02.000000000 
+0100
@@ -1,7 +1,7 @@
 #!/pro/bin/perl
 
 # csv-check: Check validity of CSV file and report
-#         (m)'20 [21 May 2020] Copyright H.M.Brand 2007-2025
+#         (m)'20 [21 May 2020] Copyright H.M.Brand 2007-2026
 
 # This code requires the defined-or feature and PerlIO
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/csv2xls 
new/Text-CSV_XS-1.62/examples/csv2xls
--- old/Text-CSV_XS-1.61/examples/csv2xls       2025-01-03 12:41:53.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/csv2xls       2026-01-25 13:02:54.000000000 
+0100
@@ -1,7 +1,7 @@
 #!/pro/bin/perl
 
 # csv2xls: Convert csv to xls
-#         (m)'23 [14 Nov 2023] Copyright H.M.Brand 2007-2025
+#         (m)'23 [14 Nov 2023] Copyright H.M.Brand 2007-2026
 
 use 5.012000;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/csv2xlsx 
new/Text-CSV_XS-1.62/examples/csv2xlsx
--- old/Text-CSV_XS-1.61/examples/csv2xlsx      2025-01-03 12:41:56.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/csv2xlsx      2026-01-25 13:02:56.000000000 
+0100
@@ -1,7 +1,7 @@
 #!/pro/bin/perl
 
 # csv2xlsx: Convert csv to xlsx
-#         (m)'23 Copyright H.M.Brand 2007-2025
+#         (m)'23 Copyright H.M.Brand 2007-2026
 
 use 5.014000;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/csvdiff 
new/Text-CSV_XS-1.62/examples/csvdiff
--- old/Text-CSV_XS-1.61/examples/csvdiff       2025-01-03 12:41:58.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/csvdiff       2026-01-25 13:03:06.000000000 
+0100
@@ -4,9 +4,9 @@
 use warnings;
 
 # csvdiff: Show differences between CSV files
-#         (m)'23 [05 Aug 2023] Copyright H.M.Brand 2009-2025
+#         (m)'25 [13 Nov 2025] Copyright H.M.Brand 2009-2026
 
-our $VERSION = "1.03 - 20230805";
+our $VERSION = "1.04 - 20251113";
 
 sub usage {
     my $err = shift and select STDERR;
@@ -43,6 +43,7 @@
 if ($opt_o) {
     open STDOUT, ">", $opt_o or die "$opt_o: $!\n";
     }
+$| = 1;
 
 use HTML::Entities;
 use Term::ANSIColor qw(:constants);
@@ -143,7 +144,7 @@
     }
 
 my $x = 0;
-while ($i[0] <= $n[0] || $i[1] <= $n[1]) {
+ROW: while ($i[0] <= $n[0] || $i[1] <= $n[1]) {
     my @r0 = @{$f[0][$i[0]]};
     my @r1 = @{$f[1][$i[1]]};
 
@@ -162,8 +163,12 @@
     $opt_b and s/[\r\n\s]+/ /g for @v0, @v1;
     $opt_w and s/[\r\n\s]+//g  for @v0, @v1;
 
-    {  local $" = "\xFF";
-       "@v0" eq "@v1" and $i[0]++, $i[1]++, next;
+    {  local $" = "\x{ff}";
+       if ("@v0" eq "@v1") {
+           $i[0]++;
+           $i[1]++;
+           next ROW;
+           }
        }
 
     foreach my $c (1 .. $#h0) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/parser-xs.pl 
new/Text-CSV_XS-1.62/examples/parser-xs.pl
--- old/Text-CSV_XS-1.61/examples/parser-xs.pl  2025-01-03 12:42:02.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/parser-xs.pl  2026-01-25 13:03:16.000000000 
+0100
@@ -3,7 +3,7 @@
 # This script can be used as a base to parse unreliable CSV streams
 # Modify to your own needs
 #
-#         (m)'08 [23 Apr 2008] Copyright H.M.Brand 2008-2025
+#         (m)'08 [23 Apr 2008] Copyright H.M.Brand 2008-2026
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/rewrite.pl 
new/Text-CSV_XS-1.62/examples/rewrite.pl
--- old/Text-CSV_XS-1.61/examples/rewrite.pl    2025-01-03 12:42:04.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/rewrite.pl    2026-01-25 13:03:19.000000000 
+0100
@@ -4,7 +4,7 @@
 use warnings;
 
 # rewrite.pl: Convert csv to csv
-#         (m)'17 [20 Sep 2017] Copyright H.M.Brand 2014-2025
+#         (m)'17 [20 Sep 2017] Copyright H.M.Brand 2014-2026
 
 our $VERSION = "0.05 - 20170920";
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/examples/speed.pl 
new/Text-CSV_XS-1.62/examples/speed.pl
--- old/Text-CSV_XS-1.61/examples/speed.pl      2025-01-03 12:42:07.000000000 
+0100
+++ new/Text-CSV_XS-1.62/examples/speed.pl      2026-01-25 13:03:21.000000000 
+0100
@@ -1,7 +1,7 @@
 #!/usr/bin/perl -w
 
 # speed.pl: compare different versions of Text-CSV* modules
-#         (m)'08 [07 Apr 2008] Copyright H.M.Brand 2007-2025
+#         (m)'08 [07 Apr 2008] Copyright H.M.Brand 2007-2026
 
 require 5.006001;
 use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/ppport.h 
new/Text-CSV_XS-1.62/ppport.h
--- old/Text-CSV_XS-1.61/ppport.h       2025-07-26 15:42:30.000000000 +0200
+++ new/Text-CSV_XS-1.62/ppport.h       2026-04-26 16:36:05.000000000 +0200
@@ -6,7 +6,7 @@
 
     ppport.h -- Perl/Pollution/Portability Version 3.73
 
-    Automatically created by Devel::PPPort running under perl 5.042000.
+    Automatically created by Devel::PPPort running under perl 5.042002.
 
     Do NOT edit this file directly! -- Edit PPPort_pm.PL and the
     includes in parts/inc/ instead.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/t/67_emptrow.t 
new/Text-CSV_XS-1.62/t/67_emptrow.t
--- old/Text-CSV_XS-1.61/t/67_emptrow.t 2023-12-12 14:27:29.000000000 +0100
+++ new/Text-CSV_XS-1.62/t/67_emptrow.t 2026-04-26 15:47:10.000000000 +0200
@@ -10,7 +10,7 @@
         plan skip_all => "This test unit requires perl-5.8.1 or higher";
        }
     else {
-       plan tests => 56;
+       plan tests => 58;
        }
 
     use_ok "Text::CSV_XS", ("csv");
@@ -39,6 +39,13 @@
 is ($csv->skip_empty_rows ("error"),   "error",        "error");
 is ($csv->skip_empty_rows ("ERROR"),   "error",        "ERROR");
 
+{   is (eval {
+       $csv->skip_empty_rows ("schedule");
+       }, undef, "schedule");
+    my @ed = $csv->error_diag;
+    is ($ed[0], 1500, "Unsupported parameter");
+    }
+
 sub cba { [      3,      42,      undef,      3 ] }
 sub cbh { { a => 3, b => 42, c => undef, d => 3 } }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/t/90_csv.t 
new/Text-CSV_XS-1.62/t/90_csv.t
--- old/Text-CSV_XS-1.61/t/90_csv.t     2025-01-03 12:33:22.000000000 +0100
+++ new/Text-CSV_XS-1.62/t/90_csv.t     2026-04-26 16:26:38.000000000 +0200
@@ -5,7 +5,7 @@
 use Config;
 
 #use Test::More "no_plan";
- use Test::More tests => 127;
+ use Test::More tests => 128;
 
 BEGIN {
     use_ok "Text::CSV_XS", ("csv");
@@ -340,6 +340,12 @@
     is_deeply (csv (in => $tfn, csv => $csv), $expect, "csv from attribute");
     }
 
+{   my @e;
+    local $SIG{__DIE__} = sub { push @e => @_ };
+    eval { csv ("in"); };
+    like ($@, qr{^PRM - The value attribute is passed without the key 
attribute}, "Key without value");
+    }
+
 {   local *STDOUT;
     my $ofn = "_STDOUT.csv";
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Text-CSV_XS-1.61/t/91_csv_cb.t 
new/Text-CSV_XS-1.62/t/91_csv_cb.t
--- old/Text-CSV_XS-1.61/t/91_csv_cb.t  2024-10-18 11:41:01.000000000 +0200
+++ new/Text-CSV_XS-1.62/t/91_csv_cb.t  2025-11-03 09:45:29.000000000 +0100
@@ -4,7 +4,7 @@
 use warnings;
 
 #use Test::More "no_plan";
- use Test::More tests => 82;
+ use Test::More tests => 83;
 
 BEGIN {
     use_ok "Text::CSV_XS", ("csv");
@@ -66,7 +66,10 @@
     ], "AOA with filter on col 1 and 2");
 is_deeply (csv (in => $tfn, filter => { foo => sub { $_ > 1 }}), [
     { foo => 2, bar => "a b", baz => "" },
-    ], "AOH with filter on column name");
+    ], "AOH with filter on column name last line matches");
+is_deeply (csv (in => $tfn, filter => { foo => sub { $_ < 2 }}), [
+    { foo => 1, bar => 2, baz => 3 },
+    ], "AOH with filter on column name last line does not match");
 
 SKIP: {
     $] < 5.008001 and skip "No HOH/xx support in $]", 3;

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.mB50K9/_old  2026-05-13 20:59:07.812626487 +0200
+++ /var/tmp/diff_new_pack.mB50K9/_new  2026-05-13 20:59:07.828627147 +0200
@@ -1,6 +1,6 @@
-mtime: 1755090290
-commit: 3c6f1900b25f50eb52fbf63e040865343d0042e00ecb1496d3b90e1e74c40e49
-url: https://src.opensuse.org/perl/perl-Text-CSV_XS.git
-revision: 3c6f1900b25f50eb52fbf63e040865343d0042e00ecb1496d3b90e1e74c40e49
+mtime: 1778617511
+commit: 859adc7b3357aeb070716362051c8ad374c5b9a339931c207448d0e6f169530a
+url: https://src.opensuse.org/perl/perl-Text-CSV_XS
+revision: 859adc7b3357aeb070716362051c8ad374c5b9a339931c207448d0e6f169530a
 projectscmsync: https://src.opensuse.org/perl/_ObsPrj
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-05-12 22:25:11.000000000 +0200
@@ -0,0 +1 @@
+.osc

Reply via email to