What's Changed
- remove Swift 5 support by @swhitty in #183
- swift 6.3 nightly by @swhitty in #184
- don't require Foundation to build FlyingSocks by @lhoward in #188
- Add support for Cache-Control in Directory and File HTTPHandler by @nspassov in #194
- public EventNotification.init by @swhitty in #197
- public SocketError.makeFailed() by @swhitty in #196
- Add Cache Control to FileHTTPHandler headers by @ianegordon in #195
- handle EALREADY / WSAEALREADY by @swhitty in #198
- Fix high CPU usage on Linux due to epoll busy-loop by @lhoward in #191
- Fix typo: makeIdentifer -> makeIdentifier by @ianegordon in #199
- Remove redundant @unchecked Sendable annotations by @ianegordon in #201
- Fix typo: "must must" -> "must" in WS handshake error message by @ianegordon in #202
- Safe-cast URLResponse in ProxyHTTPHandler by @ianegordon in #203
- Return 416 for unsatisfiable Range; clamp end to file size by @ianegordon in #204
- Fix Big-Endian decoding for 8-byte WebSocket frame lengths by @phuccvx12 in #207
- Honor HTTP/1.1 persistent-connection default per RFC 9112 §9.3 by @ianegordon in #209
- Decode chunked request bodies; reject invalid framing per RFC 9112 by @ianegordon in #210
- Add direct unit tests for HTTPChunkedTransferDecoder by @ianegordon in #211
- Compute ETag from (mtime, size) to skip whole-file load per request by @ianegordon in #212
- Stream DirectoryHTTPHandler responses via HTTPBodySequence(file:) by @ianegordon in #213
- Fix potential resource leaks in MessageFrameWSHandler stream management by @phuccvx12 in #208
- Reject control frames with payload >125 bytes per RFC 6455 §5.5 by @ianegordon in #214
- Buffer HTTP request bytes once per connection by @lhoward in #215
New Contributors
- @ianegordon made their first contribution in #195
- @phuccvx12 made their first contribution in #207
Full Changelog: 0.26.2...0.27.0