Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ let package = Package(
],
dependencies: [
.package(url: "https://github.com/apple/swift-protobuf.git", exact: "1.30.0"),
.package(url: "https://github.com/GetStream/stream-video-swift-webrtc.git", exact: "145.8.0")
.package(url: "https://github.com/GetStream/stream-video-swift-webrtc.git", exact: "148.0.0")
],
targets: [
.target(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ extension SystemEnvironment {
/// A Stream Video version.
public static let version: String = "1.50.0-SNAPSHOT"
/// The WebRTC version.
public static let webRTCVersion: String = "145.8.0"
public static let webRTCVersion: String = "148.0.0"
}
2 changes: 1 addition & 1 deletion StreamVideo-XCFramework.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Pod::Spec.new do |spec|

spec.prepare_command = <<-CMD
mkdir -p Frameworks/
curl -sL "https://github.com/GetStream/stream-video-swift-webrtc/releases/download/145.8.0/StreamWebRTC.xcframework.zip" -o Frameworks/StreamWebRTC.zip
curl -sL "https://github.com/GetStream/stream-video-swift-webrtc/releases/download/148.0.0/StreamWebRTC.xcframework.zip" -o Frameworks/StreamWebRTC.zip

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Inspect the relevant podspecs around the cited lines.
for f in StreamVideo-XCFramework.podspec StreamVideo.podspec; do
  echo "===== $f ====="
  nl -ba "$f" | sed -n '1,120p'
  echo
done

# Locate all WebRTC download/extraction commands and any checksum handling.
rg -n --hidden --no-ignore-vcs -S \
  'curl -sL|curl --fail|sha256|shasum|openssl dgst|prepare_command|StreamWebRTC\.xcframework\.zip|StreamWebRTC\.zip' \
  StreamVideo-XCFramework.podspec StreamVideo.podspec

Repository: GetStream/stream-video-swift

Length of output: 250


🏁 Script executed:

#!/bin/bash
set -euo pipefail

python3 - <<'PY'
from pathlib import Path

files = ["StreamVideo-XCFramework.podspec", "StreamVideo.podspec"]
for f in files:
    print(f"===== {f} =====")
    lines = Path(f).read_text().splitlines()
    for i, line in enumerate(lines, 1):
        if "curl -sL" in line or "prepare_command" in line or "sha256" in line or "StreamWebRTC" in line:
            start = max(1, i - 4)
            end = min(len(lines), i + 6)
            for j in range(start, end + 1):
                print(f"{j:4}: {lines[j-1]}")
            print()
PY

rg -n -S 'curl -sL|curl --fail|sha256|shasum|openssl dgst|prepare_command|StreamWebRTC\.xcframework\.zip|StreamWebRTC\.zip' \
  StreamVideo-XCFramework.podspec StreamVideo.podspec

Repository: GetStream/stream-video-swift

Length of output: 5524


🏁 Script executed:

#!/bin/bash
set -euo pipefail

python3 - <<'PY'
import urllib.request

url = "https://raw.githubusercontent.com/GetStream/stream-video-swift-webrtc/148.0.0/Package.swift"
print("FETCH", url)
data = urllib.request.urlopen(url, timeout=20).read().decode("utf-8")
for needle in ["acc7330ece327c68dfa5b90d82c49dcec9847ef13b1a6b989c0a2de16d9e1ff0", "StreamWebRTC.xcframework.zip"]:
    idx = data.find(needle)
    print(needle, "FOUND" if idx != -1 else "NOT_FOUND")
    if idx != -1:
        start = max(0, idx - 120)
        end = min(len(data), idx + 120)
        print(data[start:end])
        print()
PY

Repository: GetStream/stream-video-swift

Length of output: 2858


🌐 Web query:

GetStream stream-video-swift-webrtc 148.0.0 Package.swift checksum StreamWebRTC.xcframework.zip acc7330ece327c68dfa5b90d82c49dcec9847ef13b1a6b989c0a2de16d9e1ff0

💡 Result:

As of July 13, 2026, there is no official GetStream stream-video-swift-webrtc release version 148.0.0 [1][2]. The latest releases in the GetStream WebRTC repository track specific WebRTC versions (e.g., version 145.10.0 was released on June 10, 2026) [2]. Additionally, the checksum acc7330ece327c68dfa5b90d82c49dcec9847ef13b1a6b989c0a2de16d9e1ff0 does not correspond to any known StreamWebRTC.xcframework.zip file in the GetStream ecosystem [3][1][2]. The provided string appears unrelated to the standard Swift Package Manager checksums used by the GetStream SDK, which are typically associated with specific binary release assets on GitHub [3][2]. If you are encountering this checksum or version number in a project configuration, it may be a manual error, an unofficial patch, or a misconfiguration. It is recommended to use the official versions and checksums provided in the GetStream releases page [1].

Citations:


Harden both WebRTC download steps. StreamVideo-XCFramework.podspec#L25-L29 and StreamVideo.podspec#L26-L30 still download and unzip the archive without --fail or checksum validation; add fail-closed curl handling and verify the zip before extraction.

📍 Affects 2 files
  • StreamVideo-XCFramework.podspec#L27-L27 (this comment)
  • StreamVideo.podspec#L28-L28
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@StreamVideo-XCFramework.podspec` at line 27, Harden the WebRTC archive
download and extraction steps in StreamVideo-XCFramework.podspec lines 25-29 and
StreamVideo.podspec lines 26-30: make both curl commands fail on HTTP errors and
validate the downloaded zip against a trusted checksum before unzipping,
aborting on any failure. Keep the existing archive source and extraction flow
otherwise unchanged.

unzip -o Frameworks/StreamWebRTC.zip -d Frameworks/
rm Frameworks/StreamWebRTC.zip
CMD
Expand Down
2 changes: 1 addition & 1 deletion StreamVideo.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Pod::Spec.new do |spec|

spec.prepare_command = <<-CMD
mkdir -p Frameworks/
curl -sL "https://github.com/GetStream/stream-video-swift-webrtc/releases/download/145.8.0/StreamWebRTC.xcframework.zip" -o Frameworks/StreamWebRTC.zip
curl -sL "https://github.com/GetStream/stream-video-swift-webrtc/releases/download/148.0.0/StreamWebRTC.xcframework.zip" -o Frameworks/StreamWebRTC.zip
unzip -o Frameworks/StreamWebRTC.zip -d Frameworks/
rm Frameworks/StreamWebRTC.zip
CMD
Expand Down
2 changes: 1 addition & 1 deletion StreamVideo.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3317,7 +3317,7 @@
repositoryURL = "https://github.com/GetStream/stream-video-swift-webrtc.git";
requirement = {
kind = exactVersion;
version = 145.8.0;
version = 148.0.0;
};
};
40F445C32A9E1D91004BE3DA /* XCRemoteSwiftPackageReference "stream-chat-swift-test-helpers" */ = {
Expand Down
Loading