Releases: vapor/websocket-kit
2.16.0 - Deal with Sendable and clean up package in general
What's Changed
Deal with Sendable and clean up package in general by @gwynne in #158
Covers fixing a bunch of
Sendable
things and does the usual round of package cleanup - bump the Swift minimum to 5.10, update the CI and the README, and so forth. Also fixes up some issues in the tests.
Reviewers
Thanks to the reviewers for their help:
This patch was released by @gwynne
Full Changelog: 2.15.0...2.16.0
2.15.0 - Allow `send(_ binary:)` to accept `some DataProtocol`
What's Changed
Allow send(_ binary:)
to accept some DataProtocol
by @fizker in #146
This allows for passing in
Data
orByteBufferView
tosend(_:)
, as well as the currently-supported[UInt8]
type.
This patch was released by @0xTim
Full Changelog: 2.14.0...2.15.0
Pass a copy of the control frame buffer to ping/pong callbacks
This patch was authored by @tkrajacic and released by @0xTim.
This PR enables access to the data in the control frames handled via onPing
/onPong
via a new API with the existing onPing
and onPong
methods being deprecated.
Bump the swift-tools-version to 5.7
Revert Sendable Take 2
Reverts 2.12.0, in order to maintain compatibility with Swift 5.6 users.
Sendable Take 2
This patch was authored and released by @0xTim.
Adds Sendable
annotations where possible. This time we're using @preconcurrency
to suppress errors in unsafe code from downstream users
Revert "Add Sendable conformances to WebsocketKit (#131)"
This patch was authored and released by @gwynne.
Due to unforeseen source compatibility breakage, this backs out the changes from release 2.10.0 for now.
Add Sendable conformances to WebsocketKit
This patch was authored and released by @0xTim.
Bump minimum Swift version to 5.6 and add Sendable conformances where appropriate
Work around apple/swift#66099
This patch was authored and released by @gwynne.
Avoids hitting swiftlang/swift#66099. Holding off on reenabling TSan in CI for now due to remaining warnings about race conditions managing callbacks.
Update for new NIOSSL
This patch was authored and released by @gwynne.
Fix for SwiftNIOSSL 2.23.1 breaking the build of the WebSocket tests due to EVP_PKEY
no longer being visible.
Shoutout and thanks to @jhoughjr for reporting the problem!
Additional changes:
- Require Swift 5.6 (matching the rest of Vapor)
- Update CI (wouldn't be an @gwynne PR without CI tweaks!)
- Enable Concurrency back-deployment
- Normalize platform support
- Some very minor code quality cleanups
- Added several missing tests (binary frames, manual pings, automatic pings, various connect methods)