From e4d7c305e95e2ccc61df4fdf86a31e3d7ea54f80 Mon Sep 17 00:00:00 2001 From: Rick Newton-Rogers Date: Fri, 31 Oct 2025 10:13:50 +0000 Subject: [PATCH 1/2] CI: enable subdirectory package manifest discovery Enable subdirectory package manifest discovery so that it can accurately determine which Swift versions it should generate jobs for. --- .github/workflows/main.yml | 2 ++ .github/workflows/pull_request.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fad1270..a3e1282 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -32,6 +32,7 @@ jobs: run: echo "build-test-matrix=$(curl -s https://raw.githubusercontent.com/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" env: MATRIX_LINUX_COMMAND: STRICT_CONCURRENCY=true SWIFT_PACKAGE_DIRECTORIES='TLSify UniversalBootstrapDemo http-responsiveness-server connect-proxy http2-client http2-server json-rpc nio-launchd' dev/build_all.sh && SWIFT_PACKAGE_DIRECTORIES='backpressure-file-io-channel' dev/build_all.sh + FIND_SUBDIRECTORY_MANIFESTS_ENABLED: true build-tests: name: Builds @@ -55,6 +56,7 @@ jobs: run: echo "build-test-matrix=$(curl -s https://raw.githubusercontent.com/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" env: MATRIX_LINUX_COMMAND: EXTRA_BUILD_FLAGS='-c release' SWIFT_PACKAGE_DIRECTORIES='TLSify UniversalBootstrapDemo http-responsiveness-server connect-proxy http2-client http2-server json-rpc nio-launchd' dev/build_all.sh && SWIFT_PACKAGE_DIRECTORIES='backpressure-file-io-channel' dev/build_all.sh + FIND_SUBDIRECTORY_MANIFESTS_ENABLED: true release-build-tests: name: Release build tests diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 91a7a6f..cfcdc9d 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -30,6 +30,7 @@ jobs: run: echo "build-test-matrix=$(curl -s https://raw.githubusercontent.com/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" env: MATRIX_LINUX_COMMAND: STRICT_CONCURRENCY=true SWIFT_PACKAGE_DIRECTORIES='TLSify UniversalBootstrapDemo http-responsiveness-server connect-proxy http2-client http2-server json-rpc nio-launchd' dev/build_all.sh && SWIFT_PACKAGE_DIRECTORIES='backpressure-file-io-channel' dev/build_all.sh + FIND_SUBDIRECTORY_MANIFESTS_ENABLED: true build-tests: name: Build tests @@ -53,6 +54,7 @@ jobs: run: echo "build-test-matrix=$(curl -s https://raw.githubusercontent.com/apple/swift-nio/main/scripts/generate_matrix.sh | bash)" >> "$GITHUB_OUTPUT" env: MATRIX_LINUX_COMMAND: EXTRA_BUILD_FLAGS='-c release' SWIFT_PACKAGE_DIRECTORIES='TLSify UniversalBootstrapDemo http-responsiveness-server connect-proxy http2-client http2-server json-rpc nio-launchd' dev/build_all.sh && SWIFT_PACKAGE_DIRECTORIES='backpressure-file-io-channel' dev/build_all.sh + FIND_SUBDIRECTORY_MANIFESTS_ENABLED: true release-build-tests: name: Release build tests From fb82bf42eccc18a30099f3482a62a4cdbc962381 Mon Sep 17 00:00:00 2001 From: Rick Newton-Rogers Date: Fri, 31 Oct 2025 11:05:26 +0000 Subject: [PATCH 2/2] increase json-rpc to Swift 6.0 --- json-rpc/Package.swift | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/json-rpc/Package.swift b/json-rpc/Package.swift index fffaae7..d138c9d 100644 --- a/json-rpc/Package.swift +++ b/json-rpc/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:5.9 +// swift-tools-version:6.0 //===----------------------------------------------------------------------===// // // This source file is part of the SwiftNIO open source project @@ -17,17 +17,7 @@ import PackageDescription let strictConcurrencyDevelopment = false -let strictConcurrencySettings: [SwiftSetting] = { - var initialSettings: [SwiftSetting] = [] - - if strictConcurrencyDevelopment { - // -warnings-as-errors here is a workaround so that IDE-based development can - // get tripped up on -require-explicit-sendable. - initialSettings.append(.unsafeFlags(["-Xfrontend", "-require-explicit-sendable", "-warnings-as-errors"])) - } - - return initialSettings -}() +let swiftSettings: [SwiftSetting] = [] let package = Package( name: "swift-json-rpc", @@ -58,21 +48,21 @@ let package = Package( dependencies: [ "JSONRPC" ], - swiftSettings: strictConcurrencySettings + swiftSettings: swiftSettings ), .executableTarget( name: "ClientExample", dependencies: [ "JSONRPC" ], - swiftSettings: strictConcurrencySettings + swiftSettings: swiftSettings ), .executableTarget( name: "LightsdDemo", dependencies: [ "JSONRPC" ], - swiftSettings: strictConcurrencySettings + swiftSettings: swiftSettings ), .testTarget( name: "JSONRPCTests", @@ -82,7 +72,7 @@ let package = Package( .product(name: "NIOPosix", package: "swift-nio"), ], path: "Tests/JsonRpcTests", - swiftSettings: strictConcurrencySettings + swiftSettings: swiftSettings ), ] )