Skip to content

Commit

Permalink
Merge pull request #3548 from CocoaPods/mr-minor-resolver-refactoring
Browse files Browse the repository at this point in the history
[Resolver] Move side-effect of storing head pods from #specs_by_target
  • Loading branch information
mrackwitz committed May 10, 2015
2 parents aa11287 + 28013a8 commit 9d23b19
Showing 1 changed file with 8 additions and 10 deletions.
18 changes: 8 additions & 10 deletions lib/cocoapods/resolver.rb
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,11 @@ def resolve
dependencies = podfile.target_definition_list.map(&:dependencies).flatten
@cached_sets = {}
@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
handle_resolver_error(e)
end
Expand All @@ -64,24 +68,18 @@ def resolve
# @note The returned specifications can be subspecs.
#
def specs_by_target
@specs_by_target ||= begin
specs_by_target = {}
@specs_by_target ||= {}.tap do |specs_by_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)
valid_dependencies_for_target_from_node(target, node) << node
end

specs_by_target[target] = specs.
flatten.
map(&:payload).
uniq.
sort_by(&:name).
each do |spec|
sandbox.store_head_pod(spec.name) if spec.version.head?
end
sort_by(&:name)
end
specs_by_target
end
end

Expand Down

0 comments on commit 9d23b19

Please sign in to comment.