Commit 39c46b5f authored by Marius Rackwitz's avatar Marius Rackwitz

Merge pull request #4818 from CocoaPods/fix-analyzer-crash

[Analyzer] Fix #4751
parents b7ef2788 6922bd66
......@@ -10,6 +10,10 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
##### Bug Fixes
* Fix a crash in the analyzer when target deduplication is deactivated.
[Marius Rackwitz](https://github.com/mrackwitz)
[#4751](https://github.com/CocoaPods/CocoaPods/issues/4751)
* Handle CoreData mapping models with recursive resource globs.
[Eric Firestone](https://github.com/efirestone)
[#4809](https://github.com/CocoaPods/CocoaPods/pull/4809)
......
......@@ -286,9 +286,8 @@ module Pod
# @return [Array<PodTarget>]
#
def generate_pod_targets(specs_by_target)
if installation_options.deduplicate_targets?
dedupe_cache = {}
if installation_options.deduplicate_targets?
all_specs = specs_by_target.flat_map do |target_definition, dependent_specs|
dependent_specs.group_by(&:root).map do |root_spec, specs|
[root_spec, specs, target_definition]
......
......@@ -244,6 +244,33 @@ module Pod
Pods-SampleProject/Pods-SampleProject-monkey
).sort
end
it "doesn't deduplicate targets when deduplication is disabled" do
podfile = Pod::Podfile.new do
install! 'cocoapods', :deduplicate_targets => false
source SpecHelper.test_repo_url
platform :ios, '6.0'
xcodeproj 'SampleProject/SampleProject'
pod 'BananaLib'
target 'SampleProject' do
target 'TestRunner' do
pod 'BananaLib'
end
end
end
analyzer = Pod::Installer::Analyzer.new(config.sandbox, podfile)
analyzer.analyze
analyzer.analyze.targets.flat_map { |at| at.pod_targets.map { |pt| "#{at.name}/#{pt.name}" } }.sort.should == %w(
Pods-SampleProject-TestRunner/Pods-SampleProject-TestRunner-BananaLib
Pods-SampleProject-TestRunner/Pods-SampleProject-TestRunner-monkey
Pods-SampleProject/Pods-SampleProject-BananaLib
Pods-SampleProject/Pods-SampleProject-monkey
).sort
end
end
it 'generates the integration library appropriately if the installation will not integrate' do
......
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