From cbccef5d8cf4217fa1975f7bfff80dff35ce102d Mon Sep 17 00:00:00 2001 From: Steve Baranski Date: Tue, 3 Mar 2020 12:05:14 -0800 Subject: [PATCH] Swift 5.1 Support (#204) * Updated project for Swift 5.1 support * Updated xcconfig files & removed superfluous project overrides * [Example] Update example app settings Co-authored-by: rob phillips --- .swift-version | 1 - .../Down-Example.xcodeproj/project.pbxproj | 25 ++++++++++++++++--- .../xcschemes/Down-Example.xcscheme | 10 +++----- .../xcschemes/macOS Demo.xcscheme | 10 +++----- .../xcshareddata/IDEWorkspaceChecks.plist | 8 ------ Down.podspec | 2 +- Down.xcodeproj/project.pbxproj | 12 --------- .../xcshareddata/xcschemes/Down.xcscheme | 2 +- .../xcschemes/DownSnapshotTests.xcscheme | 2 +- Package.swift | 2 +- README.md | 11 +++++++- .../Deployment-Targets.xcconfig | 5 ++-- .../Universal-Framework-Target.xcconfig | 6 ----- .../Universal-Target-Base.xcconfig | 7 +----- 14 files changed, 45 insertions(+), 58 deletions(-) delete mode 100644 .swift-version delete mode 100644 Down-Example/Down-Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/.swift-version b/.swift-version deleted file mode 100644 index 819e07a2..00000000 --- a/.swift-version +++ /dev/null @@ -1 +0,0 @@ -5.0 diff --git a/Down-Example/Down-Example.xcodeproj/project.pbxproj b/Down-Example/Down-Example.xcodeproj/project.pbxproj index db09ff94..3ae429ca 100644 --- a/Down-Example/Down-Example.xcodeproj/project.pbxproj +++ b/Down-Example/Down-Example.xcodeproj/project.pbxproj @@ -53,6 +53,13 @@ remoteGlobalIDString = 8AFAEAFB1E6E32E900E09B68; remoteInfo = DownTests; }; + D4C77E06240EEB64004675B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D49980AF1FA560F8004EE42E /* Down.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = EEBA153A2344845500B54ECB; + remoteInfo = DownSnapshotTests; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -186,6 +193,7 @@ children = ( D49980B51FA560F8004EE42E /* Down.framework */, D49980B71FA560F8004EE42E /* DownTests.xctest */, + D4C77E07240EEB64004675B3 /* DownSnapshotTests.xctest */, ); name = Products; sourceTree = ""; @@ -238,12 +246,12 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1000; - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1130; ORGANIZATIONNAME = Down; TargetAttributes = { 14090A482185411800503C06 = { CreatedOnToolsVersion = 10.0; - DevelopmentTeam = NWN7H36NTR; + DevelopmentTeam = 7V68668DJN; LastSwiftMigration = 1020; ProvisioningStyle = Automatic; SystemCapabilities = { @@ -298,6 +306,13 @@ remoteRef = D49980B61FA560F8004EE42E /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; + D4C77E07240EEB64004675B3 /* DownSnapshotTests.xctest */ = { + isa = PBXReferenceProxy; + fileType = wrapper.cfbundle; + path = DownSnapshotTests.xctest; + remoteRef = D4C77E06240EEB64004675B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; /* End PBXReferenceProxy section */ /* Begin PBXResourcesBuildPhase section */ @@ -398,7 +413,8 @@ CODE_SIGN_IDENTITY = "Mac Developer"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - DEVELOPMENT_TEAM = NWN7H36NTR; + DEVELOPMENT_TEAM = 7V68668DJN; + ENABLE_HARDENED_RUNTIME = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "macOS Demo/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; @@ -424,7 +440,8 @@ CODE_SIGN_IDENTITY = "Mac Developer"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - DEVELOPMENT_TEAM = NWN7H36NTR; + DEVELOPMENT_TEAM = 7V68668DJN; + ENABLE_HARDENED_RUNTIME = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "macOS Demo/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; diff --git a/Down-Example/Down-Example.xcodeproj/xcshareddata/xcschemes/Down-Example.xcscheme b/Down-Example/Down-Example.xcodeproj/xcshareddata/xcschemes/Down-Example.xcscheme index 366b07e2..9f9a58fc 100644 --- a/Down-Example/Down-Example.xcodeproj/xcshareddata/xcschemes/Down-Example.xcscheme +++ b/Down-Example/Down-Example.xcodeproj/xcshareddata/xcschemes/Down-Example.xcscheme @@ -1,6 +1,6 @@ - - - - + + - - - - - - + + - - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/Down.podspec b/Down.podspec index f6c3e893..da7460a1 100644 --- a/Down.podspec +++ b/Down.podspec @@ -19,5 +19,5 @@ Pod::Spec.new do |spec| spec.pod_target_xcconfig = { 'SWIFT_INCLUDE_PATHS' => '$(SRCROOT)/Down/Source/cmark/**' } spec.ios.resource = 'Resources/DownView.bundle' spec.osx.resource = 'Resources/DownView.bundle' - spec.swift_version = "5.0" + spec.swift_versions = ['5.0', '5.1'] end diff --git a/Down.xcodeproj/project.pbxproj b/Down.xcodeproj/project.pbxproj index cea21553..44c84e3e 100644 --- a/Down.xcodeproj/project.pbxproj +++ b/Down.xcodeproj/project.pbxproj @@ -1078,7 +1078,6 @@ PROVISIONING_PROFILE_SPECIFIER = ""; SKIP_INSTALL = YES; SWIFT_INCLUDE_PATHS = "${SRCROOT}/Source/cmark"; - SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -1100,7 +1099,6 @@ PROVISIONING_PROFILE_SPECIFIER = ""; SKIP_INSTALL = YES; SWIFT_INCLUDE_PATHS = "${SRCROOT}/Source/cmark"; - SWIFT_VERSION = 5.0; }; name = Release; }; @@ -1114,9 +1112,7 @@ "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = "Resources/DownTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; PRODUCT_BUNDLE_IDENTIFIER = com.downMarkdown.DownTests; - SWIFT_VERSION = 5.0; "TARGETED_DEVICE_FAMILY[sdk=appletvos*]" = 3; "TARGETED_DEVICE_FAMILY[sdk=appletvsimulator*]" = 3; }; @@ -1132,9 +1128,7 @@ "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = "Resources/DownTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; PRODUCT_BUNDLE_IDENTIFIER = com.downMarkdown.DownTests; - SWIFT_VERSION = 5.0; "TARGETED_DEVICE_FAMILY[sdk=appletvos*]" = 3; "TARGETED_DEVICE_FAMILY[sdk=appletvsimulator*]" = 3; }; @@ -1192,14 +1186,12 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = "com.downMarkdown.$(TARGET_NAME:c99-identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -1252,12 +1244,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; PRODUCT_BUNDLE_IDENTIFIER = "com.downMarkdown.$(TARGET_NAME:c99-identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -1286,7 +1276,6 @@ PRODUCT_BUNDLE_IDENTIFIER = com.downMarkdown.DownSnapshotTests; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; - SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -1312,7 +1301,6 @@ PRODUCT_BUNDLE_IDENTIFIER = com.downMarkdown.DownSnapshotTests; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; - SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; diff --git a/Down.xcodeproj/xcshareddata/xcschemes/Down.xcscheme b/Down.xcodeproj/xcshareddata/xcschemes/Down.xcscheme index 62a0534c..1d464a2d 100644 --- a/Down.xcodeproj/xcshareddata/xcschemes/Down.xcscheme +++ b/Down.xcodeproj/xcshareddata/xcschemes/Down.xcscheme @@ -1,6 +1,6 @@ = 0.8.1 (Swift 4 is >= 0.4.x, Swift 3 is 0.3.x) +Note: Swift support is summarized in the table below. + +|Swift Version|Tag| +| --- | --- | +| Swift 5.1 | >= 0.9.2 | +| Swift 5.0 | >= 0.8.1 | +| Swift 4 | >= 0.4.x | +| Swift 3 | 0.3.x | + + now on the `master` branch and any tag >= 0.8.1 (Swift 4 is >= 0.4.x, Swift 3 is 0.3.x) Quickly install using [CocoaPods](https://cocoapods.org): diff --git a/Resources/Configurations/Deployment-Targets.xcconfig b/Resources/Configurations/Deployment-Targets.xcconfig index fdd89a36..680eb256 100644 --- a/Resources/Configurations/Deployment-Targets.xcconfig +++ b/Resources/Configurations/Deployment-Targets.xcconfig @@ -1,4 +1,5 @@ -IPHONEOS_DEPLOYMENT_TARGET = 8.0 +SWIFT_VERSION = 5.0 + +IPHONEOS_DEPLOYMENT_TARGET = 9.0 MACOSX_DEPLOYMENT_TARGET = 10.11 TVOS_DEPLOYMENT_TARGET = 9.0 -WATCHOS_DEPLOYMENT_TARGET = 3.0 diff --git a/Resources/Configurations/Universal-Framework-Target.xcconfig b/Resources/Configurations/Universal-Framework-Target.xcconfig index d9926cd7..53807fe0 100644 --- a/Resources/Configurations/Universal-Framework-Target.xcconfig +++ b/Resources/Configurations/Universal-Framework-Target.xcconfig @@ -12,13 +12,7 @@ TARGETED_DEVICE_FAMILY[sdk=iphone*] = 1,2 TARGETED_DEVICE_FAMILY[sdk=appletvsimulator*] = 3 TARGETED_DEVICE_FAMILY[sdk=appletv*] = 3 -// Watch-specific default settings -TARGETED_DEVICE_FAMILY[sdk=watchsimulator*] = 4 -TARGETED_DEVICE_FAMILY[sdk=watch*] = 4 - ENABLE_BITCODE[sdk=macosx*] = NO -ENABLE_BITCODE[sdk=watchsimulator*] = YES -ENABLE_BITCODE[sdk=watch*] = YES ENABLE_BITCODE[sdk=iphonesimulator*] = NO ENABLE_BITCODE[sdk=iphone*] = YES ENABLE_BITCODE[sdk=appletvsimulator*] = YES diff --git a/Resources/Configurations/Universal-Target-Base.xcconfig b/Resources/Configurations/Universal-Target-Base.xcconfig index 226b59f1..33217928 100644 --- a/Resources/Configurations/Universal-Target-Base.xcconfig +++ b/Resources/Configurations/Universal-Target-Base.xcconfig @@ -1,9 +1,7 @@ -SUPPORTED_PLATFORMS = macosx iphonesimulator iphoneos watchos watchsimulator appletvos appletvsimulator +SUPPORTED_PLATFORMS = macosx iphonesimulator iphoneos appletvos appletvsimulator VALID_ARCHS[sdk=macosx*] = i386 x86_64 VALID_ARCHS[sdk=iphoneos*] = arm64 armv7 armv7s VALID_ARCHS[sdk=iphonesimulator*] = i386 x86_64 -VALID_ARCHS[sdk=watchos*] = armv7k -VALID_ARCHS[sdk=watchsimulator*] = i386 VALID_ARCHS[sdk=appletv*] = arm64 VALID_ARCHS[sdk=appletvsimulator*] = x86_64 @@ -11,8 +9,5 @@ VALID_ARCHS[sdk=appletvsimulator*] = x86_64 LD_RUNPATH_SEARCH_PATHS[sdk=macosx*] = $(inherited) '@executable_path/../Frameworks' '@loader_path/../Frameworks' LD_RUNPATH_SEARCH_PATHS[sdk=iphoneos*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' LD_RUNPATH_SEARCH_PATHS[sdk=iphonesimulator*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -LD_RUNPATH_SEARCH_PATHS[sdk=watchos*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -LD_RUNPATH_SEARCH_PATHS[sdk=watchsimulator*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' LD_RUNPATH_SEARCH_PATHS[sdk=appletvos*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' LD_RUNPATH_SEARCH_PATHS[sdk=appletvsimulator*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -