Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package perl-XML-XPath for openSUSE:Factory checked in at 2022-08-17 18:16:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-XML-XPath (Old) and /work/SRC/openSUSE:Factory/.perl-XML-XPath.new.1521 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-XML-XPath" Wed Aug 17 18:16:41 2022 rev:38 rq:997356 version:1.48 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-XML-XPath/perl-XML-XPath.changes 2022-05-22 20:26:31.186183944 +0200 +++ /work/SRC/openSUSE:Factory/.perl-XML-XPath.new.1521/perl-XML-XPath.changes 2022-08-17 18:23:03.203166435 +0200 @@ -1,0 +2,13 @@ +Wed Aug 10 03:11:57 UTC 2022 - Tina M??ller <timueller+p...@suse.de> + +- updated to 1.48 + see /usr/share/doc/packages/perl-XML-XPath/Changes + + 1.48 2022-08-09 MANWAR + - More contributions by @shawnm. + a) pull request #11 + Support use XML::XPath some_version; and modernize inheritance. + b) pull request #12 + Add documentation about supported XPath functions. + +------------------------------------------------------------------- Old: ---- XML-XPath-1.47.tar.gz New: ---- XML-XPath-1.48.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-XML-XPath.spec ++++++ --- /var/tmp/diff_new_pack.WO4ZA5/_old 2022-08-17 18:23:03.659167380 +0200 +++ /var/tmp/diff_new_pack.WO4ZA5/_new 2022-08-17 18:23:03.671167405 +0200 @@ -18,7 +18,7 @@ %define cpan_name XML-XPath Name: perl-XML-XPath -Version: 1.47 +Version: 1.48 Release: 0 License: Artistic-2.0 Summary: Parse and evaluate XPath statements ++++++ XML-XPath-1.47.tar.gz -> XML-XPath-1.48.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/Changes new/XML-XPath-1.48/Changes --- old/XML-XPath-1.47/Changes 2022-05-13 19:16:18.000000000 +0200 +++ new/XML-XPath-1.48/Changes 2022-08-09 21:44:51.000000000 +0200 @@ -1,5 +1,12 @@ Revision history for XML::XPath +1.48 2022-08-09 MANWAR + - More contributions by @shawnm. + a) pull request #11 + Support use XML::XPath some_version; and modernize inheritance. + b) pull request #12 + Add documentation about supported XPath functions. + 1.47 2022-05-13 MANWAR - Another bunch of patches, thanks @shawnm. a) Get the encoding used for command line arguments from diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/META.json new/XML-XPath-1.48/META.json --- old/XML-XPath-1.47/META.json 2022-05-13 19:17:39.000000000 +0200 +++ new/XML-XPath-1.48/META.json 2022-08-09 21:47:11.000000000 +0200 @@ -35,102 +35,102 @@ "requires" : { "Scalar::Util" : "1.45", "XML::Parser" : "2.23", - "perl" : "5.008" + "perl" : "5.010001" } } }, "provides" : { "XML::XPath" : { "file" : "lib/XML/XPath.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Boolean" : { "file" : "lib/XML/XPath/Boolean.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Builder" : { "file" : "lib/XML/XPath/Builder.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Expr" : { "file" : "lib/XML/XPath/Expr.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Function" : { "file" : "lib/XML/XPath/Function.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Literal" : { "file" : "lib/XML/XPath/Literal.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::LocationPath" : { "file" : "lib/XML/XPath/LocationPath.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node" : { "file" : "lib/XML/XPath/Node.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::Attribute" : { "file" : "lib/XML/XPath/Node/Attribute.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::AttributeImpl" : { "file" : "lib/XML/XPath/Node/Attribute.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::Comment" : { "file" : "lib/XML/XPath/Node/Comment.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::Element" : { "file" : "lib/XML/XPath/Node/Element.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::Namespace" : { "file" : "lib/XML/XPath/Node/Namespace.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::PI" : { "file" : "lib/XML/XPath/Node/PI.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Node::Text" : { "file" : "lib/XML/XPath/Node/Text.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::NodeSet" : { "file" : "lib/XML/XPath/NodeSet.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Number" : { "file" : "lib/XML/XPath/Number.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Parser" : { "file" : "lib/XML/XPath/Parser.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::PerlSAX" : { "file" : "lib/XML/XPath/PerlSAX.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Root" : { "file" : "lib/XML/XPath/Root.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Step" : { "file" : "lib/XML/XPath/Step.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::Variable" : { "file" : "lib/XML/XPath/Variable.pm", - "version" : "1.47" + "version" : "1.48" }, "XML::XPath::XMLParser" : { "file" : "lib/XML/XPath/XMLParser.pm", - "version" : "1.47" + "version" : "1.48" } }, "release_status" : "stable", @@ -141,6 +141,6 @@ "web" : "https://github.com/manwar/XML-XPath" } }, - "version" : "1.47", + "version" : "1.48", "x_serialization_backend" : "JSON::PP version 4.02" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/META.yml new/XML-XPath-1.48/META.yml --- old/XML-XPath-1.47/META.yml 2022-05-13 19:17:35.000000000 +0200 +++ new/XML-XPath-1.48/META.yml 2022-08-09 21:47:08.000000000 +0200 @@ -21,78 +21,78 @@ provides: XML::XPath: file: lib/XML/XPath.pm - version: '1.47' + version: '1.48' XML::XPath::Boolean: file: lib/XML/XPath/Boolean.pm - version: '1.47' + version: '1.48' XML::XPath::Builder: file: lib/XML/XPath/Builder.pm - version: '1.47' + version: '1.48' XML::XPath::Expr: file: lib/XML/XPath/Expr.pm - version: '1.47' + version: '1.48' XML::XPath::Function: file: lib/XML/XPath/Function.pm - version: '1.47' + version: '1.48' XML::XPath::Literal: file: lib/XML/XPath/Literal.pm - version: '1.47' + version: '1.48' XML::XPath::LocationPath: file: lib/XML/XPath/LocationPath.pm - version: '1.47' + version: '1.48' XML::XPath::Node: file: lib/XML/XPath/Node.pm - version: '1.47' + version: '1.48' XML::XPath::Node::Attribute: file: lib/XML/XPath/Node/Attribute.pm - version: '1.47' + version: '1.48' XML::XPath::Node::AttributeImpl: file: lib/XML/XPath/Node/Attribute.pm - version: '1.47' + version: '1.48' XML::XPath::Node::Comment: file: lib/XML/XPath/Node/Comment.pm - version: '1.47' + version: '1.48' XML::XPath::Node::Element: file: lib/XML/XPath/Node/Element.pm - version: '1.47' + version: '1.48' XML::XPath::Node::Namespace: file: lib/XML/XPath/Node/Namespace.pm - version: '1.47' + version: '1.48' XML::XPath::Node::PI: file: lib/XML/XPath/Node/PI.pm - version: '1.47' + version: '1.48' XML::XPath::Node::Text: file: lib/XML/XPath/Node/Text.pm - version: '1.47' + version: '1.48' XML::XPath::NodeSet: file: lib/XML/XPath/NodeSet.pm - version: '1.47' + version: '1.48' XML::XPath::Number: file: lib/XML/XPath/Number.pm - version: '1.47' + version: '1.48' XML::XPath::Parser: file: lib/XML/XPath/Parser.pm - version: '1.47' + version: '1.48' XML::XPath::PerlSAX: file: lib/XML/XPath/PerlSAX.pm - version: '1.47' + version: '1.48' XML::XPath::Root: file: lib/XML/XPath/Root.pm - version: '1.47' + version: '1.48' XML::XPath::Step: file: lib/XML/XPath/Step.pm - version: '1.47' + version: '1.48' XML::XPath::Variable: file: lib/XML/XPath/Variable.pm - version: '1.47' + version: '1.48' XML::XPath::XMLParser: file: lib/XML/XPath/XMLParser.pm - version: '1.47' + version: '1.48' requires: Scalar::Util: '1.45' XML::Parser: '2.23' - perl: '5.008' + perl: '5.010001' resources: repository: https://github.com/manwar/XML-XPath.git -version: '1.47' +version: '1.48' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/Makefile.PL new/XML-XPath-1.48/Makefile.PL --- old/XML-XPath-1.47/Makefile.PL 2022-05-13 19:14:02.000000000 +0200 +++ new/XML-XPath-1.48/Makefile.PL 2022-08-09 21:39:49.000000000 +0200 @@ -10,7 +10,7 @@ AUTHOR => 'Matt Sergeant, AxKit.com Ltd', VERSION_FROM => 'lib/XML/XPath.pm', ABSTRACT_FROM => 'lib/XML/XPath.pm', - MIN_PERL_VERSION => 5.008, + MIN_PERL_VERSION => 5.010001, LICENSE => 'artistic_2', EXE_FILES => [ 'examples/xpath' ], CONFIGURE_REQUIRES => { @@ -29,29 +29,29 @@ (eval { ExtUtils::MakeMaker->VERSION(6.46) } ? (META_MERGE => { 'meta-spec' => { version => 2 }, provides => { - 'XML::XPath' => { file => 'lib/XML/XPath.pm', version => '1.47' }, - 'XML::XPath::XMLParser' => { file => 'lib/XML/XPath/XMLParser.pm', version => '1.47' }, - 'XML::XPath::Parser' => { file => 'lib/XML/XPath/Parser.pm', version => '1.47' }, - 'XML::XPath::Expr' => { file => 'lib/XML/XPath/Expr.pm', version => '1.47' }, - 'XML::XPath::Function' => { file => 'lib/XML/XPath/Function.pm', version => '1.47' }, - 'XML::XPath::Literal' => { file => 'lib/XML/XPath/Literal.pm', version => '1.47' }, - 'XML::XPath::LocationPath' => { file => 'lib/XML/XPath/LocationPath.pm', version => '1.47' }, - 'XML::XPath::Number' => { file => 'lib/XML/XPath/Number.pm', version => '1.47' }, - 'XML::XPath::Node' => { file => 'lib/XML/XPath/Node.pm', version => '1.47' }, - 'XML::XPath::Node::Element' => { file => 'lib/XML/XPath/Node/Element.pm', version => '1.47' }, - 'XML::XPath::Node::Attribute' => { file => 'lib/XML/XPath/Node/Attribute.pm', version => '1.47' }, - 'XML::XPath::Node::AttributeImpl' => { file => 'lib/XML/XPath/Node/Attribute.pm', version => '1.47' }, - 'XML::XPath::Node::Text' => { file => 'lib/XML/XPath/Node/Text.pm', version => '1.47' }, - 'XML::XPath::Node::Namespace' => { file => 'lib/XML/XPath/Node/Namespace.pm', version => '1.47' }, - 'XML::XPath::Node::PI' => { file => 'lib/XML/XPath/Node/PI.pm', version => '1.47' }, - 'XML::XPath::Node::Comment' => { file => 'lib/XML/XPath/Node/Comment.pm', version => '1.47' }, - 'XML::XPath::Step' => { file => 'lib/XML/XPath/Step.pm', version => '1.47' }, - 'XML::XPath::Variable' => { file => 'lib/XML/XPath/Variable.pm', version => '1.47' }, - 'XML::XPath::NodeSet' => { file => 'lib/XML/XPath/NodeSet.pm', version => '1.47' }, - 'XML::XPath::Boolean' => { file => 'lib/XML/XPath/Boolean.pm', version => '1.47' }, - 'XML::XPath::Root' => { file => 'lib/XML/XPath/Root.pm', version => '1.47' }, - 'XML::XPath::PerlSAX' => { file => 'lib/XML/XPath/PerlSAX.pm', version => '1.47' }, - 'XML::XPath::Builder' => { file => 'lib/XML/XPath/Builder.pm', version => '1.47' }, + 'XML::XPath' => { file => 'lib/XML/XPath.pm', version => '1.48' }, + 'XML::XPath::XMLParser' => { file => 'lib/XML/XPath/XMLParser.pm', version => '1.48' }, + 'XML::XPath::Parser' => { file => 'lib/XML/XPath/Parser.pm', version => '1.48' }, + 'XML::XPath::Expr' => { file => 'lib/XML/XPath/Expr.pm', version => '1.48' }, + 'XML::XPath::Function' => { file => 'lib/XML/XPath/Function.pm', version => '1.48' }, + 'XML::XPath::Literal' => { file => 'lib/XML/XPath/Literal.pm', version => '1.48' }, + 'XML::XPath::LocationPath' => { file => 'lib/XML/XPath/LocationPath.pm', version => '1.48' }, + 'XML::XPath::Number' => { file => 'lib/XML/XPath/Number.pm', version => '1.48' }, + 'XML::XPath::Node' => { file => 'lib/XML/XPath/Node.pm', version => '1.48' }, + 'XML::XPath::Node::Element' => { file => 'lib/XML/XPath/Node/Element.pm', version => '1.48' }, + 'XML::XPath::Node::Attribute' => { file => 'lib/XML/XPath/Node/Attribute.pm', version => '1.48' }, + 'XML::XPath::Node::AttributeImpl' => { file => 'lib/XML/XPath/Node/Attribute.pm', version => '1.48' }, + 'XML::XPath::Node::Text' => { file => 'lib/XML/XPath/Node/Text.pm', version => '1.48' }, + 'XML::XPath::Node::Namespace' => { file => 'lib/XML/XPath/Node/Namespace.pm', version => '1.48' }, + 'XML::XPath::Node::PI' => { file => 'lib/XML/XPath/Node/PI.pm', version => '1.48' }, + 'XML::XPath::Node::Comment' => { file => 'lib/XML/XPath/Node/Comment.pm', version => '1.48' }, + 'XML::XPath::Step' => { file => 'lib/XML/XPath/Step.pm', version => '1.48' }, + 'XML::XPath::Variable' => { file => 'lib/XML/XPath/Variable.pm', version => '1.48' }, + 'XML::XPath::NodeSet' => { file => 'lib/XML/XPath/NodeSet.pm', version => '1.48' }, + 'XML::XPath::Boolean' => { file => 'lib/XML/XPath/Boolean.pm', version => '1.48' }, + 'XML::XPath::Root' => { file => 'lib/XML/XPath/Root.pm', version => '1.48' }, + 'XML::XPath::PerlSAX' => { file => 'lib/XML/XPath/PerlSAX.pm', version => '1.48' }, + 'XML::XPath::Builder' => { file => 'lib/XML/XPath/Builder.pm', version => '1.48' }, }, resources => { repository => { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Boolean.pm new/XML-XPath-1.48/lib/XML/XPath/Boolean.pm --- old/XML-XPath-1.47/lib/XML/XPath/Boolean.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Boolean.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Boolean; -$VERSION = '1.47'; +$VERSION = '1.48'; use XML::XPath::Number; use XML::XPath::Literal; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Builder.pm new/XML-XPath-1.48/lib/XML/XPath/Builder.pm --- old/XML-XPath-1.47/lib/XML/XPath/Builder.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Builder.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,8 +1,9 @@ package XML::XPath::Builder; -$VERSION = '1.47'; +use strict; +use warnings; -use strict; use warnings; +our $VERSION = '1.48'; # to get array index constants use XML::XPath::Node; @@ -13,10 +14,8 @@ use XML::XPath::Node::PI; use XML::XPath::Node::Comment; -use vars qw/$xmlns_ns $xml_ns/; - -$xmlns_ns = "http://www.w3.org/2000/xmlns/"; -$xml_ns = "http://www.w3.org/XML/1998/namespace"; +my $xmlns_ns = "http://www.w3.org/2000/xmlns/"; +my $xml_ns = "http://www.w3.org/XML/1998/namespace"; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Expr.pm new/XML-XPath-1.48/lib/XML/XPath/Expr.pm --- old/XML-XPath-1.47/lib/XML/XPath/Expr.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Expr.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Expr; -$VERSION = '1.47'; +$VERSION = '1.48'; use strict; use warnings; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Function.pm new/XML-XPath-1.48/lib/XML/XPath/Function.pm --- old/XML-XPath-1.47/lib/XML/XPath/Function.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Function.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Function; -$VERSION = '1.47'; +$VERSION = '1.48'; use XML::XPath::Number; use XML::XPath::Literal; @@ -9,6 +9,21 @@ use XML::XPath::Node::Attribute; use strict; use warnings; +=head1 NAME + +XML::XPath::Functions - implementations of XPath functions + +=head1 DESCRIPTION + +XPath 1.0 and some later functions are supported. + +Note that functions that take regular expressions use Perl-syntax REs, +not the language described in the XPath spec. + +=head1 FUNCTIONS + +=cut + sub new { my $class = shift; my ($pp, $name, $params) = @_; @@ -76,7 +91,41 @@ # XML::XPath::NodeSet # XML::XPath::Boolean -### NODESET FUNCTIONS ### +=head2 NODESET FUNCTIONS + +=over + +=item * + +C<last()> + +=item * + +C<position()> + +=item * + +C<count()> + +=item * + +C<id()> + +=item * + +C<local-name()> + +=item * + +C<name()> + +=item * + +C<namespace-uri()> + +=back + +=cut sub last { my $self = shift; @@ -176,7 +225,71 @@ return XML::XPath::Literal->new($node->getName); } -### STRING FUNCTIONS ### +=head2 STRING FUNCTIONS + +=head3 Functions On String Values + +=over + +=item * + +C<string()> + +=item * + +C<concat()> + +=item * + +C<substring()> + +=item * + +C<string-length()> + +=item * + +C<normalize-space()> + +=item * + +C<translate()> + +=back + +=head3 Functions Based on Substring Matching + +=over + +=item * + +C<contains()> + +=item * + +C<starts-with()> + +=item * + +C<substring-before()> + +=item * + +C<substring-after()> + +=back + +=head3 String Functions that Use Pattern Matching + +=over + +=item * + +C<matches()> + +=back + +=cut sub string { my $self = shift; @@ -390,7 +503,33 @@ return $str =~ /$re/ ? XML::XPath::Boolean->True : XML::XPath::Boolean->False; } -### BOOLEAN FUNCTIONS ### +=head2 BOOLEAN FUNCTIONS + +=over + +=item * + +C<boolean()> + +=item * + +C<not()> + +=item * + +C<true()> + +=item * + +C<false()> + +=item * + +C<lang()> + +=back + +=cut sub boolean { my $self = shift; @@ -435,7 +574,33 @@ } } -### NUMBER FUNCTIONS ### +=head2 NUMBER FUNCTIONS + +=over + +=item * + +C<number()> + +=item * + +C<sum()> + +=item * + +C<floor()> + +=item * + +C<ceiling()> + +=item * + +C<round()> + +=back + +=cut sub number { my $self = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Literal.pm new/XML-XPath-1.48/lib/XML/XPath/Literal.pm --- old/XML-XPath-1.47/lib/XML/XPath/Literal.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Literal.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Literal; -$VERSION = '1.47'; +$VERSION = '1.48'; use XML::XPath::Boolean; use XML::XPath::Number; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/LocationPath.pm new/XML-XPath-1.48/lib/XML/XPath/LocationPath.pm --- old/XML-XPath-1.47/lib/XML/XPath/LocationPath.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/LocationPath.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::LocationPath; -$VERSION = '1.47'; +$VERSION = '1.48'; use Scalar::Util qw(blessed); use XML::XPath::Root; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/Attribute.pm new/XML-XPath-1.48/lib/XML/XPath/Node/Attribute.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/Attribute.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/Attribute.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,18 +1,17 @@ package XML::XPath::Node::Attribute; -use strict; use warnings; -use vars qw/@ISA $VERSION/; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -@ISA = ('XML::XPath::Node'); -$VERSION = '1.47'; +our $VERSION = '1.48'; package XML::XPath::Node::AttributeImpl; -use vars qw/@ISA $VERSION/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Attribute'); use XML::XPath::Node ':node_keys'; +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::Attribute/; -$VERSION = '1.47'; +our $VERSION = '1.48'; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/Comment.pm new/XML-XPath-1.48/lib/XML/XPath/Node/Comment.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/Comment.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/Comment.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,17 +1,15 @@ package XML::XPath::Node::Comment; -$VERSION = '1.47'; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -use strict; use warnings; -use vars qw/@ISA/; - -@ISA = ('XML::XPath::Node'); +our $VERSION = '1.48'; package XML::XPath::Node::CommentImpl; -use vars qw/@ISA/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Comment'); use XML::XPath::Node ':node_keys'; +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::Comment/; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/Element.pm new/XML-XPath-1.48/lib/XML/XPath/Node/Element.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/Element.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/Element.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,16 +1,14 @@ package XML::XPath::Node::Element; -$VERSION = '1.47'; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -use strict; use warnings; -use vars qw/@ISA/; - -@ISA = ('XML::XPath::Node'); +our $VERSION = '1.48'; package XML::XPath::Node::ElementImpl; -use vars qw/@ISA/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Element'); +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::Element/; use XML::XPath::Node ':node_keys'; sub new { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/Namespace.pm new/XML-XPath-1.48/lib/XML/XPath/Node/Namespace.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/Namespace.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/Namespace.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,17 +1,15 @@ package XML::XPath::Node::Namespace; -$VERSION = '1.47'; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -use strict; use warnings; -use vars qw/@ISA/; - -@ISA = ('XML::XPath::Node'); +our $VERSION = '1.48'; package XML::XPath::Node::NamespaceImpl; -use vars qw/@ISA/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Namespace'); use XML::XPath::Node ':node_keys'; +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::Namespace/; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/PI.pm new/XML-XPath-1.48/lib/XML/XPath/Node/PI.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/PI.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/PI.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,17 +1,16 @@ package XML::XPath::Node::PI; -$VERSION = '1.47'; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -use strict; use warnings; -use vars qw/@ISA/; - -@ISA = ('XML::XPath::Node'); +our $VERSION = '1.48'; package XML::XPath::Node::PIImpl; -use vars qw/@ISA/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::PI'); use XML::XPath::Node ':node_keys'; +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::PI/; + sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node/Text.pm new/XML-XPath-1.48/lib/XML/XPath/Node/Text.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node/Text.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node/Text.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,17 +1,15 @@ package XML::XPath::Node::Text; -$VERSION = '1.47'; +use strict; +use warnings; +use parent qw/XML::XPath::Node/; -use strict; use warnings; -use vars qw/@ISA/; - -@ISA = ('XML::XPath::Node'); +our $VERSION = '1.48'; package XML::XPath::Node::TextImpl; -use vars qw/@ISA/; -@ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Text'); use XML::XPath::Node ':node_keys'; +use parent qw/-norequire XML::XPath::NodeImpl XML::XPath::Node::Text/; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Node.pm new/XML-XPath-1.48/lib/XML/XPath/Node.pm --- old/XML-XPath-1.47/lib/XML/XPath/Node.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Node.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,12 +1,11 @@ package XML::XPath::Node; -$VERSION = '1.47'; - -use strict; use warnings; -use vars qw(@ISA @EXPORT $AUTOLOAD %EXPORT_TAGS @EXPORT_OK); -use Exporter; +use strict; +use warnings; +use parent qw/Exporter/; use Carp; -@ISA = ('Exporter'); + +our $VERSION = '1.48'; sub UNKNOWN_NODE () {0;} sub ELEMENT_NODE () {1;} @@ -63,7 +62,7 @@ # sub node_prefix () { 3; } sub node_expanded () { 4; } -@EXPORT = qw( +our @EXPORT = qw( UNKNOWN_NODE ELEMENT_NODE ATTRIBUTE_NODE @@ -84,7 +83,7 @@ NAMESPACE_NODE ); -@EXPORT_OK = qw( +our @EXPORT_OK = qw( node_parent node_pos node_global_pos @@ -103,7 +102,7 @@ node_ids ); -%EXPORT_TAGS = ( +our %EXPORT_TAGS = ( 'node_keys' => [ qw( node_parent @@ -215,6 +214,7 @@ } sub AUTOLOAD { + our $AUTOLOAD; my $method = $AUTOLOAD; $method =~ s/.*:://; # warn "AUTOLOAD $method!\n"; @@ -245,8 +245,7 @@ package XML::XPath::NodeImpl; -use vars qw/@ISA $AUTOLOAD/; -@ISA = ('XML::XPath::Node'); +use parent qw/-norequire XML::XPath::Node/; sub new { die "Virtual base method"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/NodeSet.pm new/XML-XPath-1.48/lib/XML/XPath/NodeSet.pm --- old/XML-XPath-1.47/lib/XML/XPath/NodeSet.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/NodeSet.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::NodeSet; -$VERSION = '1.47'; +$VERSION = '1.48'; use strict; use warnings; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Number.pm new/XML-XPath-1.48/lib/XML/XPath/Number.pm --- old/XML-XPath-1.47/lib/XML/XPath/Number.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Number.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Number; -$VERSION = '1.47'; +$VERSION = '1.48'; use XML::XPath::Boolean; use XML::XPath::Literal; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Parser.pm new/XML-XPath-1.48/lib/XML/XPath/Parser.pm --- old/XML-XPath-1.47/lib/XML/XPath/Parser.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Parser.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,19 +1,7 @@ package XML::XPath::Parser; -$VERSION = '1.47'; - -use strict; use warnings; -use vars qw/ - $NCName - $QName - $NCWild - $QNWild - $NUMBER_RE - $NODE_TYPE - $AXIS_NAME - %AXES - $LITERAL/; - +use strict; +use warnings; use Carp qw(croak); use XML::XPath::XMLParser; use XML::XPath::Step; @@ -25,8 +13,10 @@ use XML::XPath::Number; use XML::XPath::NodeSet; +our $VERSION = '1.48'; + # Axis name to principal node type mapping -%AXES = ( +my %AXES = ( 'ancestor' => 'element', 'ancestor-or-self' => 'element', 'attribute' => 'attribute', @@ -46,14 +36,14 @@ my $NameCharClassBody = "${NameStartCharClassBody}\\-.0-9\\xB7\\x{300}-\\x{36F}\\x{203F}-\\x{2040}"; my $Name = "(?:[$NameStartCharClassBody][$NameCharClassBody]*)"; -$NCName = $Name; -$QName = "$NCName(?::$NCName)?"; -$NCWild = "${NCName}:\\*"; -$QNWild = "\\*"; -$NODE_TYPE = '((text|comment|processing-instruction|node)\\(\\))'; -$AXIS_NAME = '(' . join('|', keys %AXES) . ')::'; -$NUMBER_RE = '\d+(\\.\d*)?|\\.\d+'; -$LITERAL = '\\"[^\\"]*\\"|\\\'[^\\\']*\\\''; +my $NCName = $Name; +my $QName = "$NCName(?::$NCName)?"; +my $NCWild = "${NCName}:\\*"; +my $QNWild = "\\*"; +my $NODE_TYPE = '((text|comment|processing-instruction|node)\\(\\))'; +my $AXIS_NAME = '(' . join('|', keys %AXES) . ')::'; +my $NUMBER_RE = '\d+(\\.\d*)?|\\.\d+'; +my $LITERAL = '\\"[^\\"]*\\"|\\\'[^\\\']*\\\''; sub new { my $class = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/PerlSAX.pm new/XML-XPath-1.48/lib/XML/XPath/PerlSAX.pm --- old/XML-XPath-1.47/lib/XML/XPath/PerlSAX.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/PerlSAX.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::PerlSAX; -$VERSION = '1.47'; +$VERSION = '1.48'; use XML::XPath::Node qw(:node_keys); use XML::XPath::XMLParser; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Root.pm new/XML-XPath-1.48/lib/XML/XPath/Root.pm --- old/XML-XPath-1.47/lib/XML/XPath/Root.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Root.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Root; -$VERSION = '1.47'; +$VERSION = '1.48'; use strict; use warnings; use XML::XPath::XMLParser; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Step.pm new/XML-XPath-1.48/lib/XML/XPath/Step.pm --- old/XML-XPath-1.47/lib/XML/XPath/Step.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Step.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,15 +1,16 @@ package XML::XPath::Step; -$VERSION = '1.47'; - use XML::XPath::Parser; use XML::XPath::Node; -use strict; use warnings; +use strict; +use warnings; + +our $VERSION = '1.48'; # the beginnings of using XS for this file... # require DynaLoader; # use vars qw/$VERSION @ISA/; -# $VERSION = '1.47'; +# $VERSION = '1.48'; # @ISA = qw(DynaLoader); # # bootstrap XML::XPath::Step $VERSION; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/Variable.pm new/XML-XPath-1.48/lib/XML/XPath/Variable.pm --- old/XML-XPath-1.47/lib/XML/XPath/Variable.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/Variable.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,6 +1,6 @@ package XML::XPath::Variable; -$VERSION = '1.47'; +$VERSION = '1.48'; use strict; use warnings; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath/XMLParser.pm new/XML-XPath-1.48/lib/XML/XPath/XMLParser.pm --- old/XML-XPath-1.47/lib/XML/XPath/XMLParser.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath/XMLParser.pm 2022-08-09 21:37:54.000000000 +0200 @@ -1,9 +1,7 @@ package XML::XPath::XMLParser; -$VERSION = '1.47'; - -use strict; use warnings; - +use strict; +use warnings; use XML::Parser; use XML::XPath::Node; use XML::XPath::Node::Element; @@ -13,6 +11,8 @@ use XML::XPath::Node::Attribute; use XML::XPath::Node::Namespace; +our $VERSION = '1.48'; + my @options = qw( filename xml @@ -23,10 +23,8 @@ my ($_current, $_namespaces_on); my %IdNames; -use vars qw/$xmlns_ns $xml_ns/; - -$xmlns_ns = "http://www.w3.org/2000/xmlns/"; -$xml_ns = "http://www.w3.org/XML/1998/namespace"; +my $xmlns_ns = "http://www.w3.org/2000/xmlns/"; +my $xml_ns = "http://www.w3.org/XML/1998/namespace"; sub new { my $proto = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/XML-XPath-1.47/lib/XML/XPath.pm new/XML-XPath-1.48/lib/XML/XPath.pm --- old/XML-XPath-1.47/lib/XML/XPath.pm 2022-05-13 19:13:27.000000000 +0200 +++ new/XML-XPath-1.48/lib/XML/XPath.pm 2022-08-09 21:37:54.000000000 +0200 @@ -6,17 +6,18 @@ =head1 VERSION -Version 1.47 +Version 1.48 =cut -use strict; use warnings; -use vars qw($VERSION $AUTOLOAD $revision); +use strict; +use warnings; +use parent qw/Exporter/; -$VERSION = '1.47'; -$XML::XPath::Namespaces = 1; -$XML::XPath::ParseParamEnt = 1; -$XML::XPath::Debug = 0; +our $VERSION = '1.48'; +our $Namespaces = 1; +our $ParseParamEnt = 1; +our $Debug = 0; use Data::Dumper; use XML::XPath::XMLParser; @@ -61,6 +62,10 @@ synonymous with the names in the specification, so consult that if you don't understand why I'm doing something in the code. +Currently, it supports XPath 1.0 with a small number of XPath 2.0 +functions. See L<XML::XPath::Function> for the complete list of +predefined functions. + =head1 METHODS The API of XML::XPath itself is extremely simple to allow you to get going almost @@ -572,9 +577,10 @@ =head1 SEE ALSO -L<XML::XPath::Literal>, L<XML::XPath::Boolean>, L<XML::XPath::Number>, -L<XML::XPath::XMLParser>, L<XML::XPath::NodeSet>, L<XML::XPath::PerlSAX>, -L<XML::XPath::Builder>. +L<XML::XPath::Function>, L<XML::XPath::Literal>, +L<XML::XPath::Boolean>, L<XML::XPath::Number>, +L<XML::XPath::XMLParser>, L<XML::XPath::NodeSet>, +L<XML::XPath::PerlSAX>, L<XML::XPath::Builder>. =head1 LICENSE AND COPYRIGHT