- Removed Objective-C support. It's time for you to embrace Swift.
- Socket.io 3 support.
- Add
==
operators forSocketAckStatus
andString
- Small fixes.
- Add ability to enable websockets SOCKS proxy.
- Fix emit completion callback not firing on websockets #1178
- Swift 5
- Minimum version of the client is now Swift 4.2.
- Add exponential backoff for reconnects, with
reconnectWaitMax
andrandomizationFactor
options #1149 statusChange
event's data format adds a second value, the raw value of the status. This is for use in Objective-C. #1147
- Add emits with write completion handlers. #1096
- Add ability to listen for when a websocket upgrade happens
- Add ability to bypass Data inspection in emits. #992
- Allow
SocketEngine
to be subclassed
- Fix setting reconnectAttempts #989
- Fix #950
- Conforming to
SocketEngineWebsocket
no longer requires conforming toWebsocketDelegate
- Allow setting
SocketEngineSpec.extraHeaders
after init. - Deprecate
SocketEngineSpec.websocket
in favor of just using theSocketEngineSpec.polling
property. - Enable bitcode for most platforms.
- Fix #882. This adds a new method
SocketManger.removeSocket(_:)
that should be called if when you no longer wish to use a socket again. This will cause the engine to no longer keep a strong reference to the socket and no longer track it.
- Fix not setting handleQueue on
SocketManager
Checkout out the migration guide in Usage Docs for a more detailed guide on how to migrate to this version.
- Adds a new
SocketManager
class that multiplexes multiple namespaces through a single engine. - Adds
.sentPing
and.gotPong
client events for tracking ping/pongs. - watchOS support.
- Many properties that were previously on
SocketIOClient
have been moved to theSocketManager
. SocketIOClientOption.nsp
has been removed. UseSocketManager.socket(forNamespace:)
to create/get a socket attached to a specific namespace.- Adds
.sentPing
and.gotPong
client events for tracking ping/pongs. - Makes the framework a single target.
- Updates Starscream to 3.0