pod-builder 4.4.4 → 4.4.5

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
  SHA256:
3
- metadata.gz: b997b0b093cce5c58a5b3f7b169bc9c0bf56f7bf45c4305677d5225bcb601fde
4
- data.tar.gz: 0dd7183f48fcb9cee574f52b07f1879d027546eaf73f4994455c10c44d4baa9a
3
+ metadata.gz: 206523829a1e643a482035efc05301e608b0516278c4f7edf8de424bc5fc5437
4
+ data.tar.gz: 6b4297d656723d6f73bf2f0972485b9e2fcb717937a86e1191f943e69f4042da
5
5
  SHA512:
6
- metadata.gz: 66f9bf382df640e48f48511d92b78459ffb55a00b66569143b22aa3731393477531c4519911556da40be04cd95a0b31ce68c3d17bb443234e733267b49ef638e
7
- data.tar.gz: ad206eebf7ccf4e21d0d5bc990a70bcfb34877863741621f2b0fc545c737991b20baf39aef09791fc114dadfecd1378d065d3ce16163d69ef7c893d9c620cc3b
6
+ metadata.gz: 4ce7485f856f3be1f1b0f2a9a96144c9fe9eaadb1ccfd8d0db0be8019cb24e598a917baf376aaee6b5ef6c0a89f79228125e5b5cec75fd6b415cb4bd01878e0c
7
+ data.tar.gz: 6e1a110a204c3cb7e41803590743b6c5f1515ad16aafa0f05afd7ad167853f700d8029b18aec423dae2f3efe6ec22e822a653e3afc2b455835c3446666dab749
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- ruby '2.6.3'
3
+ ruby '3.0.3'
4
4
 
5
5
  git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
6
6
 
data/README.md CHANGED
@@ -371,6 +371,10 @@ PodBuilder leverages CocoaPods to compile pods into frameworks. Every compiled f
371
371
 
372
372
  # FAQ
373
373
 
374
+ ### **I get an _'Failed getting 'DEVELOPMENT_TEAM' build setting'_ when building**
375
+
376
+ PodBuilder might fail to automatically extract the developer team from your current project which is required to sign executables. Add the `development_team` key in PodBuilder.json file with your development team identifier.
377
+
374
378
  ### **I get an _'`PodWithError` does not specify a Swift version and none of the targets (`DummyTarget`)'_ when building**
375
379
 
376
380
  The podspec of the Pod you're trying to build doesn't specify the swift_version which is required in recent versions of CocoaPods. Either contact the author/mantainer of the Pod asking it to fix the podspec or add a `spec_overrides` in _PodBuilder.json_.
@@ -77,6 +77,7 @@ module PodBuilder
77
77
  attr_accessor :build_xcframeworks_exclude
78
78
  attr_accessor :pre_actions
79
79
  attr_accessor :post_actions
80
+ attr_accessor :development_team
80
81
  end
81
82
 
82
83
  @build_settings = DEFAULT_BUILD_SETTINGS
@@ -116,6 +117,8 @@ module PodBuilder
116
117
 
117
118
  @pre_actions = {}
118
119
  @post_actions = {}
120
+
121
+ @development_team = ""
119
122
 
120
123
  def self.check_inited
121
124
  raise "\n\nNot inited, run `pod_builder init`\n".red if podbuilder_path.nil?
@@ -244,6 +247,11 @@ module PodBuilder
244
247
  Configuration.post_actions = PodBuilder::Actions.load(value)
245
248
  end
246
249
  end
250
+ if value = json["development_team"]
251
+ if value.is_a?(String) && value.length > 0
252
+ Configuration.development_team = value
253
+ end
254
+ end
247
255
 
248
256
  Configuration.build_settings.freeze
249
257
 
@@ -288,6 +296,7 @@ module PodBuilder
288
296
  config["deterministic_build"] = Configuration.deterministic_build
289
297
  config["build_using_repo_paths"] = Configuration.build_using_repo_paths
290
298
  config["react_native_project"] = Configuration.react_native_project
299
+ config["development_team"] = Configuration.development_team
291
300
 
292
301
  File.write(config_path, JSON.pretty_generate(config))
293
302
  end
@@ -8,6 +8,18 @@ module PodBuilder
8
8
  def self.from_podfile_items(items, analyzer, build_configuration, install_using_frameworks, build_catalyst, build_xcframeworks)
9
9
  raise "\n\nno items\n".red unless items.count > 0
10
10
 
11
+ # Xcode 14 requires a development team to be specified for the compilation to succeed
12
+ development_team = Configuration::development_team
13
+ if development_team.empty?
14
+ project_path = "#{PodBuilder.project_path}/#{Configuration::project_name}.xcodeproj"
15
+ development_team = `grep -rh 'DEVELOPMENT_TEAM' '#{project_path}' | uniq`.strip
16
+ development_team_match = development_team.match(/DEVELOPMENT_TEAM = (.+);/)
17
+ if development_team.split("\n").count != 1 || development_team_match&.size != 2
18
+ raise "\n\nFailed getting 'DEVELOPMENT_TEAM' build setting, please add your development team to #{PodBuilder::basepath(Configuration.configuration_filename)} as per documentation".red
19
+ end
20
+ development_team = development_team_match[1]
21
+ end
22
+
11
23
  sources = analyzer.sources
12
24
 
13
25
  cwd = File.dirname(File.expand_path(__FILE__))
@@ -27,10 +39,12 @@ module PodBuilder
27
39
 
28
40
  podfile.sub!("%%%build_configuration%%%", build_configuration.capitalize)
29
41
 
42
+ podfile.sub!("%%%development_team%%%", development_team)
43
+
30
44
  podfile_build_settings = ""
31
45
 
32
46
  pod_dependencies = {}
33
-
47
+
34
48
  items.each do |item|
35
49
  build_settings = Configuration.build_settings.dup
36
50
 
@@ -378,9 +378,16 @@ Pod::HooksManager.register('podbuilder-rome', :post_install) do |installer_conte
378
378
  module_name = File.basename(built_item_paths.first, ".*")
379
379
  spec = specs.detect { |t| t.module_name == module_name }
380
380
 
381
+ # There seems to be a potential bug in CocoaPods-Core (https://github.com/CocoaPods/Core/issues/730)
382
+ if spec.nil?
383
+ # Given the above issue when all specs of a pod are subspecs (e.g. specs contains Pod1/Subspec1, Pod1/Subspec2, ...) we'll fail getting the correct specification by relying on module name
384
+ spec = specs.detect { |t| t.name.split("/").first == module_name }
385
+ end
386
+
381
387
  next if spec.nil?
382
388
 
383
- xcframework_path = "#{base_destination}/#{spec.name}/#{module_name}.xcframework"
389
+ root_name = spec.name.split("/").first
390
+ xcframework_path = "#{base_destination}/#{root_name}/#{module_name}.xcframework"
384
391
  framework_params = built_item_paths.map { |t| "-framework '#{t}'"}.join(" ")
385
392
  raise "\n\nFailed packing xcframework!\n".red if !system("xcodebuild -create-xcframework #{framework_params} -output '#{xcframework_path}' > /dev/null 2>&1")
386
393
 
@@ -68,3 +68,13 @@ pre_install do |installer|
68
68
  Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
69
69
  Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_duplicate_framework_and_library_names) {}
70
70
  end
71
+
72
+ post_install do |installer|
73
+ installer.pods_project.targets.each do |target|
74
+ target.build_configurations.each do |config|
75
+ config.build_settings['DEVELOPMENT_TEAM'] = '%%%development_team%%%'
76
+ end
77
+ end
78
+
79
+ installer.pods_project.save
80
+ end
@@ -1,3 +1,3 @@
1
1
  module PodBuilder
2
- VERSION = "4.4.4"
2
+ VERSION = "4.4.5"
3
3
  end
data/pod-builder.gemspec CHANGED
@@ -25,8 +25,8 @@ Gem::Specification.new do |spec|
25
25
 
26
26
  spec.add_development_dependency "bundler", "~> 2.0"
27
27
  spec.add_development_dependency "rake", ">= 12.3.3"
28
- spec.add_development_dependency "ruby-debug-ide", '0.6.1'
29
- spec.add_development_dependency "debase", '0.2.2'
28
+ spec.add_development_dependency "ruby-debug-ide"
29
+ spec.add_development_dependency "debase", '0.2.5.beta2'
30
30
 
31
31
  spec.add_runtime_dependency 'xcodeproj'
32
32
  spec.add_runtime_dependency 'colored'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pod-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.4
4
+ version: 4.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tomas Camin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-17 00:00:00.000000000 Z
11
+ date: 2022-07-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -42,30 +42,30 @@ dependencies:
42
42
  name: ruby-debug-ide
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.6.1
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 0.6.1
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: debase
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 0.2.2
61
+ version: 0.2.5.beta2
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 0.2.2
68
+ version: 0.2.5.beta2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: xcodeproj
71
71
  requirement: !ruby/object:Gem::Requirement