Skip to content

Commit 056c40b

Browse files
committed
Enable 6.2 CI and enable Windows CI
1 parent 7bef63b commit 056c40b

File tree

7 files changed

+49
-9
lines changed

7 files changed

+49
-9
lines changed

.github/workflows/main.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,16 @@ jobs:
1111
name: Unit tests
1212
uses: apple/swift-nio/.github/workflows/unit_tests.yml@main
1313
with:
14-
linux_5_9_arguments_override: "--explicit-target-dependency-import-check error"
15-
linux_5_10_arguments_override: "--explicit-target-dependency-import-check error"
1614
linux_6_0_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
1715
linux_6_1_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
18-
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
16+
linux_6_2_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
17+
linux_nightly_next_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
1918
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
19+
windows_6_0_enabled: true
20+
windows_6_1_enabled: true
21+
windows_6_2_enabled: true
22+
windows_nightly_next_enabled: true
23+
windows_nightly_main_enabled: true
2024

2125
cxx-interop:
2226
name: Cxx interop

.github/workflows/pull_request.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,16 @@ jobs:
1515
name: Unit tests
1616
uses: apple/swift-nio/.github/workflows/unit_tests.yml@main
1717
with:
18-
linux_5_9_arguments_override: "--explicit-target-dependency-import-check error"
19-
linux_5_10_arguments_override: "--explicit-target-dependency-import-check error"
2018
linux_6_0_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
2119
linux_6_1_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
22-
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
20+
linux_6_2_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
21+
linux_nightly_next_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
2322
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable"
23+
windows_6_0_enabled: true
24+
windows_6_1_enabled: true
25+
windows_6_2_enabled: true
26+
windows_nightly_next_enabled: true
27+
windows_nightly_main_enabled: true
2428

2529
cxx-interop:
2630
name: Cxx interop

Sources/UnixSignals/UnixSignal.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ import Dispatch
2626
/// A struct representing a Unix signal.
2727
///
2828
/// Signals are standardized messages sent to a running program to trigger specific behavior, such as quitting or error handling
29+
///
30+
/// - Important: Unix signals are only functional on platforms supporting signals.
2931
public struct UnixSignal: Hashable, Sendable, CustomStringConvertible {
3032
internal enum Wrapped {
3133
case sigabrt
@@ -118,6 +120,9 @@ extension UnixSignal.Wrapped: CustomStringConvertible {
118120

119121
extension UnixSignal.Wrapped {
120122
var rawValue: Int32 {
123+
#if os(Windows)
124+
return -1
125+
#else
121126
switch self {
122127
case .sigabrt:
123128
return SIGABRT
@@ -146,5 +151,6 @@ extension UnixSignal.Wrapped {
146151
case .sigpipe:
147152
return SIGPIPE
148153
}
154+
#endif
149155
}
150156
}

Sources/UnixSignals/UnixSignalsSequence.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,15 @@
1515
#if canImport(Darwin)
1616
import Darwin
1717
import Dispatch
18-
#elseif canImport(Glibc)
18+
#else
1919
@preconcurrency import Dispatch
20+
#endif
21+
22+
#if canImport(Glibc)
2023
import Glibc
2124
#elseif canImport(Musl)
22-
@preconcurrency import Dispatch
2325
import Musl
2426
#elseif canImport(Android)
25-
@preconcurrency import Dispatch
2627
import Android
2728
#endif
2829
import ConcurrencyHelpers

Tests/ServiceLifecycleTests/ServiceGroupAddServiceTests.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,7 @@ final class ServiceGroupAddServiceTests: XCTestCase {
239239
}
240240
}
241241

242+
#if !os(Windows)
242243
func testGracefulShutdownOrdering_withAddedServices() async throws {
243244
let service1 = MockService(description: "Service1")
244245
let service2 = MockService(description: "Service2")
@@ -369,6 +370,7 @@ final class ServiceGroupAddServiceTests: XCTestCase {
369370
await service2.resumeRunContinuation(with: .success(()))
370371
}
371372
}
373+
#endif
372374

373375
// MARK: - Helpers
374376

Tests/ServiceLifecycleTests/ServiceGroupTests.swift

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ final class ServiceGroupTests: XCTestCase {
8181
}
8282
}
8383

84+
#if !os(Windows)
8485
func test_whenRun_ShutdownGracefully() async throws {
8586
let mockService = MockService(description: "Service1")
8687
let serviceGroup = self.makeServiceGroup(
@@ -103,6 +104,7 @@ final class ServiceGroupTests: XCTestCase {
103104
await mockService.resumeRunContinuation(with: .success(()))
104105
}
105106
}
107+
#endif
106108

107109
func testRun_whenServiceExitsEarly() async throws {
108110
let mockService = MockService(description: "Service1")
@@ -469,6 +471,7 @@ final class ServiceGroupTests: XCTestCase {
469471
}
470472
}
471473

474+
#if !os(Windows)
472475
func testCancellationSignal() async throws {
473476
let service1 = MockService(description: "Service1")
474477
let service2 = MockService(description: "Service2")
@@ -507,7 +510,9 @@ final class ServiceGroupTests: XCTestCase {
507510
await XCTAsyncAssertNoThrow(try await group.next())
508511
}
509512
}
513+
#endif
510514

515+
#if !os(Windows)
511516
func testCancellationSignal_afterGracefulShutdownSignal() async throws {
512517
let service1 = MockService(description: "Service1")
513518
let service2 = MockService(description: "Service2")
@@ -560,7 +565,9 @@ final class ServiceGroupTests: XCTestCase {
560565
await XCTAsyncAssertNoThrow(try await group.next())
561566
}
562567
}
568+
#endif
563569

570+
#if !os(Windows)
564571
func testGracefulShutdownOrdering() async throws {
565572
let service1 = MockService(description: "Service1")
566573
let service2 = MockService(description: "Service2")
@@ -624,7 +631,9 @@ final class ServiceGroupTests: XCTestCase {
624631
await service1.resumeRunContinuation(with: .success(()))
625632
}
626633
}
634+
#endif
627635

636+
#if !os(Windows)
628637
func testGracefulShutdownOrdering_whenServiceThrows() async throws {
629638
let service1 = MockService(description: "Service1")
630639
let service2 = MockService(description: "Service2")
@@ -688,7 +697,9 @@ final class ServiceGroupTests: XCTestCase {
688697
}
689698
}
690699
}
700+
#endif
691701

702+
#if !os(Windows)
692703
func testGracefulShutdownOrdering_whenServiceThrows_andServiceGracefullyShutsdown() async throws {
693704
let service1 = MockService(description: "Service1")
694705
let service2 = MockService(description: "Service2")
@@ -756,7 +767,9 @@ final class ServiceGroupTests: XCTestCase {
756767
}
757768
}
758769
}
770+
#endif
759771

772+
#if !os(Windows)
760773
func testGracefulShutdownOrdering_whenServiceExits() async throws {
761774
let service1 = MockService(description: "Service1")
762775
let service2 = MockService(description: "Service2")
@@ -816,7 +829,9 @@ final class ServiceGroupTests: XCTestCase {
816829
await service2.resumeRunContinuation(with: .success(()))
817830
}
818831
}
832+
#endif
819833

834+
#if !os(Windows)
820835
func testGracefulShutdownOrdering_whenServiceExits_andIgnoringThrows() async throws {
821836
let service1 = MockService(description: "Service1")
822837
let service2 = MockService(description: "Service2")
@@ -885,8 +900,10 @@ final class ServiceGroupTests: XCTestCase {
885900
XCTAssertTrue($0 is ExampleError)
886901
}
887902
}
903+
#endif
888904
}
889905

906+
#if !os(Windows)
890907
func testNestedServiceLifecycle() async throws {
891908
struct NestedGroupService: Service {
892909
let group: ServiceGroup
@@ -1007,6 +1024,7 @@ final class ServiceGroupTests: XCTestCase {
10071024
await service2.resumeRunContinuation(with: .success(()))
10081025
}
10091026
}
1027+
#endif
10101028

10111029
func testGracefulShutdownEscalation() async throws {
10121030
let mockService = MockService(description: "Service1")
@@ -1501,3 +1519,4 @@ final class ServiceGroupTests: XCTestCase {
15011519
)
15021520
}
15031521
}
1522+
#endif

Tests/UnixSignalsTests/UnixSignalTests.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
//
1313
//===----------------------------------------------------------------------===//
1414

15+
#if !os(Windows)
16+
1517
import UnixSignals
1618
import XCTest
1719
#if canImport(Darwin)
@@ -154,3 +156,5 @@ final class UnixSignalTests: XCTestCase {
154156
await task.value
155157
}
156158
}
159+
160+
#endif

0 commit comments

Comments
 (0)