Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Swift6 Migration]Fix CallKit crash #687

Conversation

ipavlidakis
Copy link
Contributor

📝 Summary

Due to the recent changes of Swift 6 Migration, CallKit reporting was changed to async operation. Unfortunately, CallKit expects call reporting to happen synchronously from the moment the PushNotification has been received. (note)

☑️ Contributor Checklist

  • I have signed the Stream CLA (required)
  • This change follows zero ⚠️ policy (required)
  • This change should receive manual QA
  • Changelog is updated with client-facing changes
  • New code is covered by unit tests
  • Comparison screenshots added for visual changes
  • Affected documentation updated (tutorial, CMS)

@ipavlidakis ipavlidakis added the bug Something isn't working label Feb 24, 2025
@ipavlidakis ipavlidakis self-assigned this Feb 24, 2025
@ipavlidakis ipavlidakis requested a review from a team as a code owner February 24, 2025 16:41
@ipavlidakis ipavlidakis changed the base branch from develop to swift-6-migration February 24, 2025 16:41
Copy link

Public Interface

- 668
+ 661
- nonisolated(unsafe)
- , @unchecked Sendable
- : Sendable
- nonisolated
+ @mainactor
- nonisolated(unsafe)
+ @mainactor
- nonisolated(unsafe)
- , @unchecked Sendable
- , Sendable
**+ struct PinInfo : Sendable, Hashable
public let isLocal: Bool
public let pinnedAt: Date

extension CGSize : Hashable
public func hash(into hasher: inout Hasher)

public**
- , Sendable
- : Sendable
~~- PinInfo : Sendable, Hashable
public let isLocal: Bool
public let pinnedAt: Date

public struct~~
+ extension String : CodingKey
**+ var stringValue: String
public init?(stringValue: String)
public var intValue: Int?
public init?(intValue: Int)

public**
- , @unchecked Sendable
- final
- ,
- unchecked Sendable
@

+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
- extension Call : Identifiable
~~- var id: String

public~~
- , Sendable
- public var deviceOrientation: UIDeviceOrientation
public var captureVideoOrientation: AVCaptureVideoOrientation

- ,
- unchecked Sendable
+ MainActor
+ @mainactor
+ @mainactor
- , @unchecked Sendable
- final
- , @unchecked Sendable
- public
+ open
- , Sendable
- : Sendable
- : Sendable
- , Sendable
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- , @unchecked Sendable
- , @unchecked Sendable
- : Sendable
- : Sendable
- async
- : Sendable
- nonisolated(unsafe)
- extension CGSize : @retroactive Hashable
- func hash(into hasher
+ protocol ThermalStateObserving
~~- inout Hasher)

extension CGSize : Hashable
public func hash(into hasher: inout Hasher)

extension String : @retroactive CodingKey
public~~
+ ObservableObject
- stringValue
+ state
~~- String
public init?(stringValue: String)
public var intValue: Int?
public init?(intValue: Int)

extension String : CodingKey
public var stringValue: String
public init?(stringValue: String)
public var intValue: Int?
public init?(intValue: Int)

extension~~
+ var statePublisher
- @retroactive Comparable
public static func

+ AnyPublisher
- (
lhs:

- rhs: ProcessInfo.ThermalState
) -

+ Never
- Bool
+ var scale: CGFloat
- public protocol ThermalStateObserving : ObservableObject
var state: ProcessInfo.ThermalState
var statePublisher: AnyPublisher<ProcessInfo.ThermalState, Never>
var scale: CGFloat

- nonisolated(unsafe)
- , @unchecked Sendable
- ,
- unchecked Sendable
@

- ,
- unchecked Sendable
@

+ : CustomStringConvertible
- let
+ var
- let
+ var
- let
+ var
- @sendable
- @sendable
- @sendable
- @sendable
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
+ : CustomStringConvertible
- nonisolated(unsafe)
- , Sendable
- nonisolated(unsafe)
- nonisolated(unsafe)
- @mainactor @sendable
- , @unchecked Sendable
- @sendable
- @sendable
- @preconcurrency
- & Sendable
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)
- nonisolated(unsafe)

@Stream-SDK-Bot
Copy link
Collaborator

SDK Size

title develop branch diff status
StreamVideo 7.54 MB 7.56 MB +16 KB 🟢
StreamVideoSwiftUI 2.07 MB 2.07 MB +1 KB 🟢
StreamVideoUIKit 2.21 MB 2.21 MB +1 KB 🟢
StreamWebRTC 9.85 MB 9.85 MB 0 KB 🟢

@ipavlidakis ipavlidakis merged commit b931d74 into swift-6-migration Feb 25, 2025
13 of 14 checks passed
@ipavlidakis ipavlidakis deleted the migration/swift-6/fix-push-notifications-handling branch February 25, 2025 09:22
ipavlidakis added a commit that referenced this pull request Feb 27, 2025
ipavlidakis added a commit that referenced this pull request Feb 28, 2025
ipavlidakis added a commit that referenced this pull request Feb 28, 2025
ipavlidakis added a commit that referenced this pull request Feb 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants