All Versions
3
Latest Version
4.0
Avg Release Cycle
152 days
Latest Release
459 days ago

Changelog History

  • v4.0

    December 05, 2019

    ๐Ÿ’ฅ Breaking changes

    • โฑ timeout properties changed from milliseconds (int) to TimeSpan
    • DisconnectionHappened, ReconnectionHappened streams now return complex info object instead of enum
    • ๐Ÿ”„ changed return type from Task to void in Send() methods (sending is done through the queue)

    ๐Ÿ”‹ Features

    • ability to disable last chance reconnection (when no message comes from server for predefined time) - ReconnectTimeout = null
    • streaming fake messages - to mimic server response - StreamFakeMessage(...)
    • ๐Ÿ‘ป fail fast for starting, stopping and manual reconnection - throws an exception when the initial connection fails - StartOrFail(), ReconnectOrFail(), StopOrFail()
    • ๐Ÿ‘ป more info in DisconnectionHappened stream - close status, exception that caused disconnection, etc.
    • โš™ runtime reconnection canceling from DisconnectionHappened stream - it will stop ongoing reconnection - disconnectionInfo.CancelReconnection = true
    • normal closure - automatically Close client when server sends Close message, could be disabled by DisconnectionHappened stream - disconnectionInfo.CancelClosing= true
    • ๐ŸŽ performance optimizations
      • sending is done through Channels
      • listening now allocates less memory and handles differently single chunk vs multi chunks
  • v3.0

    March 12, 2019

    ๐Ÿ’ฅ Breaking changes

    • return type of MessageReceived observable was changed from string to ResponseMessage

    ๐Ÿ”‹ Features

    • ๐Ÿ‘Œ support for binary messages
      • a new method Send() and SendInstant() with parameter byte[]
      • MessageReceived observable now streams text or binary data (there is type property to distinguish between them)
    • 0๏ธโƒฃ a new MessageEncoding property to change encoding of sent/received text messages (default is UTF8)
  • v2.0

    February 04, 2019

    ๐Ÿ’ฅ Breaking changes

    • ๐Ÿšš dependency to Serilog was removed, switched to logging abstraction (LibLog)

    ๐Ÿ”‹ Features

    • ๐Ÿ”Š a new Name property to distinguish between websocket clients in the logs