Skip to content

Conversation

mohamadrezakoohkan
Copy link
Contributor

@mohamadrezakoohkan mohamadrezakoohkan commented Aug 21, 2023

Submit a pull request

This pull request addresses an issue, where it has become non-functional due to recent changes in the Starscream library. Specifically, the Starscream library's 4.0.x (4.0.5 & 4.0.6) version update introduced a new enum case called case peerClosed in WebSocketEvent enum class (details here) and has broken the conformance of the Client object to the WebSocketDelegate protocol, leaving the project uncompilable.

Build Error Encountered:

-> Type 'Client' does not conform to protocol 'WebSocketDelegate'
-> Switch must be exhaustive

A screenshot of the encountered error is shown below:

Screenshot 2023-08-21 at 15 04 33

The issue originates from the fact that GetStream has been set up to track the latest changes to the major version of Starscream through its Package.swift file:
Package.swift

The proposed solution in this pull request involves incorporating the new WebSocketEvent.peerClosed enum case and updating the delegate method inputs to receive an abstraction of WebSocket, consistent with the WebSocketClient definition.

The resolved state without errors is depicted in the screenshot below:

Screenshot 2023-08-21 at 15 40 54

CLA

  • I have signed the Stream CLA with my github username (required).
  • The code changes follow best practices
  • Code changes are tested (add some information if not applicable)

@mohamadrezakoohkan mohamadrezakoohkan changed the title Fix broken GetStream 2.2.5 with starscream 4.0.x Fix broken and uncompilable GetStream with starscream 4.0.x Aug 21, 2023
@polqf
Copy link

polqf commented Aug 21, 2023

Hi @mohamadrezakoohkan,

It is unfortunate that Starscream has added a breaking change in a patch release 😞 , but we are going to proceed with merging this PR so it not an issue anymore.

Thank you for you contribution!

@polqf polqf merged commit 0785e68 into GetStream:master Aug 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants