Bug#912780: Line numbers not printed on error despite XML_LIBXML_LINENUMBERS => 1
Niko Tyni
ntyni at debian.org
Mon Jan 21 19:40:16 GMT 2019
On Mon, Jan 14, 2019 at 11:13:14PM +0800, 積丹尼 Dan Jacobson wrote:
> >>>>> "NT" == Niko Tyni <ntyni at debian.org> writes:
> NT> On Sun, Nov 04, 2018 at 04:48:43AM +0800, 積丹尼 Dan Jacobson wrote:
> >> Package: libxml-libxml-perl
> >> Version: 2.0132+dfsg-2+b1
> >> Severity: minor
> >>
> >> Line numbers not printed on error despite XML_LIBXML_LINENUMBERS => 1:
> >> $ cat e.pl
> >> use XML::LibXML;
> >> my $doc = XML::LibXML::Document->new( XML_LIBXML_LINENUMBERS => 1 );
> >> my $x = $doc->createElement('x');
> >> $x->appendChild($x);
> >> $ perl -w e.pl
> >> appendChild: HIERARCHY_REQUEST_ERR
>
> NT> Not sure what you expected to get, the offending line in the code
> NT> perhaps?
>
> NT> It looks to me like this feature is about reporting line numbers
> NT> in parsed XML documents, and you're not parsing anything.
>
> Well all I know is I want it to say something like
> >> e.pl: 3: appendChild: HIERARCHY_REQUEST_ERR
So you're indeed looking for code line numbers, not document line numbers.
Again, the XML_LIBXML_LINENUMBERS feature is about the latter.
Maybe try Carp::Always or something.
% cat e.pl
#!/usr/bin/perl -w
use strict;
use Carp::Always;
use XML::LibXML;
my $doc = XML::LibXML::Document->new( XML_LIBXML_LINENUMBERS => 1 );
my $x = $doc->createElement('x');
$x->appendChild($x);
exit 0;
% perl e.pl
appendChild: HIERARCHY_REQUEST_ERR
at e.pl line 8.
Leaving this open as I don't see where XML_LIBXML_LINENUMBERS is
documented. XML::LibXML::Parser is quite clear about the equivalent
line_numbers() method though.
If this option is activated, libxml2 will store the line
number of each element node in the parsed document. The line
number can be obtained using the "line_number()" method of the
"XML::LibXML::Node" class (for non-element nodes this may report
the line number of the containing element). The line numbers
are also used for reporting positions of validation errors.
--
Niko Tyni ntyni at debian.org
More information about the pkg-perl-maintainers
mailing list