Closed danqing closed 12 months ago
Hello, there was a pull request https://github.com/centrifugal/centrifuge-swift/pull/19, at that point Starscream 4 had several known problems.
Starscream not maintained well these days so I am not sure migration to v4 can give any benefit. Did you experience any problems with Starscream 3 which you aim to solve?
Not really but I remember seeing some ss 3 issues back in the day (before v4 came out), and just curious about the plan here. While ss isn't being maintained super well, there have been a bunch of updates for v4 and it's been over a year since #19 was created.
There are integration issues if you try to add both Socket.IO and Centrifuge via CocoaPods into same project (we use both for different services). SocketIO depends on Starscream ~>4.0.
That's unfortunate, but I think it would be better to embed StarScream 3 to Centrifuge-swift than migrating to StarScream 4 at this point – looking at StarScream issue tracker I am not really confident that upgrade to v4 worth it.
@fedulvtubudul opened a pr #53 to embed Starscream 3 for now till we find and migrate to a better alternative (which can take much more time). What do you think – is this viable for you?
@FZambia yep, thanks! Recently we've done the same on our fork to integrate Centrifuge into a project that already uses SocketIO. So now we can return to upstream which is great.
So CentrifugeSwift 0.4.2 now embeds Starscream 3 and does not have an external dependency to Starscream. I hope this is a temporary thing – but hard to say when we do the next step, as I said above – I am a bit worried about Starscream 4 state these days.
I suppose next step here would be: use native URLSessionWebSocketTask if available and fallback to our embedded Starscream 3 fork for older devices. Appreciate help with this.
Thanks to https://github.com/centrifugal/centrifuge-swift/pull/84 we now have an optional WS transport using URLSessionWebSocketTask. Will be part of next release.
available in 0.7.0
As the topic says. Thanks!