cocoapods-generate 2.2.2 → 2.2.4
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/VERSION +1 -1
- data/lib/cocoapods/generate/configuration.rb +6 -0
- data/lib/cocoapods/generate/installer.rb +17 -2
- data/lib/cocoapods/generate/podfile_generator.rb +24 -2
- metadata +11 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e678737eede01f12fa09ac0d4d64a23737ec7d659147d67a9e489bb64044709e
|
4
|
+
data.tar.gz: 82c0cf87922bed22879443ad965b8dd9795c6d0704fab11cbf2329570d4ce6ca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 458d65f261c92ff4fae69b24feab9693bc2f7a63503585b8dbdfc06aafd4e006a0a25556b6dd1d70a7213cb29a9a2d4668e4da8688dc1b628008f56fd23a0110
|
7
|
+
data.tar.gz: 90730f6a121011ee794f4c910135b47eee34ba177e1a1af620a6a96755d5d60f3a941b41179e25fbf9b17dc99cedabf5e3a11c5a0c618411fec2586eb8832478
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.2.
|
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(
|
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|
|
@@ -234,9 +236,13 @@ module Pod
|
|
234
236
|
bc.build_settings['PRODUCT_BUNDLE_IDENTIFIER'] = 'org.cocoapods-generate.${PRODUCT_NAME:rfc1034identifier}'
|
235
237
|
end
|
236
238
|
|
237
|
-
case native_app_target.platform_name
|
239
|
+
case native_app_target.platform_name.to_sym
|
238
240
|
when :ios
|
239
241
|
make_ios_app_launchable(app_project, native_app_target)
|
242
|
+
when :osx
|
243
|
+
generate_infoplist_file(app_project, native_app_target)
|
244
|
+
when :tvos
|
245
|
+
generate_infoplist_file(app_project, native_app_target)
|
240
246
|
end
|
241
247
|
|
242
248
|
swift_version = pod_targets.map { |pt| Pod::Version.new(pt.swift_version) }.max.to_s
|
@@ -391,6 +397,15 @@ module Pod
|
|
391
397
|
native_app_target.resources_build_phase.add_file_reference(launch_storyboard_file_ref)
|
392
398
|
end
|
393
399
|
|
400
|
+
def generate_infoplist_file(_app_project, native_app_target)
|
401
|
+
# Starting in Xcode 14, there is an error when you build the macOS or
|
402
|
+
# tvOS app that is generated from cocoapods-generate. This implements
|
403
|
+
# the suggested change.
|
404
|
+
native_app_target.build_configurations.each do |bc|
|
405
|
+
bc.build_settings['GENERATE_INFOPLIST_FILE'] = 'YES'
|
406
|
+
end
|
407
|
+
end
|
408
|
+
|
394
409
|
def group_for_platform_name(project, platform_name, should_create = true)
|
395
410
|
project.main_group.find_subpath("App-#{platform_name}", should_create)
|
396
411
|
end
|
@@ -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.
|
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
|
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,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-generate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
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:
|
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
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 0.1.1
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 0.3.0
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: 0.1.1
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 0.3.0
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: bundler
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -101,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
101
107
|
- !ruby/object:Gem::Version
|
102
108
|
version: '0'
|
103
109
|
requirements: []
|
104
|
-
rubygems_version: 3.
|
110
|
+
rubygems_version: 3.3.7
|
105
111
|
signing_key:
|
106
112
|
specification_version: 4
|
107
113
|
summary: Generates Xcode workspaces from a podspec.
|