From cb488a616c5504725eb88720bfe365d4d4ead747 Mon Sep 17 00:00:00 2001 From: takahashi-nobuhiro Date: Mon, 15 Apr 2019 12:20:37 +0900 Subject: [PATCH] Swift 5 --- Cartfile.resolved | 2 +- SwiftTask.xcodeproj/project.pbxproj | 21 ++++++++++++------- .../xcshareddata/xcschemes/SwiftTask.xcscheme | 4 +--- SwiftTask/_RecursiveLock.swift | 9 +++++++- SwiftTaskTests/BasicTests.swift | 4 ++-- SwiftTaskTests/RemoveHandlerTests.swift | 4 ++-- SwiftTaskTests/_TestCase.swift | 2 +- 7 files changed, 28 insertions(+), 18 deletions(-) diff --git a/Cartfile.resolved b/Cartfile.resolved index 41e0e6e..5692381 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1,2 +1,2 @@ -github "duemunk/Async" "2.0.0" +github "duemunk/Async" "2.0.5" github "mrackwitz/xcconfigs" "3.0" diff --git a/SwiftTask.xcodeproj/project.pbxproj b/SwiftTask.xcodeproj/project.pbxproj index ac6b1ab..2bfafc9 100644 --- a/SwiftTask.xcodeproj/project.pbxproj +++ b/SwiftTask.xcodeproj/project.pbxproj @@ -303,16 +303,16 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0900; + LastUpgradeCheck = 1020; ORGANIZATIONNAME = "Yasuhiro Inami"; TargetAttributes = { 1F46DED3199EDF1000F97868 = { CreatedOnToolsVersion = 6.0; - LastSwiftMigration = 0800; + LastSwiftMigration = 1020; }; 1F46DEDE199EDF1000F97868 = { CreatedOnToolsVersion = 6.0; - LastSwiftMigration = 0800; + LastSwiftMigration = 1020; }; 4822F0CF19D00ABF00F5F572 = { CreatedOnToolsVersion = 6.0.1; @@ -321,7 +321,7 @@ }; buildConfigurationList = 1F46DECE199EDF1000F97868 /* Build configuration list for PBXProject "SwiftTask" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -437,12 +437,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -490,12 +492,14 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -517,6 +521,7 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MTL_ENABLE_DEBUG_INFO = NO; + SWIFT_COMPILATION_MODE = wholemodule; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -538,7 +543,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.inamiy.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(PROJECT_NAME)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -558,7 +563,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.inamiy.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(PROJECT_NAME)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; }; name = Release; }; @@ -576,7 +581,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.inamiy.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -590,7 +595,7 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.inamiy.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.0; }; name = Release; }; diff --git a/SwiftTask.xcodeproj/xcshareddata/xcschemes/SwiftTask.xcscheme b/SwiftTask.xcodeproj/xcshareddata/xcschemes/SwiftTask.xcscheme index 234c8fd..1a51922 100644 --- a/SwiftTask.xcodeproj/xcshareddata/xcschemes/SwiftTask.xcscheme +++ b/SwiftTask.xcodeproj/xcshareddata/xcschemes/SwiftTask.xcscheme @@ -1,6 +1,6 @@ =4.1) + self.attribute.deallocate() + #else self.attribute.deallocate(capacity: 1) + #endif + #if swift(>=4.1) + self.mutex.deallocate() + #else self.mutex.deallocate(capacity: 1) + #endif } internal func lock() diff --git a/SwiftTaskTests/BasicTests.swift b/SwiftTaskTests/BasicTests.swift index 8f8981d..67d1ed9 100644 --- a/SwiftTaskTests/BasicTests.swift +++ b/SwiftTaskTests/BasicTests.swift @@ -52,7 +52,7 @@ class BasicTests: _TestCase }.then { value, errorInfo -> Task in // `task.then {...}` = JavaScript's `promise.then(onFulfilled, onRejected)` - print("value = \(value)") // either "Now OK" or "Now RECOVERED" + print("value = \(value ?? "")") // either "Now OK" or "Now RECOVERED" XCTAssertTrue(value!.hasPrefix("Now")) XCTAssertTrue(errorInfo == nil) @@ -61,7 +61,7 @@ class BasicTests: _TestCase }.then { value, errorInfo -> Void in - print("errorInfo = \(errorInfo)") + print("errorInfo = \(errorInfo ?? "")") XCTAssertTrue(value == nil) XCTAssertEqual(errorInfo!.error!, "ABORT") diff --git a/SwiftTaskTests/RemoveHandlerTests.swift b/SwiftTaskTests/RemoveHandlerTests.swift index 1ced127..32176d3 100644 --- a/SwiftTaskTests/RemoveHandlerTests.swift +++ b/SwiftTaskTests/RemoveHandlerTests.swift @@ -86,8 +86,8 @@ class RemoveHandlerTests: _TestCase }.then { value, errorInfo -> Void in - print("value = \(value)") - print("errorInfo = \(errorInfo)") + print("value = \(value ?? "")") + print("errorInfo = \(errorInfo ?? "")") XCTAssertTrue(value == nil) XCTAssertTrue(errorInfo != nil) diff --git a/SwiftTaskTests/_TestCase.swift b/SwiftTaskTests/_TestCase.swift index 0c21690..a1b0d78 100644 --- a/SwiftTaskTests/_TestCase.swift +++ b/SwiftTaskTests/_TestCase.swift @@ -29,7 +29,7 @@ class _TestCase: XCTestCase func wait(_ timeout: TimeInterval = 3) { self.waitForExpectations(timeout: timeout) { error in - print("wait error = \(error)") + print("wait error = \(error ?? "")") } }