Re: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X...
On 03/02/2012 12:34 AM, David E. Wheeler wrote: On Jan 29, 2012, at 3:15 PM, David E. Wheeler wrote: And NAME and not NAME It should probably not just become an empty string, but it should be collapse whitespace around it, so pathological cases like: =head1 NAME Xfoo THIS Xbar TUNE Xbaz ...should be NAME THIS TUNE But in the simpler case, I think that NAME and not NAME is actually likely to come up. Okay, so if I follow this thread correctly, the upshot is that: • Pod::Simple::HTML needs to be fixed so that it does not include the contents of X • The parser overall should be adjusted to remove superfluous whitespace FWIW, I could use confirmation on this. What sort of confirmation do you need? I agree with the two bulleted items, if you're looking for that kind of confirmation. Meanwhile, here's a test case showing the original bug with PullParser: diff --git a/t/pulltitl.t b/t/pulltitl.t index 22934f5..a846048 100644 --- a/t/pulltitl.t +++ b/t/pulltitl.t @@ -7,7 +7,7 @@ BEGIN { use strict; use Test; -BEGIN { plan tests = 116 }; +BEGIN { plan tests = 117 }; #use Pod::Simple::Debug (5); @@ -408,6 +408,13 @@ ok( $t $t-type eq 'start' $t-tagname, 'Document' ); } ### +print # Testing a title with an X, at line , __LINE__, \n; +my $p = Pod::Simple::PullParser-new; +$p-set_source( \qq{\n=head1 NAME\nXSome entry\n} ); + +ok $p-get_title(), 'NAME'; + +### ### That fails with: not ok 116 # Test 116 got: NAME Some entry (t/pulltitl.t at line 415) # Expected: NAME # t/pulltitl.t line 415 is: ok $p-get_title(), 'NAME'; So it seems as though X issues my be all over the place, eh? Best, David
Re: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X...
On Mar 2, 2012, at 6:49 AM, Karl Williamson wrote: • Pod::Simple::HTML needs to be fixed so that it does not include the contents of X • The parser overall should be adjusted to remove superfluous whitespace FWIW, I could use confirmation on this. What sort of confirmation do you need? I agree with the two bulleted items, if you're looking for that kind of confirmation. Just wanted to make sure I correctly understood the consensus. I’ve added those two items to the ticket. https://rt.cpan.org/Ticket/Display.html?id=74389 Best, David
Re: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X...
On Jan 29, 2012, at 3:15 PM, David E. Wheeler wrote: And NAME and not NAME It should probably not just become an empty string, but it should be collapse whitespace around it, so pathological cases like: =head1 NAME Xfoo THIS Xbar TUNE Xbaz ...should be NAME THIS TUNE But in the simpler case, I think that NAME and not NAME is actually likely to come up. Okay, so if I follow this thread correctly, the upshot is that: • Pod::Simple::HTML needs to be fixed so that it does not include the contents of X • The parser overall should be adjusted to remove superfluous whitespace FWIW, I could use confirmation on this. Meanwhile, here's a test case showing the original bug with PullParser: diff --git a/t/pulltitl.t b/t/pulltitl.t index 22934f5..a846048 100644 --- a/t/pulltitl.t +++ b/t/pulltitl.t @@ -7,7 +7,7 @@ BEGIN { use strict; use Test; -BEGIN { plan tests = 116 }; +BEGIN { plan tests = 117 }; #use Pod::Simple::Debug (5); @@ -408,6 +408,13 @@ ok( $t $t-type eq 'start' $t-tagname, 'Document' ); } ### +print # Testing a title with an X, at line , __LINE__, \n; +my $p = Pod::Simple::PullParser-new; +$p-set_source( \qq{\n=head1 NAME\nXSome entry\n} ); + +ok $p-get_title(), 'NAME'; + +### ### That fails with: not ok 116 # Test 116 got: NAME Some entry (t/pulltitl.t at line 415) # Expected: NAME # t/pulltitl.t line 415 is: ok $p-get_title(), 'NAME'; So it seems as though X issues my be all over the place, eh? Best, David
Re: Fwd: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X...
* David E. Wheeler da...@justatheory.com [2012-01-25T15:12:03] Subject: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X... Date: January 25, 2012 12:10:00 PM PST Reply-To: bug-pod-sim...@rt.cpan.org With Pod::Simple 3.14. If a pod file has index entries after head: =head1 NAME XSome entry Pod::Simple::Pullparser get_title expands 'Some entry' in the title. It seems to me that it should not, and instead should replace it with an empty string. This behaviour is also hinted in the pod documentation. It becomes h1NAME Some Entry/h1? That would certainly be an error. -- rjbs signature.asc Description: Digital signature
Re: [rt.cpan.org #74389] Pod::Simple::Pullparser get_title should ignore X...
On Jan 25, 2012, at 6:00 PM, Ricardo Signes wrote: =head1 NAME XSome entry Pod::Simple::Pullparser get_title expands 'Some entry' in the title. It seems to me that it should not, and instead should replace it with an empty string. This behaviour is also hinted in the pod documentation. It becomes h1NAME Some Entry/h1? That would certainly be an error. No, it doesn't. Text: air ~ perl -MPod::Simple::Text -E 'Pod::Simple::Text-filter(\=pod\n\n=head1 NAME\nXSome entry)' NAME XHTML: air ~ perl -MPod::Simple::XHTML -E 'Pod::Simple::XHTML-filter(\=pod\n\n=head1 NAME\nXSome entry)' html head title/title meta http-equiv=Content-Type content=text/html; charset=ISO-8859-1 / /head body h1 id=NAMENAME /h1 /body /html HTML: air ~ perl -MPod::Simple::HTML -E 'Pod::Simple::HTML-filter(\=pod\n\n=head1 NAME\nXSome entry)' htmlheadtitleNAME Some entry/title meta http-equiv=Content-Type content=text/html; charset=ISO-8859-1 /head body class='pod' !-- generated by Pod::Simple::HTML v3.19, using Pod::Simple::PullParser v3.19, under Perl v5.014002 at Thu Jan 26 03:01:45 2012 GMT. If you want to change this HTML document, you probably shouldn't do that by changing it directly. Instead, see about changing the calling options to Pod::Simple::HTML, and/or subclassing Pod::Simple::HTML, then reconverting this document from the Pod source. When in doubt, email the author of Pod::Simple::HTML for advice. See 'perldoc Pod::Simple::HTML' for more info. -- !-- start doc -- a name='___top' class='dummyTopAnchor' /a h1a class='u' href='#___top' title='click to go to top of document' name=NAME NAME !-- INDEX: Some entry --/a/h1 !-- end doc -- /body/html Best, David