Method: Gem::Resolver#sort_dependencies

Defined in:
lib/rubygems/resolver.rb

#sort_dependencies(dependencies, activated, conflicts) ⇒ Object



275
276
277
278
279
280
281
282
283
284
285
286
# File 'lib/rubygems/resolver.rb', line 275

def sort_dependencies(dependencies, activated, conflicts)
  dependencies.sort_by.with_index do |dependency, i|
    name = name_for(dependency)
    [
      activated.vertex_named(name).payload ? 0 : 1,
      amount_constrained(dependency),
      conflicts[name] ? 0 : 1,
      activated.vertex_named(name).payload ? 0 : search_for(dependency).count,
      i, # for stable sort
    ]
  end
end