diff --git a/Package.swift b/Package.swift index 931bc28161..863c3f4016 100644 --- a/Package.swift +++ b/Package.swift @@ -375,7 +375,8 @@ let package = Package( "NIOPosix", "NIOCore", ], - exclude: ["README.md"] + exclude: ["README.md"], + swiftSettings: strictConcurrencySettings ), .executableTarget( name: "NIOUDPEchoClient", diff --git a/Sources/NIOUDPEchoServer/main.swift b/Sources/NIOUDPEchoServer/main.swift index a33de6780b..f8dd508577 100644 --- a/Sources/NIOUDPEchoServer/main.swift +++ b/Sources/NIOUDPEchoServer/main.swift @@ -47,8 +47,9 @@ var bootstrap = DatagramBootstrap(group: group) // Set the handlers that are applied to the bound channel .channelInitializer { channel in - // Ensure we don't read faster than we can write by adding the BackPressureHandler into the pipeline. - channel.pipeline.addHandler(EchoHandler()) + channel.eventLoop.makeCompletedFuture { + try channel.pipeline.syncOperations.addHandler(EchoHandler()) + } } defer {