Skip Menu |

This queue is for tickets about the Regexp-Assemble CPAN distribution.

Report information
The Basics
Id: 85686
Status: resolved
Worked: 1 hour (60 min)
Priority: 0/
Queue: Regexp-Assemble

People
Owner: Nobody in particular
Requestors: dmacks [...] netspace.org
SREZIC [...] cpan.org
Cc: PLICEASE [...] cpan.org
AdminCc:

Bug Information
Severity: Important
Broken in: (no value)
Fixed in: (no value)



Subject: POD error: =item with numbered entries
Date: Tue, 28 May 2013 23:02:41 -0400
To: bug-Regexp-Assemble [...] rt.cpan.org
From: "Daniel Macks" <dmacks [...] netspace.org>
Building Regexp-Assemble-0.35 on OS X 10.6 using Apple's perl-5.10.0 and a ton of CPAN modules (including lots of Pod::* and Test::Pod suites) added gives a self-test failure: #   Failed test 'POD test for Assemble.pm' #   at t/00_basic.t line 36. # Assemble.pm (1582): Expected text after =item, not a number # Assemble.pm (1586): Expected text after =item, not a number # Assemble.pm (1590): Expected text after =item, not a number # Assemble.pm (1595): Expected text after =item, not a number # Looks like you failed 1 test of 327. t/00_basic.t ...... Dubious, test returned 1 (wstat 256, 0x100) Failed 1/327 subtests The perlpodspec for =item is that if you have entries that are just /\d+/ (no other text), they must start at 1 and increase consecutively because this usage maps to a numbered list. Instead, the intent in this area of Assemble.pm is an arbitrary list that happens to have entries that are numbers (has a 0 and skips others) dan -- Daniel Macks dmacks@netspace.org
On Tue May 28 23:14:22 2013, dmacks@netspace.org wrote: Show quoted text
> Building Regexp-Assemble-0.35 on OS X 10.6 using Apple's perl-5.10.0 > and a ton of CPAN modules (including lots of Pod::* and Test::Pod > suites) added gives a self-test failure: > > #   Failed test 'POD test for Assemble.pm' > #   at t/00_basic.t line 36. > # Assemble.pm (1582): Expected text after =item, not a number > # Assemble.pm (1586): Expected text after =item, not a number > # Assemble.pm (1590): Expected text after =item, not a number > # Assemble.pm (1595): Expected text after =item, not a number > # Looks like you failed 1 test of 327. > t/00_basic.t ...... > Dubious, test returned 1 (wstat 256, 0x100) > Failed 1/327 subtests > > The perlpodspec for =item is that if you have entries that are just > /\d+/ (no other text), they must start at 1 and increase consecutively > because this usage maps to a numbered list. Instead, the intent in > this area of Assemble.pm is an arbitrary list that happens to have > entries that are numbers (has a 0 and skips others) > > dan > > -- > Daniel Macks > dmacks@netspace.org
I also observed these test failures with Regexp-Assemble-0.35 on Perl 5.18.1. Apart from correcting the POD formatting error, I would recommend that the author or maintainer categorize POD tests as "author only". Many people, including myself, will decline to install a CPAN distro if 'make test' fails for any reason. If you include POD tests in the suite run via 'make test' and they experience minor failures, people may unnecessarily forego the benefit of using the code. Thank you very much. Jim Keenan
On Fri Nov 22 22:07:53 2013, JKEENAN wrote: Show quoted text
> On Tue May 28 23:14:22 2013, dmacks@netspace.org wrote:
> > Building Regexp-Assemble-0.35 on OS X 10.6 using Apple's perl-5.10.0 > > and a ton of CPAN modules (including lots of Pod::* and Test::Pod > > suites) added gives a self-test failure: > > > > #   Failed test 'POD test for Assemble.pm' > > #   at t/00_basic.t line 36. > > # Assemble.pm (1582): Expected text after =item, not a number > > # Assemble.pm (1586): Expected text after =item, not a number > > # Assemble.pm (1590): Expected text after =item, not a number > > # Assemble.pm (1595): Expected text after =item, not a number > > # Looks like you failed 1 test of 327. > > t/00_basic.t ...... > > Dubious, test returned 1 (wstat 256, 0x100) > > Failed 1/327 subtests > > > > The perlpodspec for =item is that if you have entries that are just > > /\d+/ (no other text), they must start at 1 and increase > > consecutively > > because this usage maps to a numbered list. Instead, the intent in > > this area of Assemble.pm is an arbitrary list that happens to have > > entries that are numbers (has a 0 and skips others) > > > > dan > > > > -- > > Daniel Macks > > dmacks@netspace.org
> > > I also observed these test failures with Regexp-Assemble-0.35 on Perl > 5.18.1. > > Apart from correcting the POD formatting error, I would recommend that > the author or maintainer categorize POD tests as "author only". Many > people, including myself, will decline to install a CPAN distro if > 'make test' fails for any reason. If you include POD tests in the > suite run via 'make test' and they experience minor failures, people > may unnecessarily forego the benefit of using the code. > > Thank you very much. > Jim Keenan
Hi all, I can reproduce these failures here too (using bleadperl on Mageia Linux x86-64 Cauldron): PERL_DL_NONLAZY=1 /home/shlomif/apps/perl/bleadperl/bin/perl5.19.12 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00_basic.t ...... # testing Regexp::Assemble v0.35 t/00_basic.t ...... 1/327 # Failed test 'POD test for Assemble.pm' # at t/00_basic.t line 36. # Assemble.pm (1582): Expected text after =item, not a number # Assemble.pm (1586): Expected text after =item, not a number # Assemble.pm (1590): Expected text after =item, not a number # Assemble.pm (1595): Expected text after =item, not a number # Looks like you failed 1 test of 327. t/00_basic.t ...... Dubious, test returned 1 (wstat 256, 0x100) Failed 1/327 subtests t/01_insert.t ..... ok t/02_reduce.t ..... ok t/03_str.t ........ ok t/04_match.t ...... ok t/05_hostmatch.t .. ok t/06_general.t .... ok t/07_warning.t .... ok t/08_track.t ...... ok t/09_debug.t ...... ok t/10_perl514.t .... ok Test Summary Report ------------------- t/00_basic.t (Wstat: 256 Tests: 327 Failed: 1) Failed test: 1 Non-zero exit status: 1 Files=11, Tests=2952, 2 wallclock secs ( 0.44 usr 0.02 sys + 1.74 cusr 0.07 csys = 2.27 CPU) Result: FAIL Failed 1/11 test programs. 1/2952 subtests failed. Makefile:830: recipe for target 'test_dynamic' failed make: *** [test_dynamic] Error 255 DLAND/Regexp-Assemble-0.35.tar.gz /usr/bin/make test -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports DLAND/Regexp-Assemble-0.35.tar.gz Failed during this command: DLAND/Regexp-Assemble-0.35.tar.gz : make_test NO Please look into fixing them. Regards, -- Shlomi Fish
Here's a patch against the latest CPAN version. I should also note that the link to the source code at the svnweb is broken. Regards, -- Shlomi Fish
Subject: re-assemb.diff
--- Regexp-Assemble-0.35-bfjtwD/Assemble.pm.orig 2014-04-26 16:23:57.572828349 +0300 +++ Regexp-Assemble-0.35-bfjtwD/Assemble.pm 2014-04-26 16:25:48.317724986 +0300 @@ -1575,24 +1575,24 @@ =over 8 -=item 0 +=item * 0 Off. Turns off all debugging output. -=item 1 +=item * 1 Add. Trace the addition of patterns. -=item 2 +=item * 2 Reduce. Trace the process of reduction and assembly. -=item 4 +=item * 4 Lex. Trace the lexing of the input patterns into its constituent tokens. -=item 8 +=item * 8 Time. Print to STDOUT the time taken to load all the patterns. This is nothing more than the difference between the time the object was

Because POD is so prone to its tests failing, and it not really being something "wrong" with a users system, or being something "wrong" with the software that actually requires fixing, POD tests failing at the install time is more or less a bogus failure type.

 

Useful for authors. But not for users.

 

Straight foward patch that nukes those tests on user side for anyone who wants them.

 

 

 

Subject: no-pod-tests.patch
diff -Naur t/00_basic.t t/00_basic.t --- t/00_basic.t 2008-06-07 13:13:47.000000000 +0000 +++ t/00_basic.t 2014-09-02 23:57:16.979834142 +0000 @@ -10,7 +10,7 @@ use strict; -eval qq{use Test::More tests => 327 }; +eval qq{use Test::More tests => 323 }; if( $@ ) { warn "# Test::More not available, no tests performed\n"; print "1..1\nok 1\n"; @@ -24,30 +24,8 @@ diag( "testing Regexp::Assemble v$Regexp::Assemble::VERSION" ); -my $have_Test_Pod = do { - eval { require Test::Pod; import Test::Pod }; - $@ ? 0 : 1; -}; - -SKIP: { - skip( 'Test::Pod not installed on this system', 3 ) - unless $have_Test_Pod; - - pod_file_ok( 'Assemble.pm' ); - pod_file_ok( 'eg/assemble' ); - pod_file_ok( 'eg/debugging' ); -} +my $have_Test_Pod_Coverage = 0; -my $have_Test_Pod_Coverage = do { - eval { require Test::Pod::Coverage; import Test::Pod::Coverage }; - $@ ? 0 : 1; -}; - -SKIP: { - skip( 'Test::Pod::Coverage not installed on this system', 1 ) - unless $have_Test_Pod_Coverage; - pod_coverage_ok( "Regexp::Assemble", "POD coverage is go!" ); -} my $rt = Regexp::Assemble->new; ok( defined($rt), 'new() defines something' ); is( ref($rt), 'Regexp::Assemble', 'new() returns a Regexp::Assemble object' );
On 2013-05-28 23:14:22, dmacks@netspace.org wrote: Show quoted text
> Building Regexp-Assemble-0.35 on OS X 10.6 using Apple's perl-5.10.0 > and a ton of CPAN modules (including lots of Pod::* and Test::Pod > suites) added gives a self-test failure: > > #   Failed test 'POD test for Assemble.pm' > #   at t/00_basic.t line 36. > # Assemble.pm (1582): Expected text after =item, not a number > # Assemble.pm (1586): Expected text after =item, not a number > # Assemble.pm (1590): Expected text after =item, not a number > # Assemble.pm (1595): Expected text after =item, not a number > # Looks like you failed 1 test of 327. > t/00_basic.t ...... > Dubious, test returned 1 (wstat 256, 0x100) > Failed 1/327 subtests > > The perlpodspec for =item is that if you have entries that are just > /\d+/ (no other text), they must start at 1 and increase consecutively > because this usage maps to a numbered list. Instead, the intent in > this area of Assemble.pm is an arbitrary list that happens to have > entries that are numbers (has a 0 and skips others) >
For anybody who wants to install Regexp::Assemble via CPAN.pm out of the box without patching, here's a CPAN distropref: https://github.com/eserte/srezic-cpan-distroprefs/blob/master/Regexp-Assemble.yml
It is inappropriate for pod tests to cause user installations to fail. They should be guarded so they only run for the author, either by moving them to xt/ or by adding this code to the top: use Test::More; plan skip_all => 'these tests are for authors only' unless $ENV{AUTHOR_TESTING} or $ENV{RELEASE_TESTING};
Please consider transferring ownership or assigning co-maint of this module to someone else if you are no longer interested in maintaining it. I would be happy to at least make the required POD changes and upload a new version to CPAN so that modules that depend on this one could start installing again. Thanks!
RT-Send-CC: dmacks [...] netspace.org
On 2015-01-29 18:43:51, PLICEASE wrote: Show quoted text
> Please consider transferring ownership or assigning co-maint of this > module to someone else if you are no longer interested in maintaining > it. I would be happy to at least make the required POD changes and > upload a new version to CPAN so that modules that depend on this one > could start installing again. > > Thanks!
It would appear the author is away, missing or no longer is interested in maintaining this module. I recommend that a new maintainer be found, as this module is a prerequisite for Catalyst, so it's quite important that it keep working.
On Mon Feb 23 18:40:32 2015, ETHER wrote: Show quoted text
> It would appear the author is away, missing or no longer is interested > in maintaining this module. I recommend that a new maintainer be > found, as this module is a prerequisite for Catalyst, so it's quite > important that it keep working.
I'd be happy to get this module back on its feet. Unfortunately I haven't been able to find any contact information for the author. In my experience it is impossible to adopt without direct involvement of the current owner.
On 2015-02-23 16:06:09, PLICEASE wrote: Show quoted text
> On Mon Feb 23 18:40:32 2015, ETHER wrote:
> > It would appear the author is away, missing or no longer is > > interested > > in maintaining this module. I recommend that a new maintainer be > > found, as this module is a prerequisite for Catalyst, so it's quite > > important that it keep working.
> > I'd be happy to get this module back on its feet. Unfortunately I > haven't been able to find any contact information for the author. In > my experience it is impossible to adopt without direct involvement of > the current owner.
It's possible to take over a module when an author has disappeared -- http://www.cpan.org/misc/cpan-faq.html#How_adopt_module
On Wed Feb 25 18:49:51 2015, ETHER wrote: Show quoted text
> It's possible to take over a module when an author has disappeared -- > http://www.cpan.org/misc/cpan-faq.html#How_adopt_module
I have followed those instructions in the past and in my experience without the direct involvement of the current owner that does not actually work.
I don't think anyone's actually done this so I forked gitpan's copy of 0.35 and patched it. I did that so I can throw the github URL at cpanm and install it automatically from that. https://github.com/Altreus/Regexp-Assemble/archive/0.35.1.tar.gz Not implemented are the actual doc fixes
Thanx to all who logged tickets. I've uploaded V 0.36 to CPAN, which includes moving the pod tests to xt/author/pod.t. See Changes for details.