cocoapods-binary-artifactory-cache 0.0.2 → 0.0.6
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b4cfc2fff39aee0f9265546c438f2aa6126ef39bfa1f1f0efe79306a8d62246a
|
4
|
+
data.tar.gz: 4b3da62440e42f152100015119aa58f0298f359783ad909a4c754ef1380c84ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23da6af76fe38360a654ca34afc3041cd07f777f0d28b36b0d29c6ca1f2406bdb80ce9a3154ea0a5745c7a28bf16c2208894b98d4386c153cc3a226c465edf11
|
7
|
+
data.tar.gz: ddab146341a0502353fbcf091ae21ea102458a6df055a8812499e53e12fe73d2376b15926a2bcbd34e23dccd7972347c7a4db4826ff2e95edc350462a8c59fcf
|
@@ -30,6 +30,7 @@ module PodPrebuild
|
|
30
30
|
collect_output(target, Dir[target_products_dir_of(target, sdks[0]) + "/*"])
|
31
31
|
end
|
32
32
|
end
|
33
|
+
fix_swiftinterface_files(targets)
|
33
34
|
end
|
34
35
|
|
35
36
|
private
|
@@ -66,7 +67,9 @@ module PodPrebuild
|
|
66
67
|
args_[:simulator] ||= []
|
67
68
|
args_[:device] ||= []
|
68
69
|
args_[:default].prepend("BITCODE_GENERATION_MODE=bitcode") if bitcode_enabled?
|
70
|
+
args_[:default].prepend("DEBUG_INFORMATION_FORMAT=dwarf-with-dsym") unless disable_dsym?
|
69
71
|
args_[:default].prepend("DEBUG_INFORMATION_FORMAT=dwarf") if disable_dsym?
|
72
|
+
args_[:default].prepend("BUILD_LIBRARY_FOR_DISTRIBUTION=YES")
|
70
73
|
args_[:simulator].prepend("ARCHS=x86_64", "ONLY_ACTIVE_ARCH=NO") if simulator == "iphonesimulator"
|
71
74
|
args_[:simulator] += args_[:default]
|
72
75
|
args_[:device].prepend("ONLY_ACTIVE_ARCH=NO")
|
@@ -97,8 +100,9 @@ module PodPrebuild
|
|
97
100
|
output = "#{output_path(target)}/#{target.product_module_name}.xcframework"
|
98
101
|
FileUtils.rm_rf(output)
|
99
102
|
|
100
|
-
cmd = ["xcodebuild", "-create-xcframework"
|
101
|
-
|
103
|
+
cmd = ["xcodebuild", "-create-xcframework"]
|
104
|
+
# -allow-internal-distribution
|
105
|
+
#
|
102
106
|
# for each sdk, the order of params must be -framework then -debug-symbols
|
103
107
|
# to prevent duplicated file error when copying dSYMs
|
104
108
|
sdks.each do |sdk|
|
@@ -123,6 +127,21 @@ module PodPrebuild
|
|
123
127
|
`#{cmd.join(" ")}`
|
124
128
|
end
|
125
129
|
|
130
|
+
def fix_swiftinterface_files(targets)
|
131
|
+
targets.each do |target|
|
132
|
+
escapedPod = target.product_module_name.gsub('/', '\/')
|
133
|
+
# replace when framework and class in framework with the same name
|
134
|
+
replaceString1 = "-e '/^import/! s/ #{escapedPod}\\./ /g'" #remove framework name in swiftinterface of it frameworkd
|
135
|
+
replaceString2 = "-e 's/\(#{escapedPod}\\./(/g'"
|
136
|
+
replaceString3 = "-e 's/\\[#{escapedPod}\\./[/g'"
|
137
|
+
replaceString4 = "-e 's/<#{escapedPod}\\./</g'"
|
138
|
+
`find "#{output_path(target)}/#{target.product_module_name}.xcframework" -name '*.swiftinterface' -exec sed -i -e #{replaceString1} #{replaceString2} #{replaceString3} #{replaceString4} {} \\\;`
|
139
|
+
end
|
140
|
+
#remove dublication name in other frameworks
|
141
|
+
replaceString = targets.map { |x| x.product_module_name }.uniq().map{ |x| x.gsub('/', '\/')}.map{|x| "-e 's/#{x}\\.#{x}/#{x}/g'"}.join(' ')
|
142
|
+
`find #{@options[:output_path]} -name '*.swiftinterface' -exec sed -i -e #{replaceString} {} \\\;`
|
143
|
+
end
|
144
|
+
|
126
145
|
def create_fat_framework(target)
|
127
146
|
# When merging contents of `simulator` & `device`, prefer contents of `device` over `simulator`
|
128
147
|
# https://github.com/grab/cocoapods-binary-cache/issues/25
|
@@ -9,6 +9,7 @@ module PodPrebuild
|
|
9
9
|
|
10
10
|
def initialize(options)
|
11
11
|
super(options)
|
12
|
+
@repo_update = options[:repo_update]
|
12
13
|
end
|
13
14
|
|
14
15
|
def run
|
@@ -20,7 +21,7 @@ module PodPrebuild
|
|
20
21
|
lockfile: installer.lockfile,
|
21
22
|
cache_validation: nil
|
22
23
|
)
|
23
|
-
|
24
|
+
@binary_installer.repo_update = @repo_update
|
24
25
|
Pod::UI.title("Generate Manifest") do
|
25
26
|
@binary_installer.clean_delta_file
|
26
27
|
@binary_installer.install!
|
data/lib/command/fetch.rb
CHANGED
@@ -6,6 +6,12 @@ module Pod
|
|
6
6
|
class Binary < Command
|
7
7
|
class Fetch < Binary
|
8
8
|
self.arguments = [CLAide::Argument.new("CACHE-BRANCH", false)]
|
9
|
+
def self.options
|
10
|
+
[
|
11
|
+
["--repo-update", "Update pod repo before installing"]
|
12
|
+
].concat(super)
|
13
|
+
end
|
14
|
+
|
9
15
|
def initialize(argv)
|
10
16
|
super
|
11
17
|
unless ENV['ARTIFACTORY_LOGIN'].nil? && ENV['ARTIFACTORY_PASSWORD'].nil?
|
@@ -28,6 +34,7 @@ module Pod
|
|
28
34
|
)
|
29
35
|
@fetcher = PodPrebuild::CacheFetcher.new(
|
30
36
|
config: prebuild_config,
|
37
|
+
repo_update: argv.flag?("repo-update")
|
31
38
|
)
|
32
39
|
end
|
33
40
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-binary-artifactory-cache
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eugene Antropov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cocoapods
|
@@ -199,7 +199,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
199
199
|
- !ruby/object:Gem::Version
|
200
200
|
version: '0'
|
201
201
|
requirements: []
|
202
|
-
rubygems_version: 3.
|
202
|
+
rubygems_version: 3.3.5
|
203
203
|
signing_key:
|
204
204
|
specification_version: 4
|
205
205
|
summary: Reduce build time by building pod frameworks and cache it in artifactory
|