Skip to content

Releases: hivemq/hivemq-mqtt-client-dotnet

v0.36.0: Performance Improvements

26 Nov 12:11
370e863

Choose a tag to compare

What’s Changed

Significant improvements in single message publishing and smaller payload batch operations:

  • QoS 1 single message: ~91% faster (6,094.69μs → 551.43μs)
  • QoS 2 single message: ~88% faster (8,083.58μs → 1,004.75μs)
  • 100x 256b QoS 0 messages: ~36% faster (151.09μs → 97.12μs)
  • 100x 256b QoS 1 messages: ~25% faster (26,178.26μs → 19,516.85μs)
  • 100x 256b QoS 2 messages: ~16% faster (43,196.69μs → 36,133.97μs)
  • 100x 256k QoS 0 messages: ~28% faster (139.16μs → 100.22μs)
  • 1k QoS 2 messages: ~6% faster (325,461.87μs → 306,406.35μs)

See all of the results and historical improvements here.

🚀 Features

  • Performance: Improve validation path and cached connection properties (#290) @pglombardo
  • PacketIDManager: Faster locking using object lock & Interlocked (#289) @pglombardo

⬆️ Dependencies updates

👥 List of contributors

@dependabot[bot], @pglombardo and dependabot[bot]

NuGet Package

v0.36.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.36.0

v0.35.3: Better Packet Encoding, Event patterns & State Checking

12 Nov 07:35
b943827

Choose a tag to compare

What’s Changed

This release includes a bunch of background and client internals improvements in terms of performance, memory/GC pressure and thread safety.

🚀 Features

👥 List of contributors

@pglombardo

NuGet Package

v0.35.3 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.35.3

v0.35.2: ConnectionState: Add thread safety with atomic updates

10 Nov 11:05
71f4b6c

Choose a tag to compare

What’s Changed

  • ConnectionState: Add thread safety with atomic updates (#284) @pglombardo
  • Tests: Minimize use of Delay in tests; Use Async handlers instead (#283) @pglombardo

👥 List of contributors

@pglombardo

NuGet Package

v0.35.2 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.35.2

v0.35.1: Improved Concurrency & Exception Handling

08 Nov 16:56
d04355e

Choose a tag to compare

What’s Changed

🚀 Features

  • Health Checks: Use semaphore to synchronize concurrent disconnect attempts (#282) @pglombardo
  • ConnectionManager: Better exception handling & logging (#281) @pglombardo
  • CancelBackgroundTasksAsync: Gather and use WhenAll. Catch and log exceptions. (#280) @pglombardo
  • Disposal Safety Improvements (#279) @pglombardo

👥 List of contributors

@pglombardo

NuGet Package

v0.35.1 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.35.1

v0.35.0: WebSocket - Better, Faster Stronger

08 Nov 09:26
affdda9

Choose a tag to compare

What’s Changed

All around improvements in the WebSocket Transport, options reliability.

🚀 Features

  • WebSocket: Expose transport specific options (#278) @pglombardo
  • WebSocket: Better ReadAsync behavior and buffer management (#277) @pglombardo
  • WebSocket WriteAsync & Socket Management Improvements (#276) @pglombardo
  • WebSocketTransport: Better state detection, error handling & TLS Validations (#275) @pglombardo

👥 List of contributors

@pglombardo

NuGet Package

v0.35.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.35.0

v0.34.0: Replace Delay with Connection Event Signal

02 Nov 16:19
d57b055

Choose a tag to compare

What’s Changed

🚀 Features

👥 List of contributors

@pglombardo

NuGet Package

v0.34.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.34.0

v0.33.0: Improved Subscription Management

31 Oct 10:21
67a5c9e

Choose a tag to compare

What’s Changed

🚀 Features

🔧 Fixes & Refactoring

👥 List of contributors

@pglombardo

NuGet Package

v0.33.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.33.0

v0.32.0: Security, Certificates and Better Disposal Behavior

30 Oct 14:48
63d94c8

Choose a tag to compare

What’s Changed

🚀 Features

⬆️ Dependencies updates

👥 List of contributors

@pglombardo

NuGet Package

v0.32.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.32.0

v0.31.0: ~40% Performance Improvement

28 Oct 16:44
6796ae8

Choose a tag to compare

What’s Changed

This release includes a refactored PacketID manager that improves performance of the client by an amazing 40%.

See here for the benchmark results.

But for an excerpt:

Performance Improvements from v0.30.0

Significant performance improvements across all benchmarks, with the most notable gains in:

1k QoS 1 messages: ~43% faster (287,802.82μs → 163,134.95μs)
1k QoS 2 messages: ~39% faster (533,574.86μs → 325,461.87μs)

Those number are in microseconds but for milliseconds: 1k QoS2 messages went from 533ms down to 325ms. A very nice gain.

🚀 Features

  • Better packet ID management with O(1) allocation and reuse (#264) @pglombardo

👥 List of contributors

@pglombardo

NuGet Package

v0.31.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.31.0

v0.30.0: Security: Use SecureString for secure password handling

27 Oct 15:17
60ad39d

Choose a tag to compare

What’s Changed

This release improves the security of the MQTT client by storing user provided credentials securely.

Before this change, credentials could potentially be discovered through heap dumps or process inspection.

🚀 Features

  • Security: Use SecureString for secure password handling (#263) @pglombardo

👥 List of contributors

@pglombardo

NuGet Package

v0.30.0 is available on NuGet:
https://www.nuget.org/packages/HiveMQtt/0.30.0