class Bundler::GemVersionPromoter

def sort_versions(dep, spec_groups)

Returns:
  • (SpecGroup) - A new instance of the SpecGroup Array sorted and

Parameters:
  • spec_groups (SpecGroup) -- An array of SpecGroups for the same gem
  • dep (Dependency) -- The Dependency of the gem.
def sort_versions(dep, spec_groups)
  before_result = "before sort_versions: #{debug_format_result(dep, spec_groups).inspect}" if DEBUG
  @sort_versions[dep] ||= begin
    gem_name = dep.name
    # An Array per version returned, different entries for different platforms.
    # We only need the version here so it's ok to hard code this to the first instance.
    locked_spec = locked_specs[gem_name].first
    if strict
      filter_dep_specs(spec_groups, locked_spec)
    else
      sort_dep_specs(spec_groups, locked_spec)
    end.tap do |specs|
      if DEBUG
        puts before_result
        puts " after sort_versions: #{debug_format_result(dep, specs).inspect}"
      end
    end
  end
end