From 41d2db7675b18b4157451d8397101979c5dbffe3 Mon Sep 17 00:00:00 2001 From: tomer doron Date: Fri, 3 Apr 2020 19:50:13 -0700 Subject: [PATCH] update ci setup (#67) motivation: 5.2 adoption, prepare for 5.3 changes: * add 5.2 docker-compose setup * add 5.3 docker-compose setup (placeholder) * remove 4.2 docker-compose setup * format --- .swiftformat | 2 +- Sources/CoreMetrics/Locks.swift | 4 ++-- docker/Dockerfile | 7 +++---- docker/docker-compose.1804.42.yaml | 15 --------------- docker/docker-compose.1804.52.yaml | 18 ++++++++++++++++++ docker/docker-compose.1804.53.yaml | 17 +++++++++++++++++ 6 files changed, 41 insertions(+), 22 deletions(-) delete mode 100644 docker/docker-compose.1804.42.yaml create mode 100644 docker/docker-compose.1804.52.yaml create mode 100644 docker/docker-compose.1804.53.yaml diff --git a/.swiftformat b/.swiftformat index 4212a06..ffccb20 100644 --- a/.swiftformat +++ b/.swiftformat @@ -1,5 +1,6 @@ # file options +--swiftversion 5.0 --exclude .build # format options @@ -7,7 +8,6 @@ --self insert --patternlet inline --stripunusedargs unnamed-only ---comments ignore --ifdef no-indent # rules diff --git a/Sources/CoreMetrics/Locks.swift b/Sources/CoreMetrics/Locks.swift index 79aa6c1..f90c7a7 100644 --- a/Sources/CoreMetrics/Locks.swift +++ b/Sources/CoreMetrics/Locks.swift @@ -38,7 +38,7 @@ import Glibc /// of lock is safe to use with `libpthread`-based threading models, such as the /// one used by NIO. internal final class Lock { - fileprivate let mutex: UnsafeMutablePointer = UnsafeMutablePointer.allocate(capacity: 1) + private let mutex: UnsafeMutablePointer = UnsafeMutablePointer.allocate(capacity: 1) /// Create a new lock. public init() { @@ -102,7 +102,7 @@ extension Lock { /// of lock is safe to use with `libpthread`-based threading models, such as the /// one used by NIO. internal final class ReadWriteLock { - fileprivate let rwlock: UnsafeMutablePointer = UnsafeMutablePointer.allocate(capacity: 1) + private let rwlock: UnsafeMutablePointer = UnsafeMutablePointer.allocate(capacity: 1) /// Create a new lock. public init() { diff --git a/docker/Dockerfile b/docker/Dockerfile index 35e07aa..cfd977c 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,8 +1,7 @@ ARG swift_version=5.0 ARG ubuntu_version=bionic -# backwards compatibility for 4.2 images -ARG image_version=$swift_version-$ubuntu_version -FROM swift:$image_version +ARG base_image=swift:$swift_version-$ubuntu_version +FROM $base_image # needed to do again after FROM due to docker limitation ARG swift_version ARG ubuntu_version @@ -31,7 +30,7 @@ RUN chmod 755 $HOME/.tools/symbolicate-linux-fatal # swiftformat (until part of the toolchain) -ARG swiftformat_version=0.40.12 +ARG swiftformat_version=0.44.6 RUN git clone --branch $swiftformat_version --depth 1 https://github.com/nicklockwood/SwiftFormat $HOME/.tools/swift-format RUN cd $HOME/.tools/swift-format && swift build -c release RUN ln -s $HOME/.tools/swift-format/.build/release/swiftformat $HOME/.tools/swiftformat diff --git a/docker/docker-compose.1804.42.yaml b/docker/docker-compose.1804.42.yaml deleted file mode 100644 index da37686..0000000 --- a/docker/docker-compose.1804.42.yaml +++ /dev/null @@ -1,15 +0,0 @@ -version: "3" - -services: - - runtime-setup: - image: swift-metrics:18.04-4.2 - build: - args: - image_version: "4.2" - - test: - image: swift-metrics:18.04-4.2 - - shell: - image: swift-metrics:18.04-4.2 diff --git a/docker/docker-compose.1804.52.yaml b/docker/docker-compose.1804.52.yaml new file mode 100644 index 0000000..ee6f33c --- /dev/null +++ b/docker/docker-compose.1804.52.yaml @@ -0,0 +1,18 @@ +version: "3" + +services: + + runtime-setup: + image: swift-metrics:18.04-5.2 + build: + args: + ubuntu_version: "bionic" + swift_version: "5.2" + + test: + image: swift-metrics:18.04-5.2 + environment: [] + #- SANITIZER_ARG=--sanitize=thread + + shell: + image: swift-metrics:18.04-5.2 diff --git a/docker/docker-compose.1804.53.yaml b/docker/docker-compose.1804.53.yaml new file mode 100644 index 0000000..367c571 --- /dev/null +++ b/docker/docker-compose.1804.53.yaml @@ -0,0 +1,17 @@ +version: "3" + +services: + + runtime-setup: + image: swift-metrics:18.04-5.3 + build: + args: + base_image: "swiftlang/swift:nightly-master-bionic" + + test: + image: swift-metrics:18.04-5.3 + environment: [] + #- SANITIZER_ARG=--sanitize=thread + + shell: + image: swift-metrics:18.04-5.3