Bug#537720: FTBFS: pod invalid

gregor herrmann gregoa at debian.org
Mon Jul 20 14:16:40 UTC 2009


On Mon, 20 Jul 2009 15:46:02 +0200, gregor herrmann wrote:

> > t/pod.............
> > #   Failed test 'blib/lib/XML/XPathEngine.pm'
> > #   at /usr/share/perl5/Test/Pod.pm line 219.
> > # blib/lib/XML/XPathEngine.pm (1175): L<text|scheme:...> is invalid according to perlpod
> > # blib/lib/XML/XPathEngine.pm (1175): L<text|scheme:...> is invalid according to perlpod
> > # Looks like you failed 1 test of 11.
> > dubious
> >         Test returned status 1 (wstat 256, 0x100)
> > DIED. FAILED test 1
> >         Failed 1/11 tests, 90.91% okay
> 
> Oh, fun seems that Test::Pod has changed.
> Now let's see how many package build this breaks :(

Ok, looking a bit further:

libtest-pod-perl's Changes says for 1.40:
    [ENHANCEMENTS]
    Test::Pod now complains about the illegal construct L<text|url>.
    Thanks to Paul Miller.

And `perldoc perlpod' indeed says:
     o   "L<scheme:...>"
     Links to an absolute URL.  For example,
     "L<http://www.perl.org/>". But note that there is no
     corresponding "L<text|scheme:...>" syntax, for various reasons.

But:
gregoa at nerys:~/src/svn-pkg-perl/trunk/libxml-xpathengine-perl$ egrep -ro 'L<[^>]+>' *
lib/XML/XPathEngine/NodeSet.pm:L<XML::XPathEngine::XMLParser>
lib/XML/XPathEngine/NodeSet.pm:L<XML::XPathEngine::XMLParser>
lib/XML/XPathEngine.pm:L<XML::XPath>
lib/XML/XPathEngine.pm:L<XML::XPathEngine::NodeSet>
lib/XML/XPathEngine.pm:L<XML::XPath>
lib/XML/XPathEngine.pm:L<HTML::TreeBuilder::XPath>
lib/XML/XPathEngine.pm:L<XML::Twig::XPath>
lib/XML/XPathEngine.pm:L<Tree::XPathEngine>
lib/XML/XPathEngine.pm:L<http://www.xmltwig.com/article/extending_xml_xpath/ >
lib/XML/XPathEngine.pm:L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=XML-XPathEngine>

IOW: I don't see any (wrong) "L<text|scheme:...>" syntax anywhere ...

The change in libtest-pod-perl's Pod.pm also looks interesting:

+sub _handle_text {
+    my($parser, $text) = @_;
+    if( my $href = $parser->{_state_of_concern}{'Lurl'} ) {
+        if( $href ne $text ) {
+            my $line = $parser->line_count() -2; # XXX: -2, WHY WHY WHY??
+
+            $parser->whine($line, "L<text|scheme:...> is invalid according to perlpod");
+        }
+    }
+
+    return $parser->SUPER::_handle_text(@_);
+}

Since line 1175 in lib/XML/XPathEngine.pm doesn't have a L<> I just
for fun changed two lines above:

--- lib/XML/XPathEngine.pm      (revision 40283)
+++ lib/XML/XPathEngine.pm      (working copy)
@@ -1169,7 +1169,7 @@
 
 L<Tree::XPathEngine> for a similar module for non-XML trees.
 
-L<http://www.xmltwig.com/article/extending_xml_xpath/ > for background 
+L<http://www.xmltwig.com/article/extending_xml_xpath/> for background 
 information. The last section of the article summarizes how to reuse XML::XPath.
 As XML::XPathEngine offers the same API it should help you
 

And, lo and behold, the test passes.

So: is this a problem with the POD in lib/XML/XPathEngine.pm or a
problem in Test::POD's parsing?


Cheers,
gregor
-- 
 .''`.   http://info.comodo.priv.at/ -- GPG Key IDs: 0x00F3CFE4, 0x8649AA06
 : :' :  Debian GNU/Linux user, admin, & developer - http://www.debian.org/
 `. `'   Member of VIBE!AT, SPI Inc., fellow of FSFE | http://got.to/quote/
   `-    BOFH excuse #329:  Server depressed, needs Prozac 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20090720/ca0f5a9e/attachment.pgp>


More information about the pkg-perl-maintainers mailing list