cocoapods 1.9.0.beta.3 → 1.9.0
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 24f875616a403c4ddb34d0a8b7af2f7d8d63ba851fe9ff6d6fc84200a51ee373
|
4
|
+
data.tar.gz: 5e279cf00975ca84acc690b8aa7a731d53e676ca0143d570d1e7bbcbaa4c02ba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: de961666641f51fbf193e6fd9918b4d1eb0c4faf047fd6ac81379257ce6883feaafbcf235847e3442110c2432da7cf9a8f3539f1999804ab2045cd762878ef02
|
7
|
+
data.tar.gz: 4a498dbb1231ec3a6162e86064956b00f198dc483be6838bf9b8236fa2573fac5b65f566f7ae71eaff50231f214b043a191790ef802a278135d3920e5360b54a
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,23 @@ To install or update CocoaPods see this [guide](http://docs.cocoapods.org/guides
|
|
4
4
|
|
5
5
|
To install release candidates run `[sudo] gem install cocoapods --pre`
|
6
6
|
|
7
|
+
## 1.9.0 (2020-02-25)
|
8
|
+
|
9
|
+
##### Enhancements
|
10
|
+
|
11
|
+
* None.
|
12
|
+
|
13
|
+
##### Bug Fixes
|
14
|
+
|
15
|
+
* Also apply Xcode 11 `XCTUnwrap` fix to library and framework targets that weakly link `XCTest`.
|
16
|
+
[Dimitris Koutsogiorgas](https://github.com/dnkoutso)
|
17
|
+
[#9518](https://github.com/CocoaPods/CocoaPods/pull/9518)
|
18
|
+
|
19
|
+
* Fix dSYM handling for XCFrameworks.
|
20
|
+
[Eric Amorde](https://github.com/amorde)
|
21
|
+
[#9530](https://github.com/CocoaPods/CocoaPods/issues/9530)
|
22
|
+
|
23
|
+
|
7
24
|
## 1.9.0.beta.3 (2020-02-04)
|
8
25
|
|
9
26
|
##### Enhancements
|
@@ -129,27 +129,29 @@ module Pod
|
|
129
129
|
# Copies and strips a vendored dSYM
|
130
130
|
install_dsym() {
|
131
131
|
local source="$1"
|
132
|
+
warn_missing_arch=${2:-true}
|
132
133
|
if [ -r "$source" ]; then
|
133
|
-
# Copy the dSYM into
|
134
|
+
# Copy the dSYM into the targets temp dir.
|
134
135
|
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${source}\\" \\"${DERIVED_FILES_DIR}\\""
|
135
136
|
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}"
|
136
137
|
|
137
138
|
local basename
|
138
|
-
basename="$(basename -s .
|
139
|
-
|
139
|
+
basename="$(basename -s .dSYM "$source")"
|
140
|
+
binary_name="$(ls "$source/Contents/Resources/DWARF")"
|
141
|
+
binary="${DERIVED_FILES_DIR}/${basename}.dSYM/Contents/Resources/DWARF/${binary_name}"
|
140
142
|
|
141
143
|
# Strip invalid architectures so "fat" simulator / device frameworks work on device
|
142
144
|
if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then
|
143
|
-
strip_invalid_archs "$binary"
|
145
|
+
strip_invalid_archs "$binary" "$warn_missing_arch"
|
144
146
|
fi
|
145
147
|
|
146
148
|
if [[ $STRIP_BINARY_RETVAL == 1 ]]; then
|
147
149
|
# Move the stripped file into its final destination.
|
148
150
|
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\\" \\"${DWARF_DSYM_FOLDER_PATH}\\""
|
149
|
-
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.
|
151
|
+
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.dSYM" "${DWARF_DSYM_FOLDER_PATH}"
|
150
152
|
else
|
151
153
|
# The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing.
|
152
|
-
touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.
|
154
|
+
touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.dSYM"
|
153
155
|
fi
|
154
156
|
fi
|
155
157
|
}
|
@@ -180,13 +182,16 @@ module Pod
|
|
180
182
|
# Strip invalid architectures
|
181
183
|
strip_invalid_archs() {
|
182
184
|
binary="$1"
|
185
|
+
warn_missing_arch=${2:-true}
|
183
186
|
# Get architectures for current target binary
|
184
187
|
binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)"
|
185
188
|
# Intersect them with the architectures we are building for
|
186
189
|
intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\\n' | sort | uniq -d)"
|
187
190
|
# If there are no archs supported by this binary then warn the user
|
188
191
|
if [[ -z "$intersected_archs" ]]; then
|
189
|
-
|
192
|
+
if [[ "$warn_missing_arch" == "true" ]]; then
|
193
|
+
echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)."
|
194
|
+
fi
|
190
195
|
STRIP_BINARY_RETVAL=0
|
191
196
|
return
|
192
197
|
fi
|
@@ -212,7 +217,8 @@ module Pod
|
|
212
217
|
install_framework "$artifact"
|
213
218
|
;;
|
214
219
|
*.dSYM)
|
215
|
-
|
220
|
+
# Suppress arch warnings since XCFrameworks will include many dSYM files
|
221
|
+
install_dsym "$artifact" "false"
|
216
222
|
;;
|
217
223
|
*.bcsymbolmap)
|
218
224
|
install_bcsymbolmap "$artifact"
|
@@ -259,6 +265,18 @@ module Pod
|
|
259
265
|
SH
|
260
266
|
script
|
261
267
|
end
|
268
|
+
|
269
|
+
# @param [Xcode::FrameworkPaths] framework_path
|
270
|
+
# the framework path containing the dSYM
|
271
|
+
#
|
272
|
+
# @return [String, Nil] the name of the dSYM binary, if found
|
273
|
+
#
|
274
|
+
def dsym_binary_name(framework_path)
|
275
|
+
return nil if framework_path.dsym_path.nil?
|
276
|
+
if (path = Pathname.glob(framework_path.dsym_path.join('Contents/Resources/DWARF', '**/*')).first)
|
277
|
+
File.basename(path)
|
278
|
+
end
|
279
|
+
end
|
262
280
|
end
|
263
281
|
end
|
264
282
|
end
|
@@ -136,7 +136,8 @@ module Pod
|
|
136
136
|
|
137
137
|
install_xcframework() {
|
138
138
|
local basepath="$1"
|
139
|
-
local
|
139
|
+
local dsym_folder="$2"
|
140
|
+
local embed="$3"
|
140
141
|
shift
|
141
142
|
local paths=("$@")
|
142
143
|
|
@@ -165,6 +166,17 @@ module Pod
|
|
165
166
|
fi
|
166
167
|
|
167
168
|
install_framework "$basepath/$target_path" "$embed"
|
169
|
+
|
170
|
+
if [[ -z "$dsym_folder" || ! -d "$dsym_folder" ]]; then
|
171
|
+
return
|
172
|
+
fi
|
173
|
+
|
174
|
+
dsyms=($(ls "$dsym_folder"))
|
175
|
+
|
176
|
+
local target_dsym=""
|
177
|
+
for i in ${!dsyms[@]}; do
|
178
|
+
install_artifact "$dsym_folder/${dsyms[$i]}" "$CONFIGURATION_BUILD_DIR" "true"
|
179
|
+
done
|
168
180
|
}
|
169
181
|
|
170
182
|
SH
|
@@ -186,12 +198,6 @@ module Pod
|
|
186
198
|
args = install_xcframework_args(xcframework.path, static_slices, true)
|
187
199
|
contents_by_config[config] << %( install_xcframework #{args}\n)
|
188
200
|
end
|
189
|
-
|
190
|
-
dsyms = PrepareArtifactsScript.dsym_paths(xcframework.path)
|
191
|
-
dsyms.each do |path|
|
192
|
-
source = shell_escape("${PODS_ROOT}/#{path.relative_path_from(sandbox_root)}")
|
193
|
-
contents_by_config[config] << %( install_artifact #{source} "${TARGET_BUILD_DIR}" "true"\n)
|
194
|
-
end
|
195
201
|
end
|
196
202
|
end
|
197
203
|
|
@@ -215,6 +221,12 @@ module Pod
|
|
215
221
|
|
216
222
|
def install_xcframework_args(root, slices, static)
|
217
223
|
args = [shell_escape("${PODS_ROOT}/#{root.relative_path_from(sandbox_root)}")]
|
224
|
+
dsym_folder_arg = if (dsym_folder = PrepareArtifactsScript.dsym_folder(root))
|
225
|
+
shell_escape("${PODS_ROOT}/#{dsym_folder.relative_path_from(sandbox_root)}")
|
226
|
+
else
|
227
|
+
'""'
|
228
|
+
end
|
229
|
+
args << dsym_folder_arg
|
218
230
|
embed = static ? 'false' : 'true'
|
219
231
|
args << shell_escape(embed)
|
220
232
|
slices.each do |slice|
|
@@ -229,14 +241,11 @@ module Pod
|
|
229
241
|
#
|
230
242
|
# @return [Array<Pathname>] all found .dSYM paths
|
231
243
|
#
|
232
|
-
def
|
244
|
+
def dsym_folder(xcframework_path)
|
233
245
|
basename = File.basename(xcframework_path, '.xcframework')
|
234
246
|
dsym_basename = basename + '.dSYMs'
|
235
247
|
path = xcframework_path.dirname + dsym_basename
|
236
|
-
|
237
|
-
|
238
|
-
pattern = path + '*.dSYM'
|
239
|
-
Dir.glob(pattern).map { |s| Pathname.new(s) }
|
248
|
+
Pathname.new(path) if File.directory?(path)
|
240
249
|
end
|
241
250
|
end
|
242
251
|
end
|
@@ -992,7 +992,7 @@ module Pod
|
|
992
992
|
library_xcconfig? &&
|
993
993
|
target.platform.name == :ios &&
|
994
994
|
Version.new(target.platform.deployment_target) < Version.new('12.2') &&
|
995
|
-
frameworks_to_import.include?('XCTest')
|
995
|
+
(frameworks_to_import + weak_frameworks_to_import).uniq.include?('XCTest')
|
996
996
|
end
|
997
997
|
|
998
998
|
#-------------------------------------------------------------------------#
|
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.9.0
|
4
|
+
version: 1.9.0
|
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: 2020-02-
|
14
|
+
date: 2020-02-25 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.9.0
|
22
|
+
version: 1.9.0
|
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.9.0
|
29
|
+
version: 1.9.0
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: claide
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|