What's New?
- 🧾 Expose
EventLoop::clean
to allow triggering shutdown and subsequent storage of pending requests by @de-sh in #741
You can now shutdown the Eventloop
and drain Request
s, which weren't received from the channel and keep them in pending while doing cleanup to prevent any data loss. Example usage in bytebeamio/uplink.
- 🔐 Support for all TLS key formats currently supported by Rustls:
PKCS#1
,PKCS#8
,RFC5915
and new TLS Error variants:NoValidClientCertInChain
,NoValidKeyInChain
by @ijager in #752 and #752
With this, we now practically support all RSA and ECC keys in DER/SEC1 encoding.
-
A websocket request modifier for v4 client by @swanandx in #772
-
Surfaced
AsyncClient
'sfrom_senders
method to theClient
asfrom_sender
by @BKDaugherty in #779
Changes
- 🆔 Allow empty Client ID by @arunanshub in #791
MqttOptions::new
now accepts empty client_id
and MqttOptions::set_clean_session
panics if client_id
is empty and clean_session
flag is set to false
.
-
Synchronous client methods take
&self
instead of&mut self
by @BKDaugherty in #646
Users do not need to specify the TLS key variant in the TlsConfiguration
anymore, this is inferred automatically. To update your code simply remove Key::ECC()
or Key::RSA()
from the initialization.
With this, the der
& password
fields are replaced by client_auth
.
-
Make v5
RetainForwardRule
public, in order to allow setting it when constructingFilter
values by @brianmay in #767 -
Use
VecDeque
instead ofIntoIter
to fix unintentional drop of pending requests onEventLoop::clean
by @de-sh in #780 -
Fix typo -
StateError::IncommingPacketTooLarge
=>StateError::IncomingPacketTooLarge
by @swanandx in #786
Update tokio-rustls
to 0.25.0
, rustls-native-certs
to 0.7.0
, rustls-webpki
to 0.102.1
, rusttls-pemfile
to 2.0.0
, async-tungstenite
to 0.24.0
, ws_stream_tungstenite
to 0.12.0
and http
to 1.0.0
. This is a breaking change as types from some of these crates are part of the public API in
Fixes
- Lowered the MSRV to 1.64.0 by @RoastVeg in #762
- Request modifier function should be Send and Sync and removed unnecessary Box by @swanandx in #770
New Contributors 🎉
- @BKDaugherty made their first contribution in #646
- @RoastVeg made their first contribution in #762
- @ijager made their first contribution in #752
Full Changelog: rumqttd-0.19.0...rumqttc-0.24.0