class ParallelInstaller
def enqueue_specs
previously installed specifications. We continue until all specs
Later we call this lambda again to install specs that depended on
We enqueue all gem specs that do not have any dependencies.
Keys in the remains hash represent uninstalled gems specs.
def enqueue_specs @specs.select(&:ready_to_enqueue?).each do |spec| if spec.dependencies_installed? @specs worker_pool.enq spec spec.state = :enqueued end end end