>> - my $has_version = $module->VERSION || 0; >> - return 1 if $has_version >= $version; >> + return 1 if eval { $module->VERSION($version) }; > > > Are you sure you haven't dropped something here? why did you remove the > comparison line?
becuase it's both wrong and unnecessary: VERSION ( [ REQUIRE ] ) "VERSION" will return the value of the variable $VERSION in the package the object is blessed into. If "REQUIRE" is given then it will do a comparison and die if the package version is not reater than or equal to "REQUIRE". --Geoff