Subject: | Cannot install MooseX::Getopt with old MooseX::Role::Parameterized |
I think MooseX-Getopt is missing a version specification in dependency on MooseX::Role::Parameterized.
In https://metacpan.org/source/ETHER/MooseX-Getopt-0.59/META.json#L69 I see
"MooseX::Role::Parameterized" : "0".
Is there any reason, why not specify the newest version of MooseX::Role::Parameterized (1.02) there?
I had MooseX::Role::Parameterized 0.25 (and the newest Moose 2.1202) and I was not able to install MooseX-Getopt because of the following error:
t/001_basic.t ....................... 1/?
# Failed test 'use MooseX::Getopt;'
# at t/001_basic.t line 9.
# Tried to use 'MooseX::Getopt'.
# Error: Can't locate object method "_process_isa_option" via package "Class::MOP::Attribute" at /perl_repo/Ubuntu/10.04/x86_64/lib/perl5/site_perl/5.12.2/x86_64-linux-thread-multi/Moose/Meta/Attribute.pm line 209.
# Compilation failed in require at /perl_repo/Ubuntu/10.04/x86_64/lib/perl5/site_perl/5.12.2/MooseX/Role/Parameterized/Meta/Role/Parameterizable.pm line 8.
I think the problem is related also to the version of Moose. On another machine with old Moose (2.0205) and old MooseX::Role::Parameterized (0.25), updating MooseX::Getopt (from 0.37 to 0.59) went OK.
I know that when updating Moose, it prints (in the middle of thousands of other lines)
Conflicts detected for Moose:
...
MooseX::Role::Parameterized is version 0.25, but must be greater than version 1.00
However, cpan does not update MooseX::Role::Parameterized automatically (nor it shows the conflict message at the end of all output), so normal users probably won't notice it.