class Bundler::Bundle

def prune(options = {})

def prune(options = {})
  dependencies, sources = @environment.gem_dependencies, @environment.sources
  sources.each do |s|
    s.local = true
  end
  sources = only_local(sources)
  bundle = Resolver.resolve(dependencies, [@cache] + sources)
  @cache.gems.each do |name, specs|
    specs.each do |spec|
      unless bundle.any? { |s| s.name == spec.name && s.version == spec.version }
        Bundler.logger.info "Pruning #{spec.name} (#{spec.version}) from the cache"
        FileUtils.rm @cache_path.join("#{spec.full_name}.gem")
      end
    end
  end
end