swift-nio-extras
swift-nio-extras copied to clipboard
Useful code around SwiftNIO.
Add generic types to inbound and outbound debug handlers. The current implementation is API-breaking, however it's entirely possible to implement in a "minor-version" way (detail below). ### Motivation: I've found...
When using NIOWritePCAPHandler with UNIX Domain Sockets, it crashes. That's because UNIX Domain Sockets don't have IP addresses and ports. If the user passes a fakeLocal/RemoteAddress, everything's good but we...
Calling `initiateShutdown` multiple times is not a good idea. We should document that it's illegal and (deterministically) `fatalError` if the user still does that.
The current HTTPResponseCompressor API doesn't support selective compression: https://github.com/apple/swift-nio/blob/ed28803a78b187e202c27a62c7a497fbe9cfbbd7/Sources/NIOHTTP1/HTTPResponseCompressor.swift#L59-L63 It's a duplex handler because it needs to grep the `accept-encoding` header from the request out in order to compress the...
### Expected behavior The demo should be able to shutdown gracefully on SIGINT. ### Actual behavior If the top-level code is wrapped in a function like so: ``` func run()...
I'm talking about the code that can be found [here](https://github.com/apple/swift-nio-extras/blob/main/Sources/NIOHTTPTypesHTTP1/HTTPTypeConversion.swift) The NIOWebSocket upgrade helpers are reliant on the NIOHTTP1 types, specifically HTTPHead and HTTPHeaders . If a project is built...
Support HTTP resumable upload. (NIOResumableUpload depends on NIOHTTPTypes, so this PR includes changes in #202. Please leave comments specific for NIOHTTPTypes in #202) ### Motivation: Supporting HTTP resumable upload protocol...
### Motivation: Previously (#155), we added support for the NFS3 protocol. But without actually having a demo server, that's not actually very much fun. ### Modifications: Add a demo server...
This PR fixes Sendability warnings present when enabling strict concurrency checking. ### Motivation: We want to make sure `swift-nio-extras` is free of concurrency bugs, and thus removing Sendability warnings is...
As mentioned [here](https://github.com/apple/swift-nio/issues/1406), it would be great if SwiftNIO supported WebSocket compression either out of the box or as a separate library (e.g. this library). [RFC 7692](https://www.rfc-editor.org/rfc/rfc7692.html) details the client–server...