jonathanstowe / TermReadKey

Character mode terminal access for Perl
12 stars 27 forks source link

Track minimum version of ExtUtils::MakeMaker #24

Closed jonathanstowe closed 7 years ago

jonathanstowe commented 7 years ago

The minimum version of EUMM required hasn't been raised for a very long time, I'm tempted to go with 6.42 as that is what shipped with 5.10.0

pghmcfc commented 7 years ago

Unfortunately 6.42 is in the range that does not work. 6.36 or older are OK, and 6.58 or newer are OK. It's the ones in between that have problems.

jonathanstowe commented 7 years ago

I think I just have nostalgia for when the module used to work with 5.003 :) I'll try that 6.58 but that is basically limiting it to 5.16.0 or greater and I'm sure there will be shrieks from some quarters.

pghmcfc commented 7 years ago

Possibly, yes. I'm coming from an rpm -based environment so I don't know how the regular cpan tooling handles it, but I thought that if an install required an updated version of a dependency then it would (try to) pull it from CPAN and install it?

An alternative approach would be to use a dynamic prereq to bump the EU::MM version requirement only if a version in the problematic range was present. JSON-MaybeXS does something similar if JSON::XS is installed and not at least version 3.

Finally, the problem would go away altogether if the two authors were cited as a single string rather than as an array of two strings, as in the downstream fix I mentioned originally.

jonathanstowe commented 7 years ago

I've added a CONFIG_REQUIRES and a BUILD_REQUIRES to the Makefile.PL so that at least there is a fighting chance of it working with an older Perl (of course both of those are contingent on a slightly newer EUMM as well,)

I'm just going to make a trial release to see if I can get it to index this time, so if that works the 2.37 will have all of the above.

pghmcfc commented 7 years ago

You used 6.42 instead of 6.58 ...

jonathanstowe commented 7 years ago

You had me worried there, I put it in and then changed it again with the https://github.com/jonathanstowe/TermReadKey/commit/2e902ff51f8074ebce69232479fc77285f5ebf3b :)