Releases: petabridge/TurboMqtt
TurboMqtt v1.0.0
1.0.0 March 24 2026
TurboMqtt v1.0.0 is the first stable release, promoting all features from v1.0.0-beta1 to production-ready status.
New Features
- Full MQTT 5.0 support — complete encoder/decoder, User Properties, server-initiated DISCONNECT handling, and authentication.
- TLS/mTLS support — server certificate validation, self-signed certs, and mutual TLS with client certificates.
- Transport layer redesign — cleaner separation between TCP, TLS, and fake transports.
- .NET 10 support — now targets
net10.0.
Bug Fixes
- Fix HeartBeatActor firing heartbeat timeout twice on slow reconnects.
- Fix two race conditions in TcpTransportActor.
- Fix race condition causing spurious reconnect during user-initiated disconnect.
- Fix race: remove internal connect deadline from ClientAcksActor.
Performance
- Major MQTT encoder performance optimizations and decoder fixes.
- Harden encoders against packet overflows.
Security
TurboMqtt v1.0.0-beta1
1.0.0-beta1 February 23rd 2026
TurboMqtt v1.0.0-beta1 is a major release bringing full MQTT 5.0 support, TLS/mTLS, a redesigned transport layer, and a significant round of bug fixes and spec compliance work.
New Features
- Full MQTT 5.0 support — complete encoder/decoder, User Properties on CONNECT and PUBLISH, server-initiated DISCONNECT handling, and authentication; validated end-to-end against EMQX 5.x.
- TLS/mTLS support —
CreateTlsTcpClientwithMqttClientTlsOptionsfor server certificate validation, self-signed certs, and mutual TLS with client certificates. - Transport layer redesign — cleaner separation between TCP, TLS, and fake transports; improved testability.
- .NET 10 support — now targets
net10.0; upgraded CI to .NET 10 SDK.
Bug Fixes
- Fix HeartBeatActor firing heartbeat timeout twice on slow reconnects.
- Fix two race conditions in TcpTransportActor causing flaky tests on Linux.
- Fix race condition causing spurious reconnect during user-initiated disconnect.
- Fix race: remove internal connect deadline from ClientAcksActor.
Performance
TurboMqtt v0.2.0
0.2.0 June 14th 2024
- License has been migrated to Apache 2.0
- Upgraded to Akka.NET v1.5.25.
TurboMqtt v0.1.1
0.1.1 May 2nd 2024
TurboMqtt v0.1.1 includes critical bug fixes and massive performance improvements over v0.1.0.
Bug Fixes and Improvements
- Fixed QoS=1 packet handling - was previously treating it like QoS=2.
- Improved flow control inside
ClientAckHandler- result is a massive performance improvement when operating at QoS 1 and 2. - Fix OpenTelemetry
TagListfor clientId and MQTT version - now we can accurately track metrics per clientId via OpenTelemetry.
Performance
BenchmarkDotNet v0.13.12, Windows 11 (10.0.22631.3447/23H2/2023Update/SunValley3)
12th Gen Intel Core i7-1260P, 1 CPU, 16 logical and 12 physical cores
.NET SDK 8.0.101
[Host] : .NET 8.0.1 (8.0.123.58001), X64 RyuJIT AVX2
Job-FBXRHG : .NET 8.0.1 (8.0.123.58001), X64 RyuJIT AVX2
InvocationCount=1 LaunchCount=10 RunStrategy=Monitoring
UnrollFactor=1 WarmupCount=10
| Method | QoSLevel | PayloadSizeBytes | ProtocolVersion | Mean | Error | StdDev | Median | Req/sec |
|---|---|---|---|---|---|---|---|---|
| PublishAndReceiveMessages | AtMostOnce | 10 | V3_1_1 | 5.175 μs | 0.6794 μs | 2.003 μs | 4.345 μs | 193,230.35 |
| PublishAndReceiveMessages | AtLeastOnce | 10 | V3_1_1 | 26.309 μs | 1.4071 μs | 4.149 μs | 25.906 μs | 38,010.35 |
| PublishAndReceiveMessages | ExactlyOnce | 10 | V3_1_1 | 44.501 μs | 2.2778 μs | 6.716 μs | 42.175 μs | 22,471.53 |
TurboMqtt v0.1.0
0.1.0 May 1st 2024
Fully functioning MQTT 3.1.1 support without TLS. Hitting 160k msg/s in our benchmarks on QoS=0 - see TurboMqtt Performance for details.
Fixed some client resiliency problems, protecting against broker disconnect and failure scenarios with clean automatic restarts.
Upgraded to Akka.NET 1.5.20.