cocoapods 1.5.2 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +365 -1
- data/bin/pod +1 -1
- data/lib/cocoapods/command/cache/clean.rb +1 -1
- data/lib/cocoapods/command/init.rb +4 -2
- data/lib/cocoapods/command/install.rb +7 -0
- data/lib/cocoapods/command/lib/lint.rb +8 -1
- data/lib/cocoapods/command/outdated.rb +4 -9
- data/lib/cocoapods/command/repo/add.rb +1 -1
- data/lib/cocoapods/command/repo/list.rb +1 -1
- data/lib/cocoapods/command/repo/push.rb +17 -12
- data/lib/cocoapods/command/repo/remove.rb +1 -1
- data/lib/cocoapods/command/repo/update.rb +1 -1
- data/lib/cocoapods/command/setup.rb +1 -1
- data/lib/cocoapods/command/spec/create.rb +39 -39
- data/lib/cocoapods/command/spec/lint.rb +8 -1
- data/lib/cocoapods/command.rb +3 -1
- data/lib/cocoapods/config.rb +13 -2
- data/lib/cocoapods/downloader/cache.rb +1 -1
- data/lib/cocoapods/executable.rb +3 -3
- data/lib/cocoapods/external_sources/abstract_external_source.rb +23 -13
- data/lib/cocoapods/external_sources.rb +7 -4
- data/lib/cocoapods/gem_version.rb +1 -1
- data/lib/cocoapods/generator/acknowledgements/markdown.rb +6 -0
- data/lib/cocoapods/generator/acknowledgements/plist.rb +13 -2
- data/lib/cocoapods/generator/app_target_helper.rb +141 -17
- data/lib/cocoapods/generator/copy_resources_script.rb +14 -3
- data/lib/cocoapods/generator/dummy_source.rb +14 -5
- data/lib/cocoapods/generator/embed_frameworks_script.rb +37 -20
- data/lib/cocoapods/generator/header.rb +1 -1
- data/lib/cocoapods/generator/info_plist_file.rb +12 -4
- data/lib/cocoapods/generator/prefix_header.rb +2 -2
- data/lib/cocoapods/hooks_manager.rb +28 -17
- data/lib/cocoapods/installer/analyzer/analysis_result.rb +52 -22
- data/lib/cocoapods/installer/analyzer/locking_dependency_analyzer.rb +14 -6
- data/lib/cocoapods/installer/analyzer/pod_variant.rb +4 -5
- data/lib/cocoapods/installer/analyzer/sandbox_analyzer.rb +3 -14
- data/lib/cocoapods/installer/analyzer/specs_state.rb +28 -4
- data/lib/cocoapods/installer/analyzer/target_inspection_result.rb +27 -14
- data/lib/cocoapods/installer/analyzer/target_inspector.rb +17 -11
- data/lib/cocoapods/installer/analyzer.rb +391 -284
- data/lib/cocoapods/installer/installation_options.rb +2 -0
- data/lib/cocoapods/installer/pod_source_installer.rb +31 -43
- data/lib/cocoapods/installer/post_install_hooks_context.rb +72 -47
- data/lib/cocoapods/installer/pre_install_hooks_context.rb +22 -13
- data/lib/cocoapods/installer/source_provider_hooks_context.rb +3 -1
- data/lib/cocoapods/installer/user_project_integrator/target_integrator/xcconfig_integrator.rb +44 -11
- data/lib/cocoapods/installer/user_project_integrator/target_integrator.rb +69 -29
- data/lib/cocoapods/installer/user_project_integrator.rb +6 -4
- data/lib/cocoapods/installer/xcode/pods_project_generator/aggregate_target_installer.rb +25 -16
- data/lib/cocoapods/installer/xcode/pods_project_generator/app_host_installer.rb +104 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator/file_references_installer.rb +23 -50
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb +296 -177
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_integrator.rb +51 -33
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installation_result.rb +93 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installer.rb +62 -69
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installer_helper.rb +72 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator.rb +130 -122
- data/lib/cocoapods/installer/xcode/target_validator.rb +15 -9
- data/lib/cocoapods/installer.rb +140 -63
- data/lib/cocoapods/project.rb +16 -14
- data/lib/cocoapods/resolver/resolver_specification.rb +41 -0
- data/lib/cocoapods/resolver.rb +79 -98
- data/lib/cocoapods/sandbox/file_accessor.rb +11 -6
- data/lib/cocoapods/sandbox/headers_store.rb +9 -8
- data/lib/cocoapods/sandbox/path_list.rb +5 -8
- data/lib/cocoapods/sandbox.rb +31 -43
- data/lib/cocoapods/sources_manager.rb +1 -1
- data/lib/cocoapods/target/aggregate_target.rb +143 -85
- data/lib/cocoapods/target/build_settings.rb +1124 -0
- data/lib/cocoapods/target/framework_paths.rb +36 -0
- data/lib/cocoapods/target/pod_target.rb +198 -295
- data/lib/cocoapods/target.rb +92 -37
- data/lib/cocoapods/user_interface.rb +5 -0
- data/lib/cocoapods/validator.rb +149 -44
- data/lib/cocoapods.rb +0 -1
- metadata +31 -23
- data/lib/cocoapods/generator/xcconfig/aggregate_xcconfig.rb +0 -260
- data/lib/cocoapods/generator/xcconfig/pod_xcconfig.rb +0 -87
- data/lib/cocoapods/generator/xcconfig/xcconfig_helper.rb +0 -558
- data/lib/cocoapods/generator/xcconfig.rb +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 4baf26d05e0c46b55d9cb9a3bbbfac22ce644ad6
|
4
|
+
data.tar.gz: 7b272c0880a797863ddedcb3a366e8caff81d9a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 925931a7175d72dc814560d5e667c5257dd84b338c0522e688f56bd5ae0885dc5cb93521be8d01e9be87bb837d486316ad2e485042ec0c583fe7faac9b0eefb1
|
7
|
+
data.tar.gz: d82a6a5edd79cd940b743a59ba4832eeb19bee0370ae3d16bc36725ab140f467e652d748cb42da5dfeb452af3119997f72e9fdc8ab6b66adbca9a2423149c275
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,371 @@ To install or update CocoaPods see this [guide](http://docs.cocoapods.org/guides
|
|
4
4
|
|
5
5
|
To install release candidates run `[sudo] gem install cocoapods --pre`
|
6
6
|
|
7
|
+
## 1.6.1 (2019-02-21)
|
8
|
+
|
9
|
+
##### Enhancements
|
10
|
+
|
11
|
+
* None.
|
12
|
+
|
13
|
+
##### Bug Fixes
|
14
|
+
|
15
|
+
* Properly link system frameworks and weak frameworks into dynamic framework targets.
|
16
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
17
|
+
[#8493](https://github.com/CocoaPods/CocoaPods/issues/8493)
|
18
|
+
|
19
|
+
|
20
|
+
## 1.6.0 (2019-02-07)
|
21
|
+
|
22
|
+
##### Enhancements
|
23
|
+
|
24
|
+
* None.
|
25
|
+
|
26
|
+
##### Bug Fixes
|
27
|
+
|
28
|
+
* None.
|
29
|
+
|
30
|
+
|
31
|
+
## 1.6.0.rc.2 (2019-01-29)
|
32
|
+
|
33
|
+
##### Enhancements
|
34
|
+
|
35
|
+
* None.
|
36
|
+
|
37
|
+
##### Bug Fixes
|
38
|
+
|
39
|
+
* Fix linking of vendored libraries and frameworks in pod targets
|
40
|
+
[Wes Campaigne](https://github.com/Westacular)
|
41
|
+
[#8453](https://github.com/CocoaPods/CocoaPods/issues/8453)
|
42
|
+
|
43
|
+
## 1.6.0.rc.1 (2019-01-25)
|
44
|
+
|
45
|
+
##### Enhancements
|
46
|
+
|
47
|
+
* Generate Info.plist files for static frameworks
|
48
|
+
[Paul Beusterien](https://github.com/paulb777)
|
49
|
+
[#8287](https://github.com/CocoaPods/CocoaPods/issues/8287)
|
50
|
+
|
51
|
+
##### Bug Fixes
|
52
|
+
|
53
|
+
* Do not force 64-bit architectures on Xcode 10
|
54
|
+
[Eric Amorde](https://github.com/amorde)
|
55
|
+
[#8242](https://github.com/CocoaPods/CocoaPods/issues/8242)
|
56
|
+
|
57
|
+
* Fix running test specs that support iOS 8.
|
58
|
+
[Jeff Kelley](https://github.com/SlaunchaMan)
|
59
|
+
[#8286](https://github.com/CocoaPods/CocoaPods/pull/8286)
|
60
|
+
|
61
|
+
* Remove linker flags that linked dynamic libraries & frameworks from the build
|
62
|
+
settings for pod targets.
|
63
|
+
[Samuel Giddins](https://github.com/segiddins)
|
64
|
+
[#8314](https://github.com/CocoaPods/CocoaPods/pull/8314)
|
65
|
+
|
66
|
+
## 1.6.0.beta.2 (2018-10-17)
|
67
|
+
|
68
|
+
##### Enhancements
|
69
|
+
|
70
|
+
* Remove contraction from docs to fix rendering on the website.
|
71
|
+
[stevemoser](https://github.com/stevemoser)
|
72
|
+
[#8131](https://github.com/CocoaPods/CocoaPods/pull/8131)
|
73
|
+
|
74
|
+
* Provide an installation option to preserve folder structure
|
75
|
+
[dacaiguoguogmail](https://github.com/dacaiguoguogmail)
|
76
|
+
[#8097](https://github.com/CocoaPods/CocoaPods/pull/8097)
|
77
|
+
|
78
|
+
* Nests test specs host apps inside that Pod's directory for cleaner project
|
79
|
+
navigators.
|
80
|
+
[Derek Ostrander](https://github.com/dostrander)
|
81
|
+
|
82
|
+
* mark_ruby_file_ref add indent width and tab width config
|
83
|
+
[dacaiguoguogmail](https://github.com/dacaiguoguogmail)
|
84
|
+
|
85
|
+
* Print an error that will show up in Xcode's issue navigator upon unexpected
|
86
|
+
failures in the copy resources and embed frameworks script phases.
|
87
|
+
[Samuel Giddins](https://github.com/segiddins)
|
88
|
+
|
89
|
+
* Validate that all generated `PBXNativeTarget`s contain source files to build,
|
90
|
+
so specs (including test specs) with no source files won't fail at runtime
|
91
|
+
due to the lack of a generated executable.
|
92
|
+
[Samuel Giddins](https://github.com/segiddins)
|
93
|
+
|
94
|
+
* Print better promote message when unable to find a specification.
|
95
|
+
[Xinyu Zhao](https://github.com/X140Yu)
|
96
|
+
[#8064](https://github.com/CocoaPods/CocoaPods/issues/8064)
|
97
|
+
|
98
|
+
* Silence warnings in headers for Pods with `inhibit_warnings => true`
|
99
|
+
[Guillaume Algis](https://github.com/guillaumealgis)
|
100
|
+
[#6401](https://github.com/CocoaPods/CocoaPods/pull/6401)
|
101
|
+
|
102
|
+
* When resolving a locked dependency, source the spec from the locked
|
103
|
+
specs repository.
|
104
|
+
[Samuel Giddins](https://github.com/segiddins)
|
105
|
+
|
106
|
+
* Slightly improve resolution speed for Podfiles that contain multiple targets
|
107
|
+
with the same dependencies.
|
108
|
+
[Samuel Giddins]
|
109
|
+
|
110
|
+
##### Bug Fixes
|
111
|
+
|
112
|
+
* Don't generate unencrypted source warnings for localhost.
|
113
|
+
[Paul Beusterien](https://github.com/paulb777)
|
114
|
+
[#8156](https://github.com/CocoaPods/CocoaPods/issues/8156)
|
115
|
+
|
116
|
+
* Fix linting when armv7 is included but i386 isn't.
|
117
|
+
[Paul Beusterien](https://github.com/paulb777)
|
118
|
+
[#8129](https://github.com/CocoaPods/CocoaPods/issues/8129)
|
119
|
+
|
120
|
+
* Provide an installation option to disable usage of input/output paths.
|
121
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
122
|
+
[#8073](https://github.com/CocoaPods/CocoaPods/issues/8073)
|
123
|
+
|
124
|
+
* Scope prefix header setting to each test spec.
|
125
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
126
|
+
[#8046](https://github.com/CocoaPods/CocoaPods/pull/8046)
|
127
|
+
|
128
|
+
* Don't add incomplete subspec subset targets for extensions.
|
129
|
+
[Paul Beusterien](https://github.com/paulb777)
|
130
|
+
[#7850](https://github.com/CocoaPods/CocoaPods/issues/7850)
|
131
|
+
|
132
|
+
* Clear out `MACH_O_TYPE` for unit test bundles that use static frameworks.
|
133
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
134
|
+
[#8031](https://github.com/CocoaPods/CocoaPods/issues/8031)
|
135
|
+
|
136
|
+
* Fix `weak_frameworks` missing regression.
|
137
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
138
|
+
[#7872](https://github.com/CocoaPods/CocoaPods/issues/7872)
|
139
|
+
|
140
|
+
* Fix line spacing for Swift error message.
|
141
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
142
|
+
[#8024](https://github.com/CocoaPods/CocoaPods/pull/8024)
|
143
|
+
|
144
|
+
* Improve validation for test_specs on specific platforms
|
145
|
+
[icecrystal23](https://github.com/icecrystal23)
|
146
|
+
[#7009](https://github.com/CocoaPods/CocoaPods/issues/7009)
|
147
|
+
|
148
|
+
* Fix running `pod outdated` with externally-sourced pods.
|
149
|
+
[Samuel Giddins](https://github.com/segiddins)
|
150
|
+
[#8025](https://github.com/CocoaPods/CocoaPods/issues/8025)
|
151
|
+
|
152
|
+
* Remove codesign suppression
|
153
|
+
[Jaehong Kang](https://github.com/sinoru)
|
154
|
+
[#7606](https://github.com/CocoaPods/CocoaPods/issues/7606)
|
155
|
+
|
156
|
+
|
157
|
+
## 1.6.0.beta.1 (2018-08-16)
|
158
|
+
|
159
|
+
##### Enhancements
|
160
|
+
|
161
|
+
* Every test spec will have its own xctest bundle.
|
162
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
163
|
+
[Jenn Kaplan](https://github.com/jkap)
|
164
|
+
[#7908](https://github.com/CocoaPods/CocoaPods/pull/7908)
|
165
|
+
|
166
|
+
* Generate a separate app host per pod.
|
167
|
+
[Samuel Giddins](https://github.com/segiddins)
|
168
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
169
|
+
[#8005](https://github.com/CocoaPods/CocoaPods/pull/8005)
|
170
|
+
|
171
|
+
* Add default launch screen storyboard to test app hosts.
|
172
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
173
|
+
[#7971](https://github.com/CocoaPods/CocoaPods/pull/7971)
|
174
|
+
|
175
|
+
* Always display downloader error message.
|
176
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
177
|
+
[#7625](https://github.com/CocoaPods/CocoaPods/issues/7625)
|
178
|
+
|
179
|
+
* Warn instead of error when linting if `public_header_files` or
|
180
|
+
`private_header_files` do not match any files.
|
181
|
+
[Eric Amorde](https://github.com/amorde)
|
182
|
+
[#7427](https://github.com/CocoaPods/CocoaPods/issues/7427)
|
183
|
+
|
184
|
+
* Add `--platforms` parameter to `pod spec lint` and `pod lib lint` to specify
|
185
|
+
which platforms to lint.
|
186
|
+
[Eric Amorde](https://github.com/amorde)
|
187
|
+
[#7783](https://github.com/CocoaPods/CocoaPods/issues/7783)
|
188
|
+
|
189
|
+
* Warn if the `git://` protocol is used as the source of a pod.
|
190
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
191
|
+
[#7705](https://github.com/CocoaPods/CocoaPods/issues/7705)
|
192
|
+
|
193
|
+
* Remove all xcode project state from target objects,
|
194
|
+
improving project generation performance.
|
195
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
196
|
+
[#7610](https://github.com/CocoaPods/CocoaPods/pull/7610)
|
197
|
+
|
198
|
+
* Improve performance of Pods project generation by skipping native targets
|
199
|
+
for which dependent targets have already been added.
|
200
|
+
[Jacek Suliga](https://github.com/jmkk)
|
201
|
+
|
202
|
+
* Refactor build settings generation to perform much better on large projects.
|
203
|
+
[Samuel Giddins](https://github.com/segiddins)
|
204
|
+
|
205
|
+
* Make sure the temporary directory used to download a pod is removed,
|
206
|
+
even if an error is raised.
|
207
|
+
[augustorsouza](https://github.com/augustorsouza)
|
208
|
+
|
209
|
+
* Avoid unlocking sources on every `pod install` when there are no
|
210
|
+
plugin post-install hooks for performance reasons.
|
211
|
+
[Samuel Giddins](https://github.com/segiddins)
|
212
|
+
|
213
|
+
* Change shell script relative paths to use `${PODS_ROOT}` instead of
|
214
|
+
`${SRCROOT}/Pods`.
|
215
|
+
[Whirlwind](https://github.com/Whirlwind)
|
216
|
+
[#7878](https://github.com/CocoaPods/CocoaPods/pull/7878)
|
217
|
+
|
218
|
+
* Set the path of the Pods group in the user project.
|
219
|
+
[Whirlwind](https://github.com/Whirlwind)
|
220
|
+
[#7886](https://github.com/CocoaPods/CocoaPods/pull/7886)
|
221
|
+
[#6194](https://github.com/CocoaPods/CocoaPods/issues/6194)
|
222
|
+
|
223
|
+
* Add a `--deployment` flag to `pod install` that errors if there are any
|
224
|
+
changes to the Podfile or Lockfile.
|
225
|
+
[Samuel Giddins](https://github.com/segiddins)
|
226
|
+
|
227
|
+
* Add `--use-modular-headers` flag to the `pod spec lint`, `pod lib lint`,
|
228
|
+
and `pod repo push` commands.
|
229
|
+
[Eric Amorde](https://github.com/amorde)
|
230
|
+
[#7683](https://github.com/CocoaPods/CocoaPods/issues/7683)
|
231
|
+
|
232
|
+
##### Bug Fixes
|
233
|
+
|
234
|
+
* Scope embedded pods to their host targets by their configuration.
|
235
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
236
|
+
[#8011](https://github.com/CocoaPods/CocoaPods/issues/8011)
|
237
|
+
|
238
|
+
* Set the `SWIFT_VERSION` on resource bundle targets that contain compiled
|
239
|
+
sources and use Swift.
|
240
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
241
|
+
[#7950](https://github.com/CocoaPods/CocoaPods/issues/7950)
|
242
|
+
|
243
|
+
* Do not ignore `--no-overwrite` parameter if a commit message is specified.
|
244
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
245
|
+
[#7926](https://github.com/CocoaPods/CocoaPods/issues/7926)
|
246
|
+
|
247
|
+
* Generate `-ObjC` in `OTHER_LDFLAGS` for apps with static frameworks.
|
248
|
+
[Paul Beusterien](https://github.com/paulb777)
|
249
|
+
[#7946](https://github.com/CocoaPods/CocoaPods/pull/7946)
|
250
|
+
|
251
|
+
* Do not display that a source was changed if it uses different casing.
|
252
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
253
|
+
[#7883](https://github.com/CocoaPods/CocoaPods/pull/7883)
|
254
|
+
|
255
|
+
* Set `CURRENT_PROJECT_VERSION` for generated app host targets.
|
256
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
257
|
+
[#7825](https://github.com/CocoaPods/CocoaPods/pull/7825)
|
258
|
+
|
259
|
+
* Properly follow symlinks within macOS universal frameworks.
|
260
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
261
|
+
[#7587](https://github.com/CocoaPods/CocoaPods/issues/7587)
|
262
|
+
|
263
|
+
* Validator adds a Swift file if any of the pod targets use Swift.
|
264
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
265
|
+
[#7738](https://github.com/CocoaPods/CocoaPods/issues/7738)
|
266
|
+
|
267
|
+
* Fix `INFOPLIST_FILE` being overridden when set in a podspec's `pod_target_xcconfig`.
|
268
|
+
[Eric Amorde](https://github.com/amorde)
|
269
|
+
[#7530](https://github.com/CocoaPods/CocoaPods/issues/7530)
|
270
|
+
|
271
|
+
* Raise an error if user target `SWIFT_VERSION` is missing.
|
272
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
273
|
+
[#7770](https://github.com/CocoaPods/CocoaPods/issues/7770)
|
274
|
+
|
275
|
+
* Fix the umbrella header import path when `header_dir` is specified in the
|
276
|
+
podspec and building a static library with modular headers enabled.
|
277
|
+
[chuganzy](https://github.com/chuganzy)
|
278
|
+
[#7724](https://github.com/CocoaPods/CocoaPods/pull/7724)
|
279
|
+
|
280
|
+
* Do not symlink headers that belong to test specs.
|
281
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
282
|
+
[#7762](https://github.com/CocoaPods/CocoaPods/pull/7762)
|
283
|
+
|
284
|
+
* Do not build pod target if it only contains script phases.
|
285
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
286
|
+
[#7746](https://github.com/CocoaPods/CocoaPods/issues/7746)
|
287
|
+
|
288
|
+
* Do not try to integrate uncreated test native targets.
|
289
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
290
|
+
[#7394](https://github.com/CocoaPods/CocoaPods/issues/7394)
|
291
|
+
|
292
|
+
* Attempt to parse `SWIFT_VERSION` from xcconfig during target inspection.
|
293
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
294
|
+
[#7731](https://github.com/CocoaPods/CocoaPods/issues/7731)
|
295
|
+
|
296
|
+
* Do not crash when creating build settings for a missing user build configuration.
|
297
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
298
|
+
[#7698](https://github.com/CocoaPods/CocoaPods/pull/7698)
|
299
|
+
|
300
|
+
* Do not overwrite App host info plist when using multiple test specs.
|
301
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
302
|
+
[#7695](https://github.com/CocoaPods/CocoaPods/pull/7695)
|
303
|
+
|
304
|
+
* Do not include test dependencies' input and output paths.
|
305
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
306
|
+
[#7688](https://github.com/CocoaPods/CocoaPods/pull/7688)
|
307
|
+
|
308
|
+
* Skip test file accessors for `uses_swift?` and `should_build?` methods.
|
309
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
310
|
+
[#7671](https://github.com/CocoaPods/CocoaPods/pull/7671)
|
311
|
+
|
312
|
+
* When integrating a vendored framework while building pods as static
|
313
|
+
libraries, public headers will be found via `FRAMEWORK_SEARCH_PATHS`
|
314
|
+
instead of via the sandbox headers store.
|
315
|
+
[Samuel Giddins](https://github.com/segiddins)
|
316
|
+
|
317
|
+
* Improve performance of grouping pods by configuration.
|
318
|
+
[Samuel Giddins](https://github.com/segiddins)
|
319
|
+
|
320
|
+
* Stop linking frameworks to static libraries to avoid warnings with the new build system.
|
321
|
+
[Samuel Giddins](https://github.com/segiddins)
|
322
|
+
[#7570](https://github.com/CocoaPods/CocoaPods/pull/7570)
|
323
|
+
|
324
|
+
* Allow `EXPANDED_CODE_SIGN_IDENTITY` to be unset.
|
325
|
+
[Keith Smiley](https://github.com/keith)
|
326
|
+
[#7708](https://github.com/CocoaPods/CocoaPods/issues/7708)
|
327
|
+
|
328
|
+
* Running `pod install` with static library modules no longer causes pods to
|
329
|
+
be recompiled.
|
330
|
+
[Samuel Giddins](https://github.com/segiddins)
|
331
|
+
|
332
|
+
* A pod built as a static library linked into multiple targets will only build
|
333
|
+
as a module when all of the targets it is linked into have opted into it.
|
334
|
+
[Samuel Giddins](https://github.com/segiddins)
|
335
|
+
|
336
|
+
* Use `CP_HOME_DIR` as the base for all default directories.
|
337
|
+
[mcfedr](https://github.com/mcfedr)
|
338
|
+
[#7917](https://github.com/CocoaPods/CocoaPods/pull/7917)
|
339
|
+
|
340
|
+
* Exclude 32-bit architectures from Pod targets when the deployment target is
|
341
|
+
iOS 11.0 or higher.
|
342
|
+
[Eric Amorde](https://github.com/amorde)
|
343
|
+
[#7148](https://github.com/CocoaPods/CocoaPods/issues/7148)
|
344
|
+
|
345
|
+
* Fail gracefully when the analyzer has dependencies to fetch, but has been
|
346
|
+
told not to fetch them.
|
347
|
+
[Samuel Giddins](https://github.com/segiddins)
|
348
|
+
|
349
|
+
* Don't generate framework or resource scripts if they will not be used.
|
350
|
+
[Eric Amorde](https://github.com/amorde)
|
351
|
+
|
352
|
+
* Fix a crash when loading the `macho` gem in certain environments.
|
353
|
+
[Eric Amorde](https://github.com/amorde)
|
354
|
+
[#7867](https://github.com/CocoaPods/CocoaPods/issues/7867)
|
355
|
+
|
356
|
+
|
357
|
+
## 1.5.3 (2018-05-25)
|
358
|
+
|
359
|
+
##### Enhancements
|
360
|
+
|
361
|
+
* None.
|
362
|
+
|
363
|
+
##### Bug Fixes
|
364
|
+
|
365
|
+
* Fix compatibility with RubyGems 2.7.7.
|
366
|
+
[Samuel Giddins](https://github.com/segiddins)
|
367
|
+
[#7765](https://github.com/CocoaPods/CocoaPods/issues/7765)
|
368
|
+
[#7766](https://github.com/CocoaPods/CocoaPods/issues/7766)
|
369
|
+
[#7763](https://github.com/CocoaPods/CocoaPods/issues/7763)
|
370
|
+
|
371
|
+
|
7
372
|
## 1.5.2 (2018-05-09)
|
8
373
|
|
9
374
|
##### Enhancements
|
@@ -64,7 +429,6 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
|
|
64
429
|
[Maxime Le Moine](https://github.com/MaximeLM)
|
65
430
|
[#7590](https://github.com/CocoaPods/CocoaPods/issues/7590)
|
66
431
|
|
67
|
-
|
68
432
|
## 1.5.0 (2018-04-04)
|
69
433
|
|
70
434
|
##### Enhancements
|
data/bin/pod
CHANGED
@@ -35,7 +35,7 @@ STDOUT.sync = true if ENV['CP_STDOUT_SYNC'] == 'TRUE'
|
|
35
35
|
|
36
36
|
require 'cocoapods'
|
37
37
|
|
38
|
-
if profile_filename = ENV['
|
38
|
+
if profile_filename = ENV['COCOAPODS_PROFILE']
|
39
39
|
require 'ruby-prof'
|
40
40
|
reporter =
|
41
41
|
case (profile_extname = File.extname(profile_filename))
|
@@ -10,7 +10,7 @@ module Pod
|
|
10
10
|
If there is multiple cache for various versions of the requested pod,
|
11
11
|
you will be asked which one to clean. Use `--all` to clean them all.
|
12
12
|
|
13
|
-
If you
|
13
|
+
If you do not give a pod `NAME`, you need to specify the `--all`
|
14
14
|
flag (this is to avoid cleaning all the cache by mistake).
|
15
15
|
DESC
|
16
16
|
|
@@ -14,7 +14,7 @@ module Pod
|
|
14
14
|
It is possible to specify a list of dependencies which will be used by
|
15
15
|
the template in the `Podfile.default` (normal targets) `Podfile.test`
|
16
16
|
(test targets) files which should be stored in the
|
17
|
-
|
17
|
+
`#{Config.instance.templates_dir}` folder.
|
18
18
|
DESC
|
19
19
|
self.arguments = [
|
20
20
|
CLAide::Argument.new('XCODEPROJ', :false),
|
@@ -84,7 +84,9 @@ module Pod
|
|
84
84
|
def target_module(app, tests)
|
85
85
|
target_module = "\ntarget '#{app.name.gsub(/'/, "\\\\\'")}' do\n"
|
86
86
|
|
87
|
-
|
87
|
+
app_uses_swift = app.source_build_phase.files_references.any? { |fr| File.extname(fr.path) == '.swift' }
|
88
|
+
|
89
|
+
target_module << if app_uses_swift
|
88
90
|
<<-RUBY
|
89
91
|
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
|
90
92
|
use_frameworks!
|
@@ -30,14 +30,21 @@ module Pod
|
|
30
30
|
def self.options
|
31
31
|
[
|
32
32
|
['--repo-update', 'Force running `pod repo update` before install'],
|
33
|
+
['--deployment', 'Disallow any changes to the Podfile or the Podfile.lock during installation'],
|
33
34
|
].concat(super).reject { |(name, _)| name == '--no-repo-update' }
|
34
35
|
end
|
35
36
|
|
37
|
+
def initialize(argv)
|
38
|
+
super
|
39
|
+
@deployment = argv.flag?('deployment', false)
|
40
|
+
end
|
41
|
+
|
36
42
|
def run
|
37
43
|
verify_podfile_exists!
|
38
44
|
installer = installer_for_config
|
39
45
|
installer.repo_update = repo_update?(:default => false)
|
40
46
|
installer.update = false
|
47
|
+
installer.deployment = @deployment
|
41
48
|
installer.install!
|
42
49
|
end
|
43
50
|
end
|
@@ -17,9 +17,13 @@ module Pod
|
|
17
17
|
['--no-clean', 'Lint leaves the build directory intact for inspection'],
|
18
18
|
['--fail-fast', 'Lint stops on the first failing platform or subspec'],
|
19
19
|
['--use-libraries', 'Lint uses static libraries to install the spec'],
|
20
|
+
['--use-modular-headers', 'Lint uses modular headers during installation'],
|
20
21
|
['--sources=https://github.com/artsy/Specs,master', 'The sources from which to pull dependent pods ' \
|
21
22
|
'(defaults to https://github.com/CocoaPods/Specs.git). ' \
|
22
23
|
'Multiple sources must be comma-delimited.'],
|
24
|
+
['--platforms=ios,macos', 'Lint against specific platforms' \
|
25
|
+
'(defaults to all platforms supported by the podspec).' \
|
26
|
+
'Multiple platforms must be comma-delimited'],
|
23
27
|
['--private', 'Lint skips checks that apply only to public specs'],
|
24
28
|
['--swift-version=VERSION', 'The SWIFT_VERSION that should be used to lint the spec. ' \
|
25
29
|
'This takes precedence over a .swift-version file.'],
|
@@ -36,7 +40,9 @@ module Pod
|
|
36
40
|
@subspecs = argv.flag?('subspecs', true)
|
37
41
|
@only_subspec = argv.option('subspec')
|
38
42
|
@use_frameworks = !argv.flag?('use-libraries')
|
43
|
+
@use_modular_headers = argv.flag?('use-modular-headers')
|
39
44
|
@source_urls = argv.option('sources', 'https://github.com/CocoaPods/Specs.git').split(',')
|
45
|
+
@platforms = argv.option('platforms', '').split(',')
|
40
46
|
@private = argv.flag?('private', false)
|
41
47
|
@swift_version = argv.option('swift-version', nil)
|
42
48
|
@skip_import_validation = argv.flag?('skip-import-validation', false)
|
@@ -52,7 +58,7 @@ module Pod
|
|
52
58
|
def run
|
53
59
|
UI.puts
|
54
60
|
podspecs_to_lint.each do |podspec|
|
55
|
-
validator = Validator.new(podspec, @source_urls)
|
61
|
+
validator = Validator.new(podspec, @source_urls, @platforms)
|
56
62
|
validator.local = true
|
57
63
|
validator.quick = @quick
|
58
64
|
validator.no_clean = !@clean
|
@@ -61,6 +67,7 @@ module Pod
|
|
61
67
|
validator.no_subspecs = !@subspecs || @only_subspec
|
62
68
|
validator.only_subspec = @only_subspec
|
63
69
|
validator.use_frameworks = @use_frameworks
|
70
|
+
validator.use_modular_headers = @use_modular_headers
|
64
71
|
validator.ignore_public_only_results = @private
|
65
72
|
validator.swift_version = @swift_version
|
66
73
|
validator.skip_import_validation = @skip_import_validation
|
@@ -13,21 +13,16 @@ module Pod
|
|
13
13
|
|
14
14
|
# Run the command
|
15
15
|
#
|
16
|
-
# @todo the command reports new dependencies added to the Podfile as
|
17
|
-
# updates.
|
18
|
-
#
|
19
|
-
# @todo fix.
|
20
|
-
#
|
21
16
|
def run
|
22
17
|
if updates.empty?
|
23
18
|
UI.puts 'No pod updates are available.'.yellow
|
24
19
|
else
|
25
20
|
UI.section 'The color indicates what happens when you run `pod update`' do
|
26
|
-
UI.puts "#{'<green>'.green}\t
|
21
|
+
UI.puts "#{'<green>'.green}\t - Will be updated to the newest version"
|
27
22
|
UI.puts "#{'<blue>'.blue}\t - Will be updated, but not to the newest version because of specified version in Podfile"
|
28
|
-
UI.puts "#{'<red>'.red}\t
|
23
|
+
UI.puts "#{'<red>'.red}\t - Will not be updated because of specified version in Podfile"
|
29
24
|
UI.puts ''
|
30
|
-
end
|
25
|
+
end if ansi_output?
|
31
26
|
UI.section 'The following pod updates are available:' do
|
32
27
|
updates.each do |(name, from_version, matching_version, to_version)|
|
33
28
|
color = :blue
|
@@ -90,7 +85,7 @@ module Pod
|
|
90
85
|
pods = []
|
91
86
|
UI.titled_section('Analyzing dependencies') do
|
92
87
|
pods = Installer::Analyzer.new(config.sandbox, config.podfile).
|
93
|
-
analyze(
|
88
|
+
analyze(:outdated).
|
94
89
|
specs_by_target.values.flatten.uniq
|
95
90
|
end
|
96
91
|
pods
|
@@ -5,7 +5,7 @@ module Pod
|
|
5
5
|
self.summary = 'Add a spec repo'
|
6
6
|
|
7
7
|
self.description = <<-DESC
|
8
|
-
Clones `URL` in the local spec-repos directory at
|
8
|
+
Clones `URL` in the local spec-repos directory at `#{Config.instance.repos_dir}`. The
|
9
9
|
remote can later be referred to by `NAME`.
|
10
10
|
DESC
|
11
11
|
|
@@ -5,7 +5,7 @@ module Pod
|
|
5
5
|
self.summary = 'List repos'
|
6
6
|
|
7
7
|
self.description = <<-DESC
|
8
|
-
List the repos from the local spec-repos directory at
|
8
|
+
List the repos from the local spec-repos directory at `#{Config.instance.repos_dir}`.
|
9
9
|
DESC
|
10
10
|
|
11
11
|
def self.options
|
@@ -11,7 +11,7 @@ module Pod
|
|
11
11
|
self.description = <<-DESC
|
12
12
|
Validates `NAME.podspec` or `*.podspec` in the current working dir,
|
13
13
|
creates a directory and version folder for the pod in the local copy of
|
14
|
-
`REPO` (
|
14
|
+
`REPO` (#{Config.instance.repos_dir}/[REPO]), copies the podspec file into the
|
15
15
|
version directory, and finally it pushes `REPO` to its remote.
|
16
16
|
DESC
|
17
17
|
|
@@ -24,6 +24,7 @@ module Pod
|
|
24
24
|
[
|
25
25
|
['--allow-warnings', 'Allows pushing even if there are warnings'],
|
26
26
|
['--use-libraries', 'Linter uses static libraries to install the spec'],
|
27
|
+
['--use-modular-headers', 'Lint uses modular headers during installation'],
|
27
28
|
['--sources=https://github.com/artsy/Specs,master', 'The sources from which to pull dependent pods ' \
|
28
29
|
'(defaults to all available repos). ' \
|
29
30
|
'Multiple sources must be comma-delimited.'],
|
@@ -48,6 +49,7 @@ module Pod
|
|
48
49
|
@source_urls = argv.option('sources', config.sources_manager.all.map(&:url).join(',')).split(',')
|
49
50
|
@podspec = argv.shift_argument
|
50
51
|
@use_frameworks = !argv.flag?('use-libraries')
|
52
|
+
@use_modular_headers = argv.flag?('use-modular-headers', false)
|
51
53
|
@private = argv.flag?('private', true)
|
52
54
|
@message = argv.option('commit-message')
|
53
55
|
@commit_message = argv.flag?('commit-message', false)
|
@@ -131,6 +133,7 @@ module Pod
|
|
131
133
|
validator = Validator.new(podspec, @source_urls)
|
132
134
|
validator.allow_warnings = @allow_warnings
|
133
135
|
validator.use_frameworks = @use_frameworks
|
136
|
+
validator.use_modular_headers = @use_modular_headers
|
134
137
|
validator.ignore_public_only_results = @private
|
135
138
|
validator.swift_version = @swift_version
|
136
139
|
validator.skip_import_validation = @skip_import_validation
|
@@ -182,18 +185,20 @@ module Pod
|
|
182
185
|
podspec_files.each do |spec_file|
|
183
186
|
spec = Pod::Specification.from_file(spec_file)
|
184
187
|
output_path = @source.pod_path(spec.name) + spec.version.to_s
|
185
|
-
if @message && !@message.empty?
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
188
|
+
message = if @message && !@message.empty?
|
189
|
+
@message
|
190
|
+
elsif output_path.exist?
|
191
|
+
"[Fix] #{spec}"
|
192
|
+
elsif output_path.dirname.directory?
|
193
|
+
"[Update] #{spec}"
|
194
|
+
else
|
195
|
+
"[Add] #{spec}"
|
196
|
+
end
|
197
|
+
|
198
|
+
if output_path.exist? && !@allow_overwrite
|
199
|
+
raise Informative, "#{spec} already exists and overwriting has been disabled."
|
196
200
|
end
|
201
|
+
|
197
202
|
FileUtils.mkdir_p(output_path)
|
198
203
|
|
199
204
|
if @use_json
|
@@ -5,7 +5,7 @@ module Pod
|
|
5
5
|
self.summary = 'Remove a spec repo'
|
6
6
|
|
7
7
|
self.description = <<-DESC
|
8
|
-
Deletes the remote named `NAME` from the local spec-repos directory at
|
8
|
+
Deletes the remote named `NAME` from the local spec-repos directory at `#{Config.instance.repos_dir}`.
|
9
9
|
DESC
|
10
10
|
|
11
11
|
self.arguments = [
|
@@ -6,7 +6,7 @@ module Pod
|
|
6
6
|
|
7
7
|
self.description = <<-DESC
|
8
8
|
Updates the local clone of the spec-repo `NAME`. If `NAME` is omitted
|
9
|
-
this will update all spec-repos in
|
9
|
+
this will update all spec-repos in `#{Config.instance.repos_dir}`.
|
10
10
|
DESC
|
11
11
|
|
12
12
|
self.arguments = [
|
@@ -6,7 +6,7 @@ module Pod
|
|
6
6
|
self.summary = 'Setup the CocoaPods environment'
|
7
7
|
|
8
8
|
self.description = <<-DESC
|
9
|
-
Creates a directory at
|
9
|
+
Creates a directory at `#{Config.instance.repos_dir}` which will hold your spec-repos.
|
10
10
|
This is where it will create a clone of the public `master` spec-repo from:
|
11
11
|
|
12
12
|
https://github.com/CocoaPods/Specs
|