cocoapods 1.11.0.beta.1 → 1.11.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +60 -0
- data/lib/cocoapods/gem_version.rb +1 -1
- data/lib/cocoapods/generator/copy_xcframework_script.rb +3 -31
- data/lib/cocoapods/installer/project_cache/target_cache_key.rb +5 -2
- data/lib/cocoapods/installer/user_project_integrator/target_integrator.rb +59 -20
- data/lib/cocoapods/installer/xcode/pods_project_generator/app_host_installer.rb +2 -1
- data/lib/cocoapods/installer/xcode/pods_project_generator/pod_target_integrator.rb +6 -6
- data/lib/cocoapods/installer/xcode/pods_project_generator/target_installer_helper.rb +9 -3
- data/lib/cocoapods/sandbox/file_accessor.rb +11 -5
- data/lib/cocoapods/sources_manager.rb +5 -2
- data/lib/cocoapods/target/aggregate_target.rb +1 -1
- data/lib/cocoapods/target/pod_target.rb +1 -1
- data/lib/cocoapods/validator.rb +12 -3
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 13b8afbc6a86002603657c70845d730e56705ce8d220c63949cd72b5b6b6cbe9
|
4
|
+
data.tar.gz: cbaca99762be90fc614455732acb9e1f3ed9d4c0ea1890a76983fcf4adfcaf6d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2c0be8b7faa61f7bd79a17e9bd9d768f32ae534c51ce2a7d295e0d187a7c195470a250d283013b26c258f577ae3795f2038508a2627d676ecb21930b1e46b747
|
7
|
+
data.tar.gz: 45c4012f332e01e96c8140a3e41da6e245550b984d58012921b5fca2f76ea039b9d20cee0d67b9fdba0979bf4d2987af755d66be1204e0b73a4ef5340c105ab1
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,66 @@ 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.1 (2021-09-13)
|
8
|
+
|
9
|
+
##### Enhancements
|
10
|
+
|
11
|
+
* None.
|
12
|
+
|
13
|
+
##### Bug Fixes
|
14
|
+
|
15
|
+
* Handle spec repo urls with user info when determining if they are CDN.
|
16
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
17
|
+
[#10941](https://github.com/CocoaPods/CocoaPods/issues/10941)
|
18
|
+
|
19
|
+
* Set `INFOPLIST_FILE` build setting to `$(SRCROOT)/App/App-Info.plist` during lint.
|
20
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
21
|
+
[#10927](https://github.com/CocoaPods/CocoaPods/issues/10927)
|
22
|
+
|
23
|
+
* Set `PRODUCT_BUNDLE_IDENTIFIER` for generated app during lint.
|
24
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
25
|
+
[#10933](https://github.com/CocoaPods/CocoaPods/issues/10933)
|
26
|
+
|
27
|
+
|
28
|
+
## 1.11.0 (2021-09-01)
|
29
|
+
|
30
|
+
##### Enhancements
|
31
|
+
|
32
|
+
* None.
|
33
|
+
|
34
|
+
##### Bug Fixes
|
35
|
+
|
36
|
+
* None.
|
37
|
+
|
38
|
+
|
39
|
+
## 1.11.0.rc.1 (2021-08-25)
|
40
|
+
|
41
|
+
##### Enhancements
|
42
|
+
|
43
|
+
* None.
|
44
|
+
|
45
|
+
##### Bug Fixes
|
46
|
+
|
47
|
+
* Correctly process multiple `xcframeworks` a pod provides.
|
48
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
49
|
+
[#10378](https://github.com/CocoaPods/CocoaPods/issues/10378)
|
50
|
+
|
51
|
+
|
52
|
+
## 1.11.0.beta.2 (2021-08-11)
|
53
|
+
|
54
|
+
##### Enhancements
|
55
|
+
|
56
|
+
* Integrate ODR categories into projects.
|
57
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
58
|
+
[#10855](https://github.com/CocoaPods/CocoaPods/pull/10855)
|
59
|
+
|
60
|
+
##### Bug Fixes
|
61
|
+
|
62
|
+
* Pass correct paths for `select_slice` method.
|
63
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
64
|
+
[#10430](https://github.com/CocoaPods/CocoaPods/issues/10430)
|
65
|
+
|
66
|
+
|
7
67
|
## 1.11.0.beta.1 (2021-08-09)
|
8
68
|
|
9
69
|
##### Enhancements
|
@@ -70,8 +70,8 @@ copy_dir()
|
|
70
70
|
local destination="$2"
|
71
71
|
|
72
72
|
# Use filter instead of exclude so missing patterns don't throw errors.
|
73
|
-
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" \\"${source}
|
74
|
-
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" "${source}" "${destination}"
|
73
|
+
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" \\"${source}*\\" \\"${destination}\\""
|
74
|
+
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" "${source}"/* "${destination}"
|
75
75
|
}
|
76
76
|
|
77
77
|
SELECT_SLICE_RETVAL=""
|
@@ -130,38 +130,11 @@ select_slice() {
|
|
130
130
|
done
|
131
131
|
}
|
132
132
|
|
133
|
-
install_library() {
|
134
|
-
local source="$1"
|
135
|
-
local name="$2"
|
136
|
-
local destination="#{Target::BuildSettings::XCFRAMEWORKS_BUILD_DIR_VARIABLE}/${name}"
|
137
|
-
|
138
|
-
# Libraries can contain headers, module maps, and a binary, so we'll copy everything in the folder over
|
139
|
-
|
140
|
-
local source="$binary"
|
141
|
-
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" \\"${source}/*\\" \\"${destination}\\""
|
142
|
-
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" "${source}/*" "${destination}"
|
143
|
-
}
|
144
|
-
|
145
|
-
# Copies a framework to derived data for use in later build phases
|
146
|
-
install_framework()
|
147
|
-
{
|
148
|
-
local source="$1"
|
149
|
-
local name="$2"
|
150
|
-
local destination="#{Pod::Target::BuildSettings::XCFRAMEWORKS_BUILD_DIR_VARIABLE}/${name}"
|
151
|
-
|
152
|
-
if [ ! -d "$destination" ]; then
|
153
|
-
mkdir -p "$destination"
|
154
|
-
fi
|
155
|
-
|
156
|
-
copy_dir "$source" "$destination"
|
157
|
-
echo "Copied $source to $destination"
|
158
|
-
}
|
159
|
-
|
160
133
|
install_xcframework() {
|
161
134
|
local basepath="$1"
|
162
135
|
local name="$2"
|
163
136
|
local package_type="$3"
|
164
|
-
local paths=("
|
137
|
+
local paths=("${@:4}")
|
165
138
|
|
166
139
|
# Locate the correct slice of the .xcframework for the current architectures
|
167
140
|
select_slice "${paths[@]}"
|
@@ -179,7 +152,6 @@ install_xcframework() {
|
|
179
152
|
fi
|
180
153
|
|
181
154
|
copy_dir "$source/" "$destination"
|
182
|
-
|
183
155
|
echo "Copied $source to $destination"
|
184
156
|
}
|
185
157
|
|
@@ -162,8 +162,11 @@ module Pod
|
|
162
162
|
'BUILD_SETTINGS_CHECKSUM' => build_settings,
|
163
163
|
}
|
164
164
|
if aggregate_target.includes_resources? || aggregate_target.includes_on_demand_resources?
|
165
|
-
|
166
|
-
|
165
|
+
relative_resource_file_paths = aggregate_target.resource_paths_by_config.values.flatten.uniq
|
166
|
+
relative_on_demand_resource_file_paths = aggregate_target.on_demand_resources.map do |res|
|
167
|
+
res.relative_path_from(sandbox.project_path.dirname).to_s
|
168
|
+
end
|
169
|
+
contents['FILES'] = (relative_resource_file_paths + relative_on_demand_resource_file_paths).sort_by(&:downcase)
|
167
170
|
end
|
168
171
|
TargetCacheKey.new(sandbox, :aggregate, contents)
|
169
172
|
end
|
@@ -32,7 +32,8 @@ module Pod
|
|
32
32
|
# For messages extensions, this only applies if it's embedded in a messages
|
33
33
|
# application.
|
34
34
|
#
|
35
|
-
EMBED_FRAMEWORK_TARGET_TYPES = [:application, :application_on_demand_install_capable, :unit_test_bundle,
|
35
|
+
EMBED_FRAMEWORK_TARGET_TYPES = [:application, :application_on_demand_install_capable, :unit_test_bundle,
|
36
|
+
:ui_test_bundle, :watch2_extension, :messages_application].freeze
|
36
37
|
|
37
38
|
# @return [String] the name of the embed frameworks phase
|
38
39
|
#
|
@@ -457,9 +458,9 @@ module Pod
|
|
457
458
|
#
|
458
459
|
# @return [void]
|
459
460
|
#
|
460
|
-
def
|
461
|
-
|
462
|
-
|
461
|
+
def update_on_demand_resources(sandbox, project, native_targets, file_accessors, parent_odr_group,
|
462
|
+
target_odr_group_name)
|
463
|
+
category_to_tags = {}
|
463
464
|
file_accessors = Array(file_accessors)
|
464
465
|
native_targets = Array(native_targets)
|
465
466
|
|
@@ -469,8 +470,9 @@ module Pod
|
|
469
470
|
old_odr_file_refs = old_target_odr_group&.recursive_children_groups&.each_with_object({}) do |group, hash|
|
470
471
|
hash[group.name] = group.files
|
471
472
|
end || {}
|
472
|
-
native_targets.each do |
|
473
|
-
|
473
|
+
native_targets.each do |native_target|
|
474
|
+
native_target.remove_on_demand_resources(old_odr_file_refs)
|
475
|
+
update_on_demand_resources_build_settings(native_target, nil => old_odr_file_refs.keys)
|
474
476
|
end
|
475
477
|
old_target_odr_group&.remove_from_project
|
476
478
|
return
|
@@ -480,17 +482,18 @@ module Pod
|
|
480
482
|
current_file_refs = target_odr_group.recursive_children_groups.flat_map(&:files)
|
481
483
|
|
482
484
|
added_file_refs = file_accessors.flat_map do |file_accessor|
|
483
|
-
target_odr_files_refs = Hash[file_accessor.on_demand_resources.map do |tag,
|
485
|
+
target_odr_files_refs = Hash[file_accessor.on_demand_resources.map do |tag, value|
|
484
486
|
tag_group = target_odr_group[tag] || target_odr_group.new_group(tag)
|
485
|
-
|
486
|
-
|
487
|
+
category_to_tags[value[:category]] ||= []
|
488
|
+
category_to_tags[value[:category]] << tag
|
489
|
+
resources_file_refs = value[:paths].map do |resource|
|
487
490
|
odr_resource_file_ref = Pathname.new(resource).relative_path_from(sandbox.root)
|
488
491
|
tag_group.find_file_by_path(odr_resource_file_ref.to_s) || tag_group.new_file(odr_resource_file_ref)
|
489
492
|
end
|
490
493
|
[tag, resources_file_refs]
|
491
494
|
end]
|
492
|
-
native_targets.each do |
|
493
|
-
|
495
|
+
native_targets.each do |native_target|
|
496
|
+
native_target.add_on_demand_resources(target_odr_files_refs)
|
494
497
|
end
|
495
498
|
target_odr_files_refs.values.flatten
|
496
499
|
end
|
@@ -506,10 +509,42 @@ module Pod
|
|
506
509
|
end
|
507
510
|
target_odr_group.recursive_children_groups.each { |g| g.remove_from_project if g.empty? }
|
508
511
|
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
512
|
+
attributes = project.root_object.attributes
|
513
|
+
attributes['KnownAssetTags'] = (attributes['KnownAssetTags'] ||= []) | category_to_tags.values.flatten
|
514
|
+
project.root_object.attributes = attributes
|
515
|
+
|
516
|
+
native_targets.each do |native_target|
|
517
|
+
update_on_demand_resources_build_settings(native_target, category_to_tags)
|
518
|
+
end
|
519
|
+
end
|
520
|
+
|
521
|
+
def update_on_demand_resources_build_settings(native_target, category_to_tags)
|
522
|
+
%w[ON_DEMAND_RESOURCES_INITIAL_INSTALL_TAGS ON_DEMAND_RESOURCES_PREFETCH_ORDER].each do |category_key|
|
523
|
+
native_target.build_configurations.each do |c|
|
524
|
+
key = case category_key
|
525
|
+
when 'ON_DEMAND_RESOURCES_INITIAL_INSTALL_TAGS'
|
526
|
+
:initial_install
|
527
|
+
when 'ON_DEMAND_RESOURCES_PREFETCH_ORDER'
|
528
|
+
:prefetched
|
529
|
+
else
|
530
|
+
:download_on_demand
|
531
|
+
end
|
532
|
+
tags_for_category = (c.build_settings[category_key] || '').split
|
533
|
+
category_to_tags_dup = category_to_tags.dup
|
534
|
+
tags_to_add = category_to_tags_dup.delete(key) || []
|
535
|
+
tags_to_delete = category_to_tags_dup.values.flatten
|
536
|
+
tags_for_category = (tags_for_category + tags_to_add - tags_to_delete).flatten.compact.uniq
|
537
|
+
if tags_for_category.empty?
|
538
|
+
val = c.build_settings.delete(category_key)
|
539
|
+
native_target.project.mark_dirty! unless val.nil?
|
540
|
+
else
|
541
|
+
tags = tags_for_category.join(' ')
|
542
|
+
unless c.build_settings[category_key] == tags
|
543
|
+
c.build_settings[category_key] = tags
|
544
|
+
native_target.project.mark_dirty!
|
545
|
+
end
|
546
|
+
end
|
547
|
+
end
|
513
548
|
end
|
514
549
|
end
|
515
550
|
end
|
@@ -596,10 +631,12 @@ module Pod
|
|
596
631
|
output_paths_by_config = {}
|
597
632
|
if use_input_output_paths
|
598
633
|
target.resource_paths_by_config.each do |config, resource_paths|
|
599
|
-
input_paths_key = XCFileListConfigKey.new(target.copy_resources_script_input_files_path(config),
|
634
|
+
input_paths_key = XCFileListConfigKey.new(target.copy_resources_script_input_files_path(config),
|
635
|
+
target.copy_resources_script_input_files_relative_path)
|
600
636
|
input_paths_by_config[input_paths_key] = [script_path] + resource_paths
|
601
637
|
|
602
|
-
output_paths_key = XCFileListConfigKey.new(target.copy_resources_script_output_files_path(config),
|
638
|
+
output_paths_key = XCFileListConfigKey.new(target.copy_resources_script_output_files_path(config),
|
639
|
+
target.copy_resources_script_output_files_relative_path)
|
603
640
|
output_paths_by_config[output_paths_key] = TargetIntegrator.resource_output_paths(resource_paths)
|
604
641
|
end
|
605
642
|
end
|
@@ -607,7 +644,9 @@ module Pod
|
|
607
644
|
native_targets.each do |native_target|
|
608
645
|
# Static library targets cannot include resources. Skip this phase from being added instead.
|
609
646
|
next if native_target.symbol_type == :static_library
|
610
|
-
TargetIntegrator.create_or_update_copy_resources_script_phase_to_target(native_target, script_path,
|
647
|
+
TargetIntegrator.create_or_update_copy_resources_script_phase_to_target(native_target, script_path,
|
648
|
+
input_paths_by_config,
|
649
|
+
output_paths_by_config)
|
611
650
|
end
|
612
651
|
end
|
613
652
|
|
@@ -720,8 +759,8 @@ module Pod
|
|
720
759
|
# The 'Pods' group would always be there for production code however for tests its sometimes not added.
|
721
760
|
# This ensures its always present and makes it easier for existing and new tests.
|
722
761
|
parent_odr_group = target.user_project.main_group['Pods'] || target.user_project.new_group('Pods')
|
723
|
-
TargetIntegrator.
|
724
|
-
|
762
|
+
TargetIntegrator.update_on_demand_resources(target.sandbox, target.user_project, target.user_targets,
|
763
|
+
library_file_accessors, parent_odr_group, target_odr_group_name)
|
725
764
|
end
|
726
765
|
end
|
727
766
|
|
@@ -62,7 +62,8 @@ module Pod
|
|
62
62
|
# @param [Hash] info_plist_entries see #info_plist_entries
|
63
63
|
# @param [String] product_basename see #product_basename
|
64
64
|
#
|
65
|
-
def initialize(sandbox, project, platform, subgroup_name, group_name, app_target_label, add_main: true,
|
65
|
+
def initialize(sandbox, project, platform, subgroup_name, group_name, app_target_label, add_main: true,
|
66
|
+
add_launchscreen_storyboard: platform == :ios, info_plist_entries: {}, product_basename: nil)
|
66
67
|
@sandbox = sandbox
|
67
68
|
@project = project
|
68
69
|
@platform = platform
|
@@ -271,17 +271,17 @@ module Pod
|
|
271
271
|
fa.spec.test_specification? && pod_target.test_app_hosts_by_spec[fa.spec]&.first == app_spec
|
272
272
|
end
|
273
273
|
target_odr_group_name = "#{pod_target.label}-OnDemandResources"
|
274
|
-
UserProjectIntegrator::TargetIntegrator.
|
275
|
-
|
276
|
-
|
274
|
+
UserProjectIntegrator::TargetIntegrator.update_on_demand_resources(target.sandbox, native_target.project,
|
275
|
+
native_target, file_accessors,
|
276
|
+
parent_odr_group, target_odr_group_name)
|
277
277
|
end
|
278
278
|
|
279
279
|
# Now add the ODRs of our own app spec declaration.
|
280
280
|
file_accessor = target.file_accessors.find { |fa| fa.spec == app_spec }
|
281
281
|
target_odr_group_name = "#{target.subspec_label(app_spec)}-OnDemandResources"
|
282
|
-
UserProjectIntegrator::TargetIntegrator.
|
283
|
-
|
284
|
-
|
282
|
+
UserProjectIntegrator::TargetIntegrator.update_on_demand_resources(target.sandbox, native_target.project,
|
283
|
+
native_target, file_accessor,
|
284
|
+
parent_odr_group, target_odr_group_name)
|
285
285
|
end
|
286
286
|
|
287
287
|
# @return [String] the message that should be displayed for the target
|
@@ -48,17 +48,23 @@ module Pod
|
|
48
48
|
# @param [Hash] additional_entries
|
49
49
|
# any additional entries to include in this Info.plist file.
|
50
50
|
#
|
51
|
+
# @param [String] build_setting_value
|
52
|
+
# an optional value to set for the `INFOPLIST_FILE` build setting on the
|
53
|
+
# native target. If none is specified then the value is calculated from the
|
54
|
+
# Info.plist path relative to the sandbox root.
|
55
|
+
#
|
51
56
|
# @return [void]
|
52
57
|
#
|
53
58
|
def create_info_plist_file_with_sandbox(sandbox, path, native_target, version, platform,
|
54
|
-
bundle_package_type = :fmwk, additional_entries: {}
|
59
|
+
bundle_package_type = :fmwk, additional_entries: {},
|
60
|
+
build_setting_value: nil)
|
55
61
|
UI.message "- Generating Info.plist file at #{UI.path(path)}" do
|
56
62
|
generator = Generator::InfoPlistFile.new(version, platform, bundle_package_type, additional_entries)
|
57
63
|
update_changed_file(generator, path)
|
58
64
|
|
59
|
-
|
65
|
+
build_setting_value ||= path.relative_path_from(sandbox.root).to_s
|
60
66
|
native_target.build_configurations.each do |c|
|
61
|
-
c.build_settings['INFOPLIST_FILE'] =
|
67
|
+
c.build_settings['INFOPLIST_FILE'] = build_setting_value
|
62
68
|
end
|
63
69
|
end
|
64
70
|
end
|
@@ -219,7 +219,7 @@ module Pod
|
|
219
219
|
file_accessors.map(&:preserve_paths),
|
220
220
|
file_accessors.map(&:readme),
|
221
221
|
file_accessors.map(&:resources),
|
222
|
-
file_accessors.
|
222
|
+
file_accessors.map(&:on_demand_resources_files),
|
223
223
|
file_accessors.map(&:source_files),
|
224
224
|
file_accessors.map(&:module_map),
|
225
225
|
]
|
@@ -334,20 +334,26 @@ module Pod
|
|
334
334
|
resource_bundles.values.flatten
|
335
335
|
end
|
336
336
|
|
337
|
-
# @return [Hash{String =>
|
338
|
-
# keyed by their tag.
|
337
|
+
# @return [Hash{String => Hash] The expanded paths of the on demand resources specified
|
338
|
+
# keyed by their tag including their category.
|
339
339
|
#
|
340
340
|
def on_demand_resources
|
341
341
|
result = {}
|
342
342
|
spec_consumer.on_demand_resources.each do |tag_name, file_patterns|
|
343
|
-
paths = expanded_paths(file_patterns,
|
343
|
+
paths = expanded_paths(file_patterns[:paths],
|
344
344
|
:exclude_patterns => spec_consumer.exclude_files,
|
345
345
|
:include_dirs => true)
|
346
|
-
result[tag_name] = paths
|
346
|
+
result[tag_name] = { :paths => paths, :category => file_patterns[:category] }
|
347
347
|
end
|
348
348
|
result
|
349
349
|
end
|
350
350
|
|
351
|
+
# @return [Array<Pathname>] The expanded paths of the on demand resources.
|
352
|
+
#
|
353
|
+
def on_demand_resources_files
|
354
|
+
on_demand_resources.values.flat_map { |v| v[:paths] }
|
355
|
+
end
|
356
|
+
|
351
357
|
# @return [Pathname] The of the prefix header file of the specification.
|
352
358
|
#
|
353
359
|
def prefix_header
|
@@ -71,12 +71,15 @@ module Pod
|
|
71
71
|
# The URL of the source.
|
72
72
|
#
|
73
73
|
def cdn_url?(url)
|
74
|
-
return unless url =~ %r{^https?:\/\/}
|
74
|
+
return false unless url =~ %r{^https?:\/\/}
|
75
75
|
|
76
76
|
uri_options = {}
|
77
77
|
|
78
78
|
netrc_info = Netrc.read
|
79
|
-
|
79
|
+
uri = URI.parse(url)
|
80
|
+
return false unless uri.userinfo.nil?
|
81
|
+
|
82
|
+
netrc_host = uri.host
|
80
83
|
credentials = netrc_info[netrc_host]
|
81
84
|
uri_options[:http_basic_authentication] = credentials if credentials
|
82
85
|
|
@@ -288,7 +288,7 @@ module Pod
|
|
288
288
|
@on_demand_resources ||= begin
|
289
289
|
pod_targets.flat_map do |pod_target|
|
290
290
|
library_file_accessors = pod_target.file_accessors.select { |fa| fa.spec.library_specification? }
|
291
|
-
library_file_accessors.flat_map
|
291
|
+
library_file_accessors.flat_map(&:on_demand_resources_files)
|
292
292
|
end.uniq
|
293
293
|
end
|
294
294
|
end
|
data/lib/cocoapods/validator.rb
CHANGED
@@ -583,12 +583,21 @@ module Pod
|
|
583
583
|
app_target = Pod::Generator::AppTargetHelper.add_app_target(app_project, consumer.platform_name, deployment_target)
|
584
584
|
sandbox = Sandbox.new(config.sandbox_root)
|
585
585
|
info_plist_path = app_project.path.dirname.+('App/App-Info.plist')
|
586
|
-
Pod::Installer::Xcode::PodsProjectGenerator::TargetInstallerHelper.create_info_plist_file_with_sandbox(sandbox,
|
586
|
+
Pod::Installer::Xcode::PodsProjectGenerator::TargetInstallerHelper.create_info_plist_file_with_sandbox(sandbox,
|
587
|
+
info_plist_path,
|
588
|
+
app_target,
|
589
|
+
'1.0.0',
|
590
|
+
Platform.new(consumer.platform_name),
|
591
|
+
:appl,
|
592
|
+
:build_setting_value => '$(SRCROOT)/App/App-Info.plist')
|
587
593
|
Pod::Generator::AppTargetHelper.add_swift_version(app_target, derived_swift_version)
|
588
|
-
# Lint will fail if a AppIcon is set but no image is found with such name
|
589
|
-
# Happens only with Static Frameworks enabled but shouldn't be set anyway
|
590
594
|
app_target.build_configurations.each do |config|
|
595
|
+
# Lint will fail if a AppIcon is set but no image is found with such name
|
596
|
+
# Happens only with Static Frameworks enabled but shouldn't be set anyway
|
591
597
|
config.build_settings.delete('ASSETCATALOG_COMPILER_APPICON_NAME')
|
598
|
+
# Ensure this is set generally but we have seen an issue with ODRs:
|
599
|
+
# see: https://github.com/CocoaPods/CocoaPods/issues/10933
|
600
|
+
config.build_settings['PRODUCT_BUNDLE_IDENTIFIER'] = 'org.cocoapods.${PRODUCT_NAME:rfc1034identifier}'
|
592
601
|
end
|
593
602
|
app_project.save
|
594
603
|
app_project.recreate_user_schemes
|
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: 1.11.
|
4
|
+
version: 1.11.1
|
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: 2021-
|
14
|
+
date: 2021-09-12 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: cocoapods-core
|
@@ -19,14 +19,14 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - '='
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.11.
|
22
|
+
version: 1.11.1
|
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: 1.11.
|
29
|
+
version: 1.11.1
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: claide
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -541,11 +541,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
541
541
|
version: '2.6'
|
542
542
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
543
543
|
requirements:
|
544
|
-
- - "
|
544
|
+
- - ">="
|
545
545
|
- !ruby/object:Gem::Version
|
546
|
-
version:
|
546
|
+
version: '0'
|
547
547
|
requirements: []
|
548
|
-
rubygems_version: 3.
|
548
|
+
rubygems_version: 3.0.9
|
549
549
|
signing_key:
|
550
550
|
specification_version: 4
|
551
551
|
summary: The Cocoa library package manager.
|