diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index dde835273..6382fcd4d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -57,6 +57,8 @@ A good AsyncHTTPClient patch is: 3. Documented, adding API documentation as needed to cover new functions and properties. 4. Accompanied by a great commit message, using our commit message template. +*Note* as of version 1.5.0 AsyncHTTPClient requires Swift 5.2. Earlier versions support as far back as Swift 5.0. + ### Commit Message Template We require that your commit messages match our template. The easiest way to do that is to get git to help you by explicitly using the template. To do that, `cd` to the root of our repository and run: diff --git a/Package.swift b/Package.swift index b579b608a..8aa9f31e7 100644 --- a/Package.swift +++ b/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:5.0 +// swift-tools-version:5.2 //===----------------------------------------------------------------------===// // // This source file is part of the AsyncHTTPClient open source project @@ -30,13 +30,30 @@ let package = Package( targets: [ .target( name: "AsyncHTTPClient", - dependencies: ["NIO", "NIOHTTP1", "NIOSSL", "NIOConcurrencyHelpers", "NIOHTTPCompression", - "NIOFoundationCompat", "NIOTransportServices", "Logging", "NIOSOCKS"] + dependencies: [ + .product(name: "NIO", package: "swift-nio"), + .product(name: "NIOHTTP1", package: "swift-nio"), + .product(name: "NIOSSL", package: "swift-nio-ssl"), + .product(name: "NIOConcurrencyHelpers", package: "swift-nio"), + .product(name: "NIOHTTPCompression", package: "swift-nio-extras"), + .product(name: "NIOFoundationCompat", package: "swift-nio"), + .product(name: "NIOTransportServices", package: "swift-nio-transport-services"), + .product(name: "Logging", package: "swift-log"), + .product(name: "NIOSOCKS", package: "swift-nio-extras"), + ] ), .testTarget( name: "AsyncHTTPClientTests", - dependencies: ["NIO", "NIOConcurrencyHelpers", "NIOSSL", "AsyncHTTPClient", "NIOFoundationCompat", - "NIOTestUtils", "Logging", "NIOSOCKS"] + dependencies: [ + .product(name: "NIO", package: "swift-nio"), + .product(name: "NIOConcurrencyHelpers", package: "swift-nio"), + .product(name: "NIOSSL", package: "swift-nio-ssl"), + "AsyncHTTPClient", + .product(name: "NIOFoundationCompat", package: "swift-nio"), + .product(name: "NIOTestUtils", package: "swift-nio"), + .product(name: "Logging", package: "swift-log"), + .product(name: "NIOSOCKS", package: "swift-nio-extras"), + ] ), ] ) diff --git a/README.md b/README.md index f40936715..1966b958a 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ This library provides the following: --- -**NOTE**: You will need [Xcode 10.2](https://itunes.apple.com/us/app/xcode/id497799835) or [Swift 5.0](https://swift.org/download/#swift-50) to try out `AsyncHTTPClient`. +**NOTE**: You will need [Xcode 11.4](https://apps.apple.com/gb/app/xcode/id497799835?mt=12) or [Swift 5.2](https://swift.org/download/#swift-52) to try out `AsyncHTTPClient`. --- diff --git a/docker/Dockerfile b/docker/Dockerfile index 6caf07109..7bf9faadf 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -ARG swift_version=5.0 +ARG swift_version=5.2 ARG ubuntu_version=bionic ARG base_image=swift:$swift_version-$ubuntu_version FROM $base_image diff --git a/docker/docker-compose.1604.51.yaml b/docker/docker-compose.1604.52.yaml similarity index 54% rename from docker/docker-compose.1604.51.yaml rename to docker/docker-compose.1604.52.yaml index 4949e2f2c..4f74bca9f 100644 --- a/docker/docker-compose.1604.51.yaml +++ b/docker/docker-compose.1604.52.yaml @@ -3,16 +3,16 @@ version: "3" services: runtime-setup: - image: async-http-client:16.04-5.1 + image: async-http-client:16.04-5.2 build: args: ubuntu_version: "xenial" - swift_version: "5.1" + swift_version: "5.2" test: - image: async-http-client:16.04-5.1 + image: async-http-client:16.04-5.2 environment: - SANITIZER_ARG=--sanitize=thread shell: - image: async-http-client:16.04-5.1 + image: async-http-client:16.04-5.2 diff --git a/docker/docker-compose.1804.50.yaml b/docker/docker-compose.1804.50.yaml deleted file mode 100644 index 8078b5437..000000000 --- a/docker/docker-compose.1804.50.yaml +++ /dev/null @@ -1,16 +0,0 @@ -version: "3" - -services: - - runtime-setup: - image: async-http-client:18.04-5.0 - build: - args: - ubuntu_version: "bionic" - swift_version: "5.0" - - test: - image: async-http-client:18.04-5.0 - - shell: - image: async-http-client:18.04-5.0 diff --git a/docker/docker-compose.1804.51.yaml b/docker/docker-compose.1804.51.yaml deleted file mode 100644 index 1ca7a60a3..000000000 --- a/docker/docker-compose.1804.51.yaml +++ /dev/null @@ -1,18 +0,0 @@ -version: "3" - -services: - - runtime-setup: - image: async-http-client:18.04-5.1 - build: - args: - ubuntu_version: "bionic" - swift_version: "5.1" - - test: - image: async-http-client:18.04-5.1 - environment: [] - #- SANITIZER_ARG=--sanitize=thread - - shell: - image: async-http-client:18.04-5.1 diff --git a/docker/docker-compose.1804.52.yaml b/docker/docker-compose.1804.52.yaml deleted file mode 100644 index b40f3355c..000000000 --- a/docker/docker-compose.1804.52.yaml +++ /dev/null @@ -1,18 +0,0 @@ -version: "3" - -services: - - runtime-setup: - image: async-http-client:18.04-5.2 - build: - args: - ubuntu_version: "bionic" - swift_version: "5.2" - - test: - image: async-http-client:18.04-5.2 - environment: [] - #- SANITIZER_ARG=--sanitize=thread - - shell: - image: async-http-client:18.04-5.2 diff --git a/scripts/check_no_api_breakages.sh b/scripts/check_no_api_breakages.sh index e2eee38aa..f380e2423 100755 --- a/scripts/check_no_api_breakages.sh +++ b/scripts/check_no_api_breakages.sh @@ -115,7 +115,7 @@ for old_tag in "$@"; do --input-paths "$tmpdir/api-old/$f" -input-paths "$tmpdir/api-new/$f" 2>&1 \ > "$report" 2>&1 - if ! shasum "$report" | grep -q cefc4ee5bb7bcdb7cb5a7747efa178dab3c794d5; then + if ! shasum "$report" | grep -q afd2a1b542b33273920d65821deddc653063c700; then echo ERROR echo >&2 "==============================" echo >&2 "ERROR: public API change in $f"