class Gem::Source::Local

def find_gem(gem_name, version = Gem::Requirement.default, prerelease = false) # :nodoc:

:nodoc:
def find_gem(gem_name, version = Gem::Requirement.default, prerelease = false) # :nodoc:
  load_specs :complete
  found = []
  @specs.each do |n, data|
    next unless n.name == gem_name
    s = data[1].spec
    if version.satisfied_by?(s.version)
      if prerelease
        found << s
      elsif !s.version.prerelease? || version.prerelease?
        found << s
      end
    end
  end
  found.max_by(&:version)
end