Commit 9d23b199 authored by Marius Rackwitz's avatar Marius Rackwitz

Merge pull request #3548 from CocoaPods/mr-minor-resolver-refactoring

[Resolver] Move side-effect of storing head pods from #specs_by_target
parents aa11287e 28013a80
...@@ -53,7 +53,11 @@ module Pod ...@@ -53,7 +53,11 @@ module Pod
dependencies = podfile.target_definition_list.map(&:dependencies).flatten dependencies = podfile.target_definition_list.map(&:dependencies).flatten
@cached_sets = {} @cached_sets = {}
@activated = Molinillo::Resolver.new(self, self).resolve(dependencies, locked_dependencies) @activated = Molinillo::Resolver.new(self, self).resolve(dependencies, locked_dependencies)
specs_by_target specs_by_target.tap do |specs_by_target|
specs_by_target.values.flatten.each do |spec|
sandbox.store_head_pod(spec.name) if spec.version.head?
end
end
rescue Molinillo::ResolverError => e rescue Molinillo::ResolverError => e
handle_resolver_error(e) handle_resolver_error(e)
end end
...@@ -64,24 +68,18 @@ module Pod ...@@ -64,24 +68,18 @@ module Pod
# @note The returned specifications can be subspecs. # @note The returned specifications can be subspecs.
# #
def specs_by_target def specs_by_target
@specs_by_target ||= begin @specs_by_target ||= {}.tap do |specs_by_target|
specs_by_target = {}
podfile.target_definition_list.each do |target| podfile.target_definition_list.each do |target|
specs = target.dependencies.map(&:name).map do |name| specs = target.dependencies.map(&:name).flat_map do |name|
node = @activated.vertex_named(name) node = @activated.vertex_named(name)
valid_dependencies_for_target_from_node(target, node) << node valid_dependencies_for_target_from_node(target, node) << node
end end
specs_by_target[target] = specs. specs_by_target[target] = specs.
flatten.
map(&:payload). map(&:payload).
uniq. uniq.
sort_by(&:name). sort_by(&:name)
each do |spec|
sandbox.store_head_pod(spec.name) if spec.version.head?
end
end end
specs_by_target
end end
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment