From d5ce4d282801a2759265ee363dfdec1745a790cd Mon Sep 17 00:00:00 2001 From: Scott Clampet <110618242+scottkicks@users.noreply.github.com> Date: Mon, 12 Sep 2022 12:08:17 -0400 Subject: [PATCH] [NTV-611] Optimizely Carthage Package -> SPM (#1724) * Migrates Optimizely to SPM * Updates minimum version of SwiftSoup and Kinfisher to match their Carthage counter points * Updates 'OptimizelyResultTypeTests/testIsSuccess_ReturnsFalse' assertion --- Cartfile | 1 - Cartfile.resolved | 1 - .../app-input-files.xcfilelist | 1 - .../app-output-files.xcfilelist | 1 - ...ckstarter-framework-input-files.xcfilelist | 1 - ...kstarter-framework-output-files.xcfilelist | 1 - .../Library/OptimizelyResultTypeTests.swift | 2 +- Kickstarter.xcodeproj/project.pbxproj | 31 ++++++++++++------- .../xcshareddata/swiftpm/Package.resolved | 9 ++++++ 9 files changed, 29 insertions(+), 19 deletions(-) diff --git a/Cartfile b/Cartfile index 3eaa28cb44..b78c24db6b 100644 --- a/Cartfile +++ b/Cartfile @@ -4,7 +4,6 @@ github "kickstarter/Kickstarter-ReactiveExtensions" "e3f7786b5bcc7b99c14b9fd3133 ### 3rd Party -github "optimizely/swift-sdk" == 3.6.1 github "facebook/facebook-objc-sdk" == 6.5.2 github "microsoft/appcenter-sdk-apple" == 4.0.0 github "ReactiveCocoa/ReactiveSwift" == 6.5.0 diff --git a/Cartfile.resolved b/Cartfile.resolved index d54edd1c05..711eed1129 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -10,6 +10,5 @@ github "appboy/appboy-segment-ios" "4.0.0" github "facebook/facebook-objc-sdk" "v6.5.2" github "kickstarter/Kickstarter-ReactiveExtensions" "e3f7786b5bcc7b99c14b9fd313302bb59d9c3fe9" github "microsoft/appcenter-sdk-apple" "4.0.0" -github "optimizely/swift-sdk" "v3.6.1" github "segmentio/analytics-ios" "4.1.2" github "uber/ios-snapshot-test-case" "6.2.0" diff --git a/Carthage-xcfilelist/app-input-files.xcfilelist b/Carthage-xcfilelist/app-input-files.xcfilelist index d27f9a66b9..13d9159f97 100644 --- a/Carthage-xcfilelist/app-input-files.xcfilelist +++ b/Carthage-xcfilelist/app-input-files.xcfilelist @@ -3,7 +3,6 @@ $(SRCROOT)/Carthage/Build/iOS/Appboy_iOS_SDK.framework $(SRCROOT)/Carthage/Build/iOS/FBSDKCoreKit.framework $(SRCROOT)/Carthage/Build/iOS/FBSDKLoginKit.framework -$(SRCROOT)/Carthage/Build/iOS/Optimizely.framework $(SRCROOT)/Carthage/Build/iOS/ReactiveExtensions.framework $(SRCROOT)/Carthage/Build/iOS/ReactiveSwift.framework $(SRCROOT)/Carthage/Build/iOS/SDWebImage.framework diff --git a/Carthage-xcfilelist/app-output-files.xcfilelist b/Carthage-xcfilelist/app-output-files.xcfilelist index 3a8ae9a962..8921fcd57f 100644 --- a/Carthage-xcfilelist/app-output-files.xcfilelist +++ b/Carthage-xcfilelist/app-output-files.xcfilelist @@ -3,7 +3,6 @@ $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Appboy_iOS_SDK.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/FBSDKCoreKit.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/FBSDKLoginKit.framework -$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Optimizely.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/ReactiveExtensions.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/ReactiveSwift.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/SDWebImage.framework diff --git a/Carthage-xcfilelist/kickstarter-framework-input-files.xcfilelist b/Carthage-xcfilelist/kickstarter-framework-input-files.xcfilelist index 9e6101178f..199aeed37f 100644 --- a/Carthage-xcfilelist/kickstarter-framework-input-files.xcfilelist +++ b/Carthage-xcfilelist/kickstarter-framework-input-files.xcfilelist @@ -2,6 +2,5 @@ $(SRCROOT)/Carthage/Build/iOS/FBSDKCoreKit.framework $(SRCROOT)/Carthage/Build/iOS/FBSDKLoginKit.framework -$(SRCROOT)/Carthage/Build/iOS/Optimizely.framework $(SRCROOT)/Carthage/Build/iOS/ReactiveExtensions.framework $(SRCROOT)/Carthage/Build/iOS/ReactiveSwift.framework diff --git a/Carthage-xcfilelist/kickstarter-framework-output-files.xcfilelist b/Carthage-xcfilelist/kickstarter-framework-output-files.xcfilelist index 03b3b89855..b17c50a19b 100644 --- a/Carthage-xcfilelist/kickstarter-framework-output-files.xcfilelist +++ b/Carthage-xcfilelist/kickstarter-framework-output-files.xcfilelist @@ -2,6 +2,5 @@ $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/FBSDKCoreKit.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/FBSDKLoginKit.framework -$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Optimizely.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/ReactiveExtensions.framework $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/ReactiveSwift.framework diff --git a/Kickstarter-iOS/Library/OptimizelyResultTypeTests.swift b/Kickstarter-iOS/Library/OptimizelyResultTypeTests.swift index ffde8fea55..8f4d1eea49 100644 --- a/Kickstarter-iOS/Library/OptimizelyResultTypeTests.swift +++ b/Kickstarter-iOS/Library/OptimizelyResultTypeTests.swift @@ -11,6 +11,6 @@ final class OptimizelyResultTypeTests: XCTestCase { func testIsSuccess_ReturnsFalse() { let result = OptimizelyResult.failure(OptimizelyError.generic) - XCTAssertEqual("Unknown reason", result.hasError?.localizedDescription) + XCTAssertEqual("Unknown reason.", result.hasError?.localizedDescription) } } diff --git a/Kickstarter.xcodeproj/project.pbxproj b/Kickstarter.xcodeproj/project.pbxproj index 55b0924799..35d3a0982b 100644 --- a/Kickstarter.xcodeproj/project.pbxproj +++ b/Kickstarter.xcodeproj/project.pbxproj @@ -220,8 +220,6 @@ 1611EF5E23ABD1550051CDCC /* OptimizelyResultType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF5D23ABD1550051CDCC /* OptimizelyResultType.swift */; }; 1611EF6023ABD3D90051CDCC /* MockOptimizelyResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF5F23ABD3D90051CDCC /* MockOptimizelyResult.swift */; }; 1611EF6223ABD7C00051CDCC /* OptimizelyResultTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF6123ABD7C00051CDCC /* OptimizelyResultTypeTests.swift */; }; - 1611EF6323ABDA820051CDCC /* Optimizely.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D7B962AA23888A0B003AA616 /* Optimizely.framework */; }; - 1611EF6423ABDB3D0051CDCC /* Optimizely.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = D7B962AA23888A0B003AA616 /* Optimizely.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 1611EF6723B2752A0051CDCC /* UUIDType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF6623B2752A0051CDCC /* UUIDType.swift */; }; 1611EF6923B275700051CDCC /* MockUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF6823B275700051CDCC /* MockUUID.swift */; }; 1611EF6A23B2773A0051CDCC /* MockUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1611EF6823B275700051CDCC /* MockUUID.swift */; }; @@ -467,6 +465,7 @@ 60DA50FE28C38DDB002E2DF1 /* AlamofireImage in Frameworks */ = {isa = PBXBuildFile; productRef = 60DA50FD28C38DDB002E2DF1 /* AlamofireImage */; }; 60DA510F28C7E04B002E2DF1 /* Kingfisher in Frameworks */ = {isa = PBXBuildFile; productRef = 60DA510E28C7E04B002E2DF1 /* Kingfisher */; }; 60DA511428C96A65002E2DF1 /* SwiftSoup in Frameworks */ = {isa = PBXBuildFile; productRef = 60DA511328C96A65002E2DF1 /* SwiftSoup */; }; + 60DA512928CA580B002E2DF1 /* Optimizely in Frameworks */ = {isa = PBXBuildFile; productRef = 60DA512828CA580B002E2DF1 /* Optimizely */; }; 770187C022FDCFCA0019129D /* PledgeViewControllerMessageDisplaying.swift in Sources */ = {isa = PBXBuildFile; fileRef = 770187BE22FDCF960019129D /* PledgeViewControllerMessageDisplaying.swift */; }; 7703B42223217D4F00169EF3 /* EnvironmentType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7703B42123217D4F00169EF3 /* EnvironmentType.swift */; }; 7703B4242321844900169EF3 /* PKPaymentRequest+Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7703B4232321844900169EF3 /* PKPaymentRequest+Helpers.swift */; }; @@ -503,11 +502,9 @@ 7748438022D8DA3800508C9B /* Instantiable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7748437F22D8DA3800508C9B /* Instantiable.swift */; }; 774A76E920D841110012A71F /* BetaToolsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774A76E820D841110012A71F /* BetaToolsViewController.swift */; }; 774A76F520D98EEF0012A71F /* BetaToolsViewControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774A76F420D98EEF0012A71F /* BetaToolsViewControllerTests.swift */; }; - 774D98D223A818A800FC81C2 /* Optimizely.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D7B962AA23888A0B003AA616 /* Optimizely.framework */; }; 774D98D423A94EDB00FC81C2 /* OptimizelyExperiment.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7B962B42396E963003AA616 /* OptimizelyExperiment.swift */; }; 774D98D623A94F6C00FC81C2 /* Optimizely+OptimizelyClientType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774D98D523A94F6C00FC81C2 /* Optimizely+OptimizelyClientType.swift */; }; 774D98D923A96E7500FC81C2 /* OptimizelyClientTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774D98D823A96E7500FC81C2 /* OptimizelyClientTypeTests.swift */; }; - 774D98DA23A9795100FC81C2 /* Optimizely.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D7B962AA23888A0B003AA616 /* Optimizely.framework */; }; 774D98DE23B1613800FC81C2 /* MockOptimizelyClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774D98DB23B1520D00FC81C2 /* MockOptimizelyClient.swift */; }; 774D98E023B162CA00FC81C2 /* MockOptimizelyClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774D98DB23B1520D00FC81C2 /* MockOptimizelyClient.swift */; }; 774F8D5B22B1B0B300A1ACD5 /* FeatureFlagToolsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774F8D5A22B1B0B300A1ACD5 /* FeatureFlagToolsViewController.swift */; }; @@ -1698,7 +1695,6 @@ 8A741BC1262A358700E864E6 /* Appboy_iOS_SDK.framework in CopyFiles */, 8A741BC2262A358700E864E6 /* Segment_Appboy.framework in CopyFiles */, 8A0C3D3A25AE8B1400310034 /* Segment.framework in CopyFiles */, - 1611EF6423ABDB3D0051CDCC /* Optimizely.framework in CopyFiles */, D08C68AE22AF12E0001ED5E8 /* FBSDKCoreKit.framework in CopyFiles */, D08C68AF22AF12E0001ED5E8 /* FBSDKLoginKit.framework in CopyFiles */, D00698E9225CF61F00EB58BD /* ReactiveExtensions.framework in CopyFiles */, @@ -3260,7 +3256,6 @@ D7A86A3A1F324EB300C7DA53 /* MostPopularSearchProjectCellViewModelTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MostPopularSearchProjectCellViewModelTests.swift; sourceTree = ""; }; D7ADDFE522E0DAEB00157D83 /* RewardCellProjectBackingStateType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RewardCellProjectBackingStateType.swift; sourceTree = ""; }; D7B468EF23469F98003D5A51 /* STPCardBrand+CreditCardType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "STPCardBrand+CreditCardType.swift"; sourceTree = ""; }; - D7B962AA23888A0B003AA616 /* Optimizely.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Optimizely.framework; path = Carthage/Build/iOS/Optimizely.framework; sourceTree = ""; }; D7B962B42396E963003AA616 /* OptimizelyExperiment.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OptimizelyExperiment.swift; sourceTree = ""; }; D7B9C7571E453FBF00EA3A22 /* UILabel+IsTruncated.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UILabel+IsTruncated.swift"; sourceTree = ""; }; D7E20EA5228B4AC200BA61A0 /* PledgeCTAContainerViewViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PledgeCTAContainerViewViewModel.swift; sourceTree = ""; }; @@ -3273,6 +3268,7 @@ files = ( 60DA50FE28C38DDB002E2DF1 /* AlamofireImage in Frameworks */, 8A0C3D1125AE6F4900310034 /* Segment.framework in Frameworks */, + 60DA512928CA580B002E2DF1 /* Optimizely in Frameworks */, D0B7124822AEEDF900317BAF /* FBSDKCoreKit.framework in Frameworks */, D08C68A922AF105A001ED5E8 /* FBSDKLoginKit.framework in Frameworks */, 06634FC72807A4EB00950F60 /* Prelude_UIKit in Frameworks */, @@ -3308,7 +3304,6 @@ A76127C01C93100C00EDCCB9 /* Library.framework in Frameworks */, D09D4ED62289D6D100C33B77 /* ReactiveExtensions.framework in Frameworks */, D09D4ED72289D6E600C33B77 /* ReactiveSwift.framework in Frameworks */, - 774D98D223A818A800FC81C2 /* Optimizely.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3331,7 +3326,6 @@ 8A86D7DF24FDC7DF00037A7B /* FirebaseAnalytics.framework in Frameworks */, A73924001D27230B004524C3 /* Kickstarter_Framework.framework in Frameworks */, 8A86D7EE24FDC84400037A7B /* GoogleAppMeasurement.framework in Frameworks */, - 774D98DA23A9795100FC81C2 /* Optimizely.framework in Frameworks */, 4748C19125B7A2F80098E89E /* FirebaseCore.framework in Frameworks */, D0B45B6B1EF858C00020A8DA /* KsApi.framework in Frameworks */, 477731BA25C4E7CF00AF3273 /* FirebaseRemoteConfig.framework in Frameworks */, @@ -3350,7 +3344,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 1611EF6323ABDA820051CDCC /* Optimizely.framework in Frameworks */, 8A04FE2A262781550056F413 /* Segment_Appboy.framework in Frameworks */, 8A04FE2B262781550056F413 /* Appboy_iOS_SDK.framework in Frameworks */, A724BA641D2BFCC80041863C /* Kickstarter_Framework.framework in Frameworks */, @@ -6577,7 +6570,6 @@ 8A86D7ED24FDC84400037A7B /* GoogleAppMeasurement.framework */, 4748C18225B7A0EC0098E89E /* GoogleDataTransport.framework */, 8A86D7D824FDC7B000037A7B /* GoogleUtilities.framework */, - D7B962AA23888A0B003AA616 /* Optimizely.framework */, 8A86D7DB24FDC7C900037A7B /* PromisesObjC.framework */, 4748C15525B105DE0098E89E /* Protobuf.framework */, D0D58D822257FAE000532AC1 /* ReactiveExtensions_TestHelpers.framework */, @@ -7342,6 +7334,7 @@ 1981AC8F289075D900BB4897 /* Stripe */, 60DA50FD28C38DDB002E2DF1 /* AlamofireImage */, 60DA510E28C7E04B002E2DF1 /* Kingfisher */, + 60DA512828CA580B002E2DF1 /* Optimizely */, ); productName = "Library-iOS"; productReference = A755113C1C8642B3005355CF /* Library.framework */; @@ -7563,6 +7556,7 @@ 60DA50F628BFA331002E2DF1 /* XCRemoteSwiftPackageReference "AlamofireImage" */, 60DA510928C7DC0E002E2DF1 /* XCRemoteSwiftPackageReference "Kingfisher" */, 60DA511028C96865002E2DF1 /* XCRemoteSwiftPackageReference "SwiftSoup" */, + 60DA512528CA5780002E2DF1 /* XCRemoteSwiftPackageReference "swift-sdk" */, ); productRefGroup = A7E06C7A1C5A6EB300EBDCC2 /* Products */; projectDirPath = ""; @@ -10528,7 +10522,7 @@ repositoryURL = "https://github.com/onevcat/Kingfisher"; requirement = { kind = upToNextMajorVersion; - minimumVersion = 7.0.0; + minimumVersion = 7.3.2; }; }; 60DA511028C96865002E2DF1 /* XCRemoteSwiftPackageReference "SwiftSoup" */ = { @@ -10536,7 +10530,15 @@ repositoryURL = "https://github.com/scinfu/SwiftSoup"; requirement = { kind = upToNextMajorVersion; - minimumVersion = 2.0.0; + minimumVersion = 2.4.3; + }; + }; + 60DA512528CA5780002E2DF1 /* XCRemoteSwiftPackageReference "swift-sdk" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/optimizely/swift-sdk"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 3.6.1; }; }; /* End XCRemoteSwiftPackageReference section */ @@ -10597,6 +10599,11 @@ package = 60DA511028C96865002E2DF1 /* XCRemoteSwiftPackageReference "SwiftSoup" */; productName = SwiftSoup; }; + 60DA512828CA580B002E2DF1 /* Optimizely */ = { + isa = XCSwiftPackageProductDependency; + package = 60DA512528CA5780002E2DF1 /* XCRemoteSwiftPackageReference "swift-sdk" */; + productName = Optimizely; + }; /* End XCSwiftPackageProductDependency section */ }; rootObject = A7E06C711C5A6EB300EBDCC2 /* Project object */; diff --git a/Kickstarter.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Kickstarter.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 287149fdaf..33c68b3714 100644 --- a/Kickstarter.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Kickstarter.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -108,6 +108,15 @@ "version" : "22.7.1" } }, + { + "identity" : "swift-sdk", + "kind" : "remoteSourceControl", + "location" : "https://github.com/optimizely/swift-sdk", + "state" : { + "revision" : "193cc00e1004d29f16f7b32e5b6787199760c482", + "version" : "3.10.1" + } + }, { "identity" : "swiftsoup", "kind" : "remoteSourceControl",