diff --git a/.swift-version b/.swift-version
index 9f55b2c..5186d07 100644
--- a/.swift-version
+++ b/.swift-version
@@ -1 +1 @@
-3.0
+4.0
diff --git a/.travis.yml b/.travis.yml
index dbd1bff..dada64c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,9 +3,9 @@
# * https://github.com/supermarin/xcpretty#usage
language: objective-c
-osx_image: xcode8
+osx_image: xcode9
before_install:
- gem install cocoapods xcpretty --no-rdoc --no-ri --no-document --quiet
script:
-- set -o pipefail && xcodebuild test -workspace SimpleAnimation.xcworkspace -scheme SimpleAnimation -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 6,OS=10.0' ONLY_ACTIVE_ARCH=NO | xcpretty
+- set -o pipefail && xcodebuild test -workspace SimpleAnimation.xcworkspace -scheme SimpleAnimation -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 6,OS=11.0' ONLY_ACTIVE_ARCH=NO | xcpretty
- pod lib lint --quick
diff --git a/Example/Example.xcodeproj/project.pbxproj b/Example/Example.xcodeproj/project.pbxproj
index afed0c2..86e9195 100644
--- a/Example/Example.xcodeproj/project.pbxproj
+++ b/Example/Example.xcodeproj/project.pbxproj
@@ -12,7 +12,6 @@
400523801CC973C600E6DDA3 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 4005237F1CC973C600E6DDA3 /* Assets.xcassets */; };
400523871CC973E100E6DDA3 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 400523831CC973E100E6DDA3 /* LaunchScreen.xib */; };
400523881CC973E100E6DDA3 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 400523851CC973E100E6DDA3 /* Main.storyboard */; };
- 4005238A1CC973F200E6DDA3 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 400523891CC973F200E6DDA3 /* Info.plist */; };
407C88111F4B2AD60077A2BC /* UIView+SimpleAnimation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 407C88101F4B2AD60077A2BC /* UIView+SimpleAnimation.swift */; };
/* End PBXBuildFile section */
@@ -100,7 +99,7 @@
TargetAttributes = {
400523501CC7B94C00E6DDA3 = {
CreatedOnToolsVersion = 7.3;
- LastSwiftMigration = 0800;
+ LastSwiftMigration = 0920;
};
};
};
@@ -127,7 +126,6 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- 4005238A1CC973F200E6DDA3 /* Info.plist in Resources */,
400523881CC973E100E6DDA3 /* Main.storyboard in Resources */,
400523871CC973E100E6DDA3 /* LaunchScreen.xib in Resources */,
400523801CC973C600E6DDA3 /* Assets.xcassets in Resources */,
@@ -265,7 +263,8 @@
PRODUCT_BUNDLE_IDENTIFIER = com.keithito.SimpleAnimationExample;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
- SWIFT_VERSION = 3.0;
+ SWIFT_SWIFT3_OBJC_INFERENCE = Default;
+ SWIFT_VERSION = 4.0;
};
name = Debug;
};
@@ -279,7 +278,8 @@
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.keithito.SimpleAnimationExample;
PRODUCT_NAME = "$(TARGET_NAME)";
- SWIFT_VERSION = 3.0;
+ SWIFT_SWIFT3_OBJC_INFERENCE = Default;
+ SWIFT_VERSION = 4.0;
};
name = Release;
};
diff --git a/README.md b/README.md
index 3caa33b..ae23dc9 100644
--- a/README.md
+++ b/README.md
@@ -30,8 +30,6 @@ view.shake(toward: .top, amount: 0.5, duration: 2, delay: 0.5)
```
-SimpleAnimation is written in Swift 3, but older versions can be used with Swift 2.
-
## Installation
diff --git a/SimpleAnimation.xcodeproj/project.pbxproj b/SimpleAnimation.xcodeproj/project.pbxproj
index a87c90f..8f985c1 100644
--- a/SimpleAnimation.xcodeproj/project.pbxproj
+++ b/SimpleAnimation.xcodeproj/project.pbxproj
@@ -145,7 +145,7 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0730;
- LastUpgradeCheck = 0800;
+ LastUpgradeCheck = 0920;
ORGANIZATIONNAME = "Keith Ito";
TargetAttributes = {
400523231CC7B47800E6DDA3 = {
@@ -233,14 +233,20 @@
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = 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_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -285,14 +291,20 @@
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = 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_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
diff --git a/SimpleAnimation.xcodeproj/xcshareddata/xcschemes/SimpleAnimation.xcscheme b/SimpleAnimation.xcodeproj/xcshareddata/xcschemes/SimpleAnimation.xcscheme
index 46946cc..ca79846 100644
--- a/SimpleAnimation.xcodeproj/xcshareddata/xcschemes/SimpleAnimation.xcscheme
+++ b/SimpleAnimation.xcodeproj/xcshareddata/xcschemes/SimpleAnimation.xcscheme
@@ -1,6 +1,6 @@