Skip to content

Commit d79b83d

Browse files
committed
Swift 4
1 parent 2f56db8 commit d79b83d

File tree

7 files changed

+44
-17
lines changed

7 files changed

+44
-17
lines changed

Diff.xcodeproj/project.pbxproj

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@
363363
isa = PBXProject;
364364
attributes = {
365365
LastSwiftUpdateCheck = 0730;
366-
LastUpgradeCheck = 0800;
366+
LastUpgradeCheck = 0920;
367367
ORGANIZATIONNAME = "Sam Soffes";
368368
TargetAttributes = {
369369
2175D3A41D17267D009C6845 = {
@@ -564,14 +564,20 @@
564564
CLANG_CXX_LIBRARY = "libc++";
565565
CLANG_ENABLE_MODULES = YES;
566566
CLANG_ENABLE_OBJC_ARC = YES;
567+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
567568
CLANG_WARN_BOOL_CONVERSION = YES;
569+
CLANG_WARN_COMMA = YES;
568570
CLANG_WARN_CONSTANT_CONVERSION = YES;
569571
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
570572
CLANG_WARN_EMPTY_BODY = YES;
571573
CLANG_WARN_ENUM_CONVERSION = YES;
572574
CLANG_WARN_INFINITE_RECURSION = YES;
573575
CLANG_WARN_INT_CONVERSION = YES;
576+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
577+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
574578
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
579+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
580+
CLANG_WARN_STRICT_PROTOTYPES = YES;
575581
CLANG_WARN_SUSPICIOUS_MOVE = YES;
576582
CLANG_WARN_UNREACHABLE_CODE = YES;
577583
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -602,7 +608,8 @@
602608
SDKROOT = iphoneos;
603609
SKIP_INSTALL = YES;
604610
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
605-
SWIFT_VERSION = 3.0.1;
611+
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
612+
SWIFT_VERSION = 4.0;
606613
TARGETED_DEVICE_FAMILY = "1,2";
607614
TVOS_DEPLOYMENT_TARGET = 9.0;
608615
VERSIONING_SYSTEM = "apple-generic";
@@ -621,14 +628,20 @@
621628
CLANG_CXX_LIBRARY = "libc++";
622629
CLANG_ENABLE_MODULES = YES;
623630
CLANG_ENABLE_OBJC_ARC = YES;
631+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
624632
CLANG_WARN_BOOL_CONVERSION = YES;
633+
CLANG_WARN_COMMA = YES;
625634
CLANG_WARN_CONSTANT_CONVERSION = YES;
626635
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
627636
CLANG_WARN_EMPTY_BODY = YES;
628637
CLANG_WARN_ENUM_CONVERSION = YES;
629638
CLANG_WARN_INFINITE_RECURSION = YES;
630639
CLANG_WARN_INT_CONVERSION = YES;
640+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
641+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
631642
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
643+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
644+
CLANG_WARN_STRICT_PROTOTYPES = YES;
632645
CLANG_WARN_SUSPICIOUS_MOVE = YES;
633646
CLANG_WARN_UNREACHABLE_CODE = YES;
634647
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -652,7 +665,8 @@
652665
SDKROOT = iphoneos;
653666
SKIP_INSTALL = YES;
654667
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
655-
SWIFT_VERSION = 3.0.1;
668+
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
669+
SWIFT_VERSION = 4.0;
656670
TARGETED_DEVICE_FAMILY = "1,2";
657671
TVOS_DEPLOYMENT_TARGET = 9.0;
658672
VALIDATE_PRODUCT = YES;
@@ -674,6 +688,7 @@
674688
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
675689
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
676690
PRODUCT_NAME = Diff;
691+
SWIFT_VERSION = 4.0;
677692
};
678693
name = Debug;
679694
};
@@ -689,6 +704,7 @@
689704
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
690705
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
691706
PRODUCT_NAME = Diff;
707+
SWIFT_VERSION = 4.0;
692708
};
693709
name = Release;
694710
};
@@ -700,7 +716,7 @@
700716
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
701717
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
702718
PRODUCT_NAME = DiffTests;
703-
SWIFT_VERSION = 3.0;
719+
SWIFT_VERSION = 4.0;
704720
};
705721
name = Debug;
706722
};
@@ -712,7 +728,7 @@
712728
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
713729
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
714730
PRODUCT_NAME = DiffTests;
715-
SWIFT_VERSION = 3.0;
731+
SWIFT_VERSION = 4.0;
716732
};
717733
name = Release;
718734
};
@@ -731,6 +747,7 @@
731747
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
732748
PRODUCT_NAME = Diff;
733749
SDKROOT = macosx;
750+
SWIFT_VERSION = 4.0;
734751
};
735752
name = Debug;
736753
};
@@ -749,6 +766,7 @@
749766
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
750767
PRODUCT_NAME = Diff;
751768
SDKROOT = macosx;
769+
SWIFT_VERSION = 4.0;
752770
};
753771
name = Release;
754772
};
@@ -764,6 +782,7 @@
764782
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
765783
PRODUCT_NAME = DiffTests;
766784
SDKROOT = macosx;
785+
SWIFT_VERSION = 4.0;
767786
};
768787
name = Debug;
769788
};
@@ -779,6 +798,7 @@
779798
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
780799
PRODUCT_NAME = DiffTests;
781800
SDKROOT = macosx;
801+
SWIFT_VERSION = 4.0;
782802
};
783803
name = Release;
784804
};
@@ -795,6 +815,7 @@
795815
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
796816
PRODUCT_NAME = Diff;
797817
SDKROOT = watchos;
818+
SWIFT_VERSION = 4.0;
798819
TARGETED_DEVICE_FAMILY = 4;
799820
};
800821
name = Debug;
@@ -812,6 +833,7 @@
812833
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
813834
PRODUCT_NAME = Diff;
814835
SDKROOT = watchos;
836+
SWIFT_VERSION = 4.0;
815837
TARGETED_DEVICE_FAMILY = 4;
816838
};
817839
name = Release;
@@ -829,6 +851,7 @@
829851
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
830852
PRODUCT_NAME = Diff;
831853
SDKROOT = appletvos;
854+
SWIFT_VERSION = 4.0;
832855
TARGETED_DEVICE_FAMILY = 3;
833856
};
834857
name = Debug;
@@ -846,6 +869,7 @@
846869
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff;
847870
PRODUCT_NAME = Diff;
848871
SDKROOT = appletvos;
872+
SWIFT_VERSION = 4.0;
849873
TARGETED_DEVICE_FAMILY = 3;
850874
};
851875
name = Release;
@@ -859,6 +883,7 @@
859883
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
860884
PRODUCT_NAME = DiffTests;
861885
SDKROOT = appletvos;
886+
SWIFT_VERSION = 4.0;
862887
TVOS_DEPLOYMENT_TARGET = 9.2;
863888
};
864889
name = Debug;
@@ -872,6 +897,7 @@
872897
PRODUCT_BUNDLE_IDENTIFIER = com.samsoffes.diff.tests;
873898
PRODUCT_NAME = DiffTests;
874899
SDKROOT = appletvos;
900+
SWIFT_VERSION = 4.0;
875901
TVOS_DEPLOYMENT_TARGET = 9.2;
876902
};
877903
name = Release;

Diff.xcodeproj/xcshareddata/xcschemes/Diff-iOS.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
<Testables>
3132
<TestableReference
@@ -55,6 +56,7 @@
5556
buildConfiguration = "Debug"
5657
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
5758
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
59+
language = ""
5860
launchStyle = "0"
5961
useCustomWorkingDirectory = "NO"
6062
ignoresPersistentStateOnLaunch = "NO"

Diff.xcodeproj/xcshareddata/xcschemes/Diff-macOS.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
<Testables>
3132
<TestableReference
@@ -55,6 +56,7 @@
5556
buildConfiguration = "Debug"
5657
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
5758
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
59+
language = ""
5860
launchStyle = "0"
5961
useCustomWorkingDirectory = "NO"
6062
ignoresPersistentStateOnLaunch = "NO"

Diff.xcodeproj/xcshareddata/xcschemes/Diff-tvOS.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
<Testables>
3132
<TestableReference
@@ -55,6 +56,7 @@
5556
buildConfiguration = "Debug"
5657
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
5758
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
59+
language = ""
5860
launchStyle = "0"
5961
useCustomWorkingDirectory = "NO"
6062
ignoresPersistentStateOnLaunch = "NO"

Diff.xcodeproj/xcshareddata/xcschemes/Diff-watchOS.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
<Testables>
3132
</Testables>
@@ -36,6 +37,7 @@
3637
buildConfiguration = "Debug"
3738
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
3839
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
40+
language = ""
3941
launchStyle = "0"
4042
useCustomWorkingDirectory = "NO"
4143
ignoresPersistentStateOnLaunch = "NO"

Sources/Diff.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
//
88

99
public func diff(_ before: String, _ after: String) -> (CountableRange<Int>, String)? {
10-
let result = diff(Array(before.characters), Array(after.characters))
10+
let result = diff(Array(before), Array(after))
1111
return result.flatMap { ($0.0, String($0.1)) }
1212
}
1313

Tests/DiffTests/NSStringTests.swift

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,3 @@ class NSStringTests: XCTestCase {
1616
XCTAssertEqual("there" as NSString, string)
1717
}
1818
}
19-
20-
21-
extension NSRange: Equatable {}
22-
23-
public func ==(lhs: NSRange, rhs: NSRange) -> Bool {
24-
return NSEqualRanges(lhs, rhs)
25-
}

0 commit comments

Comments
 (0)