From 131a3b1d78cf82067613580a8d69f03e73bd8b29 Mon Sep 17 00:00:00 2001 From: Honza Dvorsky Date: Fri, 11 Aug 2023 12:09:57 +0200 Subject: [PATCH 1/3] Enable strict concurrency checking in CI --- docker/docker-compose.2204.58.yaml | 1 + docker/docker-compose.2204.59.yaml | 1 + docker/docker-compose.2204.main.yaml | 1 + 3 files changed, 3 insertions(+) diff --git a/docker/docker-compose.2204.58.yaml b/docker/docker-compose.2204.58.yaml index eb4be59..eca0761 100644 --- a/docker/docker-compose.2204.58.yaml +++ b/docker/docker-compose.2204.58.yaml @@ -13,6 +13,7 @@ services: environment: - WARN_AS_ERROR_ARG=-Xswiftc -warnings-as-errors - IMPORT_CHECK_ARG=--explicit-target-dependency-import-check error + - STRICT_CONCURRENCY_ARG=-Xswiftc -strict-concurrency=complete shell: image: *image diff --git a/docker/docker-compose.2204.59.yaml b/docker/docker-compose.2204.59.yaml index a475877..1ac8741 100644 --- a/docker/docker-compose.2204.59.yaml +++ b/docker/docker-compose.2204.59.yaml @@ -12,6 +12,7 @@ services: environment: - WARN_AS_ERROR_ARG=-Xswiftc -warnings-as-errors - IMPORT_CHECK_ARG=--explicit-target-dependency-import-check error + - STRICT_CONCURRENCY_ARG=-Xswiftc -strict-concurrency=complete shell: image: *image diff --git a/docker/docker-compose.2204.main.yaml b/docker/docker-compose.2204.main.yaml index 31dbe00..b1443e6 100644 --- a/docker/docker-compose.2204.main.yaml +++ b/docker/docker-compose.2204.main.yaml @@ -12,6 +12,7 @@ services: environment: - WARN_AS_ERROR_ARG=-Xswiftc -warnings-as-errors - IMPORT_CHECK_ARG=--explicit-target-dependency-import-check error + - STRICT_CONCURRENCY_ARG=-Xswiftc -strict-concurrency=complete shell: image: *image From c630373ef4cac72985a40bb5a6fa281b3c39899f Mon Sep 17 00:00:00 2001 From: Honza Dvorsky Date: Fri, 11 Aug 2023 12:13:57 +0200 Subject: [PATCH 2/3] Actually use the new flag --- docker/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/docker-compose.yaml b/docker/docker-compose.yaml index 994d8b4..055978f 100644 --- a/docker/docker-compose.yaml +++ b/docker/docker-compose.yaml @@ -30,7 +30,7 @@ services: test: <<: *common - command: /bin/bash -xcl "swift $${SWIFT_TEST_VERB-test} $${WARN_AS_ERROR_ARG-} $${SANITIZER_ARG-} $${IMPORT_CHECK_ARG-}" + command: /bin/bash -xcl "swift $${SWIFT_TEST_VERB-test} $${WARN_AS_ERROR_ARG-} $${SANITIZER_ARG-} $${IMPORT_CHECK_ARG-} $${STRICT_CONCURRENCY_ARG-}" shell: <<: *common From 432ea1ef579aba579c1ecdacfcef2164b145de03 Mon Sep 17 00:00:00 2001 From: Honza Dvorsky Date: Fri, 11 Aug 2023 15:59:01 +0200 Subject: [PATCH 3/3] Fix up Linux imports --- .../AsyncHTTPClientTransport.swift | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Sources/OpenAPIAsyncHTTPClient/AsyncHTTPClientTransport.swift b/Sources/OpenAPIAsyncHTTPClient/AsyncHTTPClientTransport.swift index 35cb654..f09fdbb 100644 --- a/Sources/OpenAPIAsyncHTTPClient/AsyncHTTPClientTransport.swift +++ b/Sources/OpenAPIAsyncHTTPClient/AsyncHTTPClientTransport.swift @@ -15,8 +15,15 @@ import OpenAPIRuntime import AsyncHTTPClient import NIOCore import NIOHTTP1 -import Foundation import NIOFoundationCompat +#if canImport(Darwin) +import Foundation +#else +@preconcurrency import struct Foundation.URL +import struct Foundation.URLComponents +import struct Foundation.Data +import protocol Foundation.LocalizedError +#endif /// A client transport that performs HTTP operations using the HTTPClient type /// provided by the AsyncHTTPClient library.