Skip Menu |

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

Report information
The Basics
Id: 96557
Status: resolved
Priority: 0/
Queue: Module-Runtime

People
Owner: Nobody in particular
Requestors: perl [...] toby.ink
Cc: ether [...] cpan.org
AdminCc:

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



Subject: Please package Module-Runtime using EUMM
I want to be able to reliably use Module::Runtime on Perl 5.6.x. Module::Build and Module::Build::Tiny on Perl 5.6.x are currently too broken to rely on, so I am requesting that Module-Runtime be packaged using ExtUtils::MakeMaker. Feel free to either accept or reject this request, according to your preferences, but in the mean time expect me to release a Alt-Module-Runtime-ButEUMM distribution to CPAN. See https://metacpan.org/pod/Alt
On 2014-06-19 02:53:52, TOBYINK wrote: Show quoted text
> I want to be able to reliably use Module::Runtime on Perl 5.6.x. > Module::Build and Module::Build::Tiny on Perl 5.6.x are currently too > broken to rely on, so I am requesting that Module-Runtime be packaged > using ExtUtils::MakeMaker. > > Feel free to either accept or reject this request, according to your > preferences, but in the mean time expect me to release a Alt-Module- > Runtime-ButEUMM distribution to CPAN. > > See https://metacpan.org/pod/Alt
MR using Module::Build also makes it problematic for using inside low-level toolchain code, where Module::Build might not be installed yet or in an unstable state. Since MR does not have any unusual needs, it should be a very straight-forward transition to EUMM.
On 2014-12-12 13:51:01, ETHER wrote: Show quoted text
> Since MR does not have any unusual needs, it should be a very > straight-forward transition to EUMM.
I should have added -- I'm quite happy to supply a patch.
On 2015-04-21 14:40:46, ETHER wrote: Show quoted text
> On 2014-12-12 13:51:01, ETHER wrote: >
> > Since MR does not have any unusual needs, it should be a very > > straight-forward transition to EUMM.
> > I should have added -- I'm quite happy to supply a patch.
Attached is a patch containing a minimal and effective Makefile.PL.
Subject: Makefile.PL
use strict; use warnings; use 5.006; use ExtUtils::MakeMaker; ExtUtils::MakeMaker->VERSION(6.98) if -f '.gitignore'; my %WriteMakefileArgs = ( NAME => 'Module::Runtime', VERSION_FROM => 'lib/Module/Runtime.pm', ABSTRACT_FROM => 'lib/Module/Runtime.pm', AUTHOR => 'Andrew Main (Zefram) <zefram@fysh.org>', LICENSE => 'perl_5', MIN_PERL_VERSION => '5.006', CONFIGURE_REQUIRES => { 'ExtUtils::MakeMaker' => '0', }, PREREQ_PM => { }, TEST_REQUIRES => { 'Test::More' => '0', }, META_MERGE => { 'meta-spec' => { version => 2 }, dynamic_config => 0, resources => { repository => { url => 'git://git.fysh.org/zefram/Module-Runtime.git', type => 'git', }, bugtracker => { mailto => 'bug-Module-Runtime@rt.cpan.org', web => 'https://rt.cpan.org/Public/Dist/Display.html?Name=Module-Runtime', }, }, }, ); # degrade gracefully for older EUMM/older perls if (!eval { ExtUtils::MakeMaker->VERSION('6.6303') }) { $WriteMakefileArgs{BUILD_REQUIRES} = $WriteMakefileArgs{TEST_REQUIRES}; delete $WriteMakefileArgs{TEST_REQUIRES}; } if (!eval { ExtUtils::MakeMaker->VERSION('6.5501') }) { @{$WriteMakefileArgs{PREREQ_PM}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} } = @{$WriteMakefileArgs{BUILD_REQUIRES}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} }; delete $WriteMakefileArgs{BUILD_REQUIRES}; } WriteMakefile(%WriteMakefileArgs);
On Sun Jul 26 17:36:42 2015, ETHER wrote: Show quoted text
> On 2015-04-21 14:40:46, ETHER wrote:
> > On 2014-12-12 13:51:01, ETHER wrote: > >
> > > Since MR does not have any unusual needs, it should be a very > > > straight-forward transition to EUMM.
> > > > I should have added -- I'm quite happy to supply a patch.
> > Attached is a patch containing a minimal and effective Makefile.PL.
I have a similar patch on github. https://github.com/moto-timo/module-runtime/commit/bc1847164021b7c88a52b0d4077d7c6276851b3e
I'm not willing to do my authoring with EU:MM unless that becomes absolutely necessary. But in M:R-0.015, just released to CPAN, I've configured M:B to generate a "traditional" style Makefile.PL. That means that you can configure, build, and install via Makefile.PL without M:B getting invoked. (Though M:B is still liable to be spuriously installed as a dependency -- that's tricky to sort out.) This should satisfy your use case of installing on 5.6 where M:B doesn't work. If this is still not satisfactory for some other reason, please open a new ticket. -zefram