cocoapods 0.38.0.beta.2 → 0.38.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 923ec63f64a122d95ab696516d46354779740e21
4
- data.tar.gz: 20c71f489b0a564f487095d9110da01e6d7cbead
3
+ metadata.gz: 38f1d0086c53abf7931b2e48826d9177640d79a8
4
+ data.tar.gz: 33709e3b43453a8790b9ebfc578774d2528f73c3
5
5
  SHA512:
6
- metadata.gz: d183a05940a1b9db8499cec101f047cc3b75d8e5c63af41e92bfa17742c326a2d5a1608b31e3af6b8bbb26e20cb753cd4ad24b2b0d198194a7bb3fcc1647951e
7
- data.tar.gz: 39e91c4ac906c500aac52ff62315bca3234945ccb57cf5f3fdc0787304755a3078195b43e7be42d26e78412c8723eaedb702925c787defe0120a3b566f0ac2bc
6
+ metadata.gz: 51a5fa2e47335ad50c008a316edd3e5152649df3372a8221333166958de425c9d05993b603bf510b281ea413e1a4273adefc8dfe5f7113f10f44bea9f56e7f2c
7
+ data.tar.gz: 6ebb339fb126a197528187117e970c990c09c6f66621f7e08840a3017cf36605e6e3fac9474522605eb079d8a67569b09e7d8682057e64ffe944325d5be56c06
@@ -4,6 +4,23 @@ 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
+ ## 0.38.0
8
+
9
+ ##### Enhancements
10
+
11
+ * Improve the message shown when trying to use Swift Pods without frameworks.
12
+ Now it includes the offending Pods so that the user can take action to remove
13
+ the Pods, if they don’t want to move to frameworks yet.
14
+ [#3830](https://github.com/CocoaPods/CocoaPods/pull/3830)
15
+ [Eloy Durán](https://github.com/alloy)
16
+
17
+ ##### Bug Fixes
18
+
19
+ * Properly merge the `user_target_xcconfig`s of multiple subspecs.
20
+ [#3813](https://github.com/CocoaPods/CocoaPods/issues/3813)
21
+ [Samuel Giddins](https://github.com/segiddins)
22
+
23
+
7
24
  ## 0.38.0.beta.2
8
25
 
9
26
  ##### Enhancements
@@ -91,6 +108,7 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
91
108
  * The notice about a new version being available will now include our
92
109
  recommendation of using the latest stable version.
93
110
  [Hugo Tunius](https://github.com/k0nserv)
111
+ [#3667](https://github.com/CocoaPods/CocoaPods/pull/3667)
94
112
 
95
113
  * New commands `pod cache list` and `pod cache clean` allows you to see the
96
114
  contents of the cache and clean it.
@@ -121,6 +139,7 @@ To install release candidates run `[sudo] gem install cocoapods --pre`
121
139
 
122
140
  * Cache globbing in `PathList` to speed up `pod install`.
123
141
  [Vincent Isambart](https://github.com/vincentisambart)
142
+ [#3699](https://github.com/CocoaPods/CocoaPods/pull/3699)
124
143
 
125
144
  * CocoaPods will validate your podfile and try to identify problems
126
145
  and conflicts in how you've specified the dependencies.
@@ -48,8 +48,8 @@ module Pod
48
48
  # @todo Find a way to display the live output of the commands.
49
49
  #
50
50
  def self.execute_command(executable, command, raise_on_failure)
51
- bin = `which #{executable}`.strip
52
- raise Informative, "Unable to locate the executable `#{executable}`" if bin.empty?
51
+ bin = which(executable)
52
+ raise Informative, "Unable to locate the executable `#{executable}`" unless bin
53
53
 
54
54
  require 'shellwords'
55
55
 
@@ -75,6 +75,26 @@ module Pod
75
75
  output
76
76
  end
77
77
 
78
+ # Returns the absolute path to the binary with the given name on the current
79
+ # `PATH`, or `nil` if none is found.
80
+ #
81
+ # @param [String] program
82
+ # The name of the program being searched for.
83
+ #
84
+ # @return [String,Nil] The absolute path to the given program, or `nil` if
85
+ # it wasn't found in the current `PATH`.
86
+ #
87
+ def self.which(program)
88
+ program = program.to_s
89
+ ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
90
+ bin = File.expand_path(program, path)
91
+ if File.file?(bin) && File.executable?(bin)
92
+ return bin
93
+ end
94
+ end
95
+ nil
96
+ end
97
+
78
98
  private
79
99
 
80
100
  def self.popen3(bin, command, stdout, stderr)
@@ -1,5 +1,5 @@
1
1
  module Pod
2
2
  # The version of the cocoapods command line tool.
3
3
  #
4
- VERSION = '0.38.0.beta.2' unless defined? Pod::VERSION
4
+ VERSION = '0.38.0' unless defined? Pod::VERSION
5
5
  end
@@ -194,15 +194,16 @@ module Pod
194
194
  target.pod_targets_for_build_configuration(@configuration_name)
195
195
  end
196
196
 
197
- # Returns the +user_target_xcconfig+ for all pod targets grouped by keys
197
+ # Returns the +user_target_xcconfig+ for all pod targets and their spec
198
+ # consumers grouped by keys
198
199
  #
199
200
  # @return [Hash{String,Hash{Target,String}]
200
201
  #
201
- def user_target_xcconfig_values_by_target_by_key
202
+ def user_target_xcconfig_values_by_consumer_by_key
202
203
  pod_targets.each_with_object({}) do |target, hash|
203
204
  target.spec_consumers.each do |spec_consumer|
204
205
  spec_consumer.user_target_xcconfig.each do |k, v|
205
- (hash[k] ||= {})[target] = v
206
+ (hash[k] ||= {})[spec_consumer] = v
206
207
  end
207
208
  end
208
209
  end
@@ -214,7 +215,7 @@ module Pod
214
215
  # @return [Hash{String, String}]
215
216
  #
216
217
  def merged_user_target_xcconfigs
217
- settings = user_target_xcconfig_values_by_target_by_key
218
+ settings = user_target_xcconfig_values_by_consumer_by_key
218
219
  settings.each_with_object({}) do |(key, values_by_target), xcconfig|
219
220
  uniq_values = values_by_target.values.uniq
220
221
  values_are_bools = uniq_values.all? { |v| v =~ /(yes|no)/i }
@@ -222,7 +223,7 @@ module Pod
222
223
  # Boolean build settings
223
224
  if uniq_values.count > 1
224
225
  UI.warn 'Can\'t merge user_target_xcconfig for pod targets: ' \
225
- "#{values_by_target.keys.map(&:label)}. Boolean build "\
226
+ "#{values_by_target.keys.map(&:name)}. Boolean build "\
226
227
  "setting #{key} has different values."
227
228
  else
228
229
  xcconfig[key] = uniq_values.first
@@ -234,7 +235,7 @@ module Pod
234
235
  # Singular build settings
235
236
  if uniq_values.count > 1
236
237
  UI.warn 'Can\'t merge user_target_xcconfig for pod targets: ' \
237
- "#{values_by_target.keys.map(&:label)}. Singular build "\
238
+ "#{values_by_target.keys.map(&:name)}. Singular build "\
238
239
  "setting #{key} has different values."
239
240
  else
240
241
  xcconfig[key] = uniq_values.first
@@ -411,10 +411,13 @@ module Pod
411
411
  aggregate_target.user_build_configurations.keys.each do |config|
412
412
  pod_targets = aggregate_target.pod_targets_for_build_configuration(config)
413
413
 
414
- if pod_targets.any?(&:uses_swift?)
414
+ swift_pods = pod_targets.select(&:uses_swift?)
415
+ unless swift_pods.empty?
415
416
  raise Informative, 'Pods written in Swift can only be integrated as frameworks; this ' \
416
417
  'feature is still in beta. Add `use_frameworks!` to your Podfile or target to opt ' \
417
- 'into using it.'
418
+ 'into using it. ' \
419
+ "The Swift #{swift_pods.size == 1 ? 'Pod being used is' : 'Pods being used are'}: " +
420
+ swift_pods.map(&:name).to_sentence
418
421
  end
419
422
  end
420
423
  end
@@ -235,8 +235,7 @@ module Pod
235
235
 
236
236
  # Called before resolution starts.
237
237
  #
238
- # Completely silence this, as we show nothing in normal mode and debug
239
- # information in verbose mode.
238
+ # Completely silence this, as we show nothing.
240
239
  #
241
240
  # @return [Void]
242
241
  #
@@ -245,8 +244,7 @@ module Pod
245
244
 
246
245
  # Called after resolution ends.
247
246
  #
248
- # Completely silence this, as we show nothing in normal mode and debug
249
- # information in verbose mode.
247
+ # Completely silence this, as we show nothing.
250
248
  #
251
249
  # @return [Void]
252
250
  #
@@ -255,23 +253,13 @@ module Pod
255
253
 
256
254
  # Called during resolution to indicate progress.
257
255
  #
258
- # Completely silence this, as we show nothing in normal mode and debug
259
- # information in verbose mode.
256
+ # Completely silence this, as we show nothing.
260
257
  #
261
258
  # @return [Void]
262
259
  #
263
260
  def indicate_progress
264
261
  end
265
262
 
266
- # Conveys debug information to the user.
267
- # By default, prints to `STDERR` instead of {#output}.
268
- #
269
- # @param [Integer] depth the current depth of the resolution process.
270
- # @return [void]
271
- def debug?
272
- Config.instance.verbose?
273
- end
274
-
275
263
  #-------------------------------------------------------------------------#
276
264
 
277
265
  private
@@ -381,7 +381,7 @@ module Pod
381
381
  # @return [void]
382
382
  #
383
383
  def build_pod
384
- if `which xcodebuild`.strip.empty?
384
+ if Executable.which('xcodebuild').nil?
385
385
  UI.warn "Skipping compilation with `xcodebuild' because it can't be found.\n".yellow
386
386
  else
387
387
  UI.message "\nBuilding with xcodebuild.\n".yellow do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.38.0.beta.2
4
+ version: 0.38.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-07-05 00:00:00.000000000 Z
14
+ date: 2015-07-18 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: cocoapods-core
@@ -19,222 +19,222 @@ dependencies:
19
19
  requirements:
20
20
  - - '='
21
21
  - !ruby/object:Gem::Version
22
- version: 0.38.0.beta.2
22
+ version: 0.38.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - '='
28
28
  - !ruby/object:Gem::Version
29
- version: 0.38.0.beta.2
29
+ version: 0.38.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: claide
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - "~>"
34
+ - - ~>
35
35
  - !ruby/object:Gem::Version
36
36
  version: 0.9.1
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - "~>"
41
+ - - ~>
42
42
  - !ruby/object:Gem::Version
43
43
  version: 0.9.1
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: xcodeproj
46
46
  requirement: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - "~>"
48
+ - - ~>
49
49
  - !ruby/object:Gem::Version
50
- version: 0.26.1
50
+ version: 0.26.2
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - "~>"
55
+ - - ~>
56
56
  - !ruby/object:Gem::Version
57
- version: 0.26.1
57
+ version: 0.26.2
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: cocoapods-downloader
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - "~>"
62
+ - - ~>
63
63
  - !ruby/object:Gem::Version
64
64
  version: 0.9.1
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - "~>"
69
+ - - ~>
70
70
  - !ruby/object:Gem::Version
71
71
  version: 0.9.1
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: cocoapods-plugins
74
74
  requirement: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - "~>"
76
+ - - ~>
77
77
  - !ruby/object:Gem::Version
78
78
  version: 0.4.2
79
79
  type: :runtime
80
80
  prerelease: false
81
81
  version_requirements: !ruby/object:Gem::Requirement
82
82
  requirements:
83
- - - "~>"
83
+ - - ~>
84
84
  - !ruby/object:Gem::Version
85
85
  version: 0.4.2
86
86
  - !ruby/object:Gem::Dependency
87
87
  name: cocoapods-stats
88
88
  requirement: !ruby/object:Gem::Requirement
89
89
  requirements:
90
- - - "~>"
90
+ - - ~>
91
91
  - !ruby/object:Gem::Version
92
92
  version: 0.5.3
93
93
  type: :runtime
94
94
  prerelease: false
95
95
  version_requirements: !ruby/object:Gem::Requirement
96
96
  requirements:
97
- - - "~>"
97
+ - - ~>
98
98
  - !ruby/object:Gem::Version
99
99
  version: 0.5.3
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: cocoapods-try
102
102
  requirement: !ruby/object:Gem::Requirement
103
103
  requirements:
104
- - - "~>"
104
+ - - ~>
105
105
  - !ruby/object:Gem::Version
106
106
  version: 0.4.5
107
107
  type: :runtime
108
108
  prerelease: false
109
109
  version_requirements: !ruby/object:Gem::Requirement
110
110
  requirements:
111
- - - "~>"
111
+ - - ~>
112
112
  - !ruby/object:Gem::Version
113
113
  version: 0.4.5
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: cocoapods-trunk
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
- - - "~>"
118
+ - - ~>
119
119
  - !ruby/object:Gem::Version
120
120
  version: 0.6.1
121
121
  type: :runtime
122
122
  prerelease: false
123
123
  version_requirements: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - "~>"
125
+ - - ~>
126
126
  - !ruby/object:Gem::Version
127
127
  version: 0.6.1
128
128
  - !ruby/object:Gem::Dependency
129
129
  name: molinillo
130
130
  requirement: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - "~>"
132
+ - - ~>
133
133
  - !ruby/object:Gem::Version
134
134
  version: 0.3.0
135
135
  type: :runtime
136
136
  prerelease: false
137
137
  version_requirements: !ruby/object:Gem::Requirement
138
138
  requirements:
139
- - - "~>"
139
+ - - ~>
140
140
  - !ruby/object:Gem::Version
141
141
  version: 0.3.0
142
142
  - !ruby/object:Gem::Dependency
143
143
  name: colored
144
144
  requirement: !ruby/object:Gem::Requirement
145
145
  requirements:
146
- - - "~>"
146
+ - - ~>
147
147
  - !ruby/object:Gem::Version
148
148
  version: '1.2'
149
149
  type: :runtime
150
150
  prerelease: false
151
151
  version_requirements: !ruby/object:Gem::Requirement
152
152
  requirements:
153
- - - "~>"
153
+ - - ~>
154
154
  - !ruby/object:Gem::Version
155
155
  version: '1.2'
156
156
  - !ruby/object:Gem::Dependency
157
157
  name: escape
158
158
  requirement: !ruby/object:Gem::Requirement
159
159
  requirements:
160
- - - "~>"
160
+ - - ~>
161
161
  - !ruby/object:Gem::Version
162
162
  version: 0.0.4
163
163
  type: :runtime
164
164
  prerelease: false
165
165
  version_requirements: !ruby/object:Gem::Requirement
166
166
  requirements:
167
- - - "~>"
167
+ - - ~>
168
168
  - !ruby/object:Gem::Version
169
169
  version: 0.0.4
170
170
  - !ruby/object:Gem::Dependency
171
171
  name: activesupport
172
172
  requirement: !ruby/object:Gem::Requirement
173
173
  requirements:
174
- - - ">="
174
+ - - '>='
175
175
  - !ruby/object:Gem::Version
176
176
  version: 3.2.15
177
177
  type: :runtime
178
178
  prerelease: false
179
179
  version_requirements: !ruby/object:Gem::Requirement
180
180
  requirements:
181
- - - ">="
181
+ - - '>='
182
182
  - !ruby/object:Gem::Version
183
183
  version: 3.2.15
184
184
  - !ruby/object:Gem::Dependency
185
185
  name: nap
186
186
  requirement: !ruby/object:Gem::Requirement
187
187
  requirements:
188
- - - "~>"
188
+ - - ~>
189
189
  - !ruby/object:Gem::Version
190
190
  version: '0.8'
191
191
  type: :runtime
192
192
  prerelease: false
193
193
  version_requirements: !ruby/object:Gem::Requirement
194
194
  requirements:
195
- - - "~>"
195
+ - - ~>
196
196
  - !ruby/object:Gem::Version
197
197
  version: '0.8'
198
198
  - !ruby/object:Gem::Dependency
199
199
  name: bundler
200
200
  requirement: !ruby/object:Gem::Requirement
201
201
  requirements:
202
- - - "~>"
202
+ - - ~>
203
203
  - !ruby/object:Gem::Version
204
204
  version: '1.3'
205
205
  type: :development
206
206
  prerelease: false
207
207
  version_requirements: !ruby/object:Gem::Requirement
208
208
  requirements:
209
- - - "~>"
209
+ - - ~>
210
210
  - !ruby/object:Gem::Version
211
211
  version: '1.3'
212
212
  - !ruby/object:Gem::Dependency
213
213
  name: rake
214
214
  requirement: !ruby/object:Gem::Requirement
215
215
  requirements:
216
- - - ">="
216
+ - - '>='
217
217
  - !ruby/object:Gem::Version
218
218
  version: '0'
219
219
  type: :development
220
220
  prerelease: false
221
221
  version_requirements: !ruby/object:Gem::Requirement
222
222
  requirements:
223
- - - ">="
223
+ - - '>='
224
224
  - !ruby/object:Gem::Version
225
225
  version: '0'
226
226
  - !ruby/object:Gem::Dependency
227
227
  name: bacon
228
228
  requirement: !ruby/object:Gem::Requirement
229
229
  requirements:
230
- - - "~>"
230
+ - - ~>
231
231
  - !ruby/object:Gem::Version
232
232
  version: '1.1'
233
233
  type: :development
234
234
  prerelease: false
235
235
  version_requirements: !ruby/object:Gem::Requirement
236
236
  requirements:
237
- - - "~>"
237
+ - - ~>
238
238
  - !ruby/object:Gem::Version
239
239
  version: '1.1'
240
240
  description: |-
@@ -363,12 +363,12 @@ require_paths:
363
363
  - lib
364
364
  required_ruby_version: !ruby/object:Gem::Requirement
365
365
  requirements:
366
- - - ">="
366
+ - - '>='
367
367
  - !ruby/object:Gem::Version
368
368
  version: 2.0.0
369
369
  required_rubygems_version: !ruby/object:Gem::Requirement
370
370
  requirements:
371
- - - ">="
371
+ - - '>='
372
372
  - !ruby/object:Gem::Version
373
373
  version: '0'
374
374
  requirements: []