cocoapods-packager 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/Gemfile.lock +41 -51
- data/cocoapods-packager.gemspec +1 -2
- data/lib/cocoapods-packager/builder.rb +8 -1
- data/lib/cocoapods-packager/pod_utils.rb +2 -2
- data/lib/cocoapods-packager/spec_builder.rb +4 -15
- data/lib/cocoapods_packager.rb +1 -1
- data/lib/pod/command/package.rb +4 -0
- data/spec/command/error_spec.rb +7 -0
- data/spec/command/package_spec.rb +60 -1
- data/spec/fixtures/LibraryConsumerDemo/LibraryConsumer.xcodeproj/project.pbxproj +26 -26
- data/spec/fixtures/PackagerTest/PackagerTest.xcodeproj/project.pbxproj +1 -1
- data/spec/fixtures/PackagerTest/Podfile.lock +1 -1
- data/spec/specification/builder_spec.rb +2 -2
- data/spec/specification/spec_builder_spec.rb +5 -0
- metadata +20 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81f7219b6430af93165f010b5a91fba4f8f240c3
|
4
|
+
data.tar.gz: 41cb81d33f36cc76edafa92e17f7ac3b94e17a6d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55bb7d7e09036c9ab7400cbd24e5edbedc1fa4e3a088d8897304a695cedb8d1a342404c3600d168966c2b51c68a7184fc3421805ec2e9a3a4bc1d99424a3e576
|
7
|
+
data.tar.gz: 8d95086b7260d92990639513f9a95757b94c4ccb0d7ed51539b80acf2caed4b232414ca302f8cd1d3fdb822ae5b0e9b5f4ae9305b4c6d6f8f67ab4a05dfbbae2
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,100 +1,93 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cocoapods-packager (1.
|
5
|
-
cocoapods (>= 1.
|
4
|
+
cocoapods-packager (1.5.0)
|
5
|
+
cocoapods (>= 1.1.1, < 2.0)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
activesupport (4.2.
|
10
|
+
activesupport (4.2.7.1)
|
11
11
|
i18n (~> 0.7)
|
12
12
|
json (~> 1.7, >= 1.7.7)
|
13
13
|
minitest (~> 5.1)
|
14
14
|
thread_safe (~> 0.3, >= 0.3.4)
|
15
15
|
tzinfo (~> 1.1)
|
16
|
-
ast (2.
|
16
|
+
ast (2.3.0)
|
17
17
|
bacon (1.2.0)
|
18
|
-
claide (1.0.
|
19
|
-
cocoapods (1.
|
20
|
-
activesupport (>= 4.0.2)
|
21
|
-
claide (>= 1.0.
|
22
|
-
cocoapods-core (= 1.
|
23
|
-
cocoapods-deintegrate (>= 1.0.
|
24
|
-
cocoapods-downloader (>= 1.
|
18
|
+
claide (1.0.1)
|
19
|
+
cocoapods (1.1.1)
|
20
|
+
activesupport (>= 4.0.2, < 5)
|
21
|
+
claide (>= 1.0.1, < 2.0)
|
22
|
+
cocoapods-core (= 1.1.1)
|
23
|
+
cocoapods-deintegrate (>= 1.0.1, < 2.0)
|
24
|
+
cocoapods-downloader (>= 1.1.2, < 2.0)
|
25
25
|
cocoapods-plugins (>= 1.0.0, < 2.0)
|
26
26
|
cocoapods-search (>= 1.0.0, < 2.0)
|
27
27
|
cocoapods-stats (>= 1.0.0, < 2.0)
|
28
|
-
cocoapods-trunk (>= 1.
|
29
|
-
cocoapods-try (>= 1.
|
28
|
+
cocoapods-trunk (>= 1.1.1, < 2.0)
|
29
|
+
cocoapods-try (>= 1.1.0, < 2.0)
|
30
30
|
colored (~> 1.2)
|
31
31
|
escape (~> 0.0.4)
|
32
|
-
fourflusher (~> 0.
|
33
|
-
|
32
|
+
fourflusher (~> 2.0.1)
|
33
|
+
gh_inspector (~> 1.0)
|
34
|
+
molinillo (~> 0.5.1)
|
34
35
|
nap (~> 1.0)
|
35
|
-
xcodeproj (>= 1.
|
36
|
-
cocoapods-core (1.
|
37
|
-
activesupport (>= 4.0.2)
|
36
|
+
xcodeproj (>= 1.3.3, < 2.0)
|
37
|
+
cocoapods-core (1.1.1)
|
38
|
+
activesupport (>= 4.0.2, < 5)
|
38
39
|
fuzzy_match (~> 2.0.4)
|
39
40
|
nap (~> 1.0)
|
40
|
-
cocoapods-deintegrate (1.0.
|
41
|
-
cocoapods-downloader (1.
|
41
|
+
cocoapods-deintegrate (1.0.1)
|
42
|
+
cocoapods-downloader (1.1.2)
|
42
43
|
cocoapods-plugins (1.0.0)
|
43
44
|
nap
|
44
45
|
cocoapods-search (1.0.0)
|
45
46
|
cocoapods-stats (1.0.0)
|
46
|
-
cocoapods-trunk (1.
|
47
|
+
cocoapods-trunk (1.1.1)
|
47
48
|
nap (>= 0.8, < 2.0)
|
48
49
|
netrc (= 0.7.8)
|
49
|
-
cocoapods-try (1.
|
50
|
+
cocoapods-try (1.1.0)
|
50
51
|
colored (1.2)
|
51
|
-
coveralls (0.8.
|
52
|
-
json (
|
53
|
-
|
54
|
-
simplecov (~> 0.10.0)
|
52
|
+
coveralls (0.8.14)
|
53
|
+
json (>= 1.8, < 3)
|
54
|
+
simplecov (~> 0.12.0)
|
55
55
|
term-ansicolor (~> 1.3)
|
56
56
|
thor (~> 0.19.1)
|
57
|
+
tins (~> 1.6.0)
|
57
58
|
docile (1.1.5)
|
58
|
-
domain_name (0.5.24)
|
59
|
-
unf (>= 0.0.5, < 1.0.0)
|
60
59
|
escape (0.0.4)
|
61
|
-
fourflusher (0.
|
60
|
+
fourflusher (2.0.1)
|
62
61
|
fuzzy_match (2.0.4)
|
63
|
-
|
64
|
-
domain_name (~> 0.5)
|
62
|
+
gh_inspector (1.0.2)
|
65
63
|
i18n (0.7.0)
|
66
64
|
json (1.8.3)
|
67
65
|
metaclass (0.0.4)
|
68
|
-
|
69
|
-
minitest (5.9.0)
|
66
|
+
minitest (5.9.1)
|
70
67
|
mocha (0.11.4)
|
71
68
|
metaclass (~> 0.0.1)
|
72
69
|
mocha-on-bacon (0.2.1)
|
73
70
|
mocha (>= 0.9.8)
|
74
|
-
molinillo (0.
|
71
|
+
molinillo (0.5.2)
|
75
72
|
nap (1.1.0)
|
76
73
|
netrc (0.7.8)
|
77
|
-
parser (2.3.1.
|
74
|
+
parser (2.3.1.2)
|
78
75
|
ast (~> 2.2)
|
79
76
|
powerpack (0.1.1)
|
80
77
|
prettybacon (0.0.2)
|
81
78
|
bacon (~> 1.2)
|
82
79
|
rainbow (2.1.0)
|
83
|
-
rake (
|
84
|
-
|
85
|
-
|
86
|
-
mime-types (>= 1.16, < 3.0)
|
87
|
-
netrc (~> 0.7)
|
88
|
-
rubocop (0.40.0)
|
89
|
-
parser (>= 2.3.1.0, < 3.0)
|
80
|
+
rake (11.2.2)
|
81
|
+
rubocop (0.41.2)
|
82
|
+
parser (>= 2.3.1.1, < 3.0)
|
90
83
|
powerpack (~> 0.1)
|
91
84
|
rainbow (>= 1.99.1, < 3.0)
|
92
85
|
ruby-progressbar (~> 1.7)
|
93
86
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
94
87
|
ruby-progressbar (1.8.1)
|
95
|
-
simplecov (0.
|
88
|
+
simplecov (0.12.0)
|
96
89
|
docile (~> 1.1.0)
|
97
|
-
json (
|
90
|
+
json (>= 1.8, < 3)
|
98
91
|
simplecov-html (~> 0.10.0)
|
99
92
|
simplecov-html (0.10.0)
|
100
93
|
term-ansicolor (1.3.2)
|
@@ -104,13 +97,10 @@ GEM
|
|
104
97
|
tins (1.6.0)
|
105
98
|
tzinfo (1.2.2)
|
106
99
|
thread_safe (~> 0.1)
|
107
|
-
|
108
|
-
|
109
|
-
unf_ext (0.0.7.1)
|
110
|
-
unicode-display_width (1.0.5)
|
111
|
-
xcodeproj (1.1.0)
|
100
|
+
unicode-display_width (1.1.0)
|
101
|
+
xcodeproj (1.3.3)
|
112
102
|
activesupport (>= 3)
|
113
|
-
claide (>= 1.0.
|
103
|
+
claide (>= 1.0.1, < 2.0)
|
114
104
|
colored (~> 1.2)
|
115
105
|
|
116
106
|
PLATFORMS
|
@@ -128,4 +118,4 @@ DEPENDENCIES
|
|
128
118
|
rubocop
|
129
119
|
|
130
120
|
BUNDLED WITH
|
131
|
-
1.
|
121
|
+
1.13.5
|
data/cocoapods-packager.gemspec
CHANGED
@@ -15,9 +15,8 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
16
16
|
spec.require_paths = ["lib"]
|
17
17
|
|
18
|
-
spec.add_dependency "cocoapods", '>= 1.
|
18
|
+
spec.add_dependency "cocoapods", '>= 1.1.1', '< 2.0'
|
19
19
|
|
20
20
|
spec.add_development_dependency "bundler", "~> 1.3"
|
21
21
|
spec.add_development_dependency "rake"
|
22
22
|
end
|
23
|
-
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Pod
|
2
2
|
class Builder
|
3
|
-
def initialize(source_dir, static_sandbox_root, dynamic_sandbox_root, public_headers_root, spec, embedded, mangle, dynamic, config, exclude_deps)
|
3
|
+
def initialize(source_dir, static_sandbox_root, dynamic_sandbox_root, public_headers_root, spec, embedded, mangle, dynamic, config, bundle_identifier, exclude_deps)
|
4
4
|
@source_dir = source_dir
|
5
5
|
@static_sandbox_root = static_sandbox_root
|
6
6
|
@dynamic_sandbox_root = dynamic_sandbox_root
|
@@ -10,6 +10,7 @@ module Pod
|
|
10
10
|
@mangle = mangle
|
11
11
|
@dynamic = dynamic
|
12
12
|
@config = config
|
13
|
+
@bundle_identifier = bundle_identifier
|
13
14
|
@exclude_deps = exclude_deps
|
14
15
|
end
|
15
16
|
|
@@ -65,6 +66,10 @@ module Pod
|
|
65
66
|
def build_dynamic_framework(platform, defines, output)
|
66
67
|
UI.puts("Building dynamic Framework #{@spec} with configuration #{@config}")
|
67
68
|
|
69
|
+
if @bundle_identifier
|
70
|
+
defines = "#{defines} PRODUCT_BUNDLE_IDENTIFIER='#{@bundle_identifier}'"
|
71
|
+
end
|
72
|
+
|
68
73
|
clean_directory_for_dynamic_build
|
69
74
|
if platform.name == :ios
|
70
75
|
build_dynamic_framework_for_ios(platform, defines, output)
|
@@ -101,6 +106,7 @@ module Pod
|
|
101
106
|
|
102
107
|
FileUtils.mkdir(platform.name.to_s)
|
103
108
|
`mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework #{platform.name}`
|
109
|
+
`mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework.dSYM #{platform.name}`
|
104
110
|
end
|
105
111
|
|
106
112
|
def build_dynamic_framework_for_mac(platform, defines, _output)
|
@@ -114,6 +120,7 @@ module Pod
|
|
114
120
|
|
115
121
|
FileUtils.mkdir(platform.name.to_s)
|
116
122
|
`mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework #{platform.name}`
|
123
|
+
`mv #{@dynamic_sandbox_root}/build/#{@spec.name}.framework.dSYM #{platform.name}`
|
117
124
|
end
|
118
125
|
|
119
126
|
def build_sim_libraries(platform, defines)
|
@@ -206,13 +206,13 @@ module Pod
|
|
206
206
|
end
|
207
207
|
|
208
208
|
def install_file_references(dynamic_sandbox, pod_targets, pods_project)
|
209
|
-
installer = Pod::Installer::FileReferencesInstaller.new(dynamic_sandbox, pod_targets, pods_project)
|
209
|
+
installer = Pod::Installer::Xcode::PodsProjectGenerator::FileReferencesInstaller.new(dynamic_sandbox, pod_targets, pods_project)
|
210
210
|
installer.install!
|
211
211
|
end
|
212
212
|
|
213
213
|
def install_library(dynamic_sandbox, dynamic_target)
|
214
214
|
return if dynamic_target.target_definitions.flat_map(&:dependencies).empty?
|
215
|
-
target_installer = Pod::Installer::PodTargetInstaller.new(dynamic_sandbox, dynamic_target)
|
215
|
+
target_installer = Pod::Installer::Xcode::PodsProjectGenerator::PodTargetInstaller.new(dynamic_sandbox, dynamic_target)
|
216
216
|
target_installer.install!
|
217
217
|
|
218
218
|
# Installs System Frameworks
|
@@ -17,22 +17,12 @@ module Pod
|
|
17
17
|
|
18
18
|
def spec_platform(platform)
|
19
19
|
fwk_base = platform.name.to_s + '/' + framework_path
|
20
|
-
spec =
|
21
|
-
<<RB
|
20
|
+
spec = <<RB
|
22
21
|
s.#{platform.name}.deployment_target = '#{platform.deployment_target}'
|
23
22
|
s.#{platform.name}.vendored_framework = '#{fwk_base}'
|
24
23
|
RB
|
25
|
-
else
|
26
|
-
<<SPEC
|
27
|
-
s.#{platform.name}.deployment_target = '#{platform.deployment_target}'
|
28
|
-
s.#{platform.name}.preserve_paths = '#{fwk_base}'
|
29
|
-
s.#{platform.name}.public_header_files = '#{fwk_base}/Versions/A/Headers/*.h'
|
30
|
-
s.#{platform.name}.resource = '#{fwk_base}/Versions/A/Resources/**/*'
|
31
|
-
s.#{platform.name}.vendored_frameworks = '#{fwk_base}'
|
32
|
-
SPEC
|
33
|
-
end
|
34
24
|
|
35
|
-
%w(frameworks libraries requires_arc xcconfig).each do |attribute|
|
25
|
+
%w(frameworks weak_frameworks libraries requires_arc xcconfig).each do |attribute|
|
36
26
|
attributes_hash = @spec.attributes_hash[platform.name.to_s]
|
37
27
|
next if attributes_hash.nil?
|
38
28
|
value = attributes_hash[attribute]
|
@@ -59,12 +49,11 @@ SPEC
|
|
59
49
|
spec = "Pod::Spec.new do |s|\n"
|
60
50
|
|
61
51
|
%w(name version summary license authors homepage description social_media_url
|
62
|
-
docset_url documentation_url screenshots frameworks libraries requires_arc
|
52
|
+
docset_url documentation_url screenshots frameworks weak_frameworks libraries requires_arc
|
63
53
|
deployment_target xcconfig).each do |attribute|
|
64
54
|
value = @spec.attributes_hash[attribute]
|
65
55
|
next if value.nil?
|
66
|
-
|
67
|
-
value = "'#{value}'" if value.class == String
|
56
|
+
value = value.dump if value.class == String
|
68
57
|
spec += " s.#{attribute} = #{value}\n"
|
69
58
|
end
|
70
59
|
|
data/lib/cocoapods_packager.rb
CHANGED
data/lib/pod/command/package.rb
CHANGED
@@ -15,6 +15,7 @@ module Pod
|
|
15
15
|
['--embedded', 'Generate embedded frameworks.'],
|
16
16
|
['--library', 'Generate static libraries.'],
|
17
17
|
['--dynamic', 'Generate dynamic framework.'],
|
18
|
+
['--bundle-identifier', 'Bundle identifier for dynamic framework'],
|
18
19
|
['--exclude-deps', 'Exclude symbols from dependencies.'],
|
19
20
|
['--configuration', 'Build the specified configuration (e.g. Debug). Defaults to Release'],
|
20
21
|
['--subspecs', 'Only include the given subspecs'],
|
@@ -29,6 +30,7 @@ module Pod
|
|
29
30
|
@library = argv.flag?('library')
|
30
31
|
@dynamic = argv.flag?('dynamic')
|
31
32
|
@mangle = argv.flag?('mangle', true)
|
33
|
+
@bundle_identifier = argv.option('bundle-identifier', nil)
|
32
34
|
@exclude_deps = argv.flag?('exclude-deps', false)
|
33
35
|
@name = argv.shift_argument
|
34
36
|
@source = argv.shift_argument
|
@@ -49,6 +51,7 @@ module Pod
|
|
49
51
|
super
|
50
52
|
help! 'A podspec name or path is required.' unless @spec
|
51
53
|
help! 'podspec has binary-only depedencies, mangling not possible.' if @mangle && binary_only?(@spec)
|
54
|
+
help! '--bundle-identifier option can only be used for dynamic frameworks' if @bundle_identifier && !@dynamic
|
52
55
|
help! '--exclude-deps option can only be used for static libraries' if @exclude_deps && @dynamic
|
53
56
|
end
|
54
57
|
|
@@ -146,6 +149,7 @@ module Pod
|
|
146
149
|
@mangle,
|
147
150
|
@dynamic,
|
148
151
|
@config,
|
152
|
+
@bundle_identifier,
|
149
153
|
@exclude_deps
|
150
154
|
)
|
151
155
|
|
data/spec/command/error_spec.rb
CHANGED
@@ -28,6 +28,13 @@ module Pod
|
|
28
28
|
end.message.should.match /binary-only/
|
29
29
|
end
|
30
30
|
|
31
|
+
it 'presents the help if only --bundle-identifier is specified' do
|
32
|
+
command = Command.parse(%w{ package spec/fixtures/NikeKit.podspec --bundle-identifier=com.example.NikeKit })
|
33
|
+
should.raise CLAide::Help do
|
34
|
+
command.validate!
|
35
|
+
end.message.should.match /--bundle-identifier option can only be used for dynamic frameworks/
|
36
|
+
end
|
37
|
+
|
31
38
|
it 'presents the help if both --exclude-deps and --dynamic are specified' do
|
32
39
|
command = Command.parse(%w{ package spec/fixtures/NikeKit.podspec --exclude-deps --dynamic })
|
33
40
|
should.raise CLAide::Help do
|
@@ -49,6 +49,20 @@ module Pod
|
|
49
49
|
output[1].should.match /Mach-O dynamically linked shared library i386/
|
50
50
|
end
|
51
51
|
|
52
|
+
it "should produce a dSYM when dynamic is specified" do
|
53
|
+
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
54
|
+
|
55
|
+
command = Command.parse(%w{ package spec/fixtures/NikeKit.podspec --dynamic })
|
56
|
+
command.run
|
57
|
+
|
58
|
+
lib = Dir.glob("NikeKit-*/ios/NikeKit.framework.dSYM/Contents/Resources/DWARF/NikeKit").first
|
59
|
+
file_command = "file #{lib}"
|
60
|
+
output = `#{file_command}`.lines.to_a
|
61
|
+
|
62
|
+
output[0].should.match /Mach-O universal binary with 3 architectures/
|
63
|
+
output[1].should.match /Mach-O dSYM companion file arm/
|
64
|
+
end
|
65
|
+
|
52
66
|
it "should link category symbols when dynamic is specified" do
|
53
67
|
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
54
68
|
|
@@ -76,6 +90,51 @@ module Pod
|
|
76
90
|
output[0].should.match /Mach-O 64-bit dynamically linked shared library x86_64/
|
77
91
|
end
|
78
92
|
|
93
|
+
it "should produce a dSYM for OSX when dynamic is specified" do
|
94
|
+
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
95
|
+
|
96
|
+
command = Command.parse(%w{ package spec/fixtures/KFData.podspec --dynamic })
|
97
|
+
command.run
|
98
|
+
|
99
|
+
lib = Dir.glob("KFData-*/osx/KFData.framework.dSYM/Contents/Resources/DWARF/KFData").first
|
100
|
+
file_command = "file #{lib}"
|
101
|
+
output = `#{file_command}`.lines.to_a
|
102
|
+
|
103
|
+
output[0].should.match /Mach-O 64-bit dSYM companion file x86_64/
|
104
|
+
end
|
105
|
+
|
106
|
+
it "should produce the default plist for iOS and OSX when --dynamic is specified but --bundle-identifier is not" do
|
107
|
+
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
108
|
+
|
109
|
+
command = Command.parse(%w{ package spec/fixtures/KFData.podspec --dynamic})
|
110
|
+
command.run
|
111
|
+
|
112
|
+
ios_plist = File.expand_path(Dir.glob("KFData-*/ios/KFData.framework/Info.plist").first)
|
113
|
+
osx_plist = File.expand_path(Dir.glob("KFData-*/osx/KFData.framework/Resources/Info.plist").first)
|
114
|
+
|
115
|
+
ios_bundle_id = `defaults read #{ios_plist} CFBundleIdentifier`
|
116
|
+
osx_bundle_id = `defaults read #{osx_plist} CFBundleIdentifier`
|
117
|
+
|
118
|
+
ios_bundle_id.should.match /org.cocoapods.KFData/
|
119
|
+
osx_bundle_id.should.match /org.cocoapods.KFData/
|
120
|
+
end
|
121
|
+
|
122
|
+
it "should produce the correct plist for iOS and OSX when --dynamic and --bundle-identifier are specified" do
|
123
|
+
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
124
|
+
|
125
|
+
command = Command.parse(%w{ package spec/fixtures/KFData.podspec --dynamic --bundle-identifier=com.example.KFData})
|
126
|
+
command.run
|
127
|
+
|
128
|
+
ios_plist = File.expand_path(Dir.glob("KFData-*/ios/KFData.framework/Info.plist").first)
|
129
|
+
osx_plist = File.expand_path(Dir.glob("KFData-*/osx/KFData.framework/Resources/Info.plist").first)
|
130
|
+
|
131
|
+
ios_bundle_id = `defaults read #{ios_plist} CFBundleIdentifier`
|
132
|
+
osx_bundle_id = `defaults read #{osx_plist} CFBundleIdentifier`
|
133
|
+
|
134
|
+
ios_bundle_id.should.match /com.example.KFData/
|
135
|
+
osx_bundle_id.should.match /com.example.KFData/
|
136
|
+
end
|
137
|
+
|
79
138
|
it "should produce a static library when dynamic is not specified" do
|
80
139
|
Pod::Config.instance.sources_manager.stubs(:search).returns(nil)
|
81
140
|
|
@@ -87,7 +146,7 @@ module Pod
|
|
87
146
|
output = `#{file_command}`.lines.to_a
|
88
147
|
|
89
148
|
output[0].should.match /Mach-O universal binary with 5 architectures/
|
90
|
-
output[1].should.match /current ar archive
|
149
|
+
output[1].should.match /current ar archive/
|
91
150
|
end
|
92
151
|
|
93
152
|
it "mangles symbols if the Pod has dependencies" do
|
@@ -7,15 +7,15 @@
|
|
7
7
|
objects = {
|
8
8
|
|
9
9
|
/* Begin PBXBuildFile section */
|
10
|
+
7CE4CCEF5BF27FD4FBB972EB /* libPods-LibraryConsumer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34AD1A407B865D05B65A5301 /* libPods-LibraryConsumer.a */; };
|
10
11
|
9B89D2E019EFC04D00803D42 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B89D2DF19EFC04D00803D42 /* main.m */; };
|
11
12
|
9B89D2E319EFC04D00803D42 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 9B89D2E219EFC04D00803D42 /* AppDelegate.m */; };
|
12
|
-
A1381F09576636A564E1CE00 /* libPods-LibraryConsumer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BFA015CA221FE724F8AAB81 /* libPods-LibraryConsumer.a */; };
|
13
13
|
/* End PBXBuildFile section */
|
14
14
|
|
15
15
|
/* Begin PBXFileReference section */
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
0AA277EF1097393AE42174B8 /* Pods-LibraryConsumer.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-LibraryConsumer.release.xcconfig"; path = "Pods/Target Support Files/Pods-LibraryConsumer/Pods-LibraryConsumer.release.xcconfig"; sourceTree = "<group>"; };
|
17
|
+
34AD1A407B865D05B65A5301 /* libPods-LibraryConsumer.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-LibraryConsumer.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
18
|
+
4A66E303CCF429F9D7C502D1 /* Pods-LibraryConsumer.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-LibraryConsumer.debug.xcconfig"; path = "Pods/Target Support Files/Pods-LibraryConsumer/Pods-LibraryConsumer.debug.xcconfig"; sourceTree = "<group>"; };
|
19
19
|
9B89D2DA19EFC04D00803D42 /* LibraryConsumer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LibraryConsumer.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
20
20
|
9B89D2DE19EFC04D00803D42 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
21
21
|
9B89D2DF19EFC04D00803D42 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
@@ -28,28 +28,28 @@
|
|
28
28
|
isa = PBXFrameworksBuildPhase;
|
29
29
|
buildActionMask = 2147483647;
|
30
30
|
files = (
|
31
|
-
|
31
|
+
7CE4CCEF5BF27FD4FBB972EB /* libPods-LibraryConsumer.a in Frameworks */,
|
32
32
|
);
|
33
33
|
runOnlyForDeploymentPostprocessing = 0;
|
34
34
|
};
|
35
35
|
/* End PBXFrameworksBuildPhase section */
|
36
36
|
|
37
37
|
/* Begin PBXGroup section */
|
38
|
-
|
38
|
+
1CFA5E012476526B947AF945 /* Frameworks */ = {
|
39
39
|
isa = PBXGroup;
|
40
40
|
children = (
|
41
|
-
|
42
|
-
833DF35C723143E1561E07BD /* Pods-LibraryConsumer.release.xcconfig */,
|
41
|
+
34AD1A407B865D05B65A5301 /* libPods-LibraryConsumer.a */,
|
43
42
|
);
|
44
|
-
name =
|
43
|
+
name = Frameworks;
|
45
44
|
sourceTree = "<group>";
|
46
45
|
};
|
47
|
-
|
46
|
+
6DC8E89A3E645F7841B27894 /* Pods */ = {
|
48
47
|
isa = PBXGroup;
|
49
48
|
children = (
|
50
|
-
|
49
|
+
4A66E303CCF429F9D7C502D1 /* Pods-LibraryConsumer.debug.xcconfig */,
|
50
|
+
0AA277EF1097393AE42174B8 /* Pods-LibraryConsumer.release.xcconfig */,
|
51
51
|
);
|
52
|
-
name =
|
52
|
+
name = Pods;
|
53
53
|
sourceTree = "<group>";
|
54
54
|
};
|
55
55
|
9B89D2D119EFC04D00803D42 = {
|
@@ -57,8 +57,8 @@
|
|
57
57
|
children = (
|
58
58
|
9B89D2DC19EFC04D00803D42 /* LibraryConsumer */,
|
59
59
|
9B89D2DB19EFC04D00803D42 /* Products */,
|
60
|
-
|
61
|
-
|
60
|
+
6DC8E89A3E645F7841B27894 /* Pods */,
|
61
|
+
1CFA5E012476526B947AF945 /* Frameworks */,
|
62
62
|
);
|
63
63
|
sourceTree = "<group>";
|
64
64
|
};
|
@@ -96,12 +96,12 @@
|
|
96
96
|
isa = PBXNativeTarget;
|
97
97
|
buildConfigurationList = 9B89D2FD19EFC04D00803D42 /* Build configuration list for PBXNativeTarget "LibraryConsumer" */;
|
98
98
|
buildPhases = (
|
99
|
-
|
99
|
+
170A030C4EB518D9349852B9 /* [CP] Check Pods Manifest.lock */,
|
100
100
|
9B89D2D619EFC04D00803D42 /* Sources */,
|
101
101
|
9B89D2D719EFC04D00803D42 /* Frameworks */,
|
102
102
|
9B89D2D819EFC04D00803D42 /* Resources */,
|
103
|
-
|
104
|
-
|
103
|
+
66E97541EE256003BD711EDA /* [CP] Embed Pods Frameworks */,
|
104
|
+
DFB55D7B0E04E9E06397977F /* [CP] Copy Pods Resources */,
|
105
105
|
);
|
106
106
|
buildRules = (
|
107
107
|
);
|
@@ -155,37 +155,37 @@
|
|
155
155
|
/* End PBXResourcesBuildPhase section */
|
156
156
|
|
157
157
|
/* Begin PBXShellScriptBuildPhase section */
|
158
|
-
|
158
|
+
170A030C4EB518D9349852B9 /* [CP] Check Pods Manifest.lock */ = {
|
159
159
|
isa = PBXShellScriptBuildPhase;
|
160
160
|
buildActionMask = 2147483647;
|
161
161
|
files = (
|
162
162
|
);
|
163
163
|
inputPaths = (
|
164
164
|
);
|
165
|
-
name = "[CP]
|
165
|
+
name = "[CP] Check Pods Manifest.lock";
|
166
166
|
outputPaths = (
|
167
167
|
);
|
168
168
|
runOnlyForDeploymentPostprocessing = 0;
|
169
169
|
shellPath = /bin/sh;
|
170
|
-
shellScript = "\"${
|
170
|
+
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n";
|
171
171
|
showEnvVarsInLog = 0;
|
172
172
|
};
|
173
|
-
|
173
|
+
66E97541EE256003BD711EDA /* [CP] Embed Pods Frameworks */ = {
|
174
174
|
isa = PBXShellScriptBuildPhase;
|
175
175
|
buildActionMask = 2147483647;
|
176
176
|
files = (
|
177
177
|
);
|
178
178
|
inputPaths = (
|
179
179
|
);
|
180
|
-
name = "[CP]
|
180
|
+
name = "[CP] Embed Pods Frameworks";
|
181
181
|
outputPaths = (
|
182
182
|
);
|
183
183
|
runOnlyForDeploymentPostprocessing = 0;
|
184
184
|
shellPath = /bin/sh;
|
185
|
-
shellScript = "
|
185
|
+
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-LibraryConsumer/Pods-LibraryConsumer-frameworks.sh\"\n";
|
186
186
|
showEnvVarsInLog = 0;
|
187
187
|
};
|
188
|
-
|
188
|
+
DFB55D7B0E04E9E06397977F /* [CP] Copy Pods Resources */ = {
|
189
189
|
isa = PBXShellScriptBuildPhase;
|
190
190
|
buildActionMask = 2147483647;
|
191
191
|
files = (
|
@@ -293,7 +293,7 @@
|
|
293
293
|
};
|
294
294
|
9B89D2FE19EFC04D00803D42 /* Debug */ = {
|
295
295
|
isa = XCBuildConfiguration;
|
296
|
-
baseConfigurationReference =
|
296
|
+
baseConfigurationReference = 4A66E303CCF429F9D7C502D1 /* Pods-LibraryConsumer.debug.xcconfig */;
|
297
297
|
buildSettings = {
|
298
298
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
299
299
|
INFOPLIST_FILE = LibraryConsumer/Info.plist;
|
@@ -304,7 +304,7 @@
|
|
304
304
|
};
|
305
305
|
9B89D2FF19EFC04D00803D42 /* Release */ = {
|
306
306
|
isa = XCBuildConfiguration;
|
307
|
-
baseConfigurationReference =
|
307
|
+
baseConfigurationReference = 0AA277EF1097393AE42174B8 /* Pods-LibraryConsumer.release.xcconfig */;
|
308
308
|
buildSettings = {
|
309
309
|
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
310
310
|
INFOPLIST_FILE = LibraryConsumer/Info.plist;
|
@@ -271,7 +271,7 @@
|
|
271
271
|
);
|
272
272
|
runOnlyForDeploymentPostprocessing = 0;
|
273
273
|
shellPath = /bin/sh;
|
274
|
-
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [
|
274
|
+
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n";
|
275
275
|
showEnvVarsInLog = 0;
|
276
276
|
};
|
277
277
|
E32FAE278D58BC5B3F788CE7 /* [CP] Embed Pods Frameworks */ = {
|
@@ -6,7 +6,7 @@ module Pod
|
|
6
6
|
describe 'compiler flags' do
|
7
7
|
before do
|
8
8
|
@spec = Specification.from_file('spec/fixtures/Builder.podspec')
|
9
|
-
@builder = Builder.new(nil, nil, nil, nil, @spec, nil, nil, nil, nil, nil)
|
9
|
+
@builder = Builder.new(nil, nil, nil, nil, @spec, nil, nil, nil, nil, nil, nil)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "includes proper compiler flags for iOS" do
|
@@ -23,7 +23,7 @@ module Pod
|
|
23
23
|
describe 'on build failure' do
|
24
24
|
before do
|
25
25
|
@spec = Specification.from_file('spec/fixtures/Builder.podspec')
|
26
|
-
@builder = Builder.new(nil, nil, nil, nil, @spec, nil, nil, nil, nil, nil)
|
26
|
+
@builder = Builder.new(nil, nil, nil, nil, @spec, nil, nil, nil, nil, nil, nil)
|
27
27
|
end
|
28
28
|
|
29
29
|
it 'dumps report and terminates' do
|
@@ -32,6 +32,11 @@ module Pod
|
|
32
32
|
compare_attributes(spec, @spec, 'frameworks')
|
33
33
|
end
|
34
34
|
|
35
|
+
it "preserves platform.weak_frameworks" do
|
36
|
+
spec = specification_from_builder(@builder)
|
37
|
+
compare_attributes(spec, @spec, 'weak_frameworks')
|
38
|
+
end
|
39
|
+
|
35
40
|
it "preserves platform.libraries" do
|
36
41
|
spec = specification_from_builder(@builder)
|
37
42
|
compare_attributes(spec, @spec, 'libraries')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-packager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyle Fuller
|
@@ -9,54 +9,54 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-10-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cocoapods
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 1.
|
21
|
-
- - <
|
20
|
+
version: 1.1.1
|
21
|
+
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '2.0'
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
27
|
requirements:
|
28
|
-
- -
|
28
|
+
- - ">="
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: 1.
|
31
|
-
- - <
|
30
|
+
version: 1.1.1
|
31
|
+
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '2.0'
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: bundler
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.3'
|
41
41
|
type: :development
|
42
42
|
prerelease: false
|
43
43
|
version_requirements: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '1.3'
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: rake
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
57
|
version_requirements: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
description:
|
@@ -65,11 +65,11 @@ executables: []
|
|
65
65
|
extensions: []
|
66
66
|
extra_rdoc_files: []
|
67
67
|
files:
|
68
|
-
- .coveralls.yml
|
69
|
-
- .gitignore
|
70
|
-
- .rubocop-cocoapods.yml
|
71
|
-
- .rubocop.yml
|
72
|
-
- .travis.yml
|
68
|
+
- ".coveralls.yml"
|
69
|
+
- ".gitignore"
|
70
|
+
- ".rubocop-cocoapods.yml"
|
71
|
+
- ".rubocop.yml"
|
72
|
+
- ".travis.yml"
|
73
73
|
- Gemfile
|
74
74
|
- Gemfile.lock
|
75
75
|
- LICENSE
|
@@ -146,17 +146,17 @@ require_paths:
|
|
146
146
|
- lib
|
147
147
|
required_ruby_version: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
|
-
- -
|
149
|
+
- - ">="
|
150
150
|
- !ruby/object:Gem::Version
|
151
151
|
version: '0'
|
152
152
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
153
153
|
requirements:
|
154
|
-
- -
|
154
|
+
- - ">="
|
155
155
|
- !ruby/object:Gem::Version
|
156
156
|
version: '0'
|
157
157
|
requirements: []
|
158
158
|
rubyforge_project:
|
159
|
-
rubygems_version: 2.
|
159
|
+
rubygems_version: 2.6.7
|
160
160
|
signing_key:
|
161
161
|
specification_version: 4
|
162
162
|
summary: CocoaPods plugin which allows you to generate a framework or static library
|
@@ -210,4 +210,3 @@ test_files:
|
|
210
210
|
- spec/specification/builder_spec.rb
|
211
211
|
- spec/specification/spec_builder_spec.rb
|
212
212
|
- spec/user_interface/build_failed_report_spec.rb
|
213
|
-
has_rdoc:
|