Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-HTML-Parser for 
openSUSE:Factory checked in at 2024-08-02 17:26:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-HTML-Parser (Old)
 and      /work/SRC/openSUSE:Factory/.perl-HTML-Parser.new.7232 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-HTML-Parser"

Fri Aug  2 17:26:06 2024 rev:42 rq:1190782 version:3.830.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-HTML-Parser/perl-HTML-Parser.changes        
2024-03-28 14:05:07.765219605 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-HTML-Parser.new.7232/perl-HTML-Parser.changes  
    2024-08-02 17:26:20.962860055 +0200
@@ -1,0 +2,9 @@
+Wed Jul 31 05:28:00 UTC 2024 - Tina Müller <timueller+p...@suse.de>
+
+- updated to 3.830.0 (3.83)
+   see /usr/share/doc/packages/perl-HTML-Parser/Changes
+
+  3.83      2024-07-30
+      - fix '$\/]' in HTML::Entities::encode_entities (GH#45) (mauke)
+
+-------------------------------------------------------------------

Old:
----
  HTML-Parser-3.82.tar.gz

New:
----
  HTML-Parser-3.83.tar.gz

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

Other differences:
------------------
++++++ perl-HTML-Parser.spec ++++++
--- /var/tmp/diff_new_pack.Wod0pO/_old  2024-08-02 17:26:21.378877210 +0200
+++ /var/tmp/diff_new_pack.Wod0pO/_new  2024-08-02 17:26:21.382877375 +0200
@@ -18,10 +18,10 @@
 
 %define cpan_name HTML-Parser
 Name:           perl-HTML-Parser
-Version:        3.820.0
+Version:        3.830.0
 Release:        0
-# 3.82 -> normalize -> 3.820.0
-%define cpan_version 3.82
+# 3.83 -> normalize -> 3.830.0
+%define cpan_version 3.83
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        HTML parser class
 URL:            https://metacpan.org/release/%{cpan_name}

++++++ HTML-Parser-3.82.tar.gz -> HTML-Parser-3.83.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/Changes new/HTML-Parser-3.83/Changes
--- old/HTML-Parser-3.82/Changes        2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/Changes        2024-07-30 18:42:35.000000000 +0200
@@ -1,5 +1,8 @@
 Change history for HTML-Parser
 
+3.83      2024-07-30
+    - fix '$\/]' in HTML::Entities::encode_entities (GH#45) (mauke)
+
 3.82      2024-03-13
     - "img lowsrc" and "body background" are not in the HTMLv5 spec (GH#43)
       (Jess)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/MANIFEST 
new/HTML-Parser-3.83/MANIFEST
--- old/HTML-Parser-3.82/MANIFEST       2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/MANIFEST       2024-07-30 18:42:36.000000000 +0200
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v6.031.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v6.032.
 Changes
 LICENSE
 MANIFEST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/META.json 
new/HTML-Parser-3.83/META.json
--- old/HTML-Parser-3.82/META.json      2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/META.json      2024-07-30 18:42:36.000000000 +0200
@@ -4,7 +4,7 @@
       "Gisle Aas <g...@cpan.org>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 6.031, CPAN::Meta::Converter version 
2.150010",
+   "generated_by" : "Dist::Zilla version 6.032, CPAN::Meta::Converter version 
2.150010",
    "license" : [
       "perl_5"
    ],
@@ -88,32 +88,32 @@
    "provides" : {
       "HTML::Entities" : {
          "file" : "lib/HTML/Entities.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       },
       "HTML::Filter" : {
          "file" : "lib/HTML/Filter.pm",
-         "version" : "3.82",
+         "version" : "3.83",
          "x_deprecated" : 1
       },
       "HTML::HeadParser" : {
          "file" : "lib/HTML/HeadParser.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       },
       "HTML::LinkExtor" : {
          "file" : "lib/HTML/LinkExtor.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       },
       "HTML::Parser" : {
          "file" : "lib/HTML/Parser.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       },
       "HTML::PullParser" : {
          "file" : "lib/HTML/PullParser.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       },
       "HTML::TokeParser" : {
          "file" : "lib/HTML/TokeParser.pm",
-         "version" : "3.82"
+         "version" : "3.83"
       }
    },
    "release_status" : "stable",
@@ -128,7 +128,7 @@
          "web" : "https://github.com/libwww-perl/HTML-Parser";
       }
    },
-   "version" : "3.82",
+   "version" : "3.83",
    "x_contributors" : [
       "Antonio Radici <anto...@dyne.org>",
       "Barbie <bar...@missbarbell.co.uk>",
@@ -145,6 +145,7 @@
       "James Raspass <jrasp...@gmail.com>",
       "Jess Robinson <casta...@desert-island.me.uk>",
       "Jon Jensen <j...@endpoint.com>",
+      "Lukas Mai <lukasmai....@gmail.com>",
       "Michal Josef \u0160pa\u010dek <mspa...@redhat.com>",
       "Mike South <mso...@gmail.com>",
       "Nicholas Clark <n...@ccl4.org>",
@@ -158,7 +159,7 @@
       "Zefram <zef...@fysh.org>"
    ],
    "x_generated_by_perl" : "v5.34.0",
-   "x_serialization_backend" : "Cpanel::JSON::XS version 4.37",
+   "x_serialization_backend" : "Cpanel::JSON::XS version 4.38",
    "x_spdx_expression" : "Artistic-1.0-Perl OR GPL-1.0-or-later"
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/META.yml 
new/HTML-Parser-3.83/META.yml
--- old/HTML-Parser-3.82/META.yml       2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/META.yml       2024-07-30 18:42:36.000000000 +0200
@@ -16,7 +16,7 @@
   ExtUtils::MakeMaker: '6.52'
   perl: '5.008'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 6.031, CPAN::Meta::Converter version 
2.150010'
+generated_by: 'Dist::Zilla version 6.032, CPAN::Meta::Converter version 
2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -33,26 +33,26 @@
 provides:
   HTML::Entities:
     file: lib/HTML/Entities.pm
-    version: '3.82'
+    version: '3.83'
   HTML::Filter:
     file: lib/HTML/Filter.pm
-    version: '3.82'
+    version: '3.83'
     x_deprecated: 1
   HTML::HeadParser:
     file: lib/HTML/HeadParser.pm
-    version: '3.82'
+    version: '3.83'
   HTML::LinkExtor:
     file: lib/HTML/LinkExtor.pm
-    version: '3.82'
+    version: '3.83'
   HTML::Parser:
     file: lib/HTML/Parser.pm
-    version: '3.82'
+    version: '3.83'
   HTML::PullParser:
     file: lib/HTML/PullParser.pm
-    version: '3.82'
+    version: '3.83'
   HTML::TokeParser:
     file: lib/HTML/TokeParser.pm
-    version: '3.82'
+    version: '3.83'
 requires:
   Carp: '0'
   Exporter: '0'
@@ -68,7 +68,7 @@
   bugtracker: https://github.com/libwww-perl/HTML-Parser/issues
   homepage: https://github.com/libwww-perl/HTML-Parser
   repository: https://github.com/libwww-perl/HTML-Parser.git
-version: '3.82'
+version: '3.83'
 x_contributors:
   - 'Antonio Radici <anto...@dyne.org>'
   - 'Barbie <bar...@missbarbell.co.uk>'
@@ -85,6 +85,7 @@
   - 'James Raspass <jrasp...@gmail.com>'
   - 'Jess Robinson <casta...@desert-island.me.uk>'
   - 'Jon Jensen <j...@endpoint.com>'
+  - 'Lukas Mai <lukasmai....@gmail.com>'
   - 'Michal Josef Špaček <mspa...@redhat.com>'
   - 'Mike South <mso...@gmail.com>'
   - 'Nicholas Clark <n...@ccl4.org>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/Makefile.PL 
new/HTML-Parser-3.83/Makefile.PL
--- old/HTML-Parser-3.82/Makefile.PL    2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/Makefile.PL    2024-07-30 18:42:36.000000000 +0200
@@ -37,7 +37,7 @@
     "URI" => 0,
     "strict" => 0
   },
-  "VERSION" => "3.82",
+  "VERSION" => "3.83",
   "test" => {
     "TESTS" => "t/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/Entities.pm 
new/HTML-Parser-3.83/lib/HTML/Entities.pm
--- old/HTML-Parser-3.82/lib/HTML/Entities.pm   2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/Entities.pm   2024-07-30 18:42:36.000000000 
+0200
@@ -136,7 +136,7 @@
 =cut
 
 use strict;
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 our (%entity2char, %char2entity);
 
 require 5.004;
@@ -443,23 +443,46 @@
     } else {
        $ref = \$_[0];  # modify in-place
     }
+    my $regex;
     if (defined $_[1] and length $_[1]) {
-       unless (exists $subst{$_[1]}) {
-           # Because we can't compile regex we fake it with a cached sub
+        $regex = $subst{$_[1]};
+        unless (defined $regex) {
            my $chars = $_[1];
-           $chars =~ s,(?<!\\)([]/]),\\$1,g;
-           $chars =~ s,(?<!\\)\\\z,\\\\,;
-           my $code = "sub {\$_[0] =~ s/([$chars])/\$char2entity{\$1} || 
num_entity(\$1)/ge; }";
-           $subst{$_[1]} = eval $code;
+
+            # keep existing escapes, but also escape any unescaped special 
character:
+            #  [ (technically unnecessary but included for symmetry with ])
+            #  ] (end of character class)
+            #  \ (escape character)
+            $chars =~ s{
+                # capture group 1: things to skip and keep
+                (
+                    # any escaped character
+                    \\.
+                |
+                    # either an actual POSIX character class or anything
+                    # similar enough to trigger a regex syntax error
+                    \[: \^? [[:lower:][:digit:]]{3,} :\]
+                )
+                |
+                # capture group 2: things to be escaped
+                (
+                    [\[\]\\]
+                )
+            }{
+                defined $1 ? $1 : '\\' . $2
+            }xseg;
+
+            $regex = eval { qr/([$chars])/ };
            die( $@ . " while trying to turn range: \"$_[1]\"\n "
-             . "into code: $code\n "
+              . "into code: /([$chars])/\n "
            ) if $@;
+            $subst{$_[1]} = $regex;
        }
-       &{$subst{$_[1]}}($$ref);
     } else {
        # Encode control chars, high bit chars and '<', '&', '>', ''' and '"'
-       $$ref =~ s/([^\n\r\t !\#\$%\(-;=?-~])/$char2entity{$1} || 
num_entity($1)/ge;
+        $regex = qr/([^\n\r\t !\#\$%\(-;=?-~])/;
     }
+    $$ref =~ s/$regex/$char2entity{$1} || num_entity($1)/eg;
     $$ref;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/Filter.pm 
new/HTML-Parser-3.83/lib/HTML/Filter.pm
--- old/HTML-Parser-3.82/lib/HTML/Filter.pm     2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/Filter.pm     2024-07-30 18:42:36.000000000 
+0200
@@ -4,7 +4,7 @@
 
 require HTML::Parser;
 our @ISA = qw(HTML::Parser);
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 sub declaration { $_[0]->output("<!$_[1]>")     }
 sub process     { $_[0]->output($_[2])          }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/HeadParser.pm 
new/HTML-Parser-3.83/lib/HTML/HeadParser.pm
--- old/HTML-Parser-3.82/lib/HTML/HeadParser.pm 2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/HeadParser.pm 2024-07-30 18:42:36.000000000 
+0200
@@ -91,7 +91,7 @@
 use strict;
 our $DEBUG;
 #$DEBUG = 1;
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 =item $hp = HTML::HeadParser->new
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/LinkExtor.pm 
new/HTML-Parser-3.83/lib/HTML/LinkExtor.pm
--- old/HTML-Parser-3.82/lib/HTML/LinkExtor.pm  2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/LinkExtor.pm  2024-07-30 18:42:36.000000000 
+0200
@@ -2,7 +2,7 @@
 
 require HTML::Parser;
 our @ISA = qw(HTML::Parser);
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 =head1 NAME
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/Parser.pm 
new/HTML-Parser-3.83/lib/HTML/Parser.pm
--- old/HTML-Parser-3.82/lib/HTML/Parser.pm     2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/Parser.pm     2024-07-30 18:42:36.000000000 
+0200
@@ -2,7 +2,7 @@
 
 use strict;
 
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 require HTML::Entities;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/PullParser.pm 
new/HTML-Parser-3.83/lib/HTML/PullParser.pm
--- old/HTML-Parser-3.82/lib/HTML/PullParser.pm 2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/PullParser.pm 2024-07-30 18:42:36.000000000 
+0200
@@ -4,7 +4,7 @@
 
 require HTML::Parser;
 our @ISA = qw(HTML::Parser);
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 use Carp ();
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/lib/HTML/TokeParser.pm 
new/HTML-Parser-3.83/lib/HTML/TokeParser.pm
--- old/HTML-Parser-3.82/lib/HTML/TokeParser.pm 2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/lib/HTML/TokeParser.pm 2024-07-30 18:42:36.000000000 
+0200
@@ -4,7 +4,7 @@
 
 require HTML::PullParser;
 our @ISA = qw(HTML::PullParser);
-our $VERSION = '3.82';
+our $VERSION = '3.83';
 
 use Carp ();
 use HTML::Entities qw(decode_entities);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/t/entities.t 
new/HTML-Parser-3.83/t/entities.t
--- old/HTML-Parser-3.82/t/entities.t   2024-03-13 21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/t/entities.t   2024-07-30 18:42:36.000000000 +0200
@@ -3,7 +3,7 @@
 use utf8;
 
 use HTML::Entities qw(decode_entities encode_entities encode_entities_numeric);
-use Test::More tests => 20;
+use Test::More tests => 31;
 
 my $x = "V&aring;re norske tegn b&oslash;r &#230res";
 
@@ -33,6 +33,25 @@
 is(encode_entities($x, '\\'),  "[24/7]&#92;");
 is(encode_entities($x, ']\\'), "[24/7&#93;&#92;");
 
+# https://github.com/libwww-perl/HTML-Parser/issues/44
+$x = '<]$a/b\c/d$';
+is(encode_entities($x, '$'), '<]&#36;a/b\\c/d&#36;');
+is(encode_entities($x, '\\\\/'), '<]$a&#47;b&#92;c&#47;d$');
+is(encode_entities($x, '\\\\/$'), '<]&#36;a&#47;b&#92;c&#47;d&#36;');
+is(encode_entities($x, '<\\\\]'), '&lt;&#93;$a/b&#92;c/d$');
+
+# POSIX character classes
+$x = "<VÃ¥re123[=]";
+is(encode_entities($x, '[:punct:]'),          "&lt;VÃ¥re123&#91;&#61;&#93;");
+is(encode_entities($x, '^[:^digit:]'),        "<VÃ¥re&#49;&#50;&#51;[=]");
+is(encode_entities($x, '[:lower:][:digit:]'), 
"<V&aring;&#114;&#101;&#49;&#50;&#51;[=]");
+is(encode_entities($x, '=[:^ascii:]<>'),      "&lt;V&aring;re123[&#61;]");
+is(encode_entities($x, '[:Vlower:]'),         
"<&#86;Ã¥&#114;&#101;123&#91;=&#93;");
+
+# escaped character classes
+is(encode_entities($x, '\d'),                 "<VÃ¥re&#49;&#50;&#51;[=]");
+is(encode_entities($x, '\d[:punct:]'),        
"&lt;VÃ¥re&#49;&#50;&#51;&#91;&#61;&#93;");
+
 # See how well it does against rfc1866...
 my $ent   = '';
 my $plain = '';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/xt/author/pod-spell.t 
new/HTML-Parser-3.83/xt/author/pod-spell.t
--- old/HTML-Parser-3.82/xt/author/pod-spell.t  2024-03-13 21:10:47.000000000 
+0100
+++ new/HTML-Parser-3.83/xt/author/pod-spell.t  2024-07-30 18:42:36.000000000 
+0200
@@ -46,7 +46,9 @@
 Josef
 Knop
 LinkExtor
+Lukas
 MSIE
+Mai
 Michael
 Michal
 Mike
@@ -96,6 +98,7 @@
 jon
 jraspass
 lib
+lukasmai
 mchase
 msouth
 mspacek
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/HTML-Parser-3.82/xt/release/changes_has_content.t 
new/HTML-Parser-3.83/xt/release/changes_has_content.t
--- old/HTML-Parser-3.82/xt/release/changes_has_content.t       2024-03-13 
21:10:47.000000000 +0100
+++ new/HTML-Parser-3.83/xt/release/changes_has_content.t       2024-07-30 
18:42:36.000000000 +0200
@@ -2,7 +2,7 @@
 
 note 'Checking Changes';
 my $changes_file = 'Changes';
-my $newver = '3.82';
+my $newver = '3.83';
 my $trial_token = '-TRIAL';
 my $encoding = 'UTF-8';
 

Reply via email to