cocoapods-generate 2.2.3 → 2.2.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f4bfa2c31a2e64dd3923f9413cac796a3857e8693c1e4b437dd8d6caa118cfd5
4
- data.tar.gz: 83a3ab70639016cfb600c0958d79288dfbaad3d9df8a43d0f50e11edfc52fc53
3
+ metadata.gz: e678737eede01f12fa09ac0d4d64a23737ec7d659147d67a9e489bb64044709e
4
+ data.tar.gz: 82c0cf87922bed22879443ad965b8dd9795c6d0704fab11cbf2329570d4ce6ca
5
5
  SHA512:
6
- metadata.gz: a5ac204b50794cb297184858ddba52a80357dd6da2c5f22654a27e8baabbca14e5903837b6c4789385c3fa5d11b9de3f00fb2089e27c06fb0102bc5652720e4f
7
- data.tar.gz: 62ec11956e6af98a32665665f9db92fd9b57175edeb4d17dace834e248025060afdf1e68758bad6b0b5e7ab959a91cf4b6f92c8ff0901d3b47ab3d0de61bed58
6
+ metadata.gz: 458d65f261c92ff4fae69b24feab9693bc2f7a63503585b8dbdfc06aafd4e006a0a25556b6dd1d70a7213cb29a9a2d4668e4da8688dc1b628008f56fd23a0110
7
+ data.tar.gz: 90730f6a121011ee794f4c910135b47eee34ba177e1a1af620a6a96755d5d60f3a941b41179e25fbf9b17dc99cedabf5e3a11c5a0c618411fec2586eb8832478
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.2.3
1
+ 2.2.4
@@ -210,6 +210,12 @@ module Pod
210
210
  option :use_modular_headers, BOOLEAN, 'false', 'Whether the target should be generated as a clang module, treating dependencies as modules, as if `use_modular_headers!` were specified. Will error if both this option and a podfile are specified', nil, nil, coerce_to_bool
211
211
  option :single_workspace, BOOLEAN, 'false', 'Whether to produce a single workspace for all podspecs specified.', nil, nil, coerce_to_bool
212
212
  option :xcode_version, Pod::Version, 'Pod::Version.new(\'9.3\')', 'The Xcode version to use for producing the consumer sample project', 'xcode_version', nil, coerce_to_version
213
+ option :external_source_pods, ArrayOf.new(HashOf.new(keys: [String], values: [ArrayOf.new(HashOf.new(keys: [String], values: [String]))])),
214
+ [],
215
+ nil,
216
+ nil,
217
+ nil,
218
+ ->(external_sources) { Array(external_sources) }
213
219
 
214
220
  options.freeze
215
221
  options.each do |o|
@@ -7,6 +7,8 @@ module Pod
7
7
  DEFAULT_XCODE_VERSION = '9.3'.freeze
8
8
 
9
9
  XCODE_VERSION_TO_OBJECT_VERSION = {
10
+ '14.0' => 56,
11
+ '13.0' => 55,
10
12
  '12.0' => 54,
11
13
  '11.4' => 53,
12
14
  '11.0' => 52,
@@ -185,7 +187,7 @@ module Pod
185
187
  native_app_target.resources_build_phase.clear
186
188
 
187
189
  if (app_host_source_dir = configuration.app_host_source_dir)
188
- relative_app_host_source_dir = app_host_source_dir.relative_path_from(installer.sandbox.root)
190
+ relative_app_host_source_dir = app_host_source_dir.relative_path_from(install_directory)
189
191
  groups = {}
190
192
 
191
193
  app_host_source_dir.find do |file|
@@ -395,12 +397,12 @@ module Pod
395
397
  native_app_target.resources_build_phase.add_file_reference(launch_storyboard_file_ref)
396
398
  end
397
399
 
398
- def generate_infoplist_file(app_project, native_app_target)
400
+ def generate_infoplist_file(_app_project, native_app_target)
399
401
  # Starting in Xcode 14, there is an error when you build the macOS or
400
402
  # tvOS app that is generated from cocoapods-generate. This implements
401
403
  # the suggested change.
402
404
  native_app_target.build_configurations.each do |bc|
403
- bc.build_settings['GENERATE_INFOPLIST_FILE'] = "YES"
405
+ bc.build_settings['GENERATE_INFOPLIST_FILE'] = 'YES'
404
406
  end
405
407
  end
406
408
 
@@ -31,6 +31,7 @@ module Pod
31
31
  generator = self
32
32
  dir = configuration.gen_dir_for_specs(specs)
33
33
  project_name = configuration.project_name_for_specs(specs)
34
+ external_source_pods = configuration.external_source_pods
34
35
 
35
36
  Pod::Podfile.new do
36
37
  project "#{project_name}.xcodeproj"
@@ -93,9 +94,19 @@ module Pod
93
94
  .reject { |d| spec_names.include?(d.root_name) }
94
95
 
95
96
  dependencies.each do |dependency|
96
- pod_args = generator.pod_args_for_dependency(self, dependency)
97
+ pod_args = generator.pod_args_for_podfile_dependency(self, dependency)
97
98
  pod(*pod_args)
98
99
  end
100
+
101
+ external_source_pods.each do |hash|
102
+ hash.each do |name, attrs|
103
+ next if spec_names.include?(name)
104
+
105
+ dependency = Dependency.new(name, attrs.first.deep_symbolize_keys)
106
+ pod_args = generator.pod_args_for_dependency(nil, dependency)
107
+ pod(*pod_args)
108
+ end
109
+ end
99
110
  end
100
111
 
101
112
  # Add platform-specific concrete targets that inherit the `pod` declaration for the local pod.
@@ -291,12 +302,23 @@ module Pod
291
302
  #
292
303
  # @param [Dependency] dependency
293
304
  #
294
- def pod_args_for_dependency(podfile, dependency)
305
+ def pod_args_for_podfile_dependency(podfile, dependency)
295
306
  dependency = podfile_dependencies[dependency.root_name]
296
307
  .map { |dep| dep.dup.tap { |d| d.name = dependency.name } }
297
308
  .push(dependency)
298
309
  .reduce(&:merge)
310
+ pod_args_for_dependency(podfile, dependency)
311
+ end
299
312
 
313
+ # @return [Hash<String,Array<Dependency>>]
314
+ # returns the arguments that should be passed to the Podfile DSL's
315
+ # `pod` method.
316
+ #
317
+ # @param [Podfile] podfile
318
+ #
319
+ # @param [Dependency] dependency
320
+ #
321
+ def pod_args_for_dependency(podfile, dependency)
300
322
  options = dependency_compilation_kwargs(dependency.name)
301
323
  options[:source] = dependency.podspec_repo if dependency.podspec_repo
302
324
  options.update(dependency.external_source) if dependency.external_source
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-generate
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.3
4
+ version: 2.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Giddins
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-14 00:00:00.000000000 Z
11
+ date: 2023-02-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cocoapods-disable-podfile-validations
@@ -107,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
107
  - !ruby/object:Gem::Version
108
108
  version: '0'
109
109
  requirements: []
110
- rubygems_version: 3.2.3
110
+ rubygems_version: 3.3.7
111
111
  signing_key:
112
112
  specification_version: 4
113
113
  summary: Generates Xcode workspaces from a podspec.