Skip to content

MI cannot handle EUMM being at a dev version #29

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
karenetheridge opened this issue Aug 11, 2014 · 3 comments
Open

MI cannot handle EUMM being at a dev version #29

karenetheridge opened this issue Aug 11, 2014 · 3 comments

Comments

@karenetheridge
Copy link
Member

This is with the latest version of MI installed (1.10):

: [ether@tequila git/Moose].9$; cpanm Test::Inline
--> Working on Test::Inline
Fetching http://mirrors.gossamer-threads.com/CPAN/authors/id/A/AD/ADAMK/Test-Inline-2.213.tar.gz ... OK
Configuring Test-Inline-2.213 ... OK
==> Found dependencies: Pod::Tests, File::Flat
--> Working on Pod::Tests
Fetching http://mirrors.gossamer-threads.com/CPAN/authors/id/A/AD/ADAMK/Pod-Tests-1.19.tar.gz ... OK
Configuring Pod-Tests-1.19 ... OK
==> Found dependencies: ExtUtils::MakeMaker
Found ExtUtils::MakeMaker 6.98 which doesn't satisfy 6.9907.
! Installing the dependencies failed: Installed version (6.99_07) of ExtUtils::MakeMaker is not in range '6.9907'
! Bailing out the installation for Pod-Tests-1.19.
--> Working on File::Flat
Fetching http://mirrors.gossamer-threads.com/CPAN/authors/id/A/AD/ADAMK/File-Flat-1.04.tar.gz ... OK
Configuring File-Flat-1.04 ... OK
==> Found dependencies: ExtUtils::MakeMaker
! Installing the dependencies failed: Installed version (6.99_07) of ExtUtils::MakeMaker is not in range '6.9907'
! Bailing out the installation for File-Flat-1.04.
! Installing the dependencies failed: Module 'Pod::Tests' is not installed, Module 'File::Flat' is not installed
! Bailing out the installation for Test-Inline-2.213.
@haarg
Copy link
Member

haarg commented Aug 17, 2014

There are two things happening here. First is that Module::Install writes the current version of ExtUtils::MakeMaker (as taken from $ExtUtils::MakeMaker::VERSION) into configure_requires. This seems mostly unnecessary but isn't really wrong. This version number doesn't include the underscore.

The version is then checked by cpanm, which uses version.pm for version comparisons. And version.pm still treats versions with underscores incorrectly.

@karenetheridge
Copy link
Member Author

On Sun, Aug 17, 2014 at 06:33:32AM -0700, Graham Knop wrote:

There are two things happening here. First is that Module::Install writes the current version of ExtUtils::MakeMaker (as taken from $ExtUtils::MakeMaker::VERSION) into configure_requires. This seems mostly unnecessary but isn't really wrong. This version number doesn't include the underscore.

If it didn't do this, we wouldn't be running into this problem.
Unnecessary prereqs cause unnecessary churn on everything downstream. It
would be better if MI only declared a EUMM dependency that it actually
needed for a particular feature (e.g. a WriteMakefile argument). The
minimum version required for each feature is clearly documented in EUMM's
main pod.

The version is then checked by cpanm, which uses version.pm for version comparisons. And version.pm still treats versions with underscores incorrectly.

Yeah, I really wish we could get that fixed... :/ Underscores are not
supposed to be significant, and we have conversations back in 2001
confirming that intent.

@haarg
Copy link
Member

haarg commented Aug 17, 2014

I just double checked, and Module::Install no longer inserts the current EUMM as a configure_requires. The modules you ran into problems with need to be refreshed with a modern MI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants