Skip Menu |
 

This queue is for tickets about the Module-Build CPAN distribution.

Report information
The Basics
Id: 72176
Status: resolved
Priority: 0/
Queue: Module-Build

People
Owner: Nobody in particular
Requestors: w.phillip.moore [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.4004
Fixed in: (no value)



Subject: pod2html will fail with an empty podpath in some cases
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
X-RT-Original-Encoding: utf-8
Content-Type: multipart/mixed; boundary="----------=_1320424206-2601-265"
Content-Length: 0
Content-Type: text/plain; charset="UTF-8"
Content-Disposition: inline
Content-Transfer-Encoding: binary
Content-Length: 927
Download (untitled) / with headers
text/plain 927b
I've found a very small bug that I doubt anyone else will see. My perl development environment supports installing each CPAN module into it's own independent directory structure, independent from all the others. The code that automates this ensures that nothing tries to write to the perl5 core directories (which are readonly anyway), by overridding most of the Config.pm paths to be specific to that build. Those paths don't exist yet, until we pass the tests and then run "make install", so at that point in time, the code that generates the @podpath will produce an empty string, simply because of some missing parens. Basically, the code does the equivalent of: my @foo = ( @bar ), $blah; and $blah doesn't end up in @foo, like you obviously intended. The attached patch corrects this, and the resulting build passes the test suite on AIX 6, Solaris 10 and RHEL 5, for all of 5.10.1, 5.12.4, and 5.14.2.
Subject: 01_htmlify_pods.patch
MIME-Version: 1.0
Content-Type: application/octet-stream; name="01_htmlify_pods.patch"
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline; filename="01_htmlify_pods.patch"
Content-Transfer-Encoding: base64
Content-Length: 1243
diff -rc ../Module-Build-0.3800-orig/lib/Module/Build/Base.pm ./lib/Module/Build/Base.pm *** ../Module-Build-0.3800-orig/lib/Module/Build/Base.pm Sat Mar 5 14:15:41 2011 --- ./lib/Module/Build/Base.pm Fri Nov 4 11:06:07 2011 *************** *** 3351,3361 **** : $self->original_prefix('core'); my $htmlroot = $self->install_sets('core')->{libhtml}; ! my @podpath = (map { File::Spec->abs2rel($_ ,$podroot) } grep { -d } ( $self->install_sets('core', 'lib'), # lib $self->install_sets('core', 'bin'), # bin $self->install_sets('site', 'lib'), # site/lib ! ) ), File::Spec->rel2abs($self->blib); my $podpath = $ENV{PERL_CORE} ? File::Spec->catdir($podroot, 'lib') --- 3351,3361 ---- : $self->original_prefix('core'); my $htmlroot = $self->install_sets('core')->{libhtml}; ! my @podpath = ( (map { File::Spec->abs2rel($_ ,$podroot) } grep { -d } ( $self->install_sets('core', 'lib'), # lib $self->install_sets('core', 'bin'), # bin $self->install_sets('site', 'lib'), # site/lib ! ) ), File::Spec->rel2abs($self->blib) ); my $podpath = $ENV{PERL_CORE} ? File::Spec->catdir($podroot, 'lib')
Subject: pod2html will fail with an empty podpath in some cases
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
X-RT-Original-Encoding: utf-8
Content-Type: multipart/mixed; boundary="----------=_1320424209-2598-256"
Content-Length: 0
Content-Type: text/plain; charset="UTF-8"
Content-Disposition: inline
Content-Transfer-Encoding: binary
Content-Length: 927
Download (untitled) / with headers
text/plain 927b
I've found a very small bug that I doubt anyone else will see. My perl development environment supports installing each CPAN module into it's own independent directory structure, independent from all the others. The code that automates this ensures that nothing tries to write to the perl5 core directories (which are readonly anyway), by overridding most of the Config.pm paths to be specific to that build. Those paths don't exist yet, until we pass the tests and then run "make install", so at that point in time, the code that generates the @podpath will produce an empty string, simply because of some missing parens. Basically, the code does the equivalent of: my @foo = ( @bar ), $blah; and $blah doesn't end up in @foo, like you obviously intended. The attached patch corrects this, and the resulting build passes the test suite on AIX 6, Solaris 10 and RHEL 5, for all of 5.10.1, 5.12.4, and 5.14.2.
Subject: 01_htmlify_pods.patch
MIME-Version: 1.0
Content-Type: application/octet-stream; name="01_htmlify_pods.patch"
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline; filename="01_htmlify_pods.patch"
Content-Transfer-Encoding: base64
Content-Length: 1243
diff -rc ../Module-Build-0.3800-orig/lib/Module/Build/Base.pm ./lib/Module/Build/Base.pm *** ../Module-Build-0.3800-orig/lib/Module/Build/Base.pm Sat Mar 5 14:15:41 2011 --- ./lib/Module/Build/Base.pm Fri Nov 4 11:06:07 2011 *************** *** 3351,3361 **** : $self->original_prefix('core'); my $htmlroot = $self->install_sets('core')->{libhtml}; ! my @podpath = (map { File::Spec->abs2rel($_ ,$podroot) } grep { -d } ( $self->install_sets('core', 'lib'), # lib $self->install_sets('core', 'bin'), # bin $self->install_sets('site', 'lib'), # site/lib ! ) ), File::Spec->rel2abs($self->blib); my $podpath = $ENV{PERL_CORE} ? File::Spec->catdir($podroot, 'lib') --- 3351,3361 ---- : $self->original_prefix('core'); my $htmlroot = $self->install_sets('core')->{libhtml}; ! my @podpath = ( (map { File::Spec->abs2rel($_ ,$podroot) } grep { -d } ( $self->install_sets('core', 'lib'), # lib $self->install_sets('core', 'bin'), # bin $self->install_sets('site', 'lib'), # site/lib ! ) ), File::Spec->rel2abs($self->blib) ); my $podpath = $ENV{PERL_CORE} ? File::Spec->catdir($podroot, 'lib')
MIME-Version: 1.0
X-Mailer: MIME-tools 5.427 (Entity 5.427)
Content-Disposition: inline
Content-Type: text/plain; charset="UTF-8"
Message-ID: <rt-3.8.HEAD-2602-1320430415-1912.72176-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
Content-Length: 39
Thank you for the bug report and patch.
From w.phillip.moore [...] gmail.com Wed Apr 17 08: 57:39 2013
MIME-Version: 1.0
X-Spam-Status: No, score=-6.227 tagged_above=-99.9 required=10 tests=[AWL=-0.008, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_NEUTRAL=0.779] autolearn=ham
In-Reply-To: <rt-3.8.HEAD-2602-1320430416-877.72176-6-0 [...] rt.cpan.org>
X-Spam-Flag: NO
X-RT-Interface: API
References: <RT-Ticket-72176 [...] rt.cpan.org> <rt-3.8.HEAD-2602-1320430416-877.72176-6-0 [...] rt.cpan.org>
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Received: by 10.60.179.42 with SMTP id dd10mr2506978oec.51.1366203444630; Wed, 17 Apr 2013 05:57:24 -0700 (PDT)
Message-ID: <CAJY0+QAhJayuVDkL4P9Xz-gZotXmNE6yUg327XF3iEg-wVZT0g [...] mail.gmail.com>
Content-Type: multipart/alternative; boundary="089e01161588022c5904da8e07f0"
X-Spam-Score: -6.227
Authentication-Results: hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] gmail.com
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id A1D102408A2 for <cpan-bug+Module-Build [...] hipster.bestpractical.com>; Wed, 17 Apr 2013 08:57:39 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1nlb7-PZvfgi for <cpan-bug+Module-Build [...] hipster.bestpractical.com>; Wed, 17 Apr 2013 08:57:38 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id 8FA1C24089B for <bug-Module-Build [...] rt.cpan.org>; Wed, 17 Apr 2013 08:57:37 -0400 (EDT)
Received: (qmail 3265 invoked by uid 103); 17 Apr 2013 12:57:36 -0000
Received: from x16.dev (10.0.100.26) by x1.dev with QMQP; 17 Apr 2013 12:57:36 -0000
Received: from mail-ob0-f176.google.com (HELO mail-ob0-f176.google.com) (209.85.214.176) by 16.mx.develooper.com (qpsmtpd/0.84/v0.84-167-g4ed6cab) with ESMTP; Wed, 17 Apr 2013 05:57:29 -0700
Received: by mail-ob0-f176.google.com with SMTP id wd20so1388692obb.21 for <bug-Module-Build [...] rt.cpan.org>; Wed, 17 Apr 2013 05:57:24 -0700 (PDT)
Received: by 10.76.170.9 with HTTP; Wed, 17 Apr 2013 05:57:24 -0700 (PDT)
Delivered-To: cpan-bug+Module-Build [...] hipster.bestpractical.com
Subject: Re: [rt.cpan.org #72176] pod2html will fail with an empty podpath in some cases
Return-Path: <w.phillip.moore [...] gmail.com>
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=4W5SyyPV3GlxZq0/sx2Leux/Xa1NUVT4Y6hTn2RPfyE=; b=U0Ct7TgdHQwB1VaOsBreBSiGn6WYYYhmuHDdLU/3kfdkDN91QvC8Nht+TUIjfdCy9O mqzh5qLbH2JZjAChneEHR6wjEFrIBSBAFcQQOlw6/wGKsBbbJXWoL/7Tid8oIqsOHn3U JvOjASLmiqn78zQyQWcNKC2bARfKrzbzUvPyKq39y4z0TZV2NeaZ8+MbwsoTmG6QqfdN xuZJEiqvpDPB5Wi2MnB3esLwsGyAlv9LMDcm4akTjFJDr+gZdFTCsfV0y6jOTY4SwRE0 NPyGaH76SzbUV4gj5IH1j6GzrZWHU42V2oejY4n9Bs1sfhLyNc8IJWwQlFa1FXWDnoE2 knjQ==
X-Spam-Check-BY: 16.mx.develooper.com
X-Original-To: cpan-bug+Module-Build [...] hipster.bestpractical.com
X-RT-Mail-Extension: module-build
Date: Wed, 17 Apr 2013 08:57:24 -0400
X-Spam-Level:
To: bug-Module-Build [...] rt.cpan.org
From: Phillip Moore <w.phillip.moore [...] gmail.com>
RT-Message-ID: <rt-4.0.11-8394-1366203460-506.72176-0-0 [...] rt.cpan.org>
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 584
Download (untitled) / with headers
text/plain 584b
This bug has remained broken for well over a year, and I've had to re-apply this patch to every release that has come out in the interim. Can you PLEASE save me these steps and apply this patch? It's been applying to the code clean the entire time, and solving the problem, which as I diagnosed is about as obvious a bugfix as you'll ever encounter. Please.... Pretty please.... On Fri, Nov 4, 2011 at 2:13 PM, David Golden via RT < bug-Module-Build@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=72176 > > > Thank you for the bug report and patch. >
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 1043
MIME-Version: 1.0
In-Reply-To: <rt-4.0.11-8394-1366203460-506.72176-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <RT-Ticket-72176 [...] rt.cpan.org> <rt-3.8.HEAD-2602-1320430416-877.72176-6-0 [...] rt.cpan.org> <CAJY0+QAhJayuVDkL4P9Xz-gZotXmNE6yUg327XF3iEg-wVZT0g [...] mail.gmail.com> <rt-4.0.11-8394-1366203460-506.72176-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.11-8396-1366211905-814.72176-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 134
Download (untitled) / with headers
text/plain 134b
Okay okay, since you asked so nicely, I fixed it. =) Sorry about the delay, thanks for the fix & persistence. 344d1ca in git. -Ken
From w.phillip.moore [...] gmail.com Wed Apr 17 11: 28:33 2013
MIME-Version: 1.0
X-Spam-Status: No, score=-6.226 tagged_above=-99.9 required=10 tests=[AWL=-0.007, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_NEUTRAL=0.779] autolearn=ham
In-Reply-To: <rt-4.0.11-8396-1366211906-1403.72176-6-0 [...] rt.cpan.org>
X-Spam-Flag: NO
X-RT-Interface: API
References: <RT-Ticket-72176 [...] rt.cpan.org> <rt-3.8.HEAD-2602-1320430416-877.72176-6-0 [...] rt.cpan.org> <CAJY0+QAhJayuVDkL4P9Xz-gZotXmNE6yUg327XF3iEg-wVZT0g [...] mail.gmail.com> <rt-4.0.11-8394-1366203460-506.72176-6-0 [...] rt.cpan.org> <rt-4.0.11-8396-1366211906-1403.72176-6-0 [...] rt.cpan.org>
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Received: by 10.182.166.10 with SMTP id zc10mr2831240obb.80.1366212501434; Wed, 17 Apr 2013 08:28:21 -0700 (PDT)
Message-ID: <CAJY0+QAQSGGPOLVoADrAk06CeMZjvzzitgG7tv1mcA25t1ObTw [...] mail.gmail.com>
Content-Type: multipart/alternative; boundary="e89a8ff1cd48d5f6ad04da902205"
X-Spam-Score: -6.226
Authentication-Results: hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] gmail.com
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id C36252408B3 for <cpan-bug+Module-Build [...] hipster.bestpractical.com>; Wed, 17 Apr 2013 11:28:33 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DgCObLePnJ3j for <cpan-bug+Module-Build [...] hipster.bestpractical.com>; Wed, 17 Apr 2013 11:28:32 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id ED3822408AF for <bug-Module-Build [...] rt.cpan.org>; Wed, 17 Apr 2013 11:28:31 -0400 (EDT)
Received: (qmail 14810 invoked by uid 103); 17 Apr 2013 15:28:31 -0000
Received: from x16.dev (10.0.100.26) by x1.dev with QMQP; 17 Apr 2013 15:28:31 -0000
Received: from mail-oa0-f53.google.com (HELO mail-oa0-f53.google.com) (209.85.219.53) by 16.mx.develooper.com (qpsmtpd/0.84/v0.84-167-g4ed6cab) with ESMTP; Wed, 17 Apr 2013 08:28:24 -0700
Received: by mail-oa0-f53.google.com with SMTP id m6so1733413oag.12 for <bug-Module-Build [...] rt.cpan.org>; Wed, 17 Apr 2013 08:28:21 -0700 (PDT)
Received: by 10.76.170.9 with HTTP; Wed, 17 Apr 2013 08:28:21 -0700 (PDT)
Delivered-To: cpan-bug+Module-Build [...] hipster.bestpractical.com
Subject: Re: [rt.cpan.org #72176] [PATCH] pod2html will fail with an empty podpath in some cases
Return-Path: <w.phillip.moore [...] gmail.com>
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=gtEFnPRCgL+SsRspmpYiscfTEdmVwEI9NB4lZkIA1Rc=; b=kAESo/rAT38RS8ICt2UjNktHcMBVhIdWmvgtcCWR51JdkhKERp0ChvULjs5giRXmiT g/upflvYiwis2FAnUwpIpwSAdQifD49bE2/2nvDsxQV2ur/mcHD6luOy7BlFmIHbac53 ny+ET3FotPP2vAf7SO5G7qa75sEDwMRj4MowSpYkX0Z4XMZb2BPI43kZa4PwZ+V5CuzK IShAzKLKuJwKO/ndmFZI8JECifzBe7MdkP/qdIqCeTx1v4sxiD1Y5BcFV6EZEc17n7+7 suE8iAIXPwAcxiEDR95ipg8fySP2oKWp2EqJ89m6wvMNO8h5BgXpeMV9IMcLX0+rfBZm Qodw==
X-Spam-Check-BY: 16.mx.develooper.com
X-Original-To: cpan-bug+Module-Build [...] hipster.bestpractical.com
X-RT-Mail-Extension: module-build
Date: Wed, 17 Apr 2013 11:28:21 -0400
X-Spam-Level:
To: bug-Module-Build [...] rt.cpan.org
From: Phillip Moore <w.phillip.moore [...] gmail.com>
RT-Message-ID: <rt-4.0.11-8395-1366212514-389.72176-0-0 [...] rt.cpan.org>
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 328
Download (untitled) / with headers
text/plain 328b
Many thanks -- seriously. On Wed, Apr 17, 2013 at 11:18 AM, Ken Williams via RT < bug-Module-Build@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=72176 > > > Okay okay, since you asked so nicely, I fixed it. =) > > Sorry about the delay, thanks for the fix & persistence. 344d1ca in git. > > -Ken >
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 766


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.