in reply to What to specify as minimum dependencies

Personally, unless I already know better, I specify no minimum version in my prerequisites (in Makefile.PL):

... 'PREREQ_PM' => { 'AnyEvent' => '0', 'AnyEvent::HTTP' => '0', # for the reverse se +arch 'Growl::Any' => '0', # for the notification }, # e.g., Module::Name => 1.1 ...

If, thanks to the CPAN testers, I find that a module version is problematic, I bump my prerequisite version number above that, but by default, I'm lenient in what I accept.

Replies are listed 'Best First'.
Re^2: What to specify as minimum dependencies
by pokki (Monk) on Jan 16, 2011 at 22:08 UTC

    That seems a fair way to go about it, thanks! I hadn't even thought of specifying no minimum version.

    If, thanks to the CPAN testers, I find that a module version is problematic, I bump my prerequisite version number above that

    Do you need to do that often after uploading a module? I guess it depends on whether the authors of your prerequisites changed their API often?

      The "most problematic" module regarding its API was LWP::UserAgent, an indirect prerequisite (through WWW::Mechanize) for WWW::Mechanize::Shell. At a certain version, WWW::Mechanize monkeypatched LWP::UserAgent to provide credentials, and at another version, LWP::UserAgent changed its scheme so that the monkeypatch changed the wrong routine. WWW::Mechanize didn't specify the LWP version number until a later release, so after some trial and error, I pulled up the prerequisite version number of WWW::Mechanize to fix that.

      This was a one time thing so far, so I haven't felt it a real nuisance.