class Bundler::Definition

def converge_locked_specs

generated
commonly happen if the Gemfile has changed since the lockfile was last
Remove elements from the locked specs that are expired. This will most
def converge_locked_specs
  converged = converge_specs(@locked_specs)
  resolve = SpecSet.new(converged.reject {|s| @gems_to_unlock.include?(s.name) })
  diff = nil
  # Now, we unlock any sources that do not have anymore gems pinned to it
  sources.all_sources.each do |source|
    next unless source.respond_to?(:unlock!)
    unless resolve.any? {|s| s.source == source }
      diff ||= @locked_specs.to_a - resolve.to_a
      source.unlock! if diff.any? {|s| s.source == source }
    end
  end
  resolve
end