Skip to content

Commit 259ace5

Browse files
committed
Opt into Swift 6 language mode for most targets
1 parent 06763b8 commit 259ace5

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

Package.swift

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@ let package = Package(
3434
.byName(name: "AWSLambdaRuntimeCore"),
3535
.product(name: "NIOCore", package: "swift-nio"),
3636
.product(name: "NIOFoundationCompat", package: "swift-nio"),
37-
],
38-
swiftSettings: [.swiftLanguageMode(.v5)]
37+
]
3938
),
4039
.target(
4140
name: "AWSLambdaRuntimeCore",
@@ -65,17 +64,15 @@ let package = Package(
6564
.product(name: "NIOTestUtils", package: "swift-nio"),
6665
.product(name: "NIOFoundationCompat", package: "swift-nio"),
6766
.product(name: "Testing", package: "swift-testing"),
68-
],
69-
swiftSettings: [.swiftLanguageMode(.v5)]
67+
]
7068
),
7169
.testTarget(
7270
name: "AWSLambdaRuntimeTests",
7371
dependencies: [
7472
.byName(name: "AWSLambdaRuntimeCore"),
7573
.byName(name: "AWSLambdaRuntime"),
7674
.product(name: "Testing", package: "swift-testing"),
77-
],
78-
swiftSettings: [.swiftLanguageMode(.v5)]
75+
]
7976
),
8077
// testing helper
8178
.target(
@@ -98,8 +95,7 @@ let package = Package(
9895
dependencies: [
9996
.product(name: "NIOHTTP1", package: "swift-nio"),
10097
.product(name: "NIO", package: "swift-nio"),
101-
],
102-
swiftSettings: [.swiftLanguageMode(.v5)]
98+
]
10399
),
104100
]
105101
)

Tests/AWSLambdaRuntimeCoreTests/MockLambdaServer.swift

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ func withMockServer<Result>(
2727
_ body: (_ port: Int) async throws -> Result
2828
) async throws -> Result {
2929
let eventLoopGroup = NIOSingletons.posixEventLoopGroup
30-
let server = MockLambdaServer(behavior: behaviour, port: port, keepAlive: keepAlive)
30+
let server = MockLambdaServer(behavior: behaviour, port: port, keepAlive: keepAlive, eventLoopGroup: eventLoopGroup)
3131
let port = try await server.start().get()
3232

3333
let result: Swift.Result<Result, any Error>
@@ -52,7 +52,13 @@ final class MockLambdaServer {
5252
private var channel: Channel?
5353
private var shutdown = false
5454

55-
init(behavior: LambdaServerBehavior, host: String = "127.0.0.1", port: Int = 7000, keepAlive: Bool = true) {
55+
init(
56+
behavior: LambdaServerBehavior,
57+
host: String = "127.0.0.1",
58+
port: Int = 7000,
59+
keepAlive: Bool = true,
60+
eventLoopGroup: MultiThreadedEventLoopGroup
61+
) {
5662
self.group = NIOSingletons.posixEventLoopGroup
5763
self.behavior = behavior
5864
self.host = host
@@ -233,11 +239,14 @@ final class HTTPHandler: ChannelInboundHandler {
233239
}
234240
}
235241

242+
let loopBoundContext = NIOLoopBound(context, eventLoop: context.eventLoop)
243+
236244
context.writeAndFlush(wrapOutboundOut(.end(nil))).whenComplete { result in
237245
if case .failure(let error) = result {
238246
self.logger.error("\(self) write error \(error)")
239247
}
240248
if !self.keepAlive {
249+
let context = loopBoundContext.value
241250
context.close().whenFailure { error in
242251
self.logger.error("\(self) close error \(error)")
243252
}

0 commit comments

Comments
 (0)