cocoapods 1.0.0 → 1.1.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 +329 -0
- data/lib/cocoapods/command/init.rb +6 -6
- data/lib/cocoapods/command/ipc/list.rb +40 -0
- data/lib/cocoapods/command/ipc/podfile.rb +31 -0
- data/lib/cocoapods/command/ipc/repl.rb +51 -0
- data/lib/cocoapods/command/ipc/spec.rb +29 -0
- data/lib/cocoapods/command/ipc/update_search_index.rb +24 -0
- data/lib/cocoapods/command/ipc.rb +18 -0
- data/lib/cocoapods/command/lib/create.rb +105 -0
- data/lib/cocoapods/command/lib/lint.rb +111 -0
- data/lib/cocoapods/command/lib.rb +3 -207
- data/lib/cocoapods/command/repo/push.rb +44 -20
- data/lib/cocoapods/command/setup.rb +2 -1
- data/lib/cocoapods/command/spec/lint.rb +4 -0
- data/lib/cocoapods/command.rb +2 -1
- data/lib/cocoapods/config.rb +4 -1
- data/lib/cocoapods/downloader/cache.rb +1 -0
- data/lib/cocoapods/downloader.rb +20 -0
- data/lib/cocoapods/executable.rb +1 -1
- data/lib/cocoapods/gem_version.rb +1 -1
- data/lib/cocoapods/generator/acknowledgements/plist.rb +4 -1
- data/lib/cocoapods/generator/copy_resources_script.rb +4 -10
- data/lib/cocoapods/generator/header.rb +2 -1
- data/lib/cocoapods/generator/prefix_header.rb +0 -12
- data/lib/cocoapods/generator/xcconfig/aggregate_xcconfig.rb +38 -5
- data/lib/cocoapods/generator/xcconfig/xcconfig_helper.rb +5 -4
- data/lib/cocoapods/installer/analyzer/pod_variant_set.rb +5 -1
- data/lib/cocoapods/installer/analyzer/target_inspector.rb +24 -1
- data/lib/cocoapods/installer/analyzer.rb +161 -1
- data/lib/cocoapods/installer/user_project_integrator/target_integrator.rb +29 -9
- data/lib/cocoapods/installer/xcode/pods_project_generator/aggregate_target_installer.rb +204 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator/file_references_installer.rb +314 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_installer.rb +401 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installer.rb +214 -0
- data/lib/cocoapods/installer/xcode/pods_project_generator.rb +265 -0
- data/lib/cocoapods/installer/xcode.rb +7 -0
- data/lib/cocoapods/installer.rb +50 -214
- data/lib/cocoapods/resolver.rb +15 -9
- data/lib/cocoapods/sandbox/headers_store.rb +4 -10
- data/lib/cocoapods/sandbox/path_list.rb +20 -9
- data/lib/cocoapods/sources_manager.rb +7 -10
- data/lib/cocoapods/target/aggregate_target.rb +20 -0
- data/lib/cocoapods/target/pod_target.rb +37 -7
- data/lib/cocoapods/user_interface/error_report.rb +7 -0
- data/lib/cocoapods/user_interface/inspector_reporter.rb +109 -0
- data/lib/cocoapods/user_interface.rb +7 -5
- data/lib/cocoapods/validator.rb +59 -11
- metadata +112 -83
- data/lib/cocoapods/command/inter_process_communication.rb +0 -177
- data/lib/cocoapods/installer/file_references_installer.rb +0 -310
- data/lib/cocoapods/installer/migrator.rb +0 -86
- data/lib/cocoapods/installer/target_installer/aggregate_target_installer.rb +0 -191
- data/lib/cocoapods/installer/target_installer/pod_target_installer.rb +0 -368
- data/lib/cocoapods/installer/target_installer.rb +0 -210
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 80f900c52d47f767b6afb4da5f9836e97568a0a4
|
4
|
+
data.tar.gz: c195495f686289715d00afac16999592dc6798aa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 88d6604e4bf3ccc02c3c123f585e345e0adccffccd72a4e02b3f290af4eb6d8ba91c19b11f6cfd642ea764246bd51ab47d99b7219ddaf9fcf55db65ce7e67986
|
7
|
+
data.tar.gz: 6ffb3ade512e2ae0c5c34344c6fb85b97ac007ebdf37dbf865d5add39e709c0aac4c73314a70ae9e50d51ccf56a8feb1f8f628bd12f3d729e3d0de42d73daa64
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,335 @@ 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.1.0 (2016-10-19)
|
8
|
+
|
9
|
+
##### Enhancements
|
10
|
+
|
11
|
+
* Use host target for frameworks of XPC services.
|
12
|
+
[Ingmar Stein](https://github.com/IngmarStein)
|
13
|
+
[#6029](https://github.com/CocoaPods/CocoaPods/pull/6029)
|
14
|
+
|
15
|
+
* Use Swift 3.0 by default during validation.
|
16
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
17
|
+
[#6042](https://github.com/CocoaPods/CocoaPods/pull/6042)
|
18
|
+
|
19
|
+
* Exit with non-zero exit status if pod repo update fails
|
20
|
+
[Uku Loskit](https://github.com/UkuLoskit)
|
21
|
+
[#6037](https://github.com/CocoaPods/CocoaPods/issues/6037)
|
22
|
+
|
23
|
+
* The validator has an API for accessing which version of Swift was used.
|
24
|
+
[Orta Therox](https://github.com/orta)
|
25
|
+
[#6049](https://github.com/CocoaPods/CocoaPods/pull/6049)
|
26
|
+
|
27
|
+
|
28
|
+
##### Bug Fixes
|
29
|
+
|
30
|
+
* None.
|
31
|
+
|
32
|
+
|
33
|
+
## 1.1.0.rc.3 (2016-10-11)
|
34
|
+
|
35
|
+
##### Enhancements
|
36
|
+
|
37
|
+
* Cache result of inhibit_warnings and include_in_build_config to speed up pod install.
|
38
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
39
|
+
[#5934](https://github.com/CocoaPods/CocoaPods/pull/5934)
|
40
|
+
|
41
|
+
* Tell users about the .swift-version file on validation failures.
|
42
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
43
|
+
[#5951](https://github.com/CocoaPods/CocoaPods/pull/5951)
|
44
|
+
|
45
|
+
* Improve performance of PathList.read_file_system
|
46
|
+
[Heath Borders](https://github.com/hborders)
|
47
|
+
[#5890](https://github.com/CocoaPods/CocoaPods/issues/5890)
|
48
|
+
|
49
|
+
* Cache result of uses_swift and should_build to speed up pod install.
|
50
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
51
|
+
[#5837](https://github.com/CocoaPods/CocoaPods/pull/5837)
|
52
|
+
|
53
|
+
* Remove uses of `cd` in generated scripts
|
54
|
+
[Ben Asher](https://github.com/benasher44)
|
55
|
+
[#5959](https://github.com/CocoaPods/CocoaPods/pull/5959)
|
56
|
+
|
57
|
+
* Error with helpful message when integrating a pod into targets that have mismatched Swift versions.
|
58
|
+
[Ben Asher](https://github.com/benasher44)
|
59
|
+
[#5984](https://github.com/CocoaPods/CocoaPods/pull/5984)
|
60
|
+
|
61
|
+
* Allow users to share pods between Objective-C and Swift targets.
|
62
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
63
|
+
[#5984](https://github.com/CocoaPods/CocoaPods/pull/5984)
|
64
|
+
|
65
|
+
* Allow setting the linting Swift version via `--swift-version=VERSION`
|
66
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
67
|
+
[#5989](https://github.com/CocoaPods/CocoaPods/pull/5989)
|
68
|
+
|
69
|
+
* Greenify pod install success message
|
70
|
+
[Stephen Hayes](https://github.com/schayes04)
|
71
|
+
[#5713](https://github.com/CocoaPods/CocoaPods/issues/5713)
|
72
|
+
|
73
|
+
* Update EMBEDDED_CONTENT_CONTAINS_SWIFT flag behaviour based on xcode version.
|
74
|
+
[codymoorhouse](https://github.com/codymoorhouse)
|
75
|
+
[#5732](https://github.com/CocoaPods/CocoaPods/issues/5732)
|
76
|
+
|
77
|
+
##### Bug Fixes
|
78
|
+
|
79
|
+
* Remove special handling for messages apps
|
80
|
+
[Ben Asher](https://github.com/benasher44)
|
81
|
+
[#5860](https://github.com/CocoaPods/CocoaPods/issues/5860)
|
82
|
+
|
83
|
+
* Ensure messages apps have an embed frameworks build phase
|
84
|
+
[Ben Asher](https://github.com/benasher44)
|
85
|
+
[#5860](https://github.com/CocoaPods/CocoaPods/issues/5860)
|
86
|
+
|
87
|
+
* Fix linting of private pods when using libraries.
|
88
|
+
[Stefan Pühringer](https://github.com/b-ray)
|
89
|
+
[#5891](https://github.com/CocoaPods/CocoaPods/issues/5891)
|
90
|
+
|
91
|
+
|
92
|
+
## 1.1.0.rc.2 (2016-09-13)
|
93
|
+
|
94
|
+
##### Enhancements
|
95
|
+
|
96
|
+
* Use the SWIFT_VERSION when linting pods. To lint with Swift 3.0
|
97
|
+
add a Swift Version file. `echo "3.0" >> .swift-version`.
|
98
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
99
|
+
[#5841](https://github.com/CocoaPods/CocoaPods/pull/5841)
|
100
|
+
|
101
|
+
##### Bug Fixes
|
102
|
+
|
103
|
+
* Correctly pass Pod:VERSION in `pod lib create`.
|
104
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
105
|
+
[#5840](https://github.com/CocoaPods/CocoaPods/issues/5840)
|
106
|
+
|
107
|
+
|
108
|
+
## 1.1.0.rc.1 (2016-09-10)
|
109
|
+
|
110
|
+
##### Enhancements
|
111
|
+
|
112
|
+
*
|
113
|
+
|
114
|
+
##### Bug Fixes
|
115
|
+
|
116
|
+
* Wrap generated import headers with __OBJC__ to fix C only pods.
|
117
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
118
|
+
[#5291](https://github.com/CocoaPods/CocoaPods/issues/5291)
|
119
|
+
|
120
|
+
* Prevent crash when generating acknowledgements when license type is not specified.
|
121
|
+
[Marcelo Fabri](https://github.com/marcelofabri)
|
122
|
+
[#5826](https://github.com/CocoaPods/CocoaPods/issues/5826)
|
123
|
+
|
124
|
+
* Pass full path to App.xcworkspace for spec validation, and use `git -C` for `pod repo push` git ops.
|
125
|
+
[Ben Asher](https://github.com/benasher44)
|
126
|
+
[#5805](https://github.com/CocoaPods/CocoaPods/issues/5805)
|
127
|
+
|
128
|
+
|
129
|
+
## 1.1.0.beta.2 (2016-09-03)
|
130
|
+
|
131
|
+
##### Enhancements
|
132
|
+
|
133
|
+
* Remove references to the pre-1.0 Migrator.
|
134
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
135
|
+
[#5635](https://github.com/CocoaPods/CocoaPods/pull/5635)
|
136
|
+
|
137
|
+
* Improve performance of dependency resolution.
|
138
|
+
[yanzhiwei147](https://github.com/yanzhiwei147)
|
139
|
+
[#5510](https://github.com/CocoaPods/CocoaPods/pull/5510)
|
140
|
+
|
141
|
+
* Add support for building Messages applications.
|
142
|
+
[Ben Asher](https://github.com/benasher44)
|
143
|
+
[#5726](https://github.com/CocoaPods/CocoaPods/pull/5726)
|
144
|
+
|
145
|
+
* Improved messaging when missing host targets for embedded targets.
|
146
|
+
Improved support for framework-only projects.
|
147
|
+
[Ben Asher](https://github.com/benasher44)
|
148
|
+
[#5733](https://github.com/CocoaPods/CocoaPods/pull/5733)
|
149
|
+
|
150
|
+
* Set ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES when appropriate.
|
151
|
+
[Ben Asher](https://github.com/benasher44)
|
152
|
+
[#5732](https://github.com/CocoaPods/CocoaPods/pull/5732)
|
153
|
+
|
154
|
+
* Verify that embedded target platform and swift version matches the host.
|
155
|
+
[Ben Asher](https://github.com/benasher44)
|
156
|
+
[#5747](https://github.com/CocoaPods/CocoaPods/pull/5747)
|
157
|
+
|
158
|
+
* Pass the version of CocoaPods to `pod lib create`'s configure script.
|
159
|
+
[orta](https://github.com/orta)
|
160
|
+
[#5787](https://github.com/CocoaPods/CocoaPods/pull/5787)
|
161
|
+
|
162
|
+
* Improve host target detection for embedded targets
|
163
|
+
in sub-projects.
|
164
|
+
[Ben Asher](https://github.com/benasher44)
|
165
|
+
[#5622](https://github.com/CocoaPods/CocoaPods/issues/5622)
|
166
|
+
|
167
|
+
##### Bug Fixes
|
168
|
+
|
169
|
+
* Hash scope suffixes if they are over 50 characters to prevent file paths from being too long.
|
170
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
171
|
+
[#5491](https://github.com/CocoaPods/CocoaPods/issues/5491)
|
172
|
+
|
173
|
+
* Fix codesigning identity on watchOS and tvOS targets.
|
174
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
175
|
+
[#5686](https://github.com/CocoaPods/CocoaPods/issues/5686)
|
176
|
+
|
177
|
+
* Fix SWIFT_VERSION not being read when only defined at the project level.
|
178
|
+
[Ben Asher](https://github.com/benasher44)
|
179
|
+
[#5700](https://github.com/CocoaPods/CocoaPods/issues/5700) and [#5737](https://github.com/CocoaPods/CocoaPods/issues/5737)
|
180
|
+
|
181
|
+
* Fix analyzer checking the compatibility of an embedded target with a host that has not been added the Podfile.
|
182
|
+
[Ben Asher](https://github.com/benasher44)
|
183
|
+
[#5783](https://github.com/CocoaPods/CocoaPods/issues/5783)
|
184
|
+
|
185
|
+
## 1.1.0.beta.1 (2016-07-11)
|
186
|
+
|
187
|
+
##### Enhancements
|
188
|
+
|
189
|
+
* Move Pods Project generation to an `Xcode` Namespace.
|
190
|
+
[Daniel Tomlinson](https://github.com/dantoml)
|
191
|
+
[#5480](https://github.com/CocoaPods/CocoaPods/pull/5480)
|
192
|
+
|
193
|
+
* Add the ability to inhibit swift warnings.
|
194
|
+
[Peter Ryszkiewicz](https://github.com/pRizz)
|
195
|
+
[#5414](https://github.com/CocoaPods/CocoaPods/pull/5414)
|
196
|
+
|
197
|
+
* Use `git ls-remote` to skip full clones for branch dependencies.
|
198
|
+
[Juan Civile](https://github.com/champo)
|
199
|
+
[#5376](https://github.com/CocoaPods/CocoaPods/issues/5376)
|
200
|
+
|
201
|
+
* [repo/push] --use-json to convert podspecs to JSON format when pushing.
|
202
|
+
[Mark Schall](https://github.com/maschall)
|
203
|
+
[#5568](https://github.com/CocoaPods/CocoaPods/pull/5568)
|
204
|
+
|
205
|
+
* Set 'Allow app extension API only' for Messages extensions.
|
206
|
+
[Boris Bügling](https://github.com/neonichu)
|
207
|
+
[#5558](https://github.com/CocoaPods/CocoaPods/issues/5558)
|
208
|
+
|
209
|
+
* Accept `pod repo push` with URL instead of only repo name.
|
210
|
+
[Mark Schall](https://github.com/maschall)
|
211
|
+
[#5572](https://github.com/CocoaPods/CocoaPods/pull/5572)
|
212
|
+
|
213
|
+
* [Installer] Set the SWIFT_VERSION for CocoaPods generated targets.
|
214
|
+
[Danielle Tomlinson](https://github.com/DanToml)
|
215
|
+
[#5540](https://github.com/CocoaPods/CocoaPods/pull/5540)
|
216
|
+
|
217
|
+
* Print message when skipping user project integration.
|
218
|
+
[Danielle Tomlinson](https://github.com/dantoml)
|
219
|
+
[#5517](https://github.com/CocoaPods/CocoaPods/issues/5517)
|
220
|
+
|
221
|
+
* Show GitHub Issues that could be related to exceptions.
|
222
|
+
[Orta Therox](https://github.com/orta)
|
223
|
+
[#4817](https://github.com/CocoaPods/CocoaPods/issues/4817)
|
224
|
+
|
225
|
+
* Improve handling of app extensions, watch os 1 extensions
|
226
|
+
and framework targets.
|
227
|
+
[Ben Asher](https://github.com/benasher44)
|
228
|
+
[#4203](https://github.com/CocoaPods/CocoaPods/issues/4203)
|
229
|
+
|
230
|
+
* Add a license type to generated acknowledgements file in plist.
|
231
|
+
[Naoto Kaneko](https://github.com/naoty)
|
232
|
+
[#5436](https://github.com/CocoaPods/CocoaPods/pull/5436)
|
233
|
+
|
234
|
+
##### Bug Fixes
|
235
|
+
|
236
|
+
* Fix local pod platform conflict error message.
|
237
|
+
[Muhammed Yavuz Nuzumlalı](https://github.com/manuyavuz)
|
238
|
+
[#5052](https://github.com/CocoaPods/CocoaPods/issues/5052)
|
239
|
+
|
240
|
+
* Avoid use of `activesupport` version 5 to stay compatible with macOS system
|
241
|
+
Ruby.
|
242
|
+
[Boris Bügling](https://github.com/neonichu)
|
243
|
+
[#5602](https://github.com/CocoaPods/CocoaPods/issues/5602)
|
244
|
+
|
245
|
+
* Fix installing pods with `use_frameworks` when deduplication is disabled.
|
246
|
+
[Samuel Giddins](https://github.com/segiddins)
|
247
|
+
[#5481](https://github.com/CocoaPods/CocoaPods/issues/5481)
|
248
|
+
|
249
|
+
* Running `pod setup --silent` will now properly silence git output while
|
250
|
+
updating the repository.
|
251
|
+
[Samuel Giddins](https://github.com/segiddins)
|
252
|
+
|
253
|
+
* Fix linting pods that depend upon `XCTest`.
|
254
|
+
[Samuel Giddins](https://github.com/segiddins)
|
255
|
+
[#5321](https://github.com/CocoaPods/CocoaPods/issues/5321)
|
256
|
+
|
257
|
+
* Use `require` instead of `autoload` to solve an issue with loading
|
258
|
+
`fourflusher`.
|
259
|
+
[Boris Bügling](https://github.com/neonichu)
|
260
|
+
[#5445](https://github.com/CocoaPods/CocoaPods/issues/5445)
|
261
|
+
|
262
|
+
* Resolve cyclic dependencies when creating pod targets.
|
263
|
+
[Juan Civile](https://github.com/champo)
|
264
|
+
[#5362](https://github.com/CocoaPods/CocoaPods/issues/5362)
|
265
|
+
|
266
|
+
* Fix embedding frameworks in UI Testing bundles.
|
267
|
+
[Daniel Tomlinson](https://github.com/dantoml)
|
268
|
+
[#5250](https://github.com/CocoaPods/CocoaPods/issues/5250)
|
269
|
+
|
270
|
+
* Ensure attempting to print a path in the error report doesn't itself error.
|
271
|
+
[Samuel Giddins](https://github.com/)
|
272
|
+
[#5541](https://github.com/CocoaPods/CocoaPods/issues/5541)
|
273
|
+
|
274
|
+
* Fix linting with Xcode 8.
|
275
|
+
[Boris Bügling](https://github.com/neonichu)
|
276
|
+
[#5529](https://github.com/CocoaPods/CocoaPods/issues/5529)
|
277
|
+
|
278
|
+
* Fix linting with Xcode 8 by disabling it entirely.
|
279
|
+
[Boris Bügling](https://github.com/neonichu)
|
280
|
+
[#5528](https://github.com/CocoaPods/CocoaPods/issues/5528)
|
281
|
+
|
282
|
+
* Error during install when there are duplicate library names.
|
283
|
+
[Daniel Tomlinson](https://github.com/dantoml)
|
284
|
+
[#4014](https://github.com/CocoaPods/CocoaPods/issues/4014)
|
285
|
+
|
286
|
+
* Make the `Check Pods Manifest.lock` script write errors to STDERR and improve
|
287
|
+
POSIX shell compatibility.
|
288
|
+
[Simon Warta](https://github.com/webmaster128)
|
289
|
+
[#5595](https://github.com/CocoaPods/CocoaPods/pull/5595)
|
290
|
+
|
291
|
+
|
292
|
+
## 1.0.1 (2016-06-02)
|
293
|
+
|
294
|
+
##### Enhancements
|
295
|
+
|
296
|
+
* None.
|
297
|
+
|
298
|
+
##### Bug Fixes
|
299
|
+
|
300
|
+
* Symlink the header folders in the framework bundle's root directory
|
301
|
+
by a new shell script build phase if `header_mappings_dir` is used
|
302
|
+
with frameworks.
|
303
|
+
[Marius Rackwitz](https://github.com/mrackwitz)
|
304
|
+
[#5313](https://github.com/CocoaPods/CocoaPods/issues/5313)
|
305
|
+
|
306
|
+
* Removed emojis in Build Phases names — as it seems that some third party tools have trouble with them.
|
307
|
+
[Olivier Halligon](https://github.com/AliSoftware)
|
308
|
+
[#5382](https://github.com/CocoaPods/CocoaPods/pull/5382)
|
309
|
+
|
310
|
+
* Ensure `Set` is defined before using it.
|
311
|
+
[Samuel Giddins](https://github.com/segiddins)
|
312
|
+
[#5287](https://github.com/CocoaPods/CocoaPods/issues/5287)
|
313
|
+
|
314
|
+
* Add --target-device to ibtool invocation for XIBs
|
315
|
+
[Juan Civile](https://github.com/champo)
|
316
|
+
[#5282](https://github.com/CocoaPods/CocoaPods/issues/5282)
|
317
|
+
|
318
|
+
* Fix error when executables cannot be found.
|
319
|
+
[Jan Berkel](https://github.com/jberkel)
|
320
|
+
[#5319](https://github.com/CocoaPods/CocoaPods/pull/5319)
|
321
|
+
|
322
|
+
* Avoid removing all files when root directory contains unicode characters.
|
323
|
+
[Marc Boquet](https://github.com/marcboquet)
|
324
|
+
[#5294](https://github.com/CocoaPods/CocoaPods/issues/5294)
|
325
|
+
|
326
|
+
* Guarding from crash if pod lib create has a + character in the name.
|
327
|
+
[William Entriken](https://github.com/fulldecent)
|
328
|
+
[CocoaPods/pod-template#69](https://github.com/CocoaPods/pod-template/issues/69)
|
329
|
+
|
330
|
+
* Use target product types to determine whether a target is a test target when
|
331
|
+
running `pod init`.
|
332
|
+
[Samuel Giddins](https://github.com/segiddins)
|
333
|
+
[#5378](https://github.com/CocoaPods/CocoaPods/issues/5378)
|
334
|
+
|
335
|
+
|
7
336
|
## 1.0.0 (2016-05-10)
|
8
337
|
|
9
338
|
##### Enhancements
|
@@ -56,14 +56,14 @@ module Pod
|
|
56
56
|
podfile = ''
|
57
57
|
podfile << "project '#{@project_path}'\n\n" if @project_path
|
58
58
|
podfile << <<-PLATFORM.strip_heredoc
|
59
|
-
# Uncomment
|
59
|
+
# Uncomment the next line to define a global platform for your project
|
60
60
|
# platform :ios, '9.0'
|
61
61
|
PLATFORM
|
62
62
|
|
63
63
|
# Split out the targets into app and test targets
|
64
64
|
test_targets, app_targets = project.native_targets.
|
65
65
|
sort_by { |t| t.name.downcase }.
|
66
|
-
partition
|
66
|
+
partition(&:test_target_type?)
|
67
67
|
|
68
68
|
app_targets.each do |app_target|
|
69
69
|
test_targets_for_app = test_targets.select do |target|
|
@@ -76,7 +76,7 @@ module Pod
|
|
76
76
|
end
|
77
77
|
|
78
78
|
# @param [[Xcodeproj::PBXTarget]] targets
|
79
|
-
# An array which always has a target as
|
79
|
+
# An array which always has a target as its first item
|
80
80
|
# and may optionally contain related test targets
|
81
81
|
#
|
82
82
|
# @return [String] the text for the target module
|
@@ -86,13 +86,13 @@ module Pod
|
|
86
86
|
|
87
87
|
target_module << if app.resolved_build_setting('SWIFT_OPTIMIZATION_LEVEL').values.any?
|
88
88
|
<<-RUBY
|
89
|
-
# Comment
|
89
|
+
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
|
90
90
|
use_frameworks!
|
91
91
|
|
92
92
|
RUBY
|
93
93
|
else
|
94
94
|
<<-RUBY
|
95
|
-
# Uncomment
|
95
|
+
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
|
96
96
|
# use_frameworks!
|
97
97
|
|
98
98
|
RUBY
|
@@ -111,7 +111,7 @@ module Pod
|
|
111
111
|
end
|
112
112
|
|
113
113
|
# @param [[Xcodeproj::PBXTarget]] targets
|
114
|
-
# An array which always has a target as
|
114
|
+
# An array which always has a target as its first item
|
115
115
|
# and may optionally contain a second target as its test target
|
116
116
|
#
|
117
117
|
# @return [String] the text for the target module
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
class IPC < Command
|
4
|
+
class List < IPC
|
5
|
+
self.summary = 'Lists the specifications known to CocoaPods'
|
6
|
+
self.description = <<-DESC
|
7
|
+
Prints to STDOUT a YAML dictionary where the keys are the name of the
|
8
|
+
specifications and each corresponding value is a dictionary with
|
9
|
+
the following keys:
|
10
|
+
- defined_in_file
|
11
|
+
- version
|
12
|
+
- authors
|
13
|
+
- summary
|
14
|
+
- description
|
15
|
+
- platforms
|
16
|
+
DESC
|
17
|
+
|
18
|
+
def run
|
19
|
+
require 'yaml'
|
20
|
+
sets = config.sources_manager.aggregate.all_sets
|
21
|
+
result = {}
|
22
|
+
sets.each do |set|
|
23
|
+
begin
|
24
|
+
spec = set.specification
|
25
|
+
result[spec.name] = {
|
26
|
+
'authors' => spec.authors.keys,
|
27
|
+
'summary' => spec.summary,
|
28
|
+
'description' => spec.description,
|
29
|
+
'platforms' => spec.available_platforms.map { |p| p.name.to_s },
|
30
|
+
}
|
31
|
+
rescue DSLError
|
32
|
+
next
|
33
|
+
end
|
34
|
+
end
|
35
|
+
output_pipe.puts result.to_yaml
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
class IPC < Command
|
4
|
+
class Podfile < IPC
|
5
|
+
include ProjectDirectory
|
6
|
+
|
7
|
+
self.summary = 'Converts a Podfile to YAML'
|
8
|
+
self.description = 'Converts a Podfile to YAML and prints it to STDOUT.'
|
9
|
+
self.arguments = [
|
10
|
+
CLAide::Argument.new('PATH', true),
|
11
|
+
]
|
12
|
+
|
13
|
+
def initialize(argv)
|
14
|
+
@path = argv.shift_argument
|
15
|
+
super
|
16
|
+
end
|
17
|
+
|
18
|
+
def validate!
|
19
|
+
super
|
20
|
+
help! 'A Podfile path is required.' unless @path
|
21
|
+
end
|
22
|
+
|
23
|
+
def run
|
24
|
+
require 'yaml'
|
25
|
+
podfile = Pod::Podfile.from_file(@path)
|
26
|
+
output_pipe.puts podfile.to_yaml
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
class IPC < Command
|
4
|
+
class Repl < IPC
|
5
|
+
include ProjectDirectory
|
6
|
+
|
7
|
+
END_OF_OUTPUT_SIGNAL = "\n\r".freeze
|
8
|
+
|
9
|
+
self.summary = 'The repl listens to commands on standard input'
|
10
|
+
self.description = <<-DESC
|
11
|
+
The repl listens to commands on standard input and prints their
|
12
|
+
result to standard output.
|
13
|
+
It accepts all the other ipc subcommands. The repl will signal the
|
14
|
+
end of output with the the ASCII CR+LF `\\n\\r`.
|
15
|
+
DESC
|
16
|
+
|
17
|
+
def run
|
18
|
+
print_version
|
19
|
+
signal_end_of_output
|
20
|
+
listen
|
21
|
+
end
|
22
|
+
|
23
|
+
def print_version
|
24
|
+
output_pipe.puts "version: '#{Pod::VERSION}'"
|
25
|
+
end
|
26
|
+
|
27
|
+
def signal_end_of_output
|
28
|
+
output_pipe.puts(END_OF_OUTPUT_SIGNAL)
|
29
|
+
STDOUT.flush
|
30
|
+
end
|
31
|
+
|
32
|
+
def listen
|
33
|
+
while repl_command = STDIN.gets
|
34
|
+
execute_repl_command(repl_command)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def execute_repl_command(repl_command)
|
39
|
+
unless repl_command == '\n'
|
40
|
+
repl_commands = repl_command.split
|
41
|
+
subcommand = repl_commands.shift.capitalize
|
42
|
+
arguments = repl_commands
|
43
|
+
subcommand_class = Pod::Command::IPC.const_get(subcommand)
|
44
|
+
subcommand_class.new(CLAide::ARGV.new(arguments)).run
|
45
|
+
signal_end_of_output
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
class IPC < Command
|
4
|
+
class Spec < IPC
|
5
|
+
self.summary = 'Converts a podspec to JSON'
|
6
|
+
self.description = 'Converts a podspec to JSON and prints it to STDOUT.'
|
7
|
+
self.arguments = [
|
8
|
+
CLAide::Argument.new('PATH', true),
|
9
|
+
]
|
10
|
+
|
11
|
+
def initialize(argv)
|
12
|
+
@path = argv.shift_argument
|
13
|
+
super
|
14
|
+
end
|
15
|
+
|
16
|
+
def validate!
|
17
|
+
super
|
18
|
+
help! 'A specification path is required.' unless @path
|
19
|
+
end
|
20
|
+
|
21
|
+
def run
|
22
|
+
require 'json'
|
23
|
+
spec = Specification.from_file(@path)
|
24
|
+
output_pipe.puts(spec.to_pretty_json)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
class IPC < Command
|
4
|
+
class UpdateSearchIndex < IPC
|
5
|
+
self.summary = 'Updates the search index'
|
6
|
+
self.description = <<-DESC
|
7
|
+
Updates the search index and prints its path to standard output.
|
8
|
+
The search index is a YAML encoded dictionary where the keys
|
9
|
+
are the names of the Pods and the values are a dictionary containing
|
10
|
+
the following information:
|
11
|
+
- version
|
12
|
+
- summary
|
13
|
+
- description
|
14
|
+
- authors
|
15
|
+
DESC
|
16
|
+
|
17
|
+
def run
|
18
|
+
config.sources_manager.updated_search_index
|
19
|
+
output_pipe.puts(config.sources_manager.search_index_path)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'cocoapods/command/ipc/list'
|
2
|
+
require 'cocoapods/command/ipc/podfile'
|
3
|
+
require 'cocoapods/command/ipc/repl'
|
4
|
+
require 'cocoapods/command/ipc/spec'
|
5
|
+
require 'cocoapods/command/ipc/update_search_index'
|
6
|
+
|
7
|
+
module Pod
|
8
|
+
class Command
|
9
|
+
class IPC < Command
|
10
|
+
self.abstract_command = true
|
11
|
+
self.summary = 'Inter-process communication'
|
12
|
+
|
13
|
+
def output_pipe
|
14
|
+
STDOUT
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|