From ceced355f2b8709f7d7d556655f368757500796b Mon Sep 17 00:00:00 2001 From: Xavier Schott Date: Thu, 31 May 2018 11:16:24 -0700 Subject: [PATCH] Xcode 9.4 --- TGPControls.podspec | 4 +- TGPControls.xcodeproj/project.pbxproj | 28 ++++++++-- .../xcschemes/TGPControls.xcscheme | 2 +- TGPControlsDemo/Podfile | 4 +- .../TGPControlsDemo.xcodeproj/project.pbxproj | 51 ++++++++++++++++-- .../AppIcon.appiconset/Contents.json | 6 +++ .../AppIcon.appiconset/icon1024.png} | Bin .../TGPControlsDemo/ViewController.swift | 20 +++---- 8 files changed, 92 insertions(+), 23 deletions(-) rename TGPControlsDemo/{icon-1024x1024.png => TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/icon1024.png} (100%) diff --git a/TGPControls.podspec b/TGPControls.podspec index a82c16f..a424f6c 100644 --- a/TGPControls.podspec +++ b/TGPControls.podspec @@ -2,7 +2,7 @@ Pod::Spec.new do |spec| # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # spec.name = "TGPControls" - spec.version = "4.0.0" + spec.version = "4.0.1" spec.summary = "Custom animated iOS controls: Animated discrete slider, animated labels" spec.description = <<-DESC @@ -25,7 +25,7 @@ Pod::Spec.new do |spec| spec.requires_arc = true # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - spec.source = { :git => "https://github.com/SwiftArchitect/TGPControls.git", :tag => "v4.0.0" } + spec.source = { :git => "https://github.com/SwiftArchitect/TGPControls.git", :tag => "v4.0.1" } spec.source_files = "TGPControls/**/*.{swift}" spec.exclude_files = "TGPControlsDemo/*" diff --git a/TGPControls.xcodeproj/project.pbxproj b/TGPControls.xcodeproj/project.pbxproj index 76d8525..4de76d5 100644 --- a/TGPControls.xcodeproj/project.pbxproj +++ b/TGPControls.xcodeproj/project.pbxproj @@ -99,12 +99,12 @@ DC56BDF41E46EA2000AAD0D9 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0820; + LastUpgradeCheck = 0940; ORGANIZATIONNAME = SwiftArchitect; TargetAttributes = { DC56BDFC1E46EA2000AAD0D9 = { CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = 0820; + LastSwiftMigration = 0940; ProvisioningStyle = Automatic; }; }; @@ -159,15 +159,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_DOCUMENTATION_COMMENTS = YES; 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; @@ -197,6 +205,7 @@ SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -212,15 +221,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_DOCUMENTATION_COMMENTS = YES; 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; @@ -242,6 +259,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -267,7 +285,8 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -288,7 +307,8 @@ PRODUCT_BUNDLE_IDENTIFIER = com.swiftarchitect.TGPControls; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 4.0; }; name = Release; }; diff --git a/TGPControls.xcodeproj/xcshareddata/xcschemes/TGPControls.xcscheme b/TGPControls.xcodeproj/xcshareddata/xcschemes/TGPControls.xcscheme index c41d331..3735ff1 100644 --- a/TGPControls.xcodeproj/xcshareddata/xcschemes/TGPControls.xcscheme +++ b/TGPControls.xcodeproj/xcshareddata/xcschemes/TGPControls.xcscheme @@ -1,6 +1,6 @@ '../../TGPControls' - pod 'TGPControls' + pod 'TGPControls', :path => '../../TGPControls' + #pod 'TGPControls' end diff --git a/TGPControlsDemo/TGPControlsDemo.xcodeproj/project.pbxproj b/TGPControlsDemo/TGPControlsDemo.xcodeproj/project.pbxproj index 2aca661..f68afaf 100644 --- a/TGPControlsDemo/TGPControlsDemo.xcodeproj/project.pbxproj +++ b/TGPControlsDemo/TGPControlsDemo.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + AC26D296425BA1D414B87647 /* Pods_TGPControlsDemo_Pods.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 96ADF77D1CF3E3C9B5F25B38 /* Pods_TGPControlsDemo_Pods.framework */; }; DC4FF6431EA2E08C00BBF8E4 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC56BDC81E46DEB900AAD0D9 /* ViewController.swift */; }; DC4FF6441EA2E08C00BBF8E4 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC56BDC61E46DEB900AAD0D9 /* AppDelegate.swift */; }; DC4FF6481EA2E08C00BBF8E4 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = DC56BDCF1E46DEB900AAD0D9 /* LaunchScreen.storyboard */; }; @@ -36,6 +37,9 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 860AEC28CE2BF295D5323689 /* Pods-TGPControlsDemo-Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TGPControlsDemo-Pods.debug.xcconfig"; path = "Pods/Target Support Files/Pods-TGPControlsDemo-Pods/Pods-TGPControlsDemo-Pods.debug.xcconfig"; sourceTree = ""; }; + 96ADF77D1CF3E3C9B5F25B38 /* Pods_TGPControlsDemo_Pods.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TGPControlsDemo_Pods.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D4E7ADCD9BF439A69C180A4A /* Pods-TGPControlsDemo-Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TGPControlsDemo-Pods.release.xcconfig"; path = "Pods/Target Support Files/Pods-TGPControlsDemo-Pods/Pods-TGPControlsDemo-Pods.release.xcconfig"; sourceTree = ""; }; DC4FF6501EA2E08C00BBF8E4 /* TGPControlsDemo-Cart.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "TGPControlsDemo-Cart.app"; sourceTree = BUILT_PRODUCTS_DIR; }; DC4FF6511EA2E08C00BBF8E4 /* TGPControlsDemo-Cart-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "TGPControlsDemo-Cart-Info.plist"; sourceTree = ""; }; DC4FF6521EA2E2E700BBF8E4 /* TGPControls.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TGPControls.framework; path = Carthage/Build/iOS/TGPControls.framework; sourceTree = ""; }; @@ -61,6 +65,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + AC26D296425BA1D414B87647 /* Pods_TGPControlsDemo_Pods.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -71,16 +76,27 @@ isa = PBXGroup; children = ( DC4FF6521EA2E2E700BBF8E4 /* TGPControls.framework */, + 96ADF77D1CF3E3C9B5F25B38 /* Pods_TGPControlsDemo_Pods.framework */, ); name = Frameworks; sourceTree = ""; }; + 90671EEB912570A269B400F1 /* Pods */ = { + isa = PBXGroup; + children = ( + 860AEC28CE2BF295D5323689 /* Pods-TGPControlsDemo-Pods.debug.xcconfig */, + D4E7ADCD9BF439A69C180A4A /* Pods-TGPControlsDemo-Pods.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; DC56BDBA1E46DEB900AAD0D9 = { isa = PBXGroup; children = ( DC56BDC51E46DEB900AAD0D9 /* TGPControlsDemo */, DC56BDC41E46DEB900AAD0D9 /* Products */, 10EC92099730DF4A939701BE /* Frameworks */, + 90671EEB912570A269B400F1 /* Pods */, ); sourceTree = ""; }; @@ -155,11 +171,12 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0820; - LastUpgradeCheck = 0820; + LastUpgradeCheck = 0940; ORGANIZATIONNAME = SwiftArchitect; TargetAttributes = { DC56BDC21E46DEB900AAD0D9 = { CreatedOnToolsVersion = 8.2.1; + LastSwiftMigration = 0940; ProvisioningStyle = Automatic; }; }; @@ -213,13 +230,16 @@ files = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-TGPControlsDemo-Pods-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - 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"; + 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; }; 3FF2E09CAFA7D92A488FACF7 /* [CP] Copy Pods Resources */ = { @@ -243,9 +263,12 @@ files = ( ); inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-TGPControlsDemo-Pods/Pods-TGPControlsDemo-Pods-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/TGPControls/TGPControls.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/TGPControls.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -341,15 +364,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_DOCUMENTATION_COMMENTS = YES; 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; @@ -392,15 +423,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_DOCUMENTATION_COMMENTS = YES; 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; @@ -428,6 +467,7 @@ }; DC56BDD61E46DEB900AAD0D9 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 860AEC28CE2BF295D5323689 /* Pods-TGPControlsDemo-Pods.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -436,12 +476,14 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.swiftarchitect.TGPControlsDemo; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = On; + SWIFT_VERSION = 4.0; }; name = Debug; }; DC56BDD71E46DEB900AAD0D9 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = D4E7ADCD9BF439A69C180A4A /* Pods-TGPControlsDemo-Pods.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)"; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -450,7 +492,8 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = com.swiftarchitect.TGPControlsDemo; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; + SWIFT_SWIFT3_OBJC_INFERENCE = On; + SWIFT_VERSION = 4.0; }; name = Release; }; diff --git a/TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/Contents.json b/TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/Contents.json index f04f616..d79278b 100644 --- a/TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -88,6 +88,12 @@ "idiom" : "ipad", "filename" : "icon167.png", "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "icon1024.png", + "scale" : "1x" } ], "info" : { diff --git a/TGPControlsDemo/icon-1024x1024.png b/TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/icon1024.png similarity index 100% rename from TGPControlsDemo/icon-1024x1024.png rename to TGPControlsDemo/TGPControlsDemo/Assets.xcassets/AppIcon.appiconset/icon1024.png diff --git a/TGPControlsDemo/TGPControlsDemo/ViewController.swift b/TGPControlsDemo/TGPControlsDemo/ViewController.swift index 49d3a62..30e719e 100644 --- a/TGPControlsDemo/TGPControlsDemo/ViewController.swift +++ b/TGPControlsDemo/TGPControlsDemo/ViewController.swift @@ -77,34 +77,34 @@ class ViewController: UIViewController { // MARK: - UIControlEvents - func touchDown(_ sender: UIControl, event:UIEvent) { + @objc func touchDown(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDown" } - func touchDownRepeat(_ sender: UIControl, event:UIEvent) { + @objc func touchDownRepeat(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDownRepeat" } - func touchDragInside(_ sender: UIControl, event:UIEvent) { + @objc func touchDragInside(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDragInside" } - func touchDragOutside(_ sender: UIControl, event:UIEvent) { + @objc func touchDragOutside(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDragOutside" } - func touchDragEnter(_ sender: UIControl, event:UIEvent) { + @objc func touchDragEnter(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDragEnter" } - func touchDragExit(_ sender: UIControl, event:UIEvent) { + @objc func touchDragExit(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchDragExit" } - func touchUpInside(_ sender: UIControl, event:UIEvent) { + @objc func touchUpInside(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchUpInside" } - func touchUpOutside(_ sender: UIControl, event:UIEvent) { + @objc func touchUpOutside(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchUpOutside" } - func touchCancel(_ sender: UIControl, event:UIEvent) { + @objc func touchCancel(_ sender: UIControl, event:UIEvent) { controlEventsLabel.text = "touchCancel" } - func valueChanged(_ sender: TGPDiscreteSlider, event:UIEvent) { + @objc func valueChanged(_ sender: TGPDiscreteSlider, event:UIEvent) { controlEventsLabel.text = "valueChanged" stepper.value = Double(sender.value) }