Opened 9 years ago
Closed 9 years ago
#50048 closed defect (fixed)
mod_perl2: broken when p5.22-module-corelist is installed
Reported by: | mojca (Mojca Miklavec) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | dbevans (David B. Evans) | |
Port: | mod_perl2 p5-module-corelist |
Description
When building mod_perl2
(see #49562 before assigning the ticket) it failed for me with the following weird error:
:debug:configure Executing org.macports.configure (mod_perl2) :info:configure Please repair your Module::CoreList at lib/Apache2/Build.pm line 50. :info:configure BEGIN failed--compilation aborted at lib/Apache2/Build.pm line 65. :info:configure Compilation failed in require at Makefile.PL line 38. :info:configure BEGIN failed--compilation aborted at Makefile.PL line 38. :info:configure Command failed: /opt/local/bin/perl5.22 Makefile.PL MP_APXS=/opt/local/apache2/bin/apxs :info:configure Exit code: 22
After
sudo port -f deactivate p5.22-module-corelist
the installation succeeded.
I had two versions installed:
/opt/local/lib/perl5/5.22/Module/CoreList.pm (5.20151213) /opt/local/lib/perl5/vendor_perl/5.22/Module/CoreList.pm (5.20151120)
Weird enough our livecheck doesn't work as the version we have is clearly older than the latest one on http://search.cpan.org/~bingos/Module-CoreList-5.20151213/:
> port -v livecheck p5-module-corelist p5-module-corelist seems to be up to date
Should we get rid of p5-module-corelist
? That is: do we even need it?
Attachments (1)
Change History (7)
Changed 9 years ago by mojca (Mojca Miklavec)
comment:1 Changed 9 years ago by mf2k (Frank Schima)
Port: | is installed removed |
---|
comment:2 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)
comment:3 Changed 9 years ago by mojca (Mojca Miklavec)
David did it already in r143571.
I don't know why the livecheck did not see the latest version.
I curious whether the module is in fact needed given that it already exists in the core, except perhaps for the oldest versions of Perl.
comment:4 Changed 9 years ago by dbevans (David B. Evans)
If you look at the code surrounding the line referenced in the configure error above, it's checking the version of ExtUtils::Embed and then using Module::CoreList to see if this is the same as the version in core. This error indicates that the call to Module::CoreList returned an error (version undefined).
perl 5.22.0 had Module::CoreList 5.20150520 in core, 5.22.1 has 5.20151213. I updated p5-module-corelist to 5.20151213 before mojca updated perl5.22 to 5.22.1 (r143582) so the two versions did not match during the intervening period and our version was used in the code rather than the version in core.
I'm not sure if this is the cause of the error or not but given that Module::CoreList is being used in a way that assumes it is the version in core for a given perl, having our own version that may not be (isn't for perls earlier than 5.22.1 now) is probably a bad idea.
Currently p5-module-corelist is shown as a dependency for p5-module-load-conditional and cpan2port. Both of these use it to verify whether a given module is in core for the current perl so, again, having a miss-matched version installed is not good.
I suggest removing these dependencies (in favor of the core version) and then removing p5-module-corelist.
comment:5 Changed 9 years ago by dbevans (David B. Evans)
comment:6 Changed 9 years ago by dbevans (David B. Evans)
Resolution: | → fixed |
---|---|
Status: | new → closed |
I don't know if we need p5-module-corelist, but why don't we fix its livecheck and update it to the latest version?