Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Parse-PMFile for 
openSUSE:Factory checked in at 2024-05-16 17:16:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Parse-PMFile (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Parse-PMFile.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Parse-PMFile"

Thu May 16 17:16:59 2024 rev:7 rq:1174472 version:0.470.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Parse-PMFile/perl-Parse-PMFile.changes      
2024-03-09 20:56:07.153739837 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-Parse-PMFile.new.1880/perl-Parse-PMFile.changes
    2024-05-16 17:19:24.849140099 +0200
@@ -1,0 +2,12 @@
+Mon Apr 22 03:08:03 UTC 2024 - Tina Müller <timueller+p...@suse.de>
+
+- updated to 0.47
+   see /usr/share/doc/packages/perl-Parse-PMFile/Changes
+
+  0.47 2024/04/21
+    - Improve class detection
+
+  0.46 2024/04/15
+    - Strip BOM before finding a package
+
+-------------------------------------------------------------------

Old:
----
  Parse-PMFile-0.45.tar.gz

New:
----
  Parse-PMFile-0.47.tar.gz

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

Other differences:
------------------
++++++ perl-Parse-PMFile.spec ++++++
--- /var/tmp/diff_new_pack.ZHkWig/_old  2024-05-16 17:19:26.837212153 +0200
+++ /var/tmp/diff_new_pack.ZHkWig/_new  2024-05-16 17:19:26.849212588 +0200
@@ -18,9 +18,10 @@
 
 %define cpan_name Parse-PMFile
 Name:           perl-Parse-PMFile
-Version:        0.450.0
+Version:        0.470.0
 Release:        0
-%define cpan_version 0.45
+# 0.47 -> normalize -> 0.470.0
+%define cpan_version 0.47
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Parses .pm file as PAUSE does
 URL:            https://metacpan.org/release/%{cpan_name}

++++++ Parse-PMFile-0.45.tar.gz -> Parse-PMFile-0.47.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/Changes 
new/Parse-PMFile-0.47/Changes
--- old/Parse-PMFile-0.45/Changes       2024-01-21 14:28:58.000000000 +0100
+++ new/Parse-PMFile-0.47/Changes       2024-04-21 12:42:22.000000000 +0200
@@ -1,5 +1,11 @@
 Revision history for Parse-PMFile
 
+0.47 2024/04/21
+  - Improve class detection
+
+0.46 2024/04/15
+  - Strip BOM before finding a package
+
 0.45 2024/01/21
   - Make sure to stringify versions so that they are quoted when they are 
encoded in JSON
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/META.json 
new/Parse-PMFile-0.47/META.json
--- old/Parse-PMFile-0.45/META.json     2024-01-21 14:29:34.000000000 +0100
+++ new/Parse-PMFile-0.47/META.json     2024-04-21 12:42:34.000000000 +0200
@@ -52,6 +52,6 @@
          "url" : "https://github.com/charsbar/Parse-PMFile";
       }
    },
-   "version" : "0.45",
+   "version" : "0.47",
    "x_serialization_backend" : "JSON::PP version 4.16"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/META.yml 
new/Parse-PMFile-0.47/META.yml
--- old/Parse-PMFile-0.45/META.yml      2024-01-21 14:29:34.000000000 +0100
+++ new/Parse-PMFile-0.47/META.yml      2024-04-21 12:42:34.000000000 +0200
@@ -27,5 +27,5 @@
   version: '0.83'
 resources:
   repository: https://github.com/charsbar/Parse-PMFile
-version: '0.45'
+version: '0.47'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/cpanfile 
new/Parse-PMFile-0.47/cpanfile
--- old/Parse-PMFile-0.45/cpanfile      2024-01-21 14:24:45.000000000 +0100
+++ new/Parse-PMFile-0.47/cpanfile      2024-04-21 12:41:53.000000000 +0200
@@ -14,4 +14,5 @@
 on develop => sub {
   requires 'PAUSE::Permissions' => '0.08' if $] > 5.010000;
   requires 'WorePAN' => '0.13';
+  requires 'Test::Deep';
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/lib/Parse/PMFile.pm 
new/Parse-PMFile-0.47/lib/Parse/PMFile.pm
--- old/Parse-PMFile-0.45/lib/Parse/PMFile.pm   2024-01-21 14:27:41.000000000 
+0100
+++ new/Parse-PMFile-0.47/lib/Parse/PMFile.pm   2024-04-21 12:42:03.000000000 
+0200
@@ -10,7 +10,7 @@
 use version ();
 use File::Spec ();
 
-our $VERSION = '0.45';
+our $VERSION = '0.47';
 our $VERBOSE = 0;
 our $ALLOW_DEV_VERSION = 0;
 our $FORK = 0;
@@ -358,9 +358,13 @@
     local $/ = "\n";
     my $inpod = 0;
 
+    my $package_or_class = 'package';
+    my $checked_bom;
   PLINE: while (<$fh>) {
         chomp;
         my($pline) = $_;
+        $pline =~ 
s/\A(?:\x00\x00\xfe\xff|\xff\xfe\x00\x00|\xfe\xff|\xff\xfe|\xef\xbb\xbf)// 
unless $checked_bom;
+        $checked_bom = 1;
         $inpod = $pline =~ /^=(?!cut)/ ? 1 :
             $pline =~ /^=cut/ ? 0 : $inpod;
         next if $inpod;
@@ -374,6 +378,32 @@
             last PLINE;
         }
 
+=pod
+        # hide in the pod block until 'class' is added to a version bundle
+        if ($pline =~ /^[\s\{;]*use\s(+v?5\.[0-9]+)/) {
+            my $version = $1;
+            my $version_bundle_for_class = version->parse("v5.xx.xx");
+            if (eval { version->parse($version) >= $version_bundle_for_class) {
+                $package_or_class = 'package|class|role';
+            }
+            next PLINE;
+        }
+=cut
+
+        # use feature 'class'; enabels class (and role, though not implemented 
yet)
+        if ($pline =~ 
/^[\s\{;]*use\s+(?:feature|experimental)\s+[^;]+\b(?:class|all)[^;]*;/) {
+            $package_or_class = 'package|class';
+        }
+
+        # some modules also enables class and role
+        # XXX: what to do with MooseX::Declare and a few minor experiments)
+        if ($pline =~ /^[\s\{;]*use\s+(?:Feature::Compat::Class)[^;]*;/) {
+            $package_or_class = 'package|class';
+        }
+        if ($pline =~ /^[\s\{;]*use\s+(?:Object::Pad)[^;]*;/) {
+            $package_or_class = 'package|class|role';
+        }
+
         my $pkg;
         my $strict_version;
 
@@ -382,7 +412,7 @@
                       # (.*) # takes too much time if $pline is long
                       #(?<![*\$\\@%&]) # no sigils
                       ^[\s\{;]*
-                      \b(?:package|class|role)\s+
+                      \b(?:$package_or_class)\s+
                       ([\w\:\']+)
                       \s*
                       (?: $ | [\}\;] | \{ | \s+($version::STRICT) )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/t/42_class_versions.t 
new/Parse-PMFile-0.47/t/42_class_versions.t
--- old/Parse-PMFile-0.45/t/42_class_versions.t 2024-01-21 12:05:11.000000000 
+0100
+++ new/Parse-PMFile-0.47/t/42_class_versions.t 2024-04-21 12:41:53.000000000 
+0200
@@ -43,7 +43,7 @@
   my $pmfile = "$tmpdir/Test.pm";
 
   open my $fh, '>', $pmfile or plan skip_all => "Failed to create a pmfile";
-  print $fh join "\n", @lines, "";
+  print $fh join "\n", 'use experimental qw(class);', @lines, "";
   close $fh;
 
   for (0..1) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Parse-PMFile-0.45/t/43_role_versions.t 
new/Parse-PMFile-0.47/t/43_role_versions.t
--- old/Parse-PMFile-0.45/t/43_role_versions.t  2024-01-21 12:05:11.000000000 
+0100
+++ new/Parse-PMFile-0.47/t/43_role_versions.t  2024-04-21 12:41:53.000000000 
+0200
@@ -43,7 +43,7 @@
   my $pmfile = "$tmpdir/Test.pm";
 
   open my $fh, '>', $pmfile or plan skip_all => "Failed to create a pmfile";
-  print $fh join "\n", @lines, "";
+  print $fh join "\n", 'use Object::Pad;', @lines, "";
   close $fh;
 
   for (0..1) {

Reply via email to