Fix pod install: git-pin LiveKitWebRTC 144.7559.11 too (last SPM-only binary)

LiveKitClient + LiveKitUniFFI now pre-download OK; the last unresolved dep is
LiveKitWebRTC (= 144.7559.11), also SPM-only (CDN only has 125.x). Its repo ships
a podspec at that tag with NO further deps, but its source is an :http release-zip
(not in the git tree), so we pin via :podspec => <podspec URL> (not :git, which
would clone a repo with no xcframework). SwiftProtobuf resolves from the CDN. This
should complete resolution for LiveKit 2.15.3 on CocoaPods.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-08-01 00:16:59 +05:30
parent 21430bd590
commit 8c737372de
+9 -5
View File
@@ -137,15 +137,19 @@ if [ -f "$PODFILE" ]; then
ruby -e '
p = "mobile/ios/App/Podfile"
s = File.read(p)
# LiveKitClient 2.15.3 depends on LiveKitUniFFI (= 0.0.6), which is NOT on the CocoaPods CDN (SPM-only),
# so we ALSO pin it to its git tag (its podspec at 0.0.6 has no further deps — just downloads its
# prebuilt XCFramework). LiveKitWebRTC 144.x + SwiftProtobuf resolve from the CDN normally.
# LiveKit 2.15.3 pulls two binary deps that are SPM-only (NOT on the CocoaPods CDN), so we pin each to
# its own repo podspec (neither has further deps):
# * LiveKitUniFFI 0.0.6 — podspec has a :git source + prepare_command that downloads its xcframework, so :git works.
# * LiveKitWebRTC 144.7559.11 — podspec has an :http source (release-zip), NOT in the git tree, so we
# point at the podspec URL with :podspec (using :git would clone a repo with no xcframework and fail).
# SwiftProtobuf (the only other dep) resolves from the CDN normally.
pin = " pod \x27LiveKitClient\x27, :git => \x27https://github.com/livekit/client-sdk-swift.git\x27, :tag => \x272.15.3\x27\n" +
" pod \x27LiveKitUniFFI\x27, :git => \x27https://github.com/livekit/livekit-uniffi-xcframework.git\x27, :tag => \x270.0.6\x27\n"
" pod \x27LiveKitUniFFI\x27, :git => \x27https://github.com/livekit/livekit-uniffi-xcframework.git\x27, :tag => \x270.0.6\x27\n" +
" pod \x27LiveKitWebRTC\x27, :podspec => \x27https://raw.githubusercontent.com/livekit/webrtc-xcframework/144.7559.11/LiveKitWebRTC.podspec\x27\n"
if s =~ /target ["\x27]App["\x27] do\n/
s = s.sub(/target ["\x27]App["\x27] do\n/) { |m| m + pin }
File.write(p, s)
puts "Podfile: pinned LiveKitClient 2.15.3 + LiveKitUniFFI 0.0.6 (git tags)"
puts "Podfile: pinned LiveKitClient 2.15.3 + LiveKitUniFFI 0.0.6 + LiveKitWebRTC 144.7559.11"
else
STDERR.puts "WARN: could not find \"target App do\" in Podfile — LiveKit pin NOT applied"
exit 1