Skip to content

Commit 495776a

Browse files
authored
Merge pull request #987 from owenv/owenv/target-change
SWBBuildServer: send target change notification when build description regenerates
2 parents 1fa02bd + b4700ee commit 495776a

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

Sources/SwiftBuild/SWBBuildServer.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,7 @@ public actor SWBBuildServer: QueueBasedMessageHandler {
255255
throw ResponseError.unknown("Failed to get build description ID")
256256
}
257257
self.buildDescriptionID = SWBBuildDescriptionID(buildDescriptionID)
258+
self.connectionToClient.send(OnBuildTargetDidChangeNotification(changes: nil))
258259
}
259260
} catch {
260261
self.logToClient(.error, "Error generating build description: \(error)")

Tests/SwiftBuildTests/BuildServerTests.swift

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,12 @@ fileprivate struct BuildServerTests: CoreBasedTests {
177177
}
178178

179179
return (testWorkspace, request)
180-
}) { connection, _, _ in
180+
}) { connection, handler, _ in
181+
#expect(handler.notifications.withLock { notifications in
182+
notifications.contains { notification in
183+
notification is OnBuildTargetDidChangeNotification
184+
}
185+
})
181186
let targetsResponse = try await connection.send(WorkspaceBuildTargetsRequest())
182187
let firstLibrary = try #require(targetsResponse.targets.filter { $0.displayName == "Target" }.only)
183188
let secondLibrary = try #require(targetsResponse.targets.filter { $0.displayName == "Target2" }.only)

0 commit comments

Comments
 (0)