From 3c334c3396a52167f0be2da92c249c9d61c3cb67 Mon Sep 17 00:00:00 2001 From: "idan.magled" Date: Sun, 3 Feb 2019 23:58:14 +0200 Subject: [PATCH 1/2] - Swift 4.2 fix --- .../CAKeyframeAnimation+Extensions.swift | 10 ++-- .../PullToMakeSoup/PullToMakeSoup.swift | 2 +- PullToMakeSoupDemo.xcodeproj/project.pbxproj | 57 ++++++++++++------- .../xcshareddata/IDEWorkspaceChecks.plist | 8 +++ 4 files changed, 49 insertions(+), 28 deletions(-) create mode 100644 PullToMakeSoupDemo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/PullToMakeSoup/PullToMakeSoup/CAKeyframeAnimation+Extensions.swift b/PullToMakeSoup/PullToMakeSoup/CAKeyframeAnimation+Extensions.swift index 0ee76eb..6e5174b 100644 --- a/PullToMakeSoup/PullToMakeSoup/CAKeyframeAnimation+Extensions.swift +++ b/PullToMakeSoup/PullToMakeSoup/CAKeyframeAnimation+Extensions.swift @@ -21,10 +21,10 @@ enum TimingFunction { func mediaTimingFunction(_ function: TimingFunction) -> CAMediaTimingFunction { switch function { - case .linear: return CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) - case .easeIn: return CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseIn) - case .easeOut: return CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut) - case .easeInEaseOut: return CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) + case .linear: return CAMediaTimingFunction(name: CAMediaTimingFunctionName.linear) + case .easeIn: return CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeIn) + case .easeOut: return CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeOut) + case .easeInEaseOut: return CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut) } } @@ -42,7 +42,7 @@ extension CAKeyframeAnimation { animation.keyTimes = keyTimes as [NSNumber]? animation.duration = duration animation.beginTime = beginTime - animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear) + animation.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.linear) return animation } diff --git a/PullToMakeSoup/PullToMakeSoup/PullToMakeSoup.swift b/PullToMakeSoup/PullToMakeSoup/PullToMakeSoup.swift index c2bb705..3284c52 100644 --- a/PullToMakeSoup/PullToMakeSoup/PullToMakeSoup.swift +++ b/PullToMakeSoup/PullToMakeSoup/PullToMakeSoup.swift @@ -264,7 +264,7 @@ class SoupAnimator: NSObject, RefreshViewAnimator { refreshView.water.clipsToBounds = true - UIView.animate(withDuration: 1, delay: 0, options: UIViewAnimationOptions(), animations: { + UIView.animate(withDuration: 1, delay: 0, options: UIView.AnimationOptions(), animations: { self.refreshView.shadow.alpha = 1 self.refreshView.water.transform = CGAffineTransform(scaleX: 1, y: 1) }, completion: { completed in diff --git a/PullToMakeSoupDemo.xcodeproj/project.pbxproj b/PullToMakeSoupDemo.xcodeproj/project.pbxproj index 426ca80..c627fe3 100644 --- a/PullToMakeSoupDemo.xcodeproj/project.pbxproj +++ b/PullToMakeSoupDemo.xcodeproj/project.pbxproj @@ -128,7 +128,6 @@ 4DDDB1481B0F7E1100DE9D93 /* Resources */, 4DDDB1901B0F7EA500DE9D93 /* Embed Frameworks */, 4E5E665DF1FBAD34C38FFFC0 /* [CP] Embed Pods Frameworks */, - BEFDBCA240450E0F489E479F /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -147,7 +146,7 @@ attributes = { LastSwiftMigration = 0700; LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0700; + LastUpgradeCheck = 1010; ORGANIZATIONNAME = Yalantis; TargetAttributes = { 4DDDB1491B0F7E1100DE9D93 = { @@ -194,9 +193,14 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-PullToMakeSoupDemo/Pods-PullToMakeSoupDemo-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/PullToMakeSoup/PullToMakeSoup.framework", + "${BUILT_PRODUCTS_DIR}/PullToRefresher/PullToRefresh.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/PullToMakeSoup.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/PullToRefresh.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -209,28 +213,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-PullToMakeSoupDemo-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n"; - showEnvVarsInLog = 0; - }; - BEFDBCA240450E0F489E479F /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PullToMakeSoupDemo/Pods-PullToMakeSoupDemo-resources.sh\"\n"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -275,13 +267,23 @@ 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_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; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -311,7 +313,7 @@ SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.2; }; name = Debug; }; @@ -323,13 +325,23 @@ 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_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; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -350,8 +362,9 @@ MTL_ENABLE_DEBUG_INFO = NO; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OBJC_BRIDGING_HEADER = ""; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.2; VALIDATE_PRODUCT = YES; }; name = Release; @@ -365,7 +378,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "Yalantis.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.2; }; name = Debug; }; @@ -378,7 +391,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "Yalantis.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_VERSION = 4.2; }; name = Release; }; diff --git a/PullToMakeSoupDemo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/PullToMakeSoupDemo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/PullToMakeSoupDemo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + From dc0bf5b84f7ffaf0f4cadbce8061777fc620481b Mon Sep 17 00:00:00 2001 From: "idan.magled" Date: Tue, 19 Mar 2019 01:01:54 +0200 Subject: [PATCH 2/2] - Changed PullToRefresher version. --- PullToMakeSoup.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PullToMakeSoup.podspec b/PullToMakeSoup.podspec index 8bb678f..66882b4 100644 --- a/PullToMakeSoup.podspec +++ b/PullToMakeSoup.podspec @@ -18,6 +18,6 @@ Pod::Spec.new do |s| s.requires_arc = true s.frameworks = 'CoreGraphics', 'QuartzCore' - s.dependency 'PullToRefresher', '~> 2.0' + s.dependency 'PullToRefresher', '~> 3.1' end