All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.34.0 - 2026-03-20
- Update to tungstenite 0.29.
- Update to async-native-tls 0.6.
- smol runtime support including smol-native-tls.
0.33.0 - 2026-02-20
- Update GLib/gio support to version 0.22 of the bindings.
- Update MSRV to 1.85.
0.32.1 - 2026-01-05
- Add
tokio-rustls-platform-verifierfeature to use that crate for certificate verification.
0.32.0 - 2025-10-31
- Update to tungstenite 0.28.
- Add
WebSocketStream::into_inner()to get the underlying stream.
0.31.0 - 2025-08-09
WebSocketSender::send()andclose()require a mutable reference now.
0.30.0 - 2025-07-15
- Update to tungstenite 0.27.
- Update to webpki-roots to 1.0.
- Update to glib / gio 0.21.
- Add support for splitting a
WebSocketStreaminto a sender and receiver type without making use of the future'sSinktrait, and re-combining them again into a single value.
0.29.1 - 2025-02-18
-
Added wrappers that allow treating a WebSocket as a byte stream.
ByteWriterallows using anySink<Stream>as anAsyncWrite.ByteReaderallows using anyStream<Item = tungstenite::Result<Message>>as anAsyncRead.Note that
ByteReaderwill treat all bytes received as uniform, including for instance the contents of Close or Ping/Pong messages; if you need to handle the contents of aClose, don't use this.You may want to wrap these in a
BufWriterorBufReaderfor efficiency.
0.29.0 - 2025-02-17
- Update to tungstenite 0.26.
0.28.2 - 2024-12-15
- Add
allocfeature tofutures_taskdependency to make surefutures-task::ArcWakeis available.
0.28.1 - 2024-12-10
- Added
WebSocketStream::send()and make theSinkimpl andfutures_utildependency optional.
- Update MSRV to 1.64
- Revert workaround from 0.26.2 for
futures_task::ArcWake, which is fixed in 0.3.31.
0.28.0 - 2024-09-04
- Update to tungstenite 0.24.
- Update to rustls-native-certs 0.8.
- Update MRSV to 1.63.
0.27.0 - 2024-07-17
- Update glib / gio dependencies to 0.20.
0.26.2 - 2024-06-17
- Work around bug related to
futures_task::ArcWake, which causes busy looping because of spurious waker "changes" caused by creating the same waker with different vtables.
0.26.1 - 2024-06-06
- New
urlfeature that maps to the corresponding feature fromtungsteniteand allows connecting directly tows/wssURLs.
0.26.0 - 2024-06-02
- Update to tungstenite 0.23.
- Don't include default features for various dependencies.
0.25.1 - 2024-04-03
- Fix tokio support for async-tls.
0.25.0 - 2024-02-09
- Update to glib/gio 0.19.
- Update to async-tls 0.13.
0.24.0 - 2023-12-08
- Update MSRV from 1.70 to 1.61.
- Update to tungstenite 0.21.
- Update to webpki-roots 0.26.
- Update tokio-rustls to 0.25 and rustls-native-certs to 0.7.
- Update example to hyper 1.0.
0.23.0 - 2023-08-08
- Update to tungstenite 0.20.
- Update to webpki-roots 0.25.
- Update to glib/gio 0.18.
- Update MSRV to 1.70.
- Gracefully handle invalid native root certificates
- Do not flush on every
poll_ready()call.
0.22.2 - 2023-05-20
- New
tokio-rustls-manual-rootsfeature for dropping the dependency on webpki-roots.
0.22.1 - 2023-05-08
- Fix
poll_flushon a closed connection.
- Add MSRV to Cargo.toml and check it with the CI.
0.22.0 - 2023-04-27
- Update to tokio-rustls 0.24
0.21.0 - 2023-04-12
- Update to tungstenite 0.19
- Update to async-native-tls 0.5 and webpki-roots 0.23
gio::accept_async()API for the gio integration similar to the existing API for tokio and async-std- Added an echo server example using gio
0.20.0 - 2023-02-10
- Update to gio/glib 0.17.
- Update to async-tls 0.12 and env-logger 0.10.
0.19.0 - 2022-12-11
- Update to tungstenite 0.18 and make the "handshake" feature optional but enabled by default.
0.18.0 - 2022-10-24
- Update to gio/glib 0.16.
0.17.2 - 2022-03-23
- The
Streamimplementation onWebSocketStreamnow implementsFusedStreamand will always returnNoneafter an error was returned or the stream was closed cleanly. - Fix autobahn testsuite.
0.17.1 - 2022-03-01
- Fix
poll_closereturning WouldBlock error kind. - Fix a couple of minor clippy warnings.
0.17.0 - 2022-02-17
- Update to tungstenite 0.17.
- Update to gio/glib 0.15.
- Update to async-native-tls 0.4.
0.16.1 - 2021-12-06
- Fix connecting to URLs containing plain IPv6 addresses in brackets.
0.16.0 - 2021-11-06
- Update to tungstenite 0.16, rusttls 0.20, tokio-rustls 0.23, etc.
0.15.0 - 2021-09-09
- Reduce crate package size.
- Fix and clean up autobahn tests.
- Update to tungstenite 0.15.
0.14.0 - 2021-07-05
- Remove
tokio-rustlsfeature and replace withtokio-rustls-webpki-rootsandtokio-rustls-native-certsfeatures that allow selecting the certificate checking backend. - Add
verbose-loggingfeature that enables more verbose logging via thelogcrate, which was enabled by default before. - Update
gio-runtimefeature to glib/gio 0.14.
- Make
client_async_tls_with_connector_and_config()a public function to allow creating a WebSocket connection from aStream.
0.13.1 - 2021-03-23
- The connect API using the
tokio-opensslTLS implementation was broken in previous versions as no TLS connection was established before trying to establish the WebSocket connection. As such, connections always failed. Technically this is a breaking change when using this feature but in practice this a) wouldn't have worked anyway and b) it's unlikely someone uses the API in a way that would stop compiling now.
0.13.0 - 2021-02-13
- Updated to tungstenite 0.13
0.12.0 - 2021-01-09
- Updated tungstenite to version 0.12
- Migrated from pin-project to pin-project-lite
TokioAdapteris now created viaTokioAdapter::new
0.11.0 - 2020-12-30
- Updated tokio to version 1.0
- Updated async-tls to version 0.11
0.10.0 - 2020-10-22
- Updated tokio to version 0.3
0.9.3 - 2020-10-19
- Configure the server trust anchors for tokio-rustls
0.9.2 - 2020-10-17
- Implemented the
tokio::client_async_tls*functions forasync-tlsandtokio-rustls
- Updated pin-project to version 1
No changelog is available for older versions as of yet.