cocoapods 1.10.0 → 1.11.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/CHANGELOG.md +261 -5
- data/README.md +11 -11
- data/lib/cocoapods/command/outdated.rb +12 -1
- data/lib/cocoapods/command/repo/push.rb +17 -0
- data/lib/cocoapods/command/spec/cat.rb +3 -1
- data/lib/cocoapods/command/spec/lint.rb +1 -1
- data/lib/cocoapods/command/spec/which.rb +3 -1
- data/lib/cocoapods/command/spec.rb +18 -9
- data/lib/cocoapods/config.rb +1 -1
- data/lib/cocoapods/downloader/cache.rb +95 -6
- data/lib/cocoapods/downloader.rb +4 -2
- data/lib/cocoapods/external_sources/podspec_source.rb +1 -1
- data/lib/cocoapods/gem_version.rb +1 -1
- data/lib/cocoapods/generator/acknowledgements.rb +1 -1
- data/lib/cocoapods/generator/app_target_helper.rb +7 -3
- data/lib/cocoapods/generator/copy_dsyms_script.rb +4 -4
- data/lib/cocoapods/generator/copy_xcframework_script.rb +4 -48
- data/lib/cocoapods/generator/embed_frameworks_script.rb +2 -1
- data/lib/cocoapods/generator/script_phase_constants.rb +1 -0
- data/lib/cocoapods/installer/analyzer/sandbox_analyzer.rb +31 -4
- data/lib/cocoapods/installer/analyzer.rb +12 -8
- data/lib/cocoapods/installer/podfile_validator.rb +2 -2
- data/lib/cocoapods/installer/pre_integrate_hooks_context.rb +9 -0
- data/lib/cocoapods/installer/project_cache/project_cache_analyzer.rb +9 -2
- data/lib/cocoapods/installer/project_cache/project_installation_cache.rb +15 -2
- data/lib/cocoapods/installer/project_cache/target_cache_key.rb +7 -4
- data/lib/cocoapods/installer/user_project_integrator/target_integrator.rb +149 -9
- data/lib/cocoapods/installer/xcode/pods_project_generator/app_host_installer.rb +10 -3
- data/lib/cocoapods/installer/xcode/pods_project_generator/file_references_installer.rb +25 -6
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_dependency_installer.rb +6 -19
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb +70 -58
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_integrator.rb +48 -6
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installation_result.rb +2 -2
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installer.rb +2 -5
- data/lib/cocoapods/installer/xcode/pods_project_generator.rb +1 -1
- data/lib/cocoapods/installer.rb +52 -4
- data/lib/cocoapods/resolver.rb +4 -4
- data/lib/cocoapods/sandbox/file_accessor.rb +57 -10
- data/lib/cocoapods/sandbox/headers_store.rb +3 -1
- data/lib/cocoapods/sandbox/path_list.rb +1 -1
- data/lib/cocoapods/sandbox/pod_dir_cleaner.rb +1 -1
- data/lib/cocoapods/sources_manager.rb +14 -8
- data/lib/cocoapods/target/aggregate_target.rb +23 -1
- data/lib/cocoapods/target/build_settings.rb +45 -20
- data/lib/cocoapods/target/pod_target.rb +47 -22
- data/lib/cocoapods/target.rb +1 -1
- data/lib/cocoapods/user_interface.rb +4 -0
- data/lib/cocoapods/validator.rb +25 -5
- data/lib/cocoapods/version_metadata.rb +1 -1
- data/lib/cocoapods/xcode/xcframework/xcframework_slice.rb +10 -1
- data/lib/cocoapods/xcode/xcframework.rb +8 -3
- metadata +26 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e617acf0486b439b72d009eb2905d7b78853b6ff52d8bd0c9e303534ad978e5
|
4
|
+
data.tar.gz: ea674c9a2524f0ea96b413037afe634b72a53e8f5d8e0c44253e7ba559e5c19e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4c2a0a0a9a3d92658aa77309c41f51f0385d0d0556ab649fdfeed07996c8e7310c6adb2c09fcb6b3490c0ffe2e004df0a4c7ca8d1d15fe40a4adec40be923c96
|
7
|
+
data.tar.gz: d91ebdc6f396a6f04a13439362131247037e7c477ef207c37f3432b383a7552d8e21ab5ffd408c6c8307a77de61476dbd428ff8109bc2d0f3c0f28d1f9cd55c8
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,263 @@ To install or update CocoaPods see this [guide](https://guides.cocoapods.org/usi
|
|
4
4
|
|
5
5
|
To install release candidates run `[sudo] gem install cocoapods --pre`
|
6
6
|
|
7
|
+
## 1.11.0 (2021-09-01)
|
8
|
+
|
9
|
+
##### Enhancements
|
10
|
+
|
11
|
+
* None.
|
12
|
+
|
13
|
+
##### Bug Fixes
|
14
|
+
|
15
|
+
* None.
|
16
|
+
|
17
|
+
|
18
|
+
## 1.11.0.rc.1 (2021-08-25)
|
19
|
+
|
20
|
+
##### Enhancements
|
21
|
+
|
22
|
+
* None.
|
23
|
+
|
24
|
+
##### Bug Fixes
|
25
|
+
|
26
|
+
* Correctly process multiple `xcframeworks` a pod provides.
|
27
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
28
|
+
[#10378](https://github.com/CocoaPods/CocoaPods/issues/10378)
|
29
|
+
|
30
|
+
|
31
|
+
## 1.11.0.beta.2 (2021-08-11)
|
32
|
+
|
33
|
+
##### Enhancements
|
34
|
+
|
35
|
+
* Integrate ODR categories into projects.
|
36
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
37
|
+
[#10855](https://github.com/CocoaPods/CocoaPods/pull/10855)
|
38
|
+
|
39
|
+
##### Bug Fixes
|
40
|
+
|
41
|
+
* Pass correct paths for `select_slice` method.
|
42
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
43
|
+
[#10430](https://github.com/CocoaPods/CocoaPods/issues/10430)
|
44
|
+
|
45
|
+
|
46
|
+
## 1.11.0.beta.1 (2021-08-09)
|
47
|
+
|
48
|
+
##### Enhancements
|
49
|
+
|
50
|
+
* Add support for integrating on demand resources.
|
51
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
52
|
+
[JunyiXie](https://github.com/JunyiXie)
|
53
|
+
[#9606](https://github.com/CocoaPods/CocoaPods/issues/9606)
|
54
|
+
[#10845](https://github.com/CocoaPods/CocoaPods/pull/10845)
|
55
|
+
|
56
|
+
* Integrate `project_header_files` specified by specs.
|
57
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
58
|
+
[#9820](https://github.com/CocoaPods/CocoaPods/issues/9820)
|
59
|
+
|
60
|
+
* Mark RealityComposer-projects (`.rcproject`) files defined in resources for compilation.
|
61
|
+
[Hendrik von Prince](https://github.com/parallaxe)
|
62
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
63
|
+
[#10793](https://github.com/CocoaPods/CocoaPods/pull/10793)
|
64
|
+
|
65
|
+
* Integrate test specs and app specs of pre-built pods.
|
66
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
67
|
+
[#10795](https://github.com/CocoaPods/CocoaPods/pull/10795)
|
68
|
+
|
69
|
+
* Add support for `before_headers` and `after_headers` script phase DSL.
|
70
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
71
|
+
[#10770](https://github.com/CocoaPods/CocoaPods/issues/10770)
|
72
|
+
|
73
|
+
* Fix touch on a missing directory for dSYM copy phase script.
|
74
|
+
[alvarollmenezes](https://github.com/alvarollmenezes)
|
75
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
76
|
+
[#10488](https://github.com/CocoaPods/CocoaPods/issues/10488)
|
77
|
+
|
78
|
+
* Check the podfile sources and plugin sources when printing warnings without explicitly using the master source.
|
79
|
+
[gonghonglou](https://github.com/gonghonglou)
|
80
|
+
[#10764](https://github.com/CocoaPods/CocoaPods/pull/10764)
|
81
|
+
|
82
|
+
* Use relative paths in copy dsyms script.
|
83
|
+
[Mickey Knox](https://github.com/knox)
|
84
|
+
[#10583](https://github.com/CocoaPods/CocoaPods/pull/10583)
|
85
|
+
|
86
|
+
* Use `OpenURI.open_uri` instead.
|
87
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
88
|
+
[#10597](https://github.com/CocoaPods/CocoaPods/issues/10597)
|
89
|
+
|
90
|
+
* Set minimum supported Ruby version to 2.6.
|
91
|
+
[Igor Makarov](https://github.com/igor-makarov)
|
92
|
+
[#10412](https://github.com/CocoaPods/CocoaPods/pull/10412)
|
93
|
+
|
94
|
+
* Improve compatibility with ActiveSupport 6
|
95
|
+
[Jun Jiang](https://github.com/jasl)
|
96
|
+
[#10364](https://github.com/CocoaPods/CocoaPods/pull/10364)
|
97
|
+
|
98
|
+
* Add a `pre_integrate_hook` API
|
99
|
+
[dcvz](https://github.com/dcvz)
|
100
|
+
[#9935](https://github.com/CocoaPods/CocoaPods/pull/9935)
|
101
|
+
|
102
|
+
* Rewrite the only place dependent on `typhoeus`.
|
103
|
+
[Jun Jiang](https://github.com/jasl), [Igor Makarov](https://github.com/igor-makarov)
|
104
|
+
[#10346](https://github.com/CocoaPods/CocoaPods/pull/10346)
|
105
|
+
|
106
|
+
* Add a `--update-sources` option to `pod repo push` so one can ensure sources are up-to-date.
|
107
|
+
[Elton Gao](https://github.com/gyfelton)
|
108
|
+
[Justin Martin](https://github.com/justinseanmartin)
|
109
|
+
|
110
|
+
* Installing a local (`:path`) pod that defines script phases will no longer
|
111
|
+
produce warnings.
|
112
|
+
[Samuel Giddins](https://github.com/segiddins)
|
113
|
+
|
114
|
+
* Allow building app & test spec targets that depend on a library that uses
|
115
|
+
Swift without requiring an empty Swift file be present.
|
116
|
+
[Samuel Giddins](https://github.com/segiddins)
|
117
|
+
|
118
|
+
* Add flag to ignore prerelease versions when reporting latest version for outdated pods.
|
119
|
+
[cltnschlosser](https://github.com/cltnschlosser)
|
120
|
+
[#9916](https://github.com/CocoaPods/CocoaPods/pull/9916)
|
121
|
+
|
122
|
+
* Add possibility to skip modulemap generation
|
123
|
+
[till0xff](https://github.com/till0xff)
|
124
|
+
[#10235](https://github.com/CocoaPods/CocoaPods/issues/10235)
|
125
|
+
|
126
|
+
* Add a `--version` option to `pod spec cat` and `pod spec which` for listing the podspec of a specific version
|
127
|
+
[pietbrauer](https://github.com/pietbrauer)
|
128
|
+
[#10609](https://github.com/CocoaPods/CocoaPods/pull/10609)
|
129
|
+
|
130
|
+
##### Bug Fixes
|
131
|
+
|
132
|
+
* Fix resource variant groups in static frameworks
|
133
|
+
[Igor Makarov](https://github.com/igor-makarov)
|
134
|
+
[#10834](https://github.com/CocoaPods/CocoaPods/pull/10834)
|
135
|
+
[#10605](https://github.com/CocoaPods/CocoaPods/issues/10605)
|
136
|
+
|
137
|
+
* Fix adding embed frameworks script phase to unit test targets if xcframeworks are present.
|
138
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
139
|
+
[#10652](https://github.com/CocoaPods/CocoaPods/issues/10652)
|
140
|
+
|
141
|
+
* Remove unused `install_xcframework_library` code.
|
142
|
+
[Gio Lodi](https://github.com/mokagio)
|
143
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
144
|
+
[#10831](https://github.com/CocoaPods/CocoaPods/pull/10831)
|
145
|
+
|
146
|
+
* Validate vendored library names after they have been expanded.
|
147
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
148
|
+
[#10832](https://github.com/CocoaPods/CocoaPods/pull/10832)
|
149
|
+
|
150
|
+
* Place frameworks from xcframeworks into a unique folder name to avoid duplicate outputs.
|
151
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
152
|
+
[#10106](https://github.com/CocoaPods/CocoaPods/issues/10106)
|
153
|
+
|
154
|
+
* Update pod in Pods folder when changing the pod from branch to version in Podfie.
|
155
|
+
[gonghonglou](https://github.com/gonghonglou)
|
156
|
+
[#10825](https://github.com/CocoaPods/CocoaPods/pull/10825)
|
157
|
+
|
158
|
+
* Bump addressable dependency to 2.8.
|
159
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
160
|
+
[#10802](https://github.com/CocoaPods/CocoaPods/issues/10802)
|
161
|
+
|
162
|
+
* Dedup bcsymbolmap paths found from multiple vendored frameworks.
|
163
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
164
|
+
[#10373](https://github.com/CocoaPods/CocoaPods/issues/10373)
|
165
|
+
|
166
|
+
* Correctly filter dependencies for pod variants across different platforms.
|
167
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
168
|
+
[#10777](https://github.com/CocoaPods/CocoaPods/issues/10777)
|
169
|
+
|
170
|
+
* Generate default `Info.plist` for consumer app during validation.
|
171
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
172
|
+
[#8570](https://github.com/CocoaPods/CocoaPods/issues/8570)
|
173
|
+
|
174
|
+
* Fix lint subspec error when the name of subspec start with the pod name.
|
175
|
+
[XianpuMeng](https://github.com/XianpuMeng)
|
176
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
177
|
+
[#9906](https://github.com/CocoaPods/CocoaPods/issues/9906)
|
178
|
+
|
179
|
+
* Update `ruby-macho` gem version to support 1.x and 2.x.
|
180
|
+
[Eric Chamberlain](https://github.com/PeqNP)
|
181
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
182
|
+
[#10390](https://github.com/CocoaPods/CocoaPods/issues/10390)
|
183
|
+
|
184
|
+
* Respect `--configuration` option when analyzing via `pod lib lint --analyze`.
|
185
|
+
[Jenn Magder](https://github.com/jmagman)
|
186
|
+
[#10476](https://github.com/CocoaPods/CocoaPods/issues/10476)
|
187
|
+
|
188
|
+
* Do not add dependencies to 'Link Binary With Libraries' phase.
|
189
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
190
|
+
[#10133](https://github.com/CocoaPods/CocoaPods/pull/10133)
|
191
|
+
|
192
|
+
* Ensure cache integrity on concurrent installations.
|
193
|
+
[Erik Blomqvist](https://github.com/codiophile)
|
194
|
+
[#10013](https://github.com/CocoaPods/CocoaPods/issues/10013)
|
195
|
+
|
196
|
+
* Force a clean install if installation options change.
|
197
|
+
[Sebastian Shanus](https://github.com/sebastianv1)
|
198
|
+
[#10016](https://github.com/CocoaPods/CocoaPods/pull/10016)
|
199
|
+
|
200
|
+
* Correctly detect that a prebuilt pod uses Swift.
|
201
|
+
[Elton Gao](https://github.com/gyfelton)
|
202
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
203
|
+
[#8649](https://github.com/CocoaPods/CocoaPods/issues/8649)
|
204
|
+
|
205
|
+
* fix: ensure cached spec path uniq
|
206
|
+
[SolaWing](https://github.com/SolaWing)
|
207
|
+
[#10231](https://github.com/CocoaPods/CocoaPods/issues/10231)
|
208
|
+
|
209
|
+
* Set `knownRegions` on generated projects with localized resources to prevent Xcode from re-saving projects to disk.
|
210
|
+
[Eric Amorde](https://github.com/amorde)
|
211
|
+
[#10290](https://github.com/CocoaPods/CocoaPods/pull/10290)
|
212
|
+
|
213
|
+
* Serialize schemes that do not need to be rewritten by Xcode.
|
214
|
+
[Samuel Giddins](https://github.com/segiddins)
|
215
|
+
|
216
|
+
|
217
|
+
## 1.10.2 (2021-07-28)
|
218
|
+
|
219
|
+
##### Enhancements
|
220
|
+
|
221
|
+
* None.
|
222
|
+
|
223
|
+
##### Bug Fixes
|
224
|
+
|
225
|
+
* Fix errors when archiving a Catalyst app which depends on a pod which uses `header_mappings_dir`.
|
226
|
+
[Thomas Goyne](https://github.com/tgoyne)
|
227
|
+
[#10224](https://github.com/CocoaPods/CocoaPods/pull/10224)
|
228
|
+
|
229
|
+
* Fix missing `-ObjC` for static XCFrameworks - take 2
|
230
|
+
[Paul Beusterien](https://github.com/paulb777)
|
231
|
+
[#10459](https://github.com/CocoaPods/CocoaPods/issuess/10459)
|
232
|
+
|
233
|
+
* Change URL validation failure to a note
|
234
|
+
[Paul Beusterien](https://github.com/paulb777)
|
235
|
+
[#10291](https://github.com/CocoaPods/CocoaPods/issues/10291)
|
236
|
+
|
237
|
+
|
238
|
+
## 1.10.1 (2021-01-07)
|
239
|
+
|
240
|
+
##### Enhancements
|
241
|
+
|
242
|
+
* None.
|
243
|
+
|
244
|
+
##### Bug Fixes
|
245
|
+
|
246
|
+
* Fix library name in LD `-l` flags for XCFrameworks containing libraries
|
247
|
+
[Wes Campaigne](https://github.com/Westacular)
|
248
|
+
[#10165](https://github.com/CocoaPods/CocoaPods/issues/10165)
|
249
|
+
|
250
|
+
* Fix file extension replacement for resource paths when using static frameworks.
|
251
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
252
|
+
[#10206](https://github.com/CocoaPods/CocoaPods/issues/10206)
|
253
|
+
|
254
|
+
* Fix processing of xcassets resources when pod target is static framework
|
255
|
+
[Federico Trimboli](https://github.com/fedetrim)
|
256
|
+
[#10175](https://github.com/CocoaPods/CocoaPods/pull/10175)
|
257
|
+
[#10170](https://github.com/CocoaPods/CocoaPods/issues/10170)
|
258
|
+
|
259
|
+
* Fix missing `-ObjC` for static XCFrameworks
|
260
|
+
[Paul Beusterien](https://github.com/paulb777)
|
261
|
+
[#10234](https://github.com/CocoaPods/CocoaPods/pull/10234)
|
262
|
+
|
263
|
+
|
7
264
|
## 1.10.0 (2020-10-20)
|
8
265
|
|
9
266
|
##### Enhancements
|
@@ -16,7 +273,7 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
|
|
16
273
|
[Wes Campaigne](https://github.com/Westacular)
|
17
274
|
[#10071](https://github.com/CocoaPods/CocoaPods/issues/10071)
|
18
275
|
|
19
|
-
* Add support for automatically
|
276
|
+
* Add support for automatically embedding XCFramework debug symbols for XCFrameworks generated with Xcode 12
|
20
277
|
[johntmcintosh](https://github.com/johntmcintosh)
|
21
278
|
[#10111](https://github.com/CocoaPods/CocoaPods/issues/10111)
|
22
279
|
|
@@ -91,12 +348,11 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
|
|
91
348
|
[Gereon Steffens](https://github.com/gereons)
|
92
349
|
[#9686](https://github.com/CocoaPods/CocoaPods/issues/9686)
|
93
350
|
|
94
|
-
* Add a post_integrate_hook API
|
351
|
+
* Add a `post_integrate_hook` API
|
95
352
|
[lucasmpaim](https://github.com/lucasmpaim)
|
96
353
|
[#7432](https://github.com/CocoaPods/CocoaPods/issues/7432)
|
97
354
|
|
98
|
-
* Set the `BUILD_LIBRARY_FOR_DISTRIBUTION` build setting if integrating with
|
99
|
-
a target that has the setting set to `YES` (directly or in an .xcconfig).
|
355
|
+
* Set the `BUILD_LIBRARY_FOR_DISTRIBUTION` build setting if integrating with a target that has the setting set to `YES`.
|
100
356
|
[Juanjo López](https://github.com/juanjonol)
|
101
357
|
[#9232](https://github.com/CocoaPods/CocoaPods/issues/9232)
|
102
358
|
|
@@ -104,7 +360,7 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
|
|
104
360
|
[Paul Beusterien](https://github.com/paulb777)
|
105
361
|
[#9392](https://github.com/CocoaPods/CocoaPods/pull/9392)
|
106
362
|
|
107
|
-
* Add
|
363
|
+
* Add `--use-static-frameworks` lint option
|
108
364
|
[Paul Beusterien](https://github.com/paulb777)
|
109
365
|
[#9632](https://github.com/CocoaPods/CocoaPods/pull/9632)
|
110
366
|
|
data/README.md
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
### CocoaPods: The Cocoa dependency manager
|
4
4
|
|
5
|
-
[](https://github.com/CocoaPods/CocoaPods/actions)
|
6
|
+
[](https://rubygems.org/gems/cocoapods)
|
7
7
|
[](https://codeclimate.com/github/CocoaPods/CocoaPods/maintainability)
|
8
8
|
[](https://codeclimate.com/github/CocoaPods/CocoaPods/test_coverage)
|
9
9
|
|
@@ -70,13 +70,13 @@ contributor [code of conduct](CODE_OF_CONDUCT.md).
|
|
70
70
|
|
71
71
|
CocoaPods is composed of the following projects:
|
72
72
|
|
73
|
-
| Status
|
74
|
-
|
|
75
|
-
| [](https://github.com/CocoaPods/CocoaPods/actions) | [CocoaPods](https://github.com/CocoaPods/CocoaPods) | The CocoaPods command line tool. | [guides](https://guides.cocoapods.org)
|
76
|
+
| [](https://github.com/CocoaPods/Core/actions) | [CocoaPods Core](https://github.com/CocoaPods/Core) | Support for working with specifications and podfiles. | [docs](https://guides.cocoapods.org/contributing/components.html)
|
77
|
+
| [](https://travis-ci.org/CocoaPods/cocoapods-downloader) |[CocoaPods Downloader](https://github.com/CocoaPods/cocoapods-downloader) | Downloaders for various source types. | [docs](https://www.rubydoc.info/gems/cocoapods-downloader)
|
78
|
+
| [](https://travis-ci.org/CocoaPods/Xcodeproj) | [Xcodeproj](https://github.com/CocoaPods/Xcodeproj) | Create and modify Xcode projects from Ruby. | [docs](https://www.rubydoc.info/gems/xcodeproj)
|
79
|
+
| [](https://travis-ci.org/CocoaPods/CLAide) | [CLAide](https://github.com/CocoaPods/CLAide) | A small command-line interface framework. | [docs](https://www.rubydoc.info/gems/claide)
|
80
|
+
| [](https://travis-ci.org/CocoaPods/Molinillo) | [Molinillo](https://github.com/CocoaPods/Molinillo) | A powerful generic dependency resolver. | [docs](https://www.rubydoc.info/gems/molinillo)
|
81
|
+
| [](https://travis-ci.org/CocoaPods/CocoaPods-app) | [CocoaPods.app](https://github.com/CocoaPods/CocoaPods-app) | A full-featured and standalone installation of CocoaPods. | [info](https://cocoapods.org/app)
|
82
82
|
| | [Master Repo ](https://github.com/CocoaPods/Specs) | Master repository of specifications. | [guides](https://guides.cocoapods.org/making/specs-and-specs-repo.html)
|
@@ -11,6 +11,17 @@ module Pod
|
|
11
11
|
spec repos, not those from local/external sources.
|
12
12
|
DESC
|
13
13
|
|
14
|
+
def self.options
|
15
|
+
[
|
16
|
+
['--ignore-prerelease', "Don't consider prerelease versions to be updates"],
|
17
|
+
].concat(super)
|
18
|
+
end
|
19
|
+
|
20
|
+
def initialize(argv)
|
21
|
+
@ignore_prerelease = argv.flag?('ignore-prerelease')
|
22
|
+
super
|
23
|
+
end
|
24
|
+
|
14
25
|
# Run the command
|
15
26
|
#
|
16
27
|
def run
|
@@ -67,7 +78,7 @@ module Pod
|
|
67
78
|
ensure_external_podspecs_present!
|
68
79
|
spec_sets.map do |set|
|
69
80
|
spec = set.specification
|
70
|
-
source_version = set.versions.
|
81
|
+
source_version = set.versions.find { |version| !@ignore_prerelease || !version.prerelease? }
|
71
82
|
pod_name = spec.root.name
|
72
83
|
lockfile_version = lockfile.version(pod_name)
|
73
84
|
if source_version > lockfile_version
|
@@ -37,6 +37,7 @@ module Pod
|
|
37
37
|
['--swift-version=VERSION', 'The `SWIFT_VERSION` that should be used when linting the spec. ' \
|
38
38
|
'This takes precedence over the Swift versions specified by the spec or a `.swift-version` file'],
|
39
39
|
['--no-overwrite', 'Disallow pushing that would overwrite an existing spec'],
|
40
|
+
['--update-sources', 'Make sure sources are up-to-date before a push'],
|
40
41
|
].concat(super)
|
41
42
|
end
|
42
43
|
|
@@ -46,6 +47,7 @@ module Pod
|
|
46
47
|
@repo = argv.shift_argument
|
47
48
|
@source = source_for_repo
|
48
49
|
@source_urls = argv.option('sources', config.sources_manager.all.map(&:url).append(Pod::TrunkSource::TRUNK_REPO_URL).uniq.join(',')).split(',')
|
50
|
+
@update_sources = argv.flag?('update-sources')
|
49
51
|
@podspec = argv.shift_argument
|
50
52
|
@use_frameworks = !argv.flag?('use-libraries')
|
51
53
|
@use_modular_headers = argv.flag?('use-modular-headers', false)
|
@@ -73,6 +75,7 @@ module Pod
|
|
73
75
|
def run
|
74
76
|
open_editor if @commit_message && @message.nil?
|
75
77
|
check_if_push_allowed
|
78
|
+
update_sources if @update_sources
|
76
79
|
validate_podspec_files
|
77
80
|
check_repo_status
|
78
81
|
update_repo
|
@@ -177,6 +180,20 @@ module Pod
|
|
177
180
|
git!(%W(-C #{repo_dir} pull))
|
178
181
|
end
|
179
182
|
|
183
|
+
# Update sources if present
|
184
|
+
#
|
185
|
+
# @return [void]
|
186
|
+
#
|
187
|
+
def update_sources
|
188
|
+
return if @source_urls.nil?
|
189
|
+
@source_urls.each do |source_url|
|
190
|
+
source = config.sources_manager.source_with_name_or_url(source_url)
|
191
|
+
dir = source.specs_dir
|
192
|
+
UI.puts "Updating a source at #{dir} for #{source}"
|
193
|
+
git!(%W(-C #{dir} pull))
|
194
|
+
end
|
195
|
+
end
|
196
|
+
|
180
197
|
# Commits the podspecs to the source, which should be a git repo.
|
181
198
|
#
|
182
199
|
# @note The pre commit hook of the repo is skipped as the podspecs have
|
@@ -16,6 +16,7 @@ module Pod
|
|
16
16
|
[
|
17
17
|
['--regex', 'Interpret the `QUERY` as a regular expression'],
|
18
18
|
['--show-all', 'Pick from all versions of the given podspec'],
|
19
|
+
['--version', 'Print a specific version of the given podspec'],
|
19
20
|
].concat(super)
|
20
21
|
end
|
21
22
|
|
@@ -24,6 +25,7 @@ module Pod
|
|
24
25
|
@show_all = argv.flag?('show-all')
|
25
26
|
@query = argv.shift_argument
|
26
27
|
@query = @query.gsub('.podspec', '') unless @query.nil?
|
28
|
+
@version = argv.option('version')
|
27
29
|
super
|
28
30
|
end
|
29
31
|
|
@@ -40,7 +42,7 @@ module Pod
|
|
40
42
|
index = UI.choose_from_array(specs, "Which spec would you like to print [1-#{specs.count}]? ")
|
41
43
|
specs[index]
|
42
44
|
else
|
43
|
-
get_path_of_spec(query)
|
45
|
+
get_path_of_spec(query, @version)
|
44
46
|
end
|
45
47
|
|
46
48
|
UI.puts File.read(filepath)
|