Opened 14 years ago

Closed 14 years ago

#206 closed defect (fixed)

Module::Build v0.2808 breaks install. v0.2805 last known good version.

Reported by: danielpacker Owned by: Dominic Hargreaves
Priority: highest Milestone:
Component: openguides Version: svn
Severity: critical Keywords: install build
Cc:

Description

Install was bombing out on Build.pm line 62. Kake figured out it's newer versions of Module::Build. This was confirmed by bob on Ubuntu. I'm getting install errors on Debian Etch and v0.2808.

INSTALL ERRORS:

All tests successful, 5 subtests skipped. Files=58, Tests=683, 84 wallclock secs (66.56 cusr + 6.50 csys = 73.06 CPU)

DOM/OpenGuides-0.59.tar.gz /usr/bin/make test -- OK

Running make install /usr/bin/perl Build --makefile_env_macros 1 install Skipping /usr/local/share/perl/5.8.8/OpenGuides.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Config.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Template.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Build.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/CGI.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/RDF.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Test.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Search.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Feed.pm (unchanged) Skipping /usr/local/share/perl/5.8.8/OpenGuides/Utils.pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::Config.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::Utils.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::Test.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::CGI.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::Template.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::Search.3pm (unchanged) Skipping /usr/local/man/man3/OpenGuides::RDF.3pm (unchanged) Can't use an undefined value as an ARRAY reference at lib/OpenGuides/Build.pm line 62. Skipping /usr/local/man/man3/OpenGuides::Feed.3pm (unchanged) make: * [install] Error 255

DOM/OpenGuides-0.59.tar.gz /usr/bin/make install -- NOT OK

Failed during this command:

DOM/OpenGuides-0.59.tar.gz : install NO

Attachments (2)

Build.PL.patch (1.2 KB) - added by danielpacker 14 years ago.
patch to fix Module::Build install for OpenGuides-0.59/Build.PL
Build.pm.patch (761 bytes) - added by danielpacker 14 years ago.
patch to fix Module::Build install for OpenGuides-0.59/lib/OpenGuides/Build.pm

Download all attachments as: .zip

Change History (9)

comment:1 Changed 14 years ago by Kake

When running "perl Build install" manually:

Skipping /usr/local/stow/perl-5.8.0/lib/site_perl/5.8.0/OpenGuides.pm (unchanged)
[...]
Skipping /usr/local/stow/perl-5.8.0/man/man3/OpenGuides::Feed.3 (unchanged)
Can't use an undefined value as an ARRAY reference at lib/OpenGuides/Build.pm line 62.

comment:2 Changed 14 years ago by danielpacker

Summary: Module::Build v0.2808 breaks install. v0.20 last known good version.Module::Build v0.2808 breaks install. v0.28 last known good version.

Initially v0.20 was the last known good version. I just tried with v0.28 and it worked fine. Slowly figuring out which version is the culprit.

comment:3 Changed 14 years ago by danielpacker

Summary: Module::Build v0.2808 breaks install. v0.28 last known good version.Module::Build v0.2808 breaks install. v0.2805 last known good version.

Well, it looks like the breakage happens between v0.2805 and v0.2805_01 (a developer release) which doesn't really surprise me. Will start diffing and report back shortly.

Changed 14 years ago by danielpacker

Attachment: Build.PL.patch added

patch to fix Module::Build install for OpenGuides-0.59/Build.PL

Changed 14 years ago by danielpacker

Attachment: Build.pm.patch added

patch to fix Module::Build install for OpenGuides-0.59/lib/OpenGuides/Build.pm

comment:4 Changed 14 years ago by danielpacker

Attached are patches for the build system. The first change is to specify module_name when getting a Module::Build instance. This is required by Module::Build->config_data(), which is the approved way of getting config data. The Changes file states that as of v0.20805_01, accessing build data directly (as was being done) will break. The second change is to pull out the data in Build.pm via the same method.

Sadly, this patch is going to mean that OpenGuides-0.60 (or whatever the fix release will be) is going to need to require Module::Build v0.26 or higher, as that's when they implemented config_data().

I tested the patch on OG 0.59 and it worked great for me. I will leave this open until the patch (and the requirement for M::B v0.26+) gets committed.

comment:5 Changed 14 years ago by danielpacker

fyi, i did dumb patches, apply one by one:

patch OpenGuides-0.59/Build.PL Build.PL.patch patch OpenGuides-0.59/lib/OpenGuides/Build.pm Build.pm.patch

comment:6 Changed 14 years ago by Kake

Looks good, though I suspect module_name should be "OpenGuides", not "OpenGuides::Build"?

comment:7 Changed 14 years ago by Kake

Resolution: fixed
Status: newclosed

Committed as [1028].

Note: See TracTickets for help on using tickets.