Skip to content

Commit 7000491

Browse files
committed
Migrate code to Swift 4
1 parent 4b0ac9f commit 7000491

File tree

7 files changed

+33
-13
lines changed

7 files changed

+33
-13
lines changed

Jayme.xcodeproj/project.pbxproj

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -468,16 +468,16 @@
468468
isa = PBXProject;
469469
attributes = {
470470
LastSwiftUpdateCheck = 0730;
471-
LastUpgradeCheck = 0800;
471+
LastUpgradeCheck = 0920;
472472
ORGANIZATIONNAME = Inaka;
473473
TargetAttributes = {
474474
5163A0081CD7873800B0EEEF = {
475475
CreatedOnToolsVersion = 7.3;
476-
LastSwiftMigration = 0800;
476+
LastSwiftMigration = 0920;
477477
};
478478
5163A01C1CD7873800B0EEEF = {
479479
CreatedOnToolsVersion = 7.3;
480-
LastSwiftMigration = 0800;
480+
LastSwiftMigration = 0920;
481481
TestTargetID = 5163A0081CD7873800B0EEEF;
482482
};
483483
};
@@ -623,14 +623,20 @@
623623
CLANG_CXX_LIBRARY = "libc++";
624624
CLANG_ENABLE_MODULES = YES;
625625
CLANG_ENABLE_OBJC_ARC = YES;
626+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
626627
CLANG_WARN_BOOL_CONVERSION = YES;
628+
CLANG_WARN_COMMA = YES;
627629
CLANG_WARN_CONSTANT_CONVERSION = YES;
628630
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
629631
CLANG_WARN_EMPTY_BODY = YES;
630632
CLANG_WARN_ENUM_CONVERSION = YES;
631633
CLANG_WARN_INFINITE_RECURSION = YES;
632634
CLANG_WARN_INT_CONVERSION = YES;
635+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
636+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
633637
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
638+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
639+
CLANG_WARN_STRICT_PROTOTYPES = YES;
634640
CLANG_WARN_SUSPICIOUS_MOVE = YES;
635641
CLANG_WARN_UNREACHABLE_CODE = YES;
636642
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -658,6 +664,7 @@
658664
ONLY_ACTIVE_ARCH = YES;
659665
SDKROOT = iphoneos;
660666
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
667+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
661668
TARGETED_DEVICE_FAMILY = "1,2";
662669
};
663670
name = Debug;
@@ -671,14 +678,20 @@
671678
CLANG_CXX_LIBRARY = "libc++";
672679
CLANG_ENABLE_MODULES = YES;
673680
CLANG_ENABLE_OBJC_ARC = YES;
681+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
674682
CLANG_WARN_BOOL_CONVERSION = YES;
683+
CLANG_WARN_COMMA = YES;
675684
CLANG_WARN_CONSTANT_CONVERSION = YES;
676685
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
677686
CLANG_WARN_EMPTY_BODY = YES;
678687
CLANG_WARN_ENUM_CONVERSION = YES;
679688
CLANG_WARN_INFINITE_RECURSION = YES;
680689
CLANG_WARN_INT_CONVERSION = YES;
690+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
691+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
681692
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
693+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
694+
CLANG_WARN_STRICT_PROTOTYPES = YES;
682695
CLANG_WARN_SUSPICIOUS_MOVE = YES;
683696
CLANG_WARN_UNREACHABLE_CODE = YES;
684697
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -699,6 +712,7 @@
699712
MTL_ENABLE_DEBUG_INFO = NO;
700713
SDKROOT = iphoneos;
701714
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
715+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
702716
TARGETED_DEVICE_FAMILY = "1,2";
703717
VALIDATE_PRODUCT = YES;
704718
};
@@ -712,7 +726,8 @@
712726
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
713727
PRODUCT_BUNDLE_IDENTIFIER = com.inaka.Jayme;
714728
PRODUCT_NAME = "$(TARGET_NAME)";
715-
SWIFT_VERSION = 3.0;
729+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
730+
SWIFT_VERSION = 4.0;
716731
};
717732
name = Debug;
718733
};
@@ -724,7 +739,8 @@
724739
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
725740
PRODUCT_BUNDLE_IDENTIFIER = com.inaka.Jayme;
726741
PRODUCT_NAME = "$(TARGET_NAME)";
727-
SWIFT_VERSION = 3.0;
742+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
743+
SWIFT_VERSION = 4.0;
728744
};
729745
name = Release;
730746
};
@@ -736,7 +752,8 @@
736752
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
737753
PRODUCT_BUNDLE_IDENTIFIER = com.inaka.JaymeTests;
738754
PRODUCT_NAME = "$(TARGET_NAME)";
739-
SWIFT_VERSION = 3.0;
755+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
756+
SWIFT_VERSION = 4.0;
740757
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jayme.app/Jayme";
741758
};
742759
name = Debug;
@@ -749,7 +766,8 @@
749766
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
750767
PRODUCT_BUNDLE_IDENTIFIER = com.inaka.JaymeTests;
751768
PRODUCT_NAME = "$(TARGET_NAME)";
752-
SWIFT_VERSION = 3.0;
769+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
770+
SWIFT_VERSION = 4.0;
753771
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Jayme.app/Jayme";
754772
};
755773
name = Release;

Jayme.xcodeproj/xcshareddata/xcschemes/Jayme.xcscheme

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0800"
3+
LastUpgradeVersion = "0920"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -26,6 +26,7 @@
2626
buildConfiguration = "Debug"
2727
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
2828
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
language = ""
2930
shouldUseLaunchSchemeArgsEnv = "YES"
3031
codeCoverageEnabled = "YES">
3132
<Testables>
@@ -56,6 +57,7 @@
5657
buildConfiguration = "Debug"
5758
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
5859
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
60+
language = ""
5961
launchStyle = "0"
6062
useCustomWorkingDirectory = "NO"
6163
ignoresPersistentStateOnLaunch = "NO"

Jayme/HTTPResponseParser.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ open class HTTPResponseParser {
4141
return .failure(error)
4242
}
4343
let pageInfo = self.pageInfo(fromHeaders: urlResponse.allHeaderFields)
44-
return .success(data: response.data, pageInfo: pageInfo)
44+
return .success((data: response.data, pageInfo: pageInfo))
4545
}
4646

4747
// MARK: - Private

Jayme/Logger.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ open class Logger {
3535
// MARK: - Private
3636

3737
internal var requestCounter = 0
38-
internal func log(_ items: Any..., _ separator: String = " ", _ terminator: String = "\n") {
38+
internal func log(_ items: Any..., separator: String = " ", terminator: String = "\n") {
3939

4040
if self.enableLogs {
4141
guard let loggingFunction = self.loggingFunction else {

Jayme/URLSessionBackend.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ open class URLSessionBackend: Backend {
7878
switch result {
7979
case .success(let maybeData, let pageInfo):
8080
Logger.sharedLogger.log("Jayme: Response #\(requestNumber) | Success")
81-
completion(.success(maybeData, pageInfo))
81+
completion(.success((maybeData, pageInfo)))
8282
case .failure(let error):
8383
Logger.sharedLogger.log("Jayme: Response #\(requestNumber) | Failure, error: \(error)")
8484
completion(.failure(error))

JaymeTests/FakeHTTPResponseParser.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class FakeHTTPResponseParser: HTTPResponseParser {
2626
var response: FullHTTPResponse?
2727
var result: HTTPResponseParserResult
2828

29-
init(result: HTTPResponseParserResult = .success(data: nil, pageInfo: nil)) {
29+
init(result: HTTPResponseParserResult = .success((data: nil, pageInfo: nil))) {
3030
self.result = result
3131
}
3232

JaymeTests/URLSessionBackendTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ extension URLSessionBackendTests {
110110
if let _ = error { XCTFail() }
111111
guard
112112
let response = parser.response,
113-
let error = response.error as? NSError
113+
let error = response.error as NSError?
114114
else { XCTFail(); return }
115115
XCTAssertEqual(response.data, exampleData)
116116
XCTAssertEqual(response.urlResponse, exampleURLResponse)

0 commit comments

Comments
 (0)