Hello community,

here is the log from the commit of package perl-XML-LibXML for openSUSE:Factory 
checked in at 2020-01-21 20:57:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-XML-LibXML (Old)
 and      /work/SRC/openSUSE:Factory/.perl-XML-LibXML.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-XML-LibXML"

Tue Jan 21 20:57:02 2020 rev:52 rq:764276 version:2.0202

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-XML-LibXML/perl-XML-LibXML.changes  
2019-12-07 15:23:17.787729575 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-XML-LibXML.new.26092/perl-XML-LibXML.changes   
    2020-01-21 20:57:05.636757458 +0100
@@ -1,0 +2,18 @@
+Tue Jan 14 03:16:35 UTC 2020 -  <[email protected]>
+
+- updated to 2.0202
+   see /usr/share/doc/packages/perl-XML-LibXML/Changes
+
+  2.0202  2020-01-13
+      - Disable loading external DTDs or external entities by default
+          - Thanks to Tim Retout
+      - Docs: Noting that HTTPS doesn't work for schema-loading either.
+          - Thanks to Jason McIntosh
+      - Allow to parse RelaxNG without accessing network
+          - Thanks to PALI
+      - Allow to parse XML Schema without accessing network
+          - Thanks to PALI
+      - Add Test-Count assertion count checking using
+        https://metacpan.org/pod/Code::TidyAll::Plugin::TestCount
+
+-------------------------------------------------------------------

Old:
----
  XML-LibXML-2.0201.tar.gz

New:
----
  XML-LibXML-2.0202.tar.gz

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

Other differences:
------------------
++++++ perl-XML-LibXML.spec ++++++
--- /var/tmp/diff_new_pack.qcKhsk/_old  2020-01-21 20:57:08.380758738 +0100
+++ /var/tmp/diff_new_pack.qcKhsk/_new  2020-01-21 20:57:08.380758738 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-XML-LibXML
 #
-# Copyright (c) 2019 SUSE LLC.
+# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,16 +16,17 @@
 #
 
 
-%define cpan_name XML-LibXML
 Name:           perl-XML-LibXML
-Version:        2.0201
+Version:        2.0202
 Release:        0
+%define cpan_name XML-LibXML
 Summary:        Perl Binding for libxml2
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Group:          Development/Libraries/Perl
-URL:            https://metacpan.org/release/%{cpan_name}
+Url:            https://metacpan.org/release/%{cpan_name}
 Source0:        
https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/%{cpan_name}-%{version}.tar.gz
 Source1:        cpanspec.yml
+BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
 BuildRequires:  perl(Alien::Libxml2)

++++++ XML-LibXML-2.0201.tar.gz -> XML-LibXML-2.0202.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/Changes 
new/XML-LibXML-2.0202/Changes
--- old/XML-LibXML-2.0201/Changes       2019-05-25 19:42:51.000000000 +0200
+++ new/XML-LibXML-2.0202/Changes       2020-01-13 10:12:10.000000000 +0100
@@ -1,5 +1,17 @@
 Revision history for Perl extension XML::LibXML
 
+2.0202  2020-01-13
+    - Disable loading external DTDs or external entities by default
+        - Thanks to Tim Retout
+    - Docs: Noting that HTTPS doesn't work for schema-loading either.
+        - Thanks to Jason McIntosh
+    - Allow to parse RelaxNG without accessing network
+        - Thanks to PALI
+    - Allow to parse XML Schema without accessing network
+        - Thanks to PALI
+    - Add Test-Count assertion count checking using
+      https://metacpan.org/pod/Code::TidyAll::Plugin::TestCount
+
 2.0201  2019-05-25
     - Set MIN_PERL_VERSION to 5.8.1.
     - Alien::Libxml2 Makefile.PL cleanups.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/LibXML.pm 
new/XML-LibXML-2.0202/LibXML.pm
--- old/XML-LibXML-2.0201/LibXML.pm     2019-05-25 19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/LibXML.pm     2020-01-13 10:12:12.000000000 +0100
@@ -29,7 +29,7 @@
 use IO::Handle; # for FH reads called as methods
 
 BEGIN {
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 $ABI_VERSION = 2;
 require Exporter;
 require DynaLoader;
@@ -261,7 +261,7 @@
   HTML_PARSE_NOERROR  => (1<<5),       # suppress error reports
 };
 
-$XML_LIBXML_PARSE_DEFAULTS = ( XML_PARSE_NODICT | XML_PARSE_DTDLOAD | 
XML_PARSE_NOENT );
+$XML_LIBXML_PARSE_DEFAULTS = ( XML_PARSE_NODICT );
 
 # this hash is made global so that applications can add names for new
 # libxml2 parser flags as temporary workaround
@@ -366,6 +366,7 @@
       }
       # parser flags
       $opts{no_blanks} = !$opts{keep_blanks} if exists($opts{keep_blanks}) and 
!exists($opts{no_blanks});
+      $opts{load_ext_dtd} = $opts{expand_entities} if 
exists($opts{expand_entities}) and !exists($opts{load_ext_dtd});
 
       for (keys %OUR_FLAGS) {
        $self->{$OUR_FLAGS{$_}} = delete $opts{$_};
@@ -2078,13 +2079,13 @@
 
     my $self = undef;
     if ( defined $args{location} ) {
-        $self = $class->parse_location( $args{location} );
+        $self = $class->parse_location( $args{location}, 
XML::LibXML->_parser_options(\%args), $args{recover} );
     }
     elsif ( defined $args{string} ) {
-        $self = $class->parse_buffer( $args{string} );
+        $self = $class->parse_buffer( $args{string}, 
XML::LibXML->_parser_options(\%args), $args{recover} );
     }
     elsif ( defined $args{DOM} ) {
-        $self = $class->parse_document( $args{DOM} );
+        $self = $class->parse_document( $args{DOM}, 
XML::LibXML->_parser_options(\%args), $args{recover} );
     }
 
     return $self;
@@ -2102,10 +2103,10 @@
 
     my $self = undef;
     if ( defined $args{location} ) {
-        $self = $class->parse_location( $args{location} );
+        $self = $class->parse_location( $args{location}, 
XML::LibXML->_parser_options(\%args), $args{recover} );
     }
     elsif ( defined $args{string} ) {
-        $self = $class->parse_buffer( $args{string} );
+        $self = $class->parse_buffer( $args{string}, 
XML::LibXML->_parser_options(\%args), $args{recover} );
     }
 
     return $self;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/LibXML.pod 
new/XML-LibXML-2.0202/LibXML.pod
--- old/XML-LibXML-2.0201/LibXML.pod    2019-05-25 19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/LibXML.pod    2020-01-13 10:13:12.000000000 +0100
@@ -507,7 +507,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/LibXML.xs 
new/XML-LibXML-2.0202/LibXML.xs
--- old/XML-LibXML-2.0201/LibXML.xs     2017-10-28 19:44:51.000000000 +0200
+++ new/XML-LibXML-2.0202/LibXML.xs     2019-11-18 20:24:05.000000000 +0100
@@ -7337,11 +7337,14 @@
 
 
 xmlRelaxNGPtr
-parse_location( self, url )
+parse_location( self, url, parser_options = 0, recover = FALSE )
         char * url
+        int parser_options
+        bool recover
     PREINIT:
         const char * CLASS = "XML::LibXML::RelaxNG";
         xmlRelaxNGParserCtxtPtr rngctxt = NULL;
+        xmlExternalEntityLoader old_ext_ent_loader = NULL;
         PREINIT_SAVED_ERROR
     CODE:
         INIT_ERROR_HANDLER;
@@ -7357,20 +7360,33 @@
                                   
(xmlRelaxNGValidityWarningFunc)LibXML_error_handler_ctx,
                                   saved_error );
 #endif
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) ) {
+            old_ext_ent_loader = xmlGetExternalEntityLoader();
+            xmlSetExternalEntityLoader( xmlNoNetExternalEntityLoader );
+        }
+
         RETVAL = xmlRelaxNGParse( rngctxt );
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) )
+            xmlSetExternalEntityLoader( 
(xmlExternalEntityLoader)old_ext_ent_loader );
+
         xmlRelaxNGFreeParserCtxt( rngctxt );
        CLEANUP_ERROR_HANDLER;
-        REPORT_ERROR((RETVAL == NULL) ? 0 : 1);
+        REPORT_ERROR((RETVAL == NULL) ? 0 : recover);
     OUTPUT:
         RETVAL
 
 
 xmlRelaxNGPtr
-parse_buffer( self, perlstring )
+parse_buffer( self, perlstring, parser_options = 0, recover = FALSE )
         SV * perlstring
+        int parser_options
+        bool recover
     PREINIT:
         const char * CLASS = "XML::LibXML::RelaxNG";
         xmlRelaxNGParserCtxtPtr rngctxt = NULL;
+        xmlExternalEntityLoader old_ext_ent_loader = NULL;
         char * string = NULL;
         STRLEN len    = 0;
         PREINIT_SAVED_ERROR
@@ -7393,20 +7409,33 @@
                                   
(xmlRelaxNGValidityWarningFunc)LibXML_error_handler_ctx,
                                   saved_error );
 #endif
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) ) {
+            old_ext_ent_loader = xmlGetExternalEntityLoader();
+            xmlSetExternalEntityLoader( xmlNoNetExternalEntityLoader );
+        }
+
         RETVAL = xmlRelaxNGParse( rngctxt );
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) )
+            xmlSetExternalEntityLoader( 
(xmlExternalEntityLoader)old_ext_ent_loader );
+
         xmlRelaxNGFreeParserCtxt( rngctxt );
        CLEANUP_ERROR_HANDLER;
-        REPORT_ERROR((RETVAL == NULL) ? 0 : 1);
+        REPORT_ERROR((RETVAL == NULL) ? 0 : recover);
     OUTPUT:
         RETVAL
 
 
 xmlRelaxNGPtr
-parse_document( self, doc )
+parse_document( self, doc, parser_options = 0, recover = FALSE )
         xmlDocPtr doc
+        int parser_options
+        bool recover
     PREINIT:
         const char * CLASS = "XML::LibXML::RelaxNG";
         xmlRelaxNGParserCtxtPtr rngctxt = NULL;
+        xmlExternalEntityLoader old_ext_ent_loader = NULL;
         PREINIT_SAVED_ERROR
     CODE:
         INIT_ERROR_HANDLER;
@@ -7422,10 +7451,20 @@
                                   
(xmlRelaxNGValidityWarningFunc)LibXML_error_handler_ctx,
                                   saved_error );
 #endif
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) ) {
+            old_ext_ent_loader = xmlGetExternalEntityLoader();
+            xmlSetExternalEntityLoader( xmlNoNetExternalEntityLoader );
+        }
+
         RETVAL = xmlRelaxNGParse( rngctxt );
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) )
+            xmlSetExternalEntityLoader( 
(xmlExternalEntityLoader)old_ext_ent_loader );
+
         xmlRelaxNGFreeParserCtxt( rngctxt );
        CLEANUP_ERROR_HANDLER;
-        REPORT_ERROR((RETVAL == NULL) ? 0 : 1);
+        REPORT_ERROR((RETVAL == NULL) ? 0 : recover);
     OUTPUT:
         RETVAL
 
@@ -7487,11 +7526,14 @@
 
 
 xmlSchemaPtr
-parse_location( self, url )
+parse_location( self, url, parser_options = 0, recover = FALSE )
         char * url
+        int parser_options
+        bool recover
     PREINIT:
         const char * CLASS = "XML::LibXML::Schema";
         xmlSchemaParserCtxtPtr rngctxt = NULL;
+        xmlExternalEntityLoader old_ext_ent_loader = NULL;
         PREINIT_SAVED_ERROR
     CODE:
         INIT_ERROR_HANDLER;
@@ -7509,20 +7551,32 @@
                                   
(xmlSchemaValidityWarningFunc)LibXML_error_handler_ctx,
                                   saved_error );
 
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) ) {
+            old_ext_ent_loader = xmlGetExternalEntityLoader();
+            xmlSetExternalEntityLoader( xmlNoNetExternalEntityLoader );
+        }
+
         RETVAL = xmlSchemaParse( rngctxt );
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) )
+            xmlSetExternalEntityLoader( 
(xmlExternalEntityLoader)old_ext_ent_loader );
+
         xmlSchemaFreeParserCtxt( rngctxt );
        CLEANUP_ERROR_HANDLER;
-        REPORT_ERROR((RETVAL == NULL) ? 0 : 1);
+        REPORT_ERROR((RETVAL == NULL) ? 0 : recover);
     OUTPUT:
         RETVAL
 
 
 xmlSchemaPtr
-parse_buffer( self, perlstring )
+parse_buffer( self, perlstring, parser_options = 0, recover = FALSE )
         SV * perlstring
+        int parser_options
+        bool recover
     PREINIT:
         const char * CLASS = "XML::LibXML::Schema";
         xmlSchemaParserCtxtPtr rngctxt = NULL;
+        xmlExternalEntityLoader old_ext_ent_loader = NULL;
         char * string = NULL;
         STRLEN len    = 0;
         PREINIT_SAVED_ERROR
@@ -7547,10 +7601,19 @@
                                   
(xmlSchemaValidityWarningFunc)LibXML_error_handler_ctx,
                                   saved_error );
 
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) ) {
+            old_ext_ent_loader = xmlGetExternalEntityLoader();
+            xmlSetExternalEntityLoader( xmlNoNetExternalEntityLoader );
+        }
+
         RETVAL = xmlSchemaParse( rngctxt );
+
+        if ( EXTERNAL_ENTITY_LOADER_FUNC == NULL && (parser_options & 
XML_PARSE_NONET) )
+            xmlSetExternalEntityLoader( 
(xmlExternalEntityLoader)old_ext_ent_loader );
+
         xmlSchemaFreeParserCtxt( rngctxt );
         CLEANUP_ERROR_HANDLER;
-        REPORT_ERROR((RETVAL == NULL) ? 0 : 1);
+        REPORT_ERROR((RETVAL == NULL) ? 0 : recover);
     OUTPUT:
         RETVAL
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/MANIFEST 
new/XML-LibXML-2.0202/MANIFEST
--- old/XML-LibXML-2.0201/MANIFEST      2019-05-25 19:45:35.000000000 +0200
+++ new/XML-LibXML-2.0202/MANIFEST      2020-01-13 10:15:22.000000000 +0100
@@ -203,10 +203,12 @@
 test/relaxng/demo3.rng
 test/relaxng/demo4.rng
 test/relaxng/invaliddemo.xml
+test/relaxng/net.rng
 test/relaxng/schema.rng
 test/schema/badschema.xsd
 test/schema/demo.xml
 test/schema/invaliddemo.xml
+test/schema/net.xsd
 test/schema/schema.xsd
 test/textReader/countries.xml
 test/xinclude/entity.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/META.json 
new/XML-LibXML-2.0202/META.json
--- old/XML-LibXML-2.0201/META.json     2019-05-25 19:45:35.000000000 +0200
+++ new/XML-LibXML-2.0202/META.json     2020-01-13 10:15:22.000000000 +0100
@@ -96,6 +96,6 @@
          "web" : "https://github.com/shlomif/perl-XML-LibXML";
       }
    },
-   "version" : "2.0201",
-   "x_serialization_backend" : "JSON::PP version 2.97001"
+   "version" : "2.0202",
+   "x_serialization_backend" : "JSON::PP version 4.02"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/META.yml 
new/XML-LibXML-2.0202/META.yml
--- old/XML-LibXML-2.0201/META.yml      2019-05-25 19:45:35.000000000 +0200
+++ new/XML-LibXML-2.0202/META.yml      2020-01-13 10:15:22.000000000 +0100
@@ -68,5 +68,5 @@
   warnings: '0'
 resources:
   repository: https://github.com/shlomif/perl-XML-LibXML.git
-version: '2.0201'
+version: '2.0202'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/docs/libxml.dbk 
new/XML-LibXML-2.0202/docs/libxml.dbk
--- old/XML-LibXML-2.0201/docs/libxml.dbk       2019-05-25 19:44:01.000000000 
+0200
+++ new/XML-LibXML-2.0202/docs/libxml.dbk       2020-01-13 10:13:12.000000000 
+0100
@@ -22,7 +22,7 @@
         </authorgroup>
 
 
-        <edition>2.0201</edition>
+        <edition>2.0202</edition>
         <copyright>
             <year>2001-2007</year>
             <holder>AxKit.com Ltd</holder>
@@ -1126,7 +1126,7 @@
                          </funcsynopsisinfo>
                          </funcsynopsis>
                          <para>This function is available since XML::LibXML 
1.70. It provides easy to use interface to the XML parser that parses
-                         given file (or URL), string, or input stream
+                         given file (or non-HTTPS URL), string, or input stream
                          to a DOM tree. The arguments
                          can be passed in a HASH reference
                          or as name => value pairs.
@@ -1143,6 +1143,11 @@
                          and <xref linkend="parser-options"/>
                          for more information.
                          </para>
+                         <para>Note that, due to a limitation in the 
underlying libxml2
+                         library, this call does not recognize HTTPS-based 
URLs. (It
+                         will treat an HTTPS URL as a filename, likely 
throwing a "No such
+                         file or directory" exception.)
+                         </para>
                          </listitem>
                    </varlistentry>
                     <varlistentry>
@@ -1269,10 +1274,11 @@
                             </funcsynopsis>
 
                             <para>This function parses an XML document from a 
file or network;
-                             $xmlfilename can be either a filename or an URL.
+                             $xmlfilename can be either a filename or a 
(non-HTTPS) URL.
                               Note that for parsing files, this function is 
the fastest choice,
                              about 6-8 times faster then parse_fh().
                             </para>
+                            
                         </listitem>
                     </varlistentry>
 
@@ -1319,7 +1325,7 @@
                             </funcsynopsis>
 
                             <para>Similar to parse_file() but parses HTML 
(strict) documents;
-                              $htmlfile can be filename or URL.
+                              $htmlfile can be filename or (non-HTTPS) URL.
                             </para>
                             <para>An optional second argument can be
                                used to pass some options to the HTML
@@ -3246,7 +3252,7 @@
                     </funcsynopsis>
 
                     <para>This will unbind the Child Node from its parent 
<function>$node</function>. The function returns the unbound node. If
-                    <function>oldNode</function> is not a child of the given 
Node the function will fail.</para>
+                    <function>$childnode</function> is not a child of the 
given Node the function will fail.</para>
                 </listitem>
             </varlistentry>
 
@@ -5780,16 +5786,19 @@
 
                 <listitem>
                     <funcsynopsis>
-                        <funcsynopsisinfo>$rngschema = 
XML::LibXML::RelaxNG-&gt;new( location =&gt; $filename_or_url );
-$rngschema = XML::LibXML::RelaxNG-&gt;new( string =&gt; $xmlschemastring );
-$rngschema = XML::LibXML::RelaxNG-&gt;new( DOM =&gt; $doc );</funcsynopsisinfo>
+                        <funcsynopsisinfo>$rngschema = 
XML::LibXML::RelaxNG-&gt;new( location =&gt; $filename_or_url, no_network =&gt; 
1 );
+$rngschema = XML::LibXML::RelaxNG-&gt;new( string =&gt; $xmlschemastring, 
no_network =&gt; 1 );
+$rngschema = XML::LibXML::RelaxNG-&gt;new( DOM =&gt; $doc, no_network =&gt; 1 
);</funcsynopsisinfo>
                     </funcsynopsis>
 
-                    <para>The constructor of XML::LibXML::RelaxNG may get 
called with either one of three parameters. The parameter tells the class from 
which
-                    source it should generate a validation schema. It is 
important, that each schema only have a single source.</para>
+                    <para>The constructor of XML::LibXML::RelaxNG needs to be 
called with list of parameters. At least location, string or DOM parameter is 
required to
+                    specify source of schema. Optional parameter no_network 
set to 1 cause that parser would not access network and optional parameter 
recover
+                    set 1 cause that parser would not call die() on 
errors.</para>
+
+                    <para>It is important, that each schema only have a single 
source.</para>
 
                 <para>The location parameter allows one to parse a schema
-                    from the filesystem or a URL.</para>
+                    from the filesystem or a (non-HTTPS) URL.</para>
 
                     <para>The string parameter will parse the schema from the 
given XML string.</para>
 
@@ -5845,15 +5854,18 @@
 
                 <listitem>
                     <funcsynopsis>
-                        <funcsynopsisinfo>$xmlschema = 
XML::LibXML::Schema-&gt;new( location =&gt; $filename_or_url );
-$xmlschema = XML::LibXML::Schema-&gt;new( string =&gt; $xmlschemastring 
);</funcsynopsisinfo>
+                        <funcsynopsisinfo>$xmlschema = 
XML::LibXML::Schema-&gt;new( location =&gt; $filename_or_url, no_network =&gt; 
1 );
+$xmlschema = XML::LibXML::Schema-&gt;new( string =&gt; $xmlschemastring, 
no_network =&gt; 1 );</funcsynopsisinfo>
                     </funcsynopsis>
 
-                    <para>The constructor of XML::LibXML::Schema may get 
called with either one of two parameters. The parameter tells the class from 
which
-                    source it should generate a validation schema. It is 
important, that each schema only have a single source.</para>
+                    <para>The constructor of XML::LibXML::Schema needs to be 
called with list of parameters. At least location or string parameter is 
required to
+                    specify source of schema. Optional parameter no_network 
set to 1 cause that parser would not access network and optional parameter 
recover
+                    set 1 cause that parser would not call die() on 
errors.</para>
+
+                    <para>It is important, that each schema only have a single 
source.</para>
 
                 <para>The location parameter allows one to parse a schema
-                    from the filesystem or a URL.</para>
+                    from the filesystem or a (non-HTTPS) URL.</para>
 
                     <para>The string parameter will parse the schema from the 
given XML string.</para>
 
@@ -6322,7 +6334,7 @@
           <varlistentry>
             <term>location</term>
             <listitem>
-              <para>Read XML from a local file or URL.</para>
+              <para>Read XML from a local file or (non-HTTPS) URL.</para>
             </listitem>
           </varlistentry>
           <varlistentry>
@@ -6367,7 +6379,7 @@
             <term>RelaxNG => $rng_schema</term>
             <listitem>
               <para>can be used to pass either a <xref 
linkend="XML-LibXML-RelaxNG"/>
-               object or a filename or URL of a RelaxNG schema to the
+               object or a filename or (non-HTTPS) URL of a RelaxNG schema to 
the
                constructor. The schema is then used to validate the
                document as it is processed.</para>
             </listitem>
@@ -6376,7 +6388,7 @@
             <term>Schema => $xsd_schema</term>
             <listitem>
               <para>can be used to pass either a <xref 
linkend="XML-LibXML-Schema"/>
-               object or a filename or URL of a W3C XSD schema to the
+               object or a filename or (non-HTTPS) URL of a W3C XSD schema to 
the
                constructor. The schema is then used to validate the
                document as it is processed.</para>
             </listitem>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Attr.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Attr.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Attr.pod       2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Attr.pod       2020-01-13 
10:13:13.000000000 +0100
@@ -121,7 +121,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/AttributeHash.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/AttributeHash.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/AttributeHash.pm       2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/AttributeHash.pm       2020-01-13 
10:12:12.000000000 +0100
@@ -7,7 +7,7 @@
 our @ISA = qw/Tie::Hash/;
 
 use vars qw($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 BEGIN
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Boolean.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Boolean.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Boolean.pm     2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Boolean.pm     2020-01-13 
10:12:12.000000000 +0100
@@ -16,7 +16,7 @@
 
 use vars qw ($VERSION);
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use overload
         '""' => \&value,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/CDATASection.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/CDATASection.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/CDATASection.pod       2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/CDATASection.pod       2020-01-13 
10:13:13.000000000 +0100
@@ -45,7 +45,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Comment.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Comment.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Comment.pod    2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Comment.pod    2020-01-13 
10:13:13.000000000 +0100
@@ -46,7 +46,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Common.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Common.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Common.pm      2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Common.pm      2020-01-13 
10:12:12.000000000 +0100
@@ -24,7 +24,7 @@
 
 @ISA = qw(Exporter);
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use XML::LibXML qw(:libxml);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Common.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Common.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Common.pod     2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Common.pod     2020-01-13 
10:13:13.000000000 +0100
@@ -116,7 +116,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/DOM.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/DOM.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/DOM.pod        2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/DOM.pod        2020-01-13 
10:13:12.000000000 +0100
@@ -129,7 +129,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Devel.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Devel.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Devel.pm       2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Devel.pm       2020-01-13 
10:12:12.000000000 +0100
@@ -12,7 +12,7 @@
 use XML::LibXML;
 
 use vars qw ($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use 5.008_000;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Document.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Document.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Document.pod   2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Document.pod   2020-01-13 
10:13:12.000000000 +0100
@@ -683,7 +683,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/XML-LibXML-2.0201/lib/XML/LibXML/DocumentFragment.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/DocumentFragment.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/DocumentFragment.pod   2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/DocumentFragment.pod   2020-01-13 
10:13:13.000000000 +0100
@@ -27,7 +27,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Dtd.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Dtd.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Dtd.pod        2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Dtd.pod        2020-01-13 
10:13:13.000000000 +0100
@@ -89,7 +89,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Element.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Element.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Element.pod    2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Element.pod    2020-01-13 
10:13:13.000000000 +0100
@@ -382,7 +382,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/ErrNo.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/ErrNo.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/ErrNo.pm       2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/ErrNo.pm       2020-01-13 
10:12:12.000000000 +0100
@@ -14,7 +14,7 @@
 use warnings;
 use vars qw($VERSION);
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use constant ERR_OK                               => 0;
 use constant ERR_INTERNAL_ERROR                   => 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/ErrNo.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/ErrNo.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/ErrNo.pod      2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/ErrNo.pod      2020-01-13 
10:13:13.000000000 +0100
@@ -17,7 +17,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Error.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Error.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Error.pm       2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Error.pm       2020-01-13 
10:12:12.000000000 +0100
@@ -29,7 +29,7 @@
   fallback => 1;
 
 $WARNINGS = 0; # 0: suppress, 1: report via warn, 2: report via die
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use constant XML_ERR_NONE            => 0;
 use constant XML_ERR_WARNING         => 1; # A simple warning
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Error.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Error.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Error.pod      2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Error.pod      2020-01-13 
10:13:13.000000000 +0100
@@ -244,7 +244,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/InputCallback.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/InputCallback.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/InputCallback.pod      2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/InputCallback.pod      2020-01-13 
10:13:13.000000000 +0100
@@ -280,7 +280,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Literal.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Literal.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Literal.pm     2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Literal.pm     2020-01-13 
10:12:12.000000000 +0100
@@ -16,7 +16,7 @@
 use warnings;
 
 use vars qw ($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use overload
                '""' => \&value,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Namespace.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Namespace.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Namespace.pod  2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Namespace.pod  2020-01-13 
10:13:13.000000000 +0100
@@ -141,7 +141,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Node.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Node.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Node.pod       2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Node.pod       2020-01-13 
10:13:13.000000000 +0100
@@ -174,7 +174,7 @@
 
   $childnode = $node->removeChild( $childnode );
 
-This will unbind the Child Node from its parent C<<<<<< $node >>>>>>. The 
function returns the unbound node. If C<<<<<< oldNode >>>>>> is not a child of 
the given Node the function will fail.
+This will unbind the Child Node from its parent C<<<<<< $node >>>>>>. The 
function returns the unbound node. If C<<<<<< $childnode >>>>>> is not a child 
of the given Node the function will fail.
 
 
 =item replaceChild
@@ -763,7 +763,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/NodeList.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/NodeList.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/NodeList.pm    2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/NodeList.pm    2020-01-13 
10:12:12.000000000 +0100
@@ -17,7 +17,7 @@
 use XML::LibXML::Number;
 
 use vars qw($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use overload
         '""' => \&to_literal,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Number.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Number.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Number.pm      2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Number.pm      2020-01-13 
10:12:12.000000000 +0100
@@ -14,7 +14,7 @@
 use warnings;
 
 use vars qw ($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use overload
         '""' => \&value,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/PI.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/PI.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/PI.pod 2019-05-25 19:44:01.000000000 
+0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/PI.pod 2020-01-13 10:13:13.000000000 
+0100
@@ -74,7 +74,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Parser.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Parser.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Parser.pod     2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Parser.pod     2020-01-13 
10:13:12.000000000 +0100
@@ -174,13 +174,17 @@
 
 
 This function is available since XML::LibXML 1.70. It provides easy to use
-interface to the XML parser that parses given file (or URL), string, or input
-stream to a DOM tree. The arguments can be passed in a HASH reference or as
-name => value pairs. The function can be called as a class method or an object
-method. In both cases it internally creates a new parser instance passing the
-specified parser options; if called as an object method, it clones the original
-parser (preserving its settings) and additionally applies the specified options
-to the new parser. See the constructor C<<<<<< new >>>>>> and L<<<<<< Parser 
Options >>>>>> for more information.
+interface to the XML parser that parses given file (or non-HTTPS URL), string,
+or input stream to a DOM tree. The arguments can be passed in a HASH reference
+or as name => value pairs. The function can be called as a class method or an
+object method. In both cases it internally creates a new parser instance
+passing the specified parser options; if called as an object method, it clones
+the original parser (preserving its settings) and additionally applies the
+specified options to the new parser. See the constructor C<<<<<< new >>>>>> 
and L<<<<<< Parser Options >>>>>> for more information.
+
+Note that, due to a limitation in the underlying libxml2 library, this call
+does not recognize HTTPS-based URLs. (It will treat an HTTPS URL as a filename,
+likely throwing a "No such file or directory" exception.)
 
 
 =item load_html
@@ -269,8 +273,8 @@
   $doc = $parser->parse_file( $xmlfilename );
 
 This function parses an XML document from a file or network; $xmlfilename can
-be either a filename or an URL. Note that for parsing files, this function is
-the fastest choice, about 6-8 times faster then parse_fh().
+be either a filename or a (non-HTTPS) URL. Note that for parsing files, this
+function is the fastest choice, about 6-8 times faster then parse_fh().
 
 
 =item parse_fh
@@ -308,7 +312,7 @@
   $doc = $parser->parse_html_file( $htmlfile, \%opts );
 
 Similar to parse_file() but parses HTML (strict) documents; $htmlfile can be
-filename or URL.
+filename or (non-HTTPS) URL.
 
 An optional second argument can be used to pass some options to the HTML parser
 as a HASH reference. See options labeled with HTML in L<<<<<< Parser Options 
>>>>>>.
@@ -984,7 +988,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Pattern.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Pattern.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Pattern.pod    2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Pattern.pod    2020-01-13 
10:13:13.000000000 +0100
@@ -94,7 +94,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Reader.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/Reader.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Reader.pm      2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Reader.pm      2020-01-13 
10:12:12.000000000 +0100
@@ -14,7 +14,7 @@
 use warnings;
 
 use vars qw ($VERSION);
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use 5.008_000;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Reader.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Reader.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Reader.pod     2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Reader.pod     2020-01-13 
10:13:13.000000000 +0100
@@ -90,7 +90,7 @@
 
 =item location
 
-Read XML from a local file or URL.
+Read XML from a local file or (non-HTTPS) URL.
 
 
 =item string
@@ -129,14 +129,14 @@
 
 =item RelaxNG => $rng_schema
 
-can be used to pass either a L<<<<<< XML::LibXML::RelaxNG >>>>>> object or a 
filename or URL of a RelaxNG schema to the constructor. The schema
-is then used to validate the document as it is processed.
+can be used to pass either a L<<<<<< XML::LibXML::RelaxNG >>>>>> object or a 
filename or (non-HTTPS) URL of a RelaxNG schema to the constructor.
+The schema is then used to validate the document as it is processed.
 
 
 =item Schema => $xsd_schema
 
-can be used to pass either a L<<<<<< XML::LibXML::Schema >>>>>> object or a 
filename or URL of a W3C XSD schema to the constructor. The schema
-is then used to validate the document as it is processed.
+can be used to pass either a L<<<<<< XML::LibXML::Schema >>>>>> object or a 
filename or (non-HTTPS) URL of a W3C XSD schema to the constructor.
+The schema is then used to validate the document as it is processed.
 
 
 =item ...
@@ -657,7 +657,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/RegExp.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/RegExp.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/RegExp.pod     2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/RegExp.pod     2020-01-13 
10:13:13.000000000 +0100
@@ -58,7 +58,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/RelaxNG.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/RelaxNG.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/RelaxNG.pod    2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/RelaxNG.pod    2020-01-13 
10:13:13.000000000 +0100
@@ -9,9 +9,9 @@
   use XML::LibXML;
   $doc = XML::LibXML->new->parse_file($url);
 
-  $rngschema = XML::LibXML::RelaxNG->new( location => $filename_or_url );
-  $rngschema = XML::LibXML::RelaxNG->new( string => $xmlschemastring );
-  $rngschema = XML::LibXML::RelaxNG->new( DOM => $doc );
+  $rngschema = XML::LibXML::RelaxNG->new( location => $filename_or_url, 
no_network => 1 );
+  $rngschema = XML::LibXML::RelaxNG->new( string => $xmlschemastring, 
no_network => 1 );
+  $rngschema = XML::LibXML::RelaxNG->new( DOM => $doc, no_network => 1 );
   eval { $rngschema->validate( $doc ); };
 
 =head1 DESCRIPTION
@@ -27,17 +27,20 @@
 
 =item new
 
-  $rngschema = XML::LibXML::RelaxNG->new( location => $filename_or_url );
-  $rngschema = XML::LibXML::RelaxNG->new( string => $xmlschemastring );
-  $rngschema = XML::LibXML::RelaxNG->new( DOM => $doc );
-
-The constructor of XML::LibXML::RelaxNG may get called with either one of three
-parameters. The parameter tells the class from which source it should generate
-a validation schema. It is important, that each schema only have a single
-source.
+  $rngschema = XML::LibXML::RelaxNG->new( location => $filename_or_url, 
no_network => 1 );
+  $rngschema = XML::LibXML::RelaxNG->new( string => $xmlschemastring, 
no_network => 1 );
+  $rngschema = XML::LibXML::RelaxNG->new( DOM => $doc, no_network => 1 );
+
+The constructor of XML::LibXML::RelaxNG needs to be called with list of
+parameters. At least location, string or DOM parameter is required to specify
+source of schema. Optional parameter no_network set to 1 cause that parser
+would not access network and optional parameter recover set 1 cause that parser
+would not call die() on errors.
+
+It is important, that each schema only have a single source.
 
 The location parameter allows one to parse a schema from the filesystem or a
-URL.
+(non-HTTPS) URL.
 
 The string parameter will parse the schema from the given XML string.
 
@@ -70,7 +73,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Builder.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Builder.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Builder.pm 2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Builder.pm 2020-01-13 
10:12:12.000000000 +0100
@@ -21,7 +21,7 @@
   return $XML::LibXML::__threads_shared ? 0 : 1;
 }
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 sub new {
     my $class = shift;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Builder.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Builder.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Builder.pod        2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Builder.pod        2020-01-13 
10:13:12.000000000 +0100
@@ -38,7 +38,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Generator.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Generator.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Generator.pm       2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Generator.pm       2020-01-13 
10:12:12.000000000 +0100
@@ -15,7 +15,7 @@
 use XML::LibXML;
 use vars qw ($VERSION);
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 sub CLONE_SKIP {
   return $XML::LibXML::__threads_shared ? 0 : 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Parser.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Parser.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX/Parser.pm  2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX/Parser.pm  2020-01-13 
10:12:12.000000000 +0100
@@ -18,7 +18,7 @@
 use XML::SAX::Base;
 use XML::SAX::DocumentLocator;
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 @ISA = ('XML::SAX::Base');
 
 sub CLONE_SKIP {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX.pm 2019-05-25 19:43:22.000000000 
+0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX.pm 2020-01-13 10:12:12.000000000 
+0100
@@ -14,7 +14,7 @@
 
 use vars qw($VERSION @ISA);
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 use XML::LibXML;
 use XML::SAX::Base;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/SAX.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/SAX.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/SAX.pod        2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/SAX.pod        2020-01-13 
10:13:12.000000000 +0100
@@ -47,7 +47,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Schema.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Schema.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Schema.pod     2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Schema.pod     2020-01-13 
10:13:13.000000000 +0100
@@ -9,8 +9,8 @@
   use XML::LibXML;
   $doc = XML::LibXML->new->parse_file($url);
 
-  $xmlschema = XML::LibXML::Schema->new( location => $filename_or_url );
-  $xmlschema = XML::LibXML::Schema->new( string => $xmlschemastring );
+  $xmlschema = XML::LibXML::Schema->new( location => $filename_or_url, 
no_network => 1 );
+  $xmlschema = XML::LibXML::Schema->new( string => $xmlschemastring, 
no_network => 1 );
   eval { $xmlschema->validate( $doc ); };
 
 =head1 DESCRIPTION
@@ -27,16 +27,19 @@
 
 =item new
 
-  $xmlschema = XML::LibXML::Schema->new( location => $filename_or_url );
-  $xmlschema = XML::LibXML::Schema->new( string => $xmlschemastring );
+  $xmlschema = XML::LibXML::Schema->new( location => $filename_or_url, 
no_network => 1 );
+  $xmlschema = XML::LibXML::Schema->new( string => $xmlschemastring, 
no_network => 1 );
 
-The constructor of XML::LibXML::Schema may get called with either one of two
-parameters. The parameter tells the class from which source it should generate
-a validation schema. It is important, that each schema only have a single
-source.
+The constructor of XML::LibXML::Schema needs to be called with list of
+parameters. At least location or string parameter is required to specify source
+of schema. Optional parameter no_network set to 1 cause that parser would not
+access network and optional parameter recover set 1 cause that parser would not
+call die() on errors.
+
+It is important, that each schema only have a single source.
 
 The location parameter allows one to parse a schema from the filesystem or a
-URL.
+(non-HTTPS) URL.
 
 The string parameter will parse the schema from the given XML string.
 
@@ -66,7 +69,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/Text.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/Text.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/Text.pod       2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/Text.pod       2020-01-13 
10:13:13.000000000 +0100
@@ -170,7 +170,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/XPathContext.pm 
new/XML-LibXML-2.0202/lib/XML/LibXML/XPathContext.pm
--- old/XML-LibXML-2.0201/lib/XML/LibXML/XPathContext.pm        2019-05-25 
19:43:22.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/XPathContext.pm        2020-01-13 
10:12:12.000000000 +0100
@@ -17,7 +17,7 @@
 use XML::LibXML;
 use XML::LibXML::NodeList;
 
-$VERSION = "2.0201"; # VERSION TEMPLATE: DO NOT CHANGE
+$VERSION = "2.0202"; # VERSION TEMPLATE: DO NOT CHANGE
 
 # should LibXML XPath data types be used for simple objects
 # when passing parameters to extension functions (default: no)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/XPathContext.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/XPathContext.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/XPathContext.pod       2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/XPathContext.pod       2020-01-13 
10:13:13.000000000 +0100
@@ -362,7 +362,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/lib/XML/LibXML/XPathExpression.pod 
new/XML-LibXML-2.0202/lib/XML/LibXML/XPathExpression.pod
--- old/XML-LibXML-2.0201/lib/XML/LibXML/XPathExpression.pod    2019-05-25 
19:44:01.000000000 +0200
+++ new/XML-LibXML-2.0202/lib/XML/LibXML/XPathExpression.pod    2020-01-13 
10:13:13.000000000 +0100
@@ -52,7 +52,7 @@
 
 =head1 VERSION
 
-2.0201
+2.0202
 
 =head1 COPYRIGHT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/00-report-prereqs.t 
new/XML-LibXML-2.0202/t/00-report-prereqs.t
--- old/XML-LibXML-2.0201/t/00-report-prereqs.t 2019-03-23 09:37:06.000000000 
+0100
+++ new/XML-LibXML-2.0202/t/00-report-prereqs.t 2019-12-03 07:02:47.000000000 
+0100
@@ -188,6 +188,7 @@
     );
 }
 
+# TEST
 pass;
 
 # vim: ts=4 sts=4 sw=4 et:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/02parse.t 
new/XML-LibXML-2.0202/t/02parse.t
--- old/XML-LibXML-2.0201/t/02parse.t   2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/02parse.t   2019-12-03 07:05:07.000000000 +0100
@@ -25,6 +25,8 @@
 
 use Errno qw(ENOENT);
 
+# TEST*533
+
 ##
 # test values
 my @goodWFStrings = (
@@ -720,7 +722,7 @@
     my %badstrings = (
                     SIMPLE => '<?xml version="1.0"?>'."\n<A/>\n",
                   );
-    my $parser = XML::LibXML->new;
+    my $parser = XML::LibXML->new(expand_entities => 1);
 
     $parser->validation(1);
     my $doc;
@@ -745,7 +747,7 @@
 <bar/>
 EOXML
 
-    my $parser = XML::LibXML->new;
+    my $parser = XML::LibXML->new(expand_entities => 1);
     $parser->validation(1);
 
     eval { $parser->parse_string( $badxml ); };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/13dtd.t 
new/XML-LibXML-2.0202/t/13dtd.t
--- old/XML-LibXML-2.0201/t/13dtd.t     2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/13dtd.t     2019-11-18 20:26:19.000000000 +0100
@@ -69,7 +69,7 @@
     # TEST
     ok ($@, '->validate throws an exception');
 
-    my $parser = XML::LibXML->new();
+    my $parser = XML::LibXML->new(load_ext_dtd => 1);
     # TEST
     ok ($parser->validation(1), '->validation returns 1');
     # this one is OK as it's well formed (no DTD)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/17callbacks.t 
new/XML-LibXML-2.0202/t/17callbacks.t
--- old/XML-LibXML-2.0201/t/17callbacks.t       2016-05-30 11:01:59.000000000 
+0200
+++ new/XML-LibXML-2.0202/t/17callbacks.t       2019-12-03 06:59:05.000000000 
+0100
@@ -276,7 +276,7 @@
 
 {
     # tests if global callbacks are working
-    my $parser = XML::LibXML->new();
+    my $parser = XML::LibXML->new(load_ext_dtd => 1);
     # TEST
     ok($parser, '$parser was init');
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/18docfree.t 
new/XML-LibXML-2.0202/t/18docfree.t
--- old/XML-LibXML-2.0201/t/18docfree.t 2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/18docfree.t 2019-12-03 07:06:04.000000000 +0100
@@ -9,5 +9,6 @@
   $doc = XML::LibXML::Document->new();
 }
 # used to get "Attempt to free unreferenced scalar" here
-ok(1, 'docfree Out of scope is OK - no "Attempt to free unreferenced scalar"');
+# TEST
+pass('docfree Out of scope is OK - no "Attempt to free unreferenced scalar"');
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/25relaxng.t 
new/XML-LibXML-2.0202/t/25relaxng.t
--- old/XML-LibXML-2.0201/t/25relaxng.t 2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/25relaxng.t 2019-12-03 07:07:49.000000000 +0100
@@ -16,7 +16,7 @@
     use XML::LibXML;
 
     if ( XML::LibXML::LIBXML_VERSION >= 20510 ) {
-        plan tests => 13;
+        plan tests => 17;
     }
     else {
         plan skip_all => 'Skip No RNG Support compiled';
@@ -32,6 +32,7 @@
 my $validfile    = "test/relaxng/demo.xml";
 my $invalidfile  = "test/relaxng/invaliddemo.xml";
 my $demo4        = "test/relaxng/demo4.rng";
+my $netfile      = "test/relaxng/net.rng";
 
 print "# 1 parse schema from a file\n";
 {
@@ -127,5 +128,34 @@
 
 }
 
+print "# 6 check that no_network => 1 works\n";
+{
+    my $rng = eval { XML::LibXML::RelaxNG->new( location => $netfile, 
no_network => 1 ) };
+    # TEST
+    like( $@, qr{I/O error : Attempt to load network entity}, 'RNG from file 
location with external import and no_network => 1 throws an exception.' );
+    # TEST
+    ok( !defined $rng, 'RNG from file location with external import and 
no_network => 1 is not loaded.' );
+}
+{
+    my $rng = eval { XML::LibXML::RelaxNG->new( string => <<'EOF', no_network 
=> 1 ) };
+<?xml version="1.0" encoding="iso-8859-1"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0"; 
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes";>
+  <include href="http://example.com/xml.rng"/>
+  <start>
+    <ref name="include"/>
+  </start>
+  <define name="include">
+    <element name="include">
+      <text/>
+    </element>
+  </define>
+</grammar>
+EOF
+    # TEST
+    like( $@, qr{I/O error : Attempt to load network entity}, 'RNG from buffer 
with external import and no_network => 1 throws an exception.' );
+    # TEST
+    ok( !defined $rng, 'RNG from buffer with external import and no_network => 
1 is not loaded.' );
+}
+
 
 } # Version >= 20510 test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/26schema.t 
new/XML-LibXML-2.0202/t/26schema.t
--- old/XML-LibXML-2.0201/t/26schema.t  2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/26schema.t  2019-12-03 07:18:44.000000000 +0100
@@ -15,7 +15,7 @@
 use XML::LibXML;
 
 if ( XML::LibXML::LIBXML_VERSION >= 20510 ) {
-    plan tests => 8;
+    plan tests => 12;
 }
 else {
     plan skip_all => 'No Schema Support compiled.';
@@ -27,6 +27,7 @@
 my $badfile      = "test/schema/badschema.xsd";
 my $validfile    = "test/schema/demo.xml";
 my $invalidfile  = "test/schema/invaliddemo.xml";
+my $netfile      = "test/schema/net.xsd";
 
 
 # 1 parse schema from a file
@@ -112,3 +113,23 @@
     is( $result, 0, 'validate() with element returns 0' );
 }
 
+# 5 check that no_network => 1 works
+{
+    my $schema = eval { XML::LibXML::Schema->new( location => $netfile, 
no_network => 1 ) };
+    # TEST
+    like( $@, qr{I/O error : Attempt to load network entity}, 'Schema from 
file location with external import and no_network => 1 throws an exception.' );
+    # TEST
+    ok( !defined $schema, 'Schema from file location with external import and 
no_network => 1 is not loaded.' );
+}
+{
+    my $schema = eval { XML::LibXML::Schema->new( string => <<'EOF', 
no_network => 1 ) };
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
+  <xsd:import namespace="http://example.com/namespace"; 
schemaLocation="http://example.com/xml.xsd"/>
+</xsd:schema>
+EOF
+    # TEST
+    like( $@, qr{I/O error : Attempt to load network entity}, 'Schema from 
buffer with external import and no_network => 1 throws an exception.' );
+    # TEST
+    ok( !defined $schema, 'Schema from buffer with external import and 
no_network => 1 is not loaded.' );
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/35huge_mode.t 
new/XML-LibXML-2.0202/t/35huge_mode.t
--- old/XML-LibXML-2.0201/t/35huge_mode.t       2016-05-30 11:01:59.000000000 
+0200
+++ new/XML-LibXML-2.0202/t/35huge_mode.t       2019-12-03 07:16:35.000000000 
+0100
@@ -49,11 +49,14 @@
 
 $parser = XML::LibXML->new;
 #$parser->set_option(huge => 0);
+# TEST
 ok(!$parser->get_option('huge'), "huge mode disabled by default");
 
 $doc = eval { $parser->parse_string($evil_xml); };
 
+# TEST
 isnt("$@", "", "exception thrown during parse");
+# TEST
 like($@, qr/entity.*loop/si, "exception refers to entity reference loop");
 
 
@@ -61,9 +64,11 @@
 
 $doc = eval { $parser->parse_string($benign_xml); };
 
+# TEST
 is("$@", "", "no exception thrown during parse");
 
 my $body = $doc->findvalue( '/lolz' );
+# TEST
 is($body, 'haha', 'entity was parsed and expanded correctly');
 
 exit;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/40reader.t 
new/XML-LibXML-2.0202/t/40reader.t
--- old/XML-LibXML-2.0201/t/40reader.t  2016-06-24 18:01:53.000000000 +0200
+++ new/XML-LibXML-2.0202/t/40reader.t  2019-12-03 07:19:56.000000000 +0100
@@ -19,6 +19,7 @@
   use_ok('XML::LibXML::Reader');
 };
 
+# TEST*100
 my $file = "test/textReader/countries.xml";
 {
   my $reader = XML::LibXML::Reader->new(location => $file, {expand_entities => 
1});
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/43options.t 
new/XML-LibXML-2.0202/t/43options.t
--- old/XML-LibXML-2.0201/t/43options.t 2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/43options.t 2019-11-18 20:26:19.000000000 +0100
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 290;
+use Test::More tests => 291;
 
 use XML::LibXML;
 
@@ -50,7 +50,7 @@
 {
   my $p = XML::LibXML->new();
   for my $opt (@all) {
-    my $ret = (($opt =~ /^(?:load_ext_dtd|expand_entities)$/) ? 1 : 0);
+    my $ret = 0;
     # TEST*$all
     ok(
         ($p->get_option($opt)||0) == $ret
@@ -110,18 +110,21 @@
   ok( $p->get_option('recover') == 2, ' TODO : Add test name' );
 
   # TEST
-  ok( $p->expand_entities() == 1, ' TODO : Add test name' );
+  ok( $p->expand_entities() == 0, 'expand_entities should default to false' );
   # TEST
-  ok( $p->load_ext_dtd() == 1, ' TODO : Add test name' );
+  ok( $p->load_ext_dtd() == 0, 'load_ext_dtd should default to false' );
+  $p->load_ext_dtd(1);
+  # TEST
+  ok( $p->load_ext_dtd() == 1, 'load_ext_dtd should be true after being set to 
true' );
   $p->load_ext_dtd(0);
+  $p->expand_entities(1);
   # TEST
-  ok( $p->load_ext_dtd() == 0, ' TODO : Add test name' );
-  $p->expand_entities(0);
+  ok( $p->expand_entities() == 1, 'expand_entities should be true after being 
set to true' );
   # TEST
-  ok( $p->expand_entities() == 0, ' TODO : Add test name' );
-  $p->expand_entities(1);
+  ok( $p->load_ext_dtd() == 1, 'load_ext_dtd should be true after 
expand_entities is set to true' );
+  $p->expand_entities(0);
   # TEST
-  ok( $p->expand_entities() == 1, ' TODO : Add test name' );
+  ok( $p->expand_entities() == 0, 'expand_entities should be false after being 
set to false' );
 }
 
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/48_SAX_Builder_rt_91433.t 
new/XML-LibXML-2.0202/t/48_SAX_Builder_rt_91433.t
--- old/XML-LibXML-2.0201/t/48_SAX_Builder_rt_91433.t   2016-05-30 
11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/48_SAX_Builder_rt_91433.t   2019-12-03 
07:15:01.000000000 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -w
+#!/usr/bin/env perl
 
 use strict;
 use warnings;
@@ -50,6 +50,7 @@
 </rdf:RDF></metadata></record></GetRecord></OAI-PMH>
 END_OF_XML
 
+# TEST
 eq_or_diff(
     \@got_warnings,
     [],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/48_rt123379_setNamespace.t 
new/XML-LibXML-2.0202/t/48_rt123379_setNamespace.t
--- old/XML-LibXML-2.0201/t/48_rt123379_setNamespace.t  2017-10-28 
19:46:46.000000000 +0200
+++ new/XML-LibXML-2.0202/t/48_rt123379_setNamespace.t  2019-12-03 
07:13:04.000000000 +0100
@@ -4,12 +4,20 @@
 use XML::LibXML;
 use Test::More tests => 8;
 
+# TEST
 ok(my $doc = XML::LibXML::Document->new(), 'new document');
+# TEST
 ok(my $elm = $doc->createElement('D:element'), 'create element');
+# TEST
 ok($elm->setAttribute('xmlns:D', 'attribute'), 'set attribute');
 $doc->setDocumentElement($elm); # XXX does not return true if successful
+# TEST
 ok(my $str = $doc->toString(0), 'to string');
+# TEST
 ok(my $par = XML::LibXML->new(), 'new parser');
+# TEST
 ok( eval { $par->parse_string($str) } , 'parse string');
+# TEST
 is($@, "", 'parse error');
+# TEST
 like($str, qr{<D:element xmlns:D="attribute"/>}, 'xml element');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/XML-LibXML-2.0201/t/48_rt93429_recover_2_in_html_parsing.t 
new/XML-LibXML-2.0202/t/48_rt93429_recover_2_in_html_parsing.t
--- old/XML-LibXML-2.0201/t/48_rt93429_recover_2_in_html_parsing.t      
2016-05-30 11:01:59.000000000 +0200
+++ new/XML-LibXML-2.0202/t/48_rt93429_recover_2_in_html_parsing.t      
2019-12-03 07:11:33.000000000 +0100
@@ -27,6 +27,7 @@
 
     close($fh);
 
+    # TEST
     is($buf, '', 'No warning emitted on load_html with recover => 2.');
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/62overload.t 
new/XML-LibXML-2.0202/t/62overload.t
--- old/XML-LibXML-2.0201/t/62overload.t        2016-05-30 11:01:59.000000000 
+0200
+++ new/XML-LibXML-2.0202/t/62overload.t        2019-12-03 07:10:40.000000000 
+0100
@@ -16,23 +16,35 @@
 my $h1 = \%{ $e1 };
 my $h2 = \%{ $e2 };
 
+# TEST
 isnt $h1,$h2, 'different references';
 
+# TEST
 is $h1->{attr}, 'value1', 'affr for el 1';
+# TEST
 is $h2->{attr}, 'value2', 'affr for el 2';
 
+# TEST
 is "$e1", '<test1 attr="value1"/>', 'stringify for el 1';
+# TEST
 is "$e2", '<test2 attr="value2"/>', 'stringify for el 2';
 
+# TEST
 cmp_ok 0+$e1, '>', 1, 'num for el 1';
+# TEST
 cmp_ok 0+$e2, '>', 1, 'num for el 2';
 
+# TEST
 isnt 0+$e1,0+$e2, 'num for e1 and e2 differs';
 
 my $e3 = $e1;
 
+# TEST
 ok $e3 eq $e1, 'eq';
+# TEST
 ok $e3 == $e1, '==';
 
+# TEST
 ok $e1 ne $e2, 'ne';
+# TEST
 ok $e1 != $e2, '!=';
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/t/91unique_key.t 
new/XML-LibXML-2.0202/t/91unique_key.t
--- old/XML-LibXML-2.0201/t/91unique_key.t      2016-05-30 11:01:59.000000000 
+0200
+++ new/XML-LibXML-2.0202/t/91unique_key.t      2019-12-03 07:09:21.000000000 
+0100
@@ -23,6 +23,7 @@
 my @children_1 = $foo->childNodes;
 my @children_2 = $foo->childNodes;
 
+# TEST
 ok($children_1[0]->can('unique_key'), 'unique_key method available')
     or exit -1;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/test/relaxng/net.rng 
new/XML-LibXML-2.0202/test/relaxng/net.rng
--- old/XML-LibXML-2.0201/test/relaxng/net.rng  1970-01-01 01:00:00.000000000 
+0100
+++ new/XML-LibXML-2.0202/test/relaxng/net.rng  2019-11-18 20:24:05.000000000 
+0100
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0"; 
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes";>
+  <include href="http://example.com/xml.rng"/>
+  <start>
+    <ref name="include"/>
+  </start>
+  <define name="include">
+    <element name="include">
+      <text/>
+    </element>
+  </define>
+</grammar>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/XML-LibXML-2.0201/test/schema/net.xsd 
new/XML-LibXML-2.0202/test/schema/net.xsd
--- old/XML-LibXML-2.0201/test/schema/net.xsd   1970-01-01 01:00:00.000000000 
+0100
+++ new/XML-LibXML-2.0202/test/schema/net.xsd   2019-11-18 20:24:05.000000000 
+0100
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
+  <xsd:import namespace="http://example.com/namespace"; 
schemaLocation="http://example.com/xml.xsd"/>
+</xsd:schema>


Reply via email to