Hello community,

here is the log from the commit of package perl-XML-XPath for openSUSE:Factory 
checked in at 2016-02-09 13:31:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-XML-XPath (Old)
 and      /work/SRC/openSUSE:Factory/.perl-XML-XPath.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-XML-XPath"

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-XML-XPath/perl-XML-XPath.changes    
2016-01-23 01:15:33.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-XML-XPath.new/perl-XML-XPath.changes       
2016-02-09 13:31:26.000000000 +0100
@@ -1,0 +2,35 @@
+Sun Feb  7 10:57:01 UTC 2016 - [email protected]
+
+- updated to 1.30
+   see /usr/share/doc/packages/perl-XML-XPath/Changes
+
+  1.30  2016-02-04 MANWAR
+        - Fixed issue RT #15902 (Quoting warnings with translate).
+        - Fixed issue RT #21154 (translate() function does not remove 
characters or support -)
+  
+  1.29  2016-02-03 MANWAR
+        - Fixed issue RT# 26144 (createNode doesn't honor position() 
predicate).
+  
+  1.28  2016-01-31 MANWAR
+        - Changed the LICENSE information about the package 
XML::XPath::PerlSAX as per
+          Matt Sergeant email response (dated 2016-01-30).
+  
+  1.27  2016-01-30 MANWAR
+        - Fixed issue RT# 32012 (Debian bug #187583, 
http://bugs.debian.org/187583).
+
+-------------------------------------------------------------------
+Wed Jan 27 10:53:13 UTC 2016 - [email protected]
+
+- updated to 1.26
+   see /usr/share/doc/packages/perl-XML-XPath/Changes
+
+  1.26  2016-01-25 MANWAR
+        - Fixed inconsistent version issue (CPANTS).
+        - Added key 'provides' to the Makefile.PL script.
+        - Added unit test scripts t/meta-json.t and t/meta-yml.t
+  
+  1.25  2016-01-20 MANWAR
+        - Merged in GitHub PR #2, thanks to sdeseille.
+        - Merged t/45overloading_number_operator.t and t/99rt_11724.t into 
t/45cmp_nodeset.t
+
+-------------------------------------------------------------------

Old:
----
  XML-XPath-1.24.tar.gz

New:
----
  XML-XPath-1.30.tar.gz

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

Other differences:
------------------
++++++ perl-XML-XPath.spec ++++++
--- /var/tmp/diff_new_pack.UK5fsn/_old  2016-02-09 13:31:26.000000000 +0100
+++ /var/tmp/diff_new_pack.UK5fsn/_new  2016-02-09 13:31:26.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           perl-XML-XPath
-Version:        1.24
+Version:        1.30
 Release:        0
 %define cpan_name XML-XPath
 Summary:        Parse and evaluate XPath statements
@@ -30,6 +30,7 @@
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
+BuildRequires:  perl(Path::Tiny) >= 0.076
 BuildRequires:  perl(XML::Parser) >= 2.23
 Requires:       perl(XML::Parser) >= 2.23
 %{perl_requires}

++++++ XML-XPath-1.24.tar.gz -> XML-XPath-1.30.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/Changes new/XML-XPath-1.30/Changes
--- old/XML-XPath-1.24/Changes  2016-01-19 12:29:56.000000000 +0100
+++ new/XML-XPath-1.30/Changes  2016-02-04 15:05:15.000000000 +0100
@@ -1,5 +1,28 @@
 Revision history for XML::XPath
 
+1.30  2016-02-04 MANWAR
+      - Fixed issue RT #15902 (Quoting warnings with translate).
+      - Fixed issue RT #21154 (translate() function does not remove characters 
or support -)
+
+1.29  2016-02-03 MANWAR
+      - Fixed issue RT# 26144 (createNode doesn't honor position() predicate).
+
+1.28  2016-01-31 MANWAR
+      - Changed the LICENSE information about the package XML::XPath::PerlSAX 
as per
+        Matt Sergeant email response (dated 2016-01-30).
+
+1.27  2016-01-30 MANWAR
+      - Fixed issue RT# 32012 (Debian bug #187583, 
http://bugs.debian.org/187583).
+
+1.26  2016-01-25 MANWAR
+      - Fixed inconsistent version issue (CPANTS).
+      - Added key 'provides' to the Makefile.PL script.
+      - Added unit test scripts t/meta-json.t and t/meta-yml.t
+
+1.25  2016-01-20 MANWAR
+      - Merged in GitHub PR #2, thanks to sdeseille.
+      - Merged t/45overloading_number_operator.t and t/99rt_11724.t into 
t/45cmp_nodeset.t
+
 1.24  2016-01-19 MANWAR
       - Fixed issue RT# 111278 (XML::XPath::PerlSAX doesn't compile).
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/MANIFEST new/XML-XPath-1.30/MANIFEST
--- old/XML-XPath-1.24/MANIFEST 2016-01-19 12:30:34.000000000 +0100
+++ new/XML-XPath-1.30/MANIFEST 2016-02-04 15:13:30.000000000 +0100
@@ -73,10 +73,16 @@
 t/42create_node.t
 t/43op_div.t
 t/44test_compare.t
+t/45cmp_nodeset.t
+t/46context.t
+t/47position.t
+t/48translate.t
 t/rdf.t
 t/remove.t
 t/insert.t
 t/stress.t
+t/meta-json.t
+t/meta-yml.t
 examples/test.xml
 examples/xpath
 META.yml                                 Module YAML meta-data (added by 
MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/META.json new/XML-XPath-1.30/META.json
--- old/XML-XPath-1.24/META.json        2016-01-19 12:30:34.000000000 +0100
+++ new/XML-XPath-1.30/META.json        2016-02-04 15:13:30.000000000 +0100
@@ -22,6 +22,7 @@
    "prereqs" : {
       "build" : {
          "requires" : {
+            "Path::Tiny" : "0.076",
             "Test::More" : "0"
          }
       },
@@ -37,6 +38,96 @@
          }
       }
    },
+   "provides" : {
+      "XML::XPath" : {
+         "file" : "lib/XML/XPath.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Boolean" : {
+         "file" : "lib/XML/XPath/Boolean.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Builder" : {
+         "file" : "lib/XML/XPath/Builder.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Expr" : {
+         "file" : "lib/XML/XPath/Expr.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Function" : {
+         "file" : "lib/XML/XPath/Function.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Literal" : {
+         "file" : "lib/XML/XPath/Literal.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::LocationPath" : {
+         "file" : "lib/XML/XPath/LocationPath.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node" : {
+         "file" : "lib/XML/XPath/Node.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::Attribute" : {
+         "file" : "lib/XML/XPath/Node/Attribute.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::Comment" : {
+         "file" : "lib/XML/XPath/Node/Comment.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::Element" : {
+         "file" : "lib/XML/XPath/Node/Element.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::Namespace" : {
+         "file" : "lib/XML/XPath/Node/Namespace.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::PI" : {
+         "file" : "lib/XML/XPath/Node/PI.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Node::Text" : {
+         "file" : "lib/XML/XPath/Node/Text.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::NodeSet" : {
+         "file" : "lib/XML/XPath/NodeSet.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Number" : {
+         "file" : "lib/XML/XPath/Number.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Parser" : {
+         "file" : "lib/XML/XPath/Parser.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::PerlSAX" : {
+         "file" : "lib/XML/XPath/PerlSAX.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Root" : {
+         "file" : "lib/XML/XPath/Root.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Step" : {
+         "file" : "lib/XML/XPath/Step.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::Variable" : {
+         "file" : "lib/XML/XPath/Variable.pm",
+         "version" : "1.30"
+      },
+      "XML::XPath::XMLParser" : {
+         "file" : "lib/XML/XPath/XMLParser.pm",
+         "version" : "1.30"
+      }
+   },
    "release_status" : "stable",
    "resources" : {
       "repository" : {
@@ -45,6 +136,6 @@
          "web" : "https://github.com/manwar/XML-XPath";
       }
    },
-   "version" : "1.24",
+   "version" : "1.30",
    "x_serialization_backend" : "JSON::PP version 2.27203"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/META.yml new/XML-XPath-1.30/META.yml
--- old/XML-XPath-1.24/META.yml 2016-01-19 12:30:34.000000000 +0100
+++ new/XML-XPath-1.30/META.yml 2016-02-04 15:13:30.000000000 +0100
@@ -3,6 +3,7 @@
 author:
   - 'Matt Sergeant, AxKit.com Ltd'
 build_requires:
+  Path::Tiny: '0.076'
   Test::More: '0'
 configure_requires:
   ExtUtils::MakeMaker: '0'
@@ -17,10 +18,77 @@
   directory:
     - t
     - inc
+provides:
+  XML::XPath:
+    file: lib/XML/XPath.pm
+    version: '1.30'
+  XML::XPath::Boolean:
+    file: lib/XML/XPath/Boolean.pm
+    version: '1.30'
+  XML::XPath::Builder:
+    file: lib/XML/XPath/Builder.pm
+    version: '1.30'
+  XML::XPath::Expr:
+    file: lib/XML/XPath/Expr.pm
+    version: '1.30'
+  XML::XPath::Function:
+    file: lib/XML/XPath/Function.pm
+    version: '1.30'
+  XML::XPath::Literal:
+    file: lib/XML/XPath/Literal.pm
+    version: '1.30'
+  XML::XPath::LocationPath:
+    file: lib/XML/XPath/LocationPath.pm
+    version: '1.30'
+  XML::XPath::Node:
+    file: lib/XML/XPath/Node.pm
+    version: '1.30'
+  XML::XPath::Node::Attribute:
+    file: lib/XML/XPath/Node/Attribute.pm
+    version: '1.30'
+  XML::XPath::Node::Comment:
+    file: lib/XML/XPath/Node/Comment.pm
+    version: '1.30'
+  XML::XPath::Node::Element:
+    file: lib/XML/XPath/Node/Element.pm
+    version: '1.30'
+  XML::XPath::Node::Namespace:
+    file: lib/XML/XPath/Node/Namespace.pm
+    version: '1.30'
+  XML::XPath::Node::PI:
+    file: lib/XML/XPath/Node/PI.pm
+    version: '1.30'
+  XML::XPath::Node::Text:
+    file: lib/XML/XPath/Node/Text.pm
+    version: '1.30'
+  XML::XPath::NodeSet:
+    file: lib/XML/XPath/NodeSet.pm
+    version: '1.30'
+  XML::XPath::Number:
+    file: lib/XML/XPath/Number.pm
+    version: '1.30'
+  XML::XPath::Parser:
+    file: lib/XML/XPath/Parser.pm
+    version: '1.30'
+  XML::XPath::PerlSAX:
+    file: lib/XML/XPath/PerlSAX.pm
+    version: '1.30'
+  XML::XPath::Root:
+    file: lib/XML/XPath/Root.pm
+    version: '1.30'
+  XML::XPath::Step:
+    file: lib/XML/XPath/Step.pm
+    version: '1.30'
+  XML::XPath::Variable:
+    file: lib/XML/XPath/Variable.pm
+    version: '1.30'
+  XML::XPath::XMLParser:
+    file: lib/XML/XPath/XMLParser.pm
+    version: '1.30'
 requires:
   XML::Parser: '2.23'
   perl: '5.006'
 resources:
   repository: https://github.com/manwar/XML-XPath.git
-version: '1.24'
+version: '1.30'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.012'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/Makefile.PL 
new/XML-XPath-1.30/Makefile.PL
--- old/XML-XPath-1.24/Makefile.PL      2015-12-28 20:39:08.000000000 +0100
+++ new/XML-XPath-1.30/Makefile.PL      2016-02-04 15:10:08.000000000 +0100
@@ -17,6 +17,7 @@
     },
     BUILD_REQUIRES     => {
         'Test::More'   => 0,
+        'Path::Tiny'   => '0.076',
     },
     PREREQ_PM => {
        'XML::Parser'  => '2.23',
@@ -25,7 +26,31 @@
     clean => { FILES => 'XML-XPath-*' },
     (eval { ExtUtils::MakeMaker->VERSION(6.46) } ? (META_MERGE => {
         'meta-spec' => { version => 2 },
-        resources => {
+        provides    => {
+            'XML::XPath'                  => { file => 'lib/XML/XPath.pm',     
           version => '1.30' },
+            'XML::XPath::XMLParser'       => { file => 
'lib/XML/XPath/XMLParser.pm',      version => '1.30' },
+            'XML::XPath::Parser'          => { file => 
'lib/XML/XPath/Parser.pm',         version => '1.30' },
+            'XML::XPath::Expr'            => { file => 
'lib/XML/XPath/Expr.pm',           version => '1.30' },
+            'XML::XPath::Function'        => { file => 
'lib/XML/XPath/Function.pm',       version => '1.30' },
+            'XML::XPath::Literal'         => { file => 
'lib/XML/XPath/Literal.pm',        version => '1.30' },
+            'XML::XPath::LocationPath'    => { file => 
'lib/XML/XPath/LocationPath.pm',   version => '1.30' },
+            'XML::XPath::Number'          => { file => 
'lib/XML/XPath/Number.pm',         version => '1.30' },
+            'XML::XPath::Node'            => { file => 
'lib/XML/XPath/Node.pm',           version => '1.30' },
+            'XML::XPath::Node::Element'   => { file => 
'lib/XML/XPath/Node/Element.pm',   version => '1.30' },
+            'XML::XPath::Node::Attribute' => { file => 
'lib/XML/XPath/Node/Attribute.pm', version => '1.30' },
+            'XML::XPath::Node::Text'      => { file => 
'lib/XML/XPath/Node/Text.pm',      version => '1.30' },
+            'XML::XPath::Node::Namespace' => { file => 
'lib/XML/XPath/Node/Namespace.pm', version => '1.30' },
+            'XML::XPath::Node::PI'        => { file => 
'lib/XML/XPath/Node/PI.pm',        version => '1.30' },
+            'XML::XPath::Node::Comment'   => { file => 
'lib/XML/XPath/Node/Comment.pm',   version => '1.30' },
+            'XML::XPath::Step'            => { file => 
'lib/XML/XPath/Step.pm',           version => '1.30' },
+            'XML::XPath::Variable'        => { file => 
'lib/XML/XPath/Variable.pm',       version => '1.30' },
+            'XML::XPath::NodeSet'         => { file => 
'lib/XML/XPath/NodeSet.pm',        version => '1.30' },
+            'XML::XPath::Boolean'         => { file => 
'lib/XML/XPath/Boolean.pm',        version => '1.30' },
+            'XML::XPath::Root'            => { file => 
'lib/XML/XPath/Root.pm',           version => '1.30' },
+            'XML::XPath::PerlSAX'         => { file => 
'lib/XML/XPath/PerlSAX.pm',        version => '1.30' },
+            'XML::XPath::Builder'         => { file => 
'lib/XML/XPath/Builder.pm',        version => '1.30' },
+        },
+        resources   => {
             repository => {
                 type => 'git',
                 url  => 'https://github.com/manwar/XML-XPath.git',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Boolean.pm 
new/XML-XPath-1.30/lib/XML/XPath/Boolean.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Boolean.pm 2016-01-19 12:19:30.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Boolean.pm 2016-02-04 15:06:12.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Boolean;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Number;
 use XML::XPath::Literal;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Builder.pm 
new/XML-XPath-1.30/lib/XML/XPath/Builder.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Builder.pm 2016-01-19 12:19:40.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Builder.pm 2016-02-04 15:06:21.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Builder;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Expr.pm 
new/XML-XPath-1.30/lib/XML/XPath/Expr.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Expr.pm    2016-01-19 12:19:48.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Expr.pm    2016-02-04 15:06:27.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Expr;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Function.pm 
new/XML-XPath-1.30/lib/XML/XPath/Function.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Function.pm        2016-01-19 
12:19:57.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Function.pm        2016-02-04 
15:06:34.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Function;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Number;
 use XML::XPath::Literal;
@@ -348,7 +348,8 @@
     local $_ = $params[0]->string_value;
     my $find = $params[1]->string_value;
     my $repl = $params[2]->string_value;
-    eval "tr/\\Q$find\\E/\\Q$repl\\E/d, 1" or die $@;
+    eval "tr/\Q$find\E/\Q$repl\E/d";
+    die $@ if $@;
     return XML::XPath::Literal->new($_);
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Literal.pm 
new/XML-XPath-1.30/lib/XML/XPath/Literal.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Literal.pm 2016-01-19 12:20:07.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Literal.pm 2016-02-04 15:07:01.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Literal;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Boolean;
 use XML::XPath::Number;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/LocationPath.pm 
new/XML-XPath-1.30/lib/XML/XPath/LocationPath.pm
--- old/XML-XPath-1.24/lib/XML/XPath/LocationPath.pm    2016-01-19 
12:20:16.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/LocationPath.pm    2016-02-04 
15:07:09.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::LocationPath;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Root;
 use strict; use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/Attribute.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/Attribute.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/Attribute.pm  2016-01-19 
12:22:03.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/Attribute.pm  2016-02-04 
15:08:44.000000000 +0100
@@ -4,7 +4,7 @@
 use vars qw/@ISA $VERSION/;
 
 @ISA = ('XML::XPath::Node');
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 package XML::XPath::Node::AttributeImpl;
 
@@ -12,7 +12,7 @@
 @ISA = ('XML::XPath::NodeImpl', 'XML::XPath::Node::Attribute');
 use XML::XPath::Node ':node_keys';
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 sub new {
        my $class = shift;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/Comment.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/Comment.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/Comment.pm    2016-01-19 
12:23:28.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/Comment.pm    2016-02-04 
15:08:50.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node::Comment;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/@ISA/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/Element.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/Element.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/Element.pm    2016-01-19 
12:23:35.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/Element.pm    2016-02-04 
15:08:57.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node::Element;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/@ISA/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/Namespace.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/Namespace.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/Namespace.pm  2016-01-19 
12:23:42.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/Namespace.pm  2016-02-04 
15:09:03.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node::Namespace;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/@ISA/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/PI.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/PI.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/PI.pm 2016-01-19 12:23:47.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/PI.pm 2016-02-04 15:09:11.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node::PI;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/@ISA/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node/Text.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node/Text.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node/Text.pm       2016-01-19 
12:23:58.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node/Text.pm       2016-02-04 
15:09:16.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node::Text;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/@ISA/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Node.pm 
new/XML-XPath-1.30/lib/XML/XPath/Node.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Node.pm    2016-01-19 12:20:26.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Node.pm    2016-02-04 15:07:19.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Node;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw(@ISA @EXPORT $AUTOLOAD %EXPORT_TAGS @EXPORT_OK);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/NodeSet.pm 
new/XML-XPath-1.30/lib/XML/XPath/NodeSet.pm
--- old/XML-XPath-1.24/lib/XML/XPath/NodeSet.pm 2016-01-19 12:20:33.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/NodeSet.pm 2016-02-04 15:07:27.000000000 
+0100
@@ -1,15 +1,27 @@
 package XML::XPath::NodeSet;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 
 use XML::XPath::Boolean;
 
 use overload
-               '""' => \&to_literal,
-                'bool' => \&to_boolean,
-        ;
+    '""'   => \&to_literal,
+    'eq'   => \&string_value,
+    'ne'   => \&string_value,
+    'lt'   => \&string_value,
+    'le'   => \&string_value,
+    'gt'   => \&string_value,
+    'ge'   => \&string_value,
+    'bool' => \&to_boolean,
+    '=='   => \&to_number,
+    '!='   => \&to_number,
+    '>'           => \&to_number,
+    '<'           => \&to_number,
+    '>='   => \&to_number,
+    '<='   => \&to_number,
+;
 
 sub new {
        my $class = shift;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Number.pm 
new/XML-XPath-1.30/lib/XML/XPath/Number.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Number.pm  2016-01-19 12:20:40.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Number.pm  2016-02-04 15:07:37.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Number;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Boolean;
 use XML::XPath::Literal;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Parser.pm 
new/XML-XPath-1.30/lib/XML/XPath/Parser.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Parser.pm  2016-01-19 12:20:49.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Parser.pm  2016-02-04 15:07:46.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Parser;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use vars qw/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/PerlSAX.pm 
new/XML-XPath-1.30/lib/XML/XPath/PerlSAX.pm
--- old/XML-XPath-1.24/lib/XML/XPath/PerlSAX.pm 2016-01-19 12:27:45.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/PerlSAX.pm 2016-02-04 15:07:55.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::PerlSAX;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Node qw(:node_keys);
 use XML::XPath::XMLParser;
@@ -165,4 +165,9 @@
 compile before I patched it a bit), so I don't know how correct this
 is or how far it will work.
 
-This software may only be distributed as part of the XML::XPath package.
+=head1 LICENSE AND COPYRIGHT
+
+This module is  copyright  2000 AxKit.com Ltd. This is free software, and as 
such
+comes with NO WARRANTY. No dates are used in this module. You may distribute 
this
+module under the terms  of either the Gnu GPL,  or the Artistic License (the 
same
+terms as Perl itself).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Root.pm 
new/XML-XPath-1.30/lib/XML/XPath/Root.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Root.pm    2016-01-19 12:21:22.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Root.pm    2016-02-04 15:08:04.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Root;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 use XML::XPath::XMLParser;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Step.pm 
new/XML-XPath-1.30/lib/XML/XPath/Step.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Step.pm    2016-01-19 12:21:31.000000000 
+0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Step.pm    2016-02-04 15:08:12.000000000 
+0100
@@ -1,6 +1,6 @@
 package XML::XPath::Step;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use XML::XPath::Parser;
 use XML::XPath::Node;
@@ -131,6 +131,8 @@
     my $from = shift; # context nodeset
 
 #    warn "Step::evaluate called with ", $from->size, " length nodeset\n";
+    my $saved_context = $self->{pp}->get_context_set;
+    my $saved_pos = $self->{pp}->get_context_pos;
 
     $self->{pp}->set_context_set($from);
 
@@ -150,7 +152,8 @@
 
 #    warn "Step::evaluate initial nodeset size: ", $initial_nodeset->size, 
"\n";
 
-    $self->{pp}->set_context_set(undef);
+    $self->{pp}->set_context_set($saved_context);
+    $self->{pp}->set_context_pos($saved_pos);
 
     $initial_nodeset->sort;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/Variable.pm 
new/XML-XPath-1.30/lib/XML/XPath/Variable.pm
--- old/XML-XPath-1.24/lib/XML/XPath/Variable.pm        2016-01-19 
12:21:40.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/Variable.pm        2016-02-04 
15:08:19.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::Variable;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath/XMLParser.pm 
new/XML-XPath-1.30/lib/XML/XPath/XMLParser.pm
--- old/XML-XPath-1.24/lib/XML/XPath/XMLParser.pm       2016-01-19 
12:21:50.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath/XMLParser.pm       2016-02-04 
15:08:28.000000000 +0100
@@ -1,6 +1,6 @@
 package XML::XPath::XMLParser;
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 
 use strict; use warnings;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/lib/XML/XPath.pm 
new/XML-XPath-1.30/lib/XML/XPath.pm
--- old/XML-XPath-1.24/lib/XML/XPath.pm 2016-01-19 12:19:14.000000000 +0100
+++ new/XML-XPath-1.30/lib/XML/XPath.pm 2016-02-04 15:06:03.000000000 +0100
@@ -6,14 +6,14 @@
 
 =head1 VERSION
 
-Version 1.24
+Version 1.30
 
 =cut
 
 use strict; use warnings;
 use vars qw($VERSION $AUTOLOAD $revision);
 
-$VERSION = '1.24';
+$VERSION = '1.30';
 $XML::XPath::Namespaces = 1;
 $XML::XPath::Debug = 0;
 
@@ -356,7 +356,8 @@
 
     my $path_steps = $self->{path_parser}->parse($node_path);
     my @path_steps = ();
-    foreach my $step (@{$path_steps->get_lhs()}) {
+    my (undef, @path_steps_lhs) = @{$path_steps->get_lhs()};
+    foreach my $step (@path_steps_lhs) { # precompute paths as string
         my $string = $step->as_string();
         push(@path_steps, $string) if (defined $string && $string ne "");
     }
@@ -366,11 +367,13 @@
     my $nodes = undef;
     my $p = undef;
     my $test_path = "";
+
     # Start with the deepest node, working up the path (right to left),
     # trying to find a node that exists.
-    for ($p = $#path_steps; $p >= 0; $p--) {
-        my $path = $path_steps[$p];
+    for ($p = $#path_steps_lhs; $p >= 0; $p--) {
+        my $path = $path_steps_lhs[$p];
         $test_path = "(/" . join("/", @path_steps[0..$p]) . ")";
+
         $nodeset = $self->findnodes($test_path);
         return undef if (!defined $nodeset); # error looking for node
         $nodes = $nodeset->size;
@@ -387,28 +390,39 @@
 
     # We found a node that exists, or we'll start at the root.
     # Create all lower nodes working left to right along the path.
-    for ($p++ ; $p <= $#path_steps; $p++) {
-        my $path = $path_steps[$p];
+    for ($p++ ; $p <= $#path_steps_lhs; $p++) {
+        my $path = $path_steps_lhs[$p];
         my $newnode = undef;
-        my($axis,$name) = ($path =~ /^(.*?)::(.*)$/);
-        if ($axis =~ /^child$/i) {
-            if ($name =~ /(\S+):(\S+)/) {
-                $newnode = XML::XPath::Node::Element->new($name, $1);
-            } else {
-                $newnode = XML::XPath::Node::Element->new($name);
-            }
-            return undef if (!defined $newnode);
-            $prev_node->appendChild($newnode);
-        } elsif ($axis =~ /^attribute$/i) {
-            if ($name =~ /(\S+):(\S+)/) {
-                $newnode = XML::XPath::Node::Attribute->new($name, "", $1);
-            } else {
-                $newnode = XML::XPath::Node::Attribute->new($name, "");
+
+        my $axis = $path->{axis};
+        my $name = $path->{literal};
+
+        do {
+            if ($axis =~ /^child$/i) {
+                if ($name =~ /(\S+):(\S+)/) {
+                    $newnode = XML::XPath::Node::Element->new($name, $1);
+                } else {
+                    $newnode = XML::XPath::Node::Element->new($name);
+                }
+                return undef if (!defined $newnode); # could not create new 
node
+                $prev_node->appendChild($newnode);
+            } elsif ($axis =~ /^attribute$/i) {
+                if ($name =~ /(\S+):(\S+)/) {
+                    $newnode = XML::XPath::Node::Attribute->new($name, "", $1);
+                } else {
+                    $newnode = XML::XPath::Node::Attribute->new($name, "");
+                }
+                return undef if (!defined $newnode); # could not create new 
node
+                $prev_node->appendAttribute($newnode);
             }
-            return undef if (!defined $newnode);
-            $prev_node->appendAttribute($newnode);
-        }
-        $prev_node = $newnode;
+
+            $test_path = "(/" . join("/", @path_steps[0..$p]) . ")";
+            $nodeset = $self->findnodes($test_path);
+            $nodes = $nodeset->size;
+            die "failed to find node '$test_path'" if (!defined $nodeset); # 
error looking for node
+        } while ($nodes < 1);
+
+        $prev_node = $nodeset->get_node(1);
     }
 
     return $prev_node;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/00load.t 
new/XML-XPath-1.30/t/00load.t
--- old/XML-XPath-1.24/t/00load.t       2016-01-19 11:45:31.000000000 +0100
+++ new/XML-XPath-1.30/t/00load.t       2016-01-28 18:52:33.000000000 +0100
@@ -3,32 +3,25 @@
 use 5.006;
 use strict;
 use warnings FATAL => 'all';
-use Test::More tests => 23;
 
-BEGIN {
-    use_ok('XML::XPath')                  || print "Bail out!\n";
-    use_ok('XML::XPath::Boolean')         || print "Bail out!\n";
-    use_ok('XML::XPath::Builder')         || print "Bail out!\n";
-    use_ok('XML::XPath::Expr')            || print "Bail out!\n";
-    use_ok('XML::XPath::Function')        || print "Bail out!\n";
-    use_ok('XML::XPath::Literal')         || print "Bail out!\n";
-    use_ok('XML::XPath::LocationPath')    || print "Bail out!\n";
-    use_ok('XML::XPath::Node')            || print "Bail out!\n";
-    use_ok('XML::XPath::Node::Attribute') || print "Bail out!\n";
-    use_ok('XML::XPath::Node::Comment')   || print "Bail out!\n";
-    use_ok('XML::XPath::Node::Element')   || print "Bail out!\n";
-    use_ok('XML::XPath::Node::Namespace') || print "Bail out!\n";
-    use_ok('XML::XPath::Node::PI')        || print "Bail out!\n";
-    use_ok('XML::XPath::Node::Text')      || print "Bail out!\n";
-    use_ok('XML::XPath::Node')            || print "Bail out!\n";
-    use_ok('XML::XPath::NodeSet')         || print "Bail out!\n";
-    use_ok('XML::XPath::Number')          || print "Bail out!\n";
-    use_ok('XML::XPath::Parser')          || print "Bail out!\n";
-    use_ok('XML::XPath::PerlSAX')         || print "Bail out!\n";
-    use_ok('XML::XPath::Root')            || print "Bail out!\n";
-    use_ok('XML::XPath::Step')            || print "Bail out!\n";
-    use_ok('XML::XPath::Variable')        || print "Bail out!\n";
-    use_ok('XML::XPath::XMLParser')       || print "Bail out!\n";
+use Test::More;
+use lib 'lib';
+use Path::Tiny;
+
+my $dir  = path('lib/');
+my $iter = $dir->iterator({
+    recurse         => 1,
+    follow_symlinks => 0,
+});
+
+while (my $path = $iter->()) {
+    next if $path->is_dir || $path !~ /\.pm$/;
+    my $module = $path->relative;
+    $module =~ s/(?:^lib\/|\.pm$)//g;
+    $module =~ s/\//::/g;
+    BAIL_OUT( "$module does not compile" ) unless require_ok($module);
 }
 
 diag( "Testing XML::XPath $XML::XPath::VERSION, Perl $], $^X" );
+
+done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/45cmp_nodeset.t 
new/XML-XPath-1.30/t/45cmp_nodeset.t
--- old/XML-XPath-1.24/t/45cmp_nodeset.t        1970-01-01 01:00:00.000000000 
+0100
+++ new/XML-XPath-1.30/t/45cmp_nodeset.t        2016-01-20 12:03:35.000000000 
+0100
@@ -0,0 +1,33 @@
+use strict;
+use warnings;
+use Test::More;
+use XML::XPath;
+use XML::XPath::NodeSet;
+
+my $sample = qq {<xml>  <tag>FOO</tag> <val>10</val> </xml> };
+my $xp = XML::XPath->new(xml=>$sample);
+
+ok($xp->find('/xml/tag'));
+
+my $str_nodelist = $xp->find('/xml/tag');
+ok($str_nodelist->isa('XML::XPath::NodeSet'));
+ok($str_nodelist eq 'FOO');
+ok($str_nodelist lt 'foo');
+ok($str_nodelist gt 'bar');
+ok($str_nodelist le 'FOO');
+ok($str_nodelist ge 'FOO');
+ok($str_nodelist ne 'BAR');
+
+ok($xp->find('/xml/val'));
+
+my $int_nodelist = $xp->find('/xml/val');
+ok($int_nodelist->isa('XML::XPath::NodeSet'));
+ok($int_nodelist->size == 1 );
+ok($int_nodelist == 10 );
+ok($int_nodelist != 20 );
+ok($int_nodelist <= 10 );
+ok($int_nodelist <  20 );
+ok($int_nodelist >= 10 );
+ok($int_nodelist >  1  );
+
+done_testing();
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/46context.t 
new/XML-XPath-1.30/t/46context.t
--- old/XML-XPath-1.24/t/46context.t    1970-01-01 01:00:00.000000000 +0100
+++ new/XML-XPath-1.30/t/46context.t    2016-01-30 13:54:38.000000000 +0100
@@ -0,0 +1,30 @@
+use strict;
+use warnings;
+
+use Test::More;
+use XML::XPath;
+
+my $xp = XML::XPath->new(ioref => *DATA);
+
+ok($xp);
+
+# Debian bug #187583, http://bugs.debian.org/187583
+# Check that evaluation doesn't lose the context information
+
+my $nodes = $xp->find("text/para/node()[position()=last() and 
preceding-sibling::important]");
+ok("$nodes", " has a preceding sibling.");
+
+$nodes = $xp->find("text/para/node()[preceding-sibling::important and 
position()=last()]");
+ok("$nodes", " has a preceding sibling.");
+
+done_testing();
+
+__DATA__
+<text>
+  <para>I start the text here, I break
+the line and I go on, I <blink>twinkle</blink> and then I go on
+    again.
+This is not a new paragraph.</para><para>This is a
+    <important>new</important> paragraph and
+    <blink>this word</blink> has a preceding sibling.</para>
+</text>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/47position.t 
new/XML-XPath-1.30/t/47position.t
--- old/XML-XPath-1.24/t/47position.t   1970-01-01 01:00:00.000000000 +0100
+++ new/XML-XPath-1.30/t/47position.t   2016-02-02 15:13:10.000000000 +0100
@@ -0,0 +1,48 @@
+package main;
+
+use strict;
+use warnings;
+use Data::Dumper;
+use Test::More; # tests => 5;
+
+#use XML::XPath;
+use_ok("XML::XPath");
+
+my $path = XML::XPath->new(ioref => \*DATA);
+
+$path->createNode("/child::foo/child::bar/child::baz");
+$path->setNodeText("/child::foo/child::bar/child::baz[position()=last()]", 
"blah");
+$path->setNodeText("/child::foo/child::bar/child::baz[position()=last()]/attribute::id",
 "id0");
+
+$path->createNode("/child::foo/child::bar/child::baz[position()=3]");
+$path->setNodeText("/child::foo/child::bar/child::baz[position()=last()]", 
"blah 2");
+$path->setNodeText("/child::foo/child::bar/child::baz[position()=last()]/\@id",
 "id1");
+
+my $set = $path->find("/foo/bar/baz");
+my @nodelist = $set->get_nodelist;
+
+#print Dumper($nodelist[0]);
+#print $nodelist[0]->toString, "\n";
+#print $nodelist[1]->toString, "\n";
+#print $nodelist[2]->toString, "\n";
+
+ok(defined $nodelist[0]);
+ok(defined $nodelist[1]);
+ok(defined $nodelist[2]);
+
+ok($nodelist[0]->toString =~ /id="id0"/);
+ok(defined $nodelist[1] && $nodelist[1]->toString !~ /id/);
+ok(defined $nodelist[2] && $nodelist[2]->toString =~ /id="id1"/);
+
+$path->createNode("/child::foo/child::bar/child::baz[5]");
+$set = $path->find("/foo/bar/baz");
+@nodelist = $set->get_nodelist;
+
+is(scalar(@nodelist), 5);
+
+done_testing();
+
+__DATA__
+<?xml version="1.0" ?>
+<instanceData>
+</instanceData>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/48translate.t 
new/XML-XPath-1.30/t/48translate.t
--- old/XML-XPath-1.24/t/48translate.t  1970-01-01 01:00:00.000000000 +0100
+++ new/XML-XPath-1.30/t/48translate.t  2016-02-04 15:00:54.000000000 +0100
@@ -0,0 +1,16 @@
+use strict;
+use warnings;
+use Test::More;
+use XML::XPath;
+
+my $xp = XML::XPath->new(ioref => *DATA);
+ok($xp);
+
+is($xp->findvalue('translate("1,234.56",",","")'), 1234.56);
+is($xp->findvalue('translate("bar","abc","ABC")'), "BAr");
+is($xp->findvalue('translate("--aaa--","abc-","ABC")'), "AAA");
+
+done_testing();
+
+__DATA__
+<foo/>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/meta-json.t 
new/XML-XPath-1.30/t/meta-json.t
--- old/XML-XPath-1.24/t/meta-json.t    1970-01-01 01:00:00.000000000 +0100
+++ new/XML-XPath-1.30/t/meta-json.t    2016-01-24 11:19:25.000000000 +0100
@@ -0,0 +1,25 @@
+#!/usr/bin/perl
+
+use 5.006;
+use strict; use warnings;
+use XML::XPath;
+use Test::More;
+
+eval "use Test::CPAN::Meta::JSON";
+plan skip_all => "Test::CPAN::Meta::JSON required for testing MYMETA.json" if 
$@;
+
+my $meta    = meta_spec_ok('MYMETA.json');
+my $version = $XML::XPath::VERSION;
+
+is($meta->{version}, $version, 'MYMETA.json distribution version matches');
+
+if($meta->{provides}) {
+    for my $mod (keys %{$meta->{provides}}) {
+        eval("use $mod;");
+        my $mod_version = eval(sprintf("\$%s::VERSION", $mod));
+        is($meta->{provides}{$mod}{version}, $version, "MYMETA.json entry 
[$mod] version matches");
+        is($mod_version, $version, "Package $mod doesn't match version.");
+    }
+}
+
+done_testing();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-XPath-1.24/t/meta-yml.t 
new/XML-XPath-1.30/t/meta-yml.t
--- old/XML-XPath-1.24/t/meta-yml.t     1970-01-01 01:00:00.000000000 +0100
+++ new/XML-XPath-1.30/t/meta-yml.t     2016-01-24 10:58:59.000000000 +0100
@@ -0,0 +1,25 @@
+#!/usr/bin/perl
+
+use 5.006;
+use strict; use warnings;
+use XML::XPath;
+use Test::More;
+
+eval "use Test::CPAN::Meta";
+plan skip_all => "Test::CPAN::Meta required for testing MYMETA.yml" if $@;
+
+my $meta    = meta_spec_ok('MYMETA.yml');
+my $version = $XML::XPath::VERSION;
+
+is($meta->{version}, $version, 'MYMETA.yml distribution version matches');
+
+if($meta->{provides}) {
+    for my $mod (keys %{$meta->{provides}}) {
+        eval("use $mod;");
+        my $mod_version = eval(sprintf("\$%s::VERSION", $mod));
+        is($meta->{provides}{$mod}{version}, $version, "MYMETA.yml entry 
[$mod] version matches");
+        is($mod_version, $version, "Package $mod doesn't match version.");
+    }
+}
+
+done_testing();


Reply via email to