From 2510d4be40208ca0905a8357b31609fb9eda41cd Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 13:58:01 -0700 Subject: [PATCH 1/6] Update dependent gems. --- Gemfile | 2 +- Gemfile.lock | 65 +++++++++++++++++++++++++++------------------------- 2 files changed, 35 insertions(+), 32 deletions(-) diff --git a/Gemfile b/Gemfile index 0f746f3..bdc29af 100644 --- a/Gemfile +++ b/Gemfile @@ -3,4 +3,4 @@ source 'https://rubygems.org' gem 'naturally' gem 'rake' gem 'xcpretty' -gem 'cocoapods', '~> 0.39' +gem 'cocoapods' diff --git a/Gemfile.lock b/Gemfile.lock index 3a8aba1..d73a7a4 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,59 +1,62 @@ GEM remote: https://rubygems.org/ specs: - activesupport (4.2.6) + activesupport (5.0.0) + concurrent-ruby (~> 1.0, >= 1.0.2) i18n (~> 0.7) - json (~> 1.7, >= 1.7.7) minitest (~> 5.1) - thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) - claide (0.9.1) - cocoapods (0.39.0) + claide (1.0.0) + cocoapods (1.0.1) activesupport (>= 4.0.2) - claide (~> 0.9.1) - cocoapods-core (= 0.39.0) - cocoapods-downloader (~> 0.9.3) - cocoapods-plugins (~> 0.4.2) - cocoapods-search (~> 0.1.0) - cocoapods-stats (~> 0.6.2) - cocoapods-trunk (~> 0.6.4) - cocoapods-try (~> 0.5.1) + claide (>= 1.0.0, < 2.0) + cocoapods-core (= 1.0.1) + cocoapods-deintegrate (>= 1.0.0, < 2.0) + cocoapods-downloader (>= 1.0.0, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-stats (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.0.0, < 2.0) + cocoapods-try (>= 1.0.0, < 2.0) colored (~> 1.2) escape (~> 0.0.4) - molinillo (~> 0.4.0) + fourflusher (~> 0.3.0) + molinillo (~> 0.4.5) nap (~> 1.0) - xcodeproj (~> 0.28.2) - cocoapods-core (0.39.0) + xcodeproj (>= 1.1.0, < 2.0) + cocoapods-core (1.0.1) activesupport (>= 4.0.2) fuzzy_match (~> 2.0.4) nap (~> 1.0) - cocoapods-downloader (0.9.3) - cocoapods-plugins (0.4.2) + cocoapods-deintegrate (1.0.0) + cocoapods-downloader (1.1.0) + cocoapods-plugins (1.0.0) nap - cocoapods-search (0.1.0) - cocoapods-stats (0.6.2) - cocoapods-trunk (0.6.4) + cocoapods-search (1.0.0) + cocoapods-stats (1.0.0) + cocoapods-trunk (1.0.0) nap (>= 0.8, < 2.0) netrc (= 0.7.8) - cocoapods-try (0.5.1) + cocoapods-try (1.1.0) colored (1.2) + concurrent-ruby (1.0.2) escape (0.0.4) + fourflusher (0.3.2) fuzzy_match (2.0.4) i18n (0.7.0) - json (1.8.3) - minitest (5.8.4) - molinillo (0.4.4) + minitest (5.9.0) + molinillo (0.4.5) nap (1.1.0) naturally (2.1.0) netrc (0.7.8) - rake (11.1.2) - rouge (1.10.1) + rake (11.2.2) + rouge (1.11.1) thread_safe (0.3.5) tzinfo (1.2.2) thread_safe (~> 0.1) - xcodeproj (0.28.2) + xcodeproj (1.2.0) activesupport (>= 3) - claide (~> 0.9.1) + claide (>= 1.0.0, < 2.0) colored (~> 1.2) xcpretty (0.2.2) rouge (~> 1.8) @@ -62,10 +65,10 @@ PLATFORMS ruby DEPENDENCIES - cocoapods (~> 0.39) + cocoapods naturally rake xcpretty BUNDLED WITH - 1.11.2 + 1.12.5 From bc6e1c0e722b36119cab6ca6a04dee2baf2e3d8a Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 13:58:23 -0700 Subject: [PATCH 2/6] Update to latest CocoaPods. --- ParseFacebookUtils.xcodeproj/project.pbxproj | 26 ++++++++++---------- Podfile | 6 ++--- Podfile.lock | 8 +++--- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/ParseFacebookUtils.xcodeproj/project.pbxproj b/ParseFacebookUtils.xcodeproj/project.pbxproj index a2c842c..9ce93d7 100644 --- a/ParseFacebookUtils.xcodeproj/project.pbxproj +++ b/ParseFacebookUtils.xcodeproj/project.pbxproj @@ -48,7 +48,7 @@ 81FE7F7E1C17790400E6BD34 /* PFFacebookUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 813DFC851AB2510300F25A08 /* PFFacebookUtils.m */; }; 81FE7F801C17790400E6BD34 /* PFFacebookPrivateUtilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 81E35FD31BAA6F8400348526 /* PFFacebookPrivateUtilities.m */; }; 81FE7F871C17790400E6BD34 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 81B3F22A1AC9CA5300A92677 /* Localizable.strings */; }; - 982A9BABCF8E7DD3F3C2C18D /* libPods-ParseFacebookUtilsV4-UnitTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 02DBE4F2899D193F056501A4 /* libPods-ParseFacebookUtilsV4-UnitTests.a */; }; + F3648F2B62FE91B5B2C740C9 /* Pods_ParseFacebookUtilsV4_UnitTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE2574ED5D739401DB71A44B /* Pods_ParseFacebookUtilsV4_UnitTests.framework */; }; F5E3229B1B549C2C00E319F9 /* FacebookAuthenticationProviderTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F5E3229A1B549C2C00E319F9 /* FacebookAuthenticationProviderTests.m */; }; F5E3229D1B5583A800E319F9 /* FacebookUtilsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F5E3229C1B5583A800E319F9 /* FacebookUtilsTests.m */; }; /* End PBXBuildFile section */ @@ -71,7 +71,6 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 02DBE4F2899D193F056501A4 /* libPods-ParseFacebookUtilsV4-UnitTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParseFacebookUtilsV4-UnitTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 813DFC841AB2510300F25A08 /* PFFacebookUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFFacebookUtils.h; sourceTree = ""; }; 813DFC851AB2510300F25A08 /* PFFacebookUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFFacebookUtils.m; sourceTree = ""; }; 813DFC921AB2515A00F25A08 /* Bolts.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Bolts.framework; path = Vendor/Bolts.framework; sourceTree = ""; }; @@ -116,6 +115,7 @@ 81FE7F721C1778FC00E6BD34 /* ParseFacebookUtilsV4-tvOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "ParseFacebookUtilsV4-tvOS.xcconfig"; sourceTree = ""; }; 81FE7F8B1C17790400E6BD34 /* ParseFacebookUtilsV4.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ParseFacebookUtilsV4.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D2AAC07E0554694100DB518D /* ParseFacebookUtilsV4.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ParseFacebookUtilsV4.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EE2574ED5D739401DB71A44B /* Pods_ParseFacebookUtilsV4_UnitTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ParseFacebookUtilsV4_UnitTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; F52CD64A1B5838560051AB86 /* ParseFacebookUtilsV4-iOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "ParseFacebookUtilsV4-iOS.xcconfig"; sourceTree = ""; }; F52CD64B1B5838620051AB86 /* ParseFacebookUtilsV4-UnitTests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "ParseFacebookUtilsV4-UnitTests.xcconfig"; sourceTree = ""; }; F52CD64C1B58386F0051AB86 /* ParseFacebookTestApplicationV4.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ParseFacebookTestApplicationV4.xcconfig; sourceTree = ""; }; @@ -137,7 +137,7 @@ 81CB98D91AB7920700136FA5 /* FBSDKCoreKit.framework in Frameworks */, 81CB98DA1AB7920700136FA5 /* FBSDKLoginKit.framework in Frameworks */, 81CB98DB1AB7920E00136FA5 /* Parse.framework in Frameworks */, - 982A9BABCF8E7DD3F3C2C18D /* libPods-ParseFacebookUtilsV4-UnitTests.a in Frameworks */, + F3648F2B62FE91B5B2C740C9 /* Pods_ParseFacebookUtilsV4_UnitTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -204,7 +204,7 @@ children = ( 813DFC8F1AB2513D00F25A08 /* User Frameworks */, 813DFC8E1AB2513300F25A08 /* System Frameworks */, - 02DBE4F2899D193F056501A4 /* libPods-ParseFacebookUtilsV4-UnitTests.a */, + EE2574ED5D739401DB71A44B /* Pods_ParseFacebookUtilsV4_UnitTests.framework */, ); name = Frameworks; sourceTree = ""; @@ -471,12 +471,12 @@ isa = PBXNativeTarget; buildConfigurationList = 81CB98D11AB7905D00136FA5 /* Build configuration list for PBXNativeTarget "ParseFacebookUtilsV4-UnitTests" */; buildPhases = ( - 947535AF3D7FE64739018338 /* Check Pods Manifest.lock */, + 947535AF3D7FE64739018338 /* [CP] Check Pods Manifest.lock */, 81CB98C21AB7905D00136FA5 /* Sources */, 81CB98C31AB7905D00136FA5 /* Frameworks */, 81CB98C41AB7905D00136FA5 /* Resources */, - 59A0049CBA9158822CB055BC /* Copy Pods Resources */, - A72EB79485B8A201DDE9573A /* Embed Pods Frameworks */, + 59A0049CBA9158822CB055BC /* [CP] Copy Pods Resources */, + A72EB79485B8A201DDE9573A /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -635,14 +635,14 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 59A0049CBA9158822CB055BC /* Copy Pods Resources */ = { + 59A0049CBA9158822CB055BC /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Copy Pods Resources"; + name = "[CP] Copy Pods Resources"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -708,14 +708,14 @@ shellPath = /bin/sh; shellScript = "# Generate localizable strings\nfind $PROJECT_DIR -name '*.m' -print0 | xargs -0 genstrings -q -o $PROJECT_DIR/Resources\necho \"Finished converting images\""; }; - 947535AF3D7FE64739018338 /* Check Pods Manifest.lock */ = { + 947535AF3D7FE64739018338 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Check Pods Manifest.lock"; + name = "[CP] Check Pods Manifest.lock"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -723,14 +723,14 @@ shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; showEnvVarsInLog = 0; }; - A72EB79485B8A201DDE9573A /* Embed Pods Frameworks */ = { + A72EB79485B8A201DDE9573A /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Embed Pods Frameworks"; + name = "[CP] Embed Pods Frameworks"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Podfile b/Podfile index eb6b91c..360e7f8 100644 --- a/Podfile +++ b/Podfile @@ -1,8 +1,6 @@ -source 'https://github.com/CocoaPods/Specs.git' platform :ios, '7.0' +use_frameworks! -workspace 'ParseFacebookUtils' - -target 'ParseFacebookUtilsV4-UnitTests', :exclusive => true do +target 'ParseFacebookUtilsV4-UnitTests' do pod 'OCMock' end diff --git a/Podfile.lock b/Podfile.lock index bea819f..7188902 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,10 +1,12 @@ PODS: - - OCMock (3.2) + - OCMock (3.3.1) DEPENDENCIES: - OCMock SPEC CHECKSUMS: - OCMock: 28def049ef47f996b515a8eeea958be7ccab2dbb + OCMock: f3f61e6eaa16038c30caa5798c5e49d3307b6f22 -COCOAPODS: 0.39.0 +PODFILE CHECKSUM: 7f73b647320ae8e03a939adea9db9d7515147c5e + +COCOAPODS: 1.0.1 From 9a064914a25388f56b80576699aa04502a4604a3 Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 13:58:47 -0700 Subject: [PATCH 3/6] Fix usage of deprecated Bolts APIs. --- .../iOS/PFFacebookMobileAuthenticationProvider.m | 9 +++++---- ParseFacebookUtils/Internal/PFFacebookPrivateUtilities.m | 7 +------ Tests/Unit/FacebookAuthenticationProviderTests.m | 2 +- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/ParseFacebookUtils/Internal/AuthenticationProvider/iOS/PFFacebookMobileAuthenticationProvider.m b/ParseFacebookUtils/Internal/AuthenticationProvider/iOS/PFFacebookMobileAuthenticationProvider.m index 004a8a8..f95a460 100644 --- a/ParseFacebookUtils/Internal/AuthenticationProvider/iOS/PFFacebookMobileAuthenticationProvider.m +++ b/ParseFacebookUtils/Internal/AuthenticationProvider/iOS/PFFacebookMobileAuthenticationProvider.m @@ -46,10 +46,11 @@ - (instancetype)initWithApplication:(UIApplication *)application publishPermissions:(nullable NSArray *)publishPermissions fromViewComtroller:(UIViewController *)viewController { if (readPermissions && publishPermissions) { - NSException *exception = [NSException exceptionWithName:NSInvalidArgumentException - reason:@"Read permissions are not permitted to be requested with publish permissions." - userInfo:nil]; - return [BFTask taskWithException:exception]; + NSString *description = @"Read permissions are not permitted to be requested with publish permissions."; + NSError *error = [NSError errorWithDomain:PFParseErrorDomain + code:kPFErrorFacebookInvalidSession + userInfo:@{ NSLocalizedDescriptionKey: description }]; + return [BFTask taskWithError:error]; } BFTaskCompletionSource *taskCompletionSource = [BFTaskCompletionSource taskCompletionSource]; diff --git a/ParseFacebookUtils/Internal/PFFacebookPrivateUtilities.m b/ParseFacebookUtils/Internal/PFFacebookPrivateUtilities.m index ae2cb67..1701118 100644 --- a/ParseFacebookUtils/Internal/PFFacebookPrivateUtilities.m +++ b/ParseFacebookUtils/Internal/PFFacebookPrivateUtilities.m @@ -84,12 +84,7 @@ - (instancetype)pffb_continueWithMainThreadBooleanBlock:(PFBooleanResultBlock)bl } - (instancetype)pffb_continueWithMainThreadBlock:(BFContinuationBlock)block { - return [self continueWithExecutor:[BFExecutor mainThreadExecutor] withBlock:^id(BFTask *task) { - if (task.exception) { - @throw task.exception; - } - return block(task); - }]; + return [self continueWithExecutor:[BFExecutor mainThreadExecutor] withBlock:block]; } @end diff --git a/Tests/Unit/FacebookAuthenticationProviderTests.m b/Tests/Unit/FacebookAuthenticationProviderTests.m index e12aebe..a5061ab 100644 --- a/Tests/Unit/FacebookAuthenticationProviderTests.m +++ b/Tests/Unit/FacebookAuthenticationProviderTests.m @@ -115,7 +115,7 @@ - (void)testAuthenticateBoth { XCTestExpectation *expectation = [self currentSelectorTestExpectation]; [[provider authenticateAsyncWithReadPermissions:@[ @"read" ] publishPermissions:@[ @"publish" ]] continueWithBlock:^id(BFTask *task) { - XCTAssertEqualObjects(task.exception.name, NSInvalidArgumentException); + XCTAssertNotNil(task.error); [expectation fulfill]; return nil; }]; From 9a33974453d7a308b22f214b1c96aa14c24e43bd Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 14:03:35 -0700 Subject: [PATCH 4/6] Update to latest shared configurations. --- .../ParseFacebookTestApplicationV4.xcconfig | 2 - .../ParseFacebookUtilsV4-UnitTests.xcconfig | 10 +- .../ParseFacebookUtilsV4-iOS.xcconfig | 10 +- .../ParseFacebookUtilsV4-tvOS.xcconfig | 6 +- ParseFacebookUtils.xcodeproj/project.pbxproj | 114 +++++++++--------- Vendor/xctoolchain | 2 +- 6 files changed, 67 insertions(+), 77 deletions(-) diff --git a/Configurations/ParseFacebookTestApplicationV4.xcconfig b/Configurations/ParseFacebookTestApplicationV4.xcconfig index 4b2a7e4..f5af581 100644 --- a/Configurations/ParseFacebookTestApplicationV4.xcconfig +++ b/Configurations/ParseFacebookTestApplicationV4.xcconfig @@ -13,6 +13,4 @@ PRODUCT_NAME = ParseFacebookTestApplicationV4 PRODUCT_BUNDLE_IDENTIFIER = com.parse.facebookutils-ios.unit.app -CLANG_ENABLE_MODULES = YES - INFOPLIST_FILE = $(SRCROOT)/Tests/TestApplication/Resources/Info.plist diff --git a/Configurations/ParseFacebookUtilsV4-UnitTests.xcconfig b/Configurations/ParseFacebookUtilsV4-UnitTests.xcconfig index 27c1353..a3f2bb0 100644 --- a/Configurations/ParseFacebookUtilsV4-UnitTests.xcconfig +++ b/Configurations/ParseFacebookUtilsV4-UnitTests.xcconfig @@ -8,17 +8,15 @@ // #include "Shared/Platform/iOS.xcconfig" -#include "Shared/Product/UnitTest.xcconfig" +#include "Shared/Product/LogicTests.xcconfig" #include "Pods/Target Support Files/Pods-ParseFacebookUtilsV4-UnitTests/Pods-ParseFacebookUtilsV4-UnitTests.debug.xcconfig" PRODUCT_NAME = ParseFacebookUtilsV4-UnitTests PRODUCT_BUNDLE_IDENTIFIER = com.parse.facebookutils-ios.unit -CLANG_ENABLE_MODULES = YES +IPHONEOS_DEPLOYMENT_TARGET = 8.0 + +FRAMEWORK_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) $(SRCROOT)/Vendor "$PODS_CONFIGURATION_BUILD_DIR/OCMock" INFOPLIST_FILE = $(SRCROOT)/Tests/Resources/Info.plist TEST_HOST = $(BUILT_PRODUCTS_DIR)/ParseFacebookTestApplicationV4.app/ParseFacebookTestApplicationV4 - -FRAMEWORK_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) $(SRCROOT)/Vendor -LIBRARY_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) -HEADER_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) diff --git a/Configurations/ParseFacebookUtilsV4-iOS.xcconfig b/Configurations/ParseFacebookUtilsV4-iOS.xcconfig index 079dbec..d2aaa65 100644 --- a/Configurations/ParseFacebookUtilsV4-iOS.xcconfig +++ b/Configurations/ParseFacebookUtilsV4-iOS.xcconfig @@ -8,19 +8,11 @@ // #include "Shared/Platform/iOS.xcconfig" -#include "Shared/Product/Framework.xcconfig" +#include "Shared/Product/StaticFramework.xcconfig" PRODUCT_NAME = ParseFacebookUtilsV4 PRODUCT_BUNDLE_IDENTIFIER = com.parse.facebookutils-ios -MACH_O_TYPE = staticlib -DEFINES_MODULE = YES -CLANG_ENABLE_MODULES = YES - INFOPLIST_FILE = $(SRCROOT)/Resources/Info-iOS.plist FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/Vendor -LIBRARY_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) -HEADER_SEARCH_PATHS = $(inherited) $(BUILT_PRODUCTS_DIR) - -OTHER_CFLAGS[sdk=iphoneos9.*] = $(inherited) -fembed-bitcode diff --git a/Configurations/ParseFacebookUtilsV4-tvOS.xcconfig b/Configurations/ParseFacebookUtilsV4-tvOS.xcconfig index 5fc470f..f3d40fb 100644 --- a/Configurations/ParseFacebookUtilsV4-tvOS.xcconfig +++ b/Configurations/ParseFacebookUtilsV4-tvOS.xcconfig @@ -8,15 +8,11 @@ // #include "Shared/Platform/tvOS.xcconfig" -#include "Shared/Product/Framework.xcconfig" +#include "Shared/Product/StaticFramework.xcconfig" PRODUCT_NAME = ParseFacebookUtilsV4 PRODUCT_BUNDLE_IDENTIFIER = com.parse.facebookutils-tvos -MACH_O_TYPE = staticlib -DEFINES_MODULE = YES -CLANG_ENABLE_MODULES = YES - INFOPLIST_FILE = $(SRCROOT)/Resources/Info-tvOS.plist FRAMEWORK_SEARCH_PATHS = $(inherited) $(SRCROOT)/Vendor/tvOS diff --git a/ParseFacebookUtils.xcodeproj/project.pbxproj b/ParseFacebookUtils.xcodeproj/project.pbxproj index 9ce93d7..a87d390 100644 --- a/ParseFacebookUtils.xcodeproj/project.pbxproj +++ b/ParseFacebookUtils.xcodeproj/project.pbxproj @@ -71,6 +71,18 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 8121EA9F1D39862400AC0B02 /* Common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = ""; }; + 8121EAA11D39862400AC0B02 /* iOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = iOS.xcconfig; sourceTree = ""; }; + 8121EAA21D39862400AC0B02 /* macOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = macOS.xcconfig; sourceTree = ""; }; + 8121EAA31D39862400AC0B02 /* tvOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = tvOS.xcconfig; sourceTree = ""; }; + 8121EAA41D39862400AC0B02 /* watchOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = watchOS.xcconfig; sourceTree = ""; }; + 8121EAA61D39862400AC0B02 /* Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Application.xcconfig; sourceTree = ""; }; + 8121EAA71D39862400AC0B02 /* DynamicFramework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DynamicFramework.xcconfig; sourceTree = ""; }; + 8121EAA81D39862400AC0B02 /* LogicTests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = LogicTests.xcconfig; sourceTree = ""; }; + 8121EAA91D39862400AC0B02 /* StaticFramework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = StaticFramework.xcconfig; sourceTree = ""; }; + 8121EAAB1D39862400AC0B02 /* Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + 8121EAAC1D39862400AC0B02 /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 8121EAAD1D39862400AC0B02 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 813DFC841AB2510300F25A08 /* PFFacebookUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFFacebookUtils.h; sourceTree = ""; }; 813DFC851AB2510300F25A08 /* PFFacebookUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFFacebookUtils.m; sourceTree = ""; }; 813DFC921AB2515A00F25A08 /* Bolts.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Bolts.framework; path = Vendor/Bolts.framework; sourceTree = ""; }; @@ -78,15 +90,6 @@ 815FC5971BBF74890006AF6E /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 815FC5991BBF74890006AF6E /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 81643D761AB79ABD00DD3E65 /* PFFacebookUtils_Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PFFacebookUtils_Private.h; path = Internal/PFFacebookUtils_Private.h; sourceTree = ""; }; - 8178BE9C1B716BF200051CF4 /* Common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = ""; }; - 8178BE9E1B716BF200051CF4 /* iOS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = iOS.xcconfig; sourceTree = ""; }; - 8178BE9F1B716BF300051CF4 /* OSX.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = OSX.xcconfig; sourceTree = ""; }; - 8178BEA11B716BF300051CF4 /* Application.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Application.xcconfig; sourceTree = ""; }; - 8178BEA21B716BF300051CF4 /* Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Framework.xcconfig; sourceTree = ""; }; - 8178BEA31B716BF300051CF4 /* UnitTest.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = UnitTest.xcconfig; sourceTree = ""; }; - 8178BEA51B716BF300051CF4 /* Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; - 8178BEA61B716BF300051CF4 /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; - 8178BEA81B716BF300051CF4 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 81930A3C1BBE1A0600A5E4BB /* PFFacebookTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFFacebookTestCase.h; sourceTree = ""; }; 81930A3D1BBE1A0600A5E4BB /* PFFacebookTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFFacebookTestCase.m; sourceTree = ""; }; 81B3F22A1AC9CA5300A92677 /* Localizable.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = Localizable.strings; path = Resources/Localizable.strings; sourceTree = SOURCE_ROOT; }; @@ -193,7 +196,7 @@ 81CB98D21AB7906D00136FA5 /* Tests */, 0867D69AFE84028FC02AAC07 /* Frameworks */, 034768DFFF38A50411DB9C8B /* Products */, - 9274417D12A02673DA657222 /* Pods */, + 8C6FD7306DE656C87CF08305 /* Pods */, ); indentWidth = 4; name = Breakpad; @@ -209,6 +212,49 @@ name = Frameworks; sourceTree = ""; }; + 8121EA9E1D39862400AC0B02 /* Shared */ = { + isa = PBXGroup; + children = ( + 8121EA9F1D39862400AC0B02 /* Common.xcconfig */, + 8121EAA01D39862400AC0B02 /* Platform */, + 8121EAA51D39862400AC0B02 /* Product */, + 8121EAAA1D39862400AC0B02 /* Project */, + 8121EAAD1D39862400AC0B02 /* Warnings.xcconfig */, + ); + path = Shared; + sourceTree = ""; + }; + 8121EAA01D39862400AC0B02 /* Platform */ = { + isa = PBXGroup; + children = ( + 8121EAA11D39862400AC0B02 /* iOS.xcconfig */, + 8121EAA21D39862400AC0B02 /* macOS.xcconfig */, + 8121EAA31D39862400AC0B02 /* tvOS.xcconfig */, + 8121EAA41D39862400AC0B02 /* watchOS.xcconfig */, + ); + path = Platform; + sourceTree = ""; + }; + 8121EAA51D39862400AC0B02 /* Product */ = { + isa = PBXGroup; + children = ( + 8121EAA61D39862400AC0B02 /* Application.xcconfig */, + 8121EAA71D39862400AC0B02 /* DynamicFramework.xcconfig */, + 8121EAA81D39862400AC0B02 /* LogicTests.xcconfig */, + 8121EAA91D39862400AC0B02 /* StaticFramework.xcconfig */, + ); + path = Product; + sourceTree = ""; + }; + 8121EAAA1D39862400AC0B02 /* Project */ = { + isa = PBXGroup; + children = ( + 8121EAAB1D39862400AC0B02 /* Debug.xcconfig */, + 8121EAAC1D39862400AC0B02 /* Release.xcconfig */, + ); + path = Project; + sourceTree = ""; + }; 813DFC7E1AB2510300F25A08 /* ParseFacebookUtilsV4 */ = { isa = PBXGroup; children = ( @@ -286,46 +332,6 @@ path = Resources; sourceTree = ""; }; - 8178BE9B1B716BF200051CF4 /* Shared */ = { - isa = PBXGroup; - children = ( - 8178BE9C1B716BF200051CF4 /* Common.xcconfig */, - 8178BE9D1B716BF200051CF4 /* Platform */, - 8178BEA01B716BF300051CF4 /* Product */, - 8178BEA41B716BF300051CF4 /* Project */, - 8178BEA81B716BF300051CF4 /* Warnings.xcconfig */, - ); - path = Shared; - sourceTree = ""; - }; - 8178BE9D1B716BF200051CF4 /* Platform */ = { - isa = PBXGroup; - children = ( - 8178BE9E1B716BF200051CF4 /* iOS.xcconfig */, - 8178BE9F1B716BF300051CF4 /* OSX.xcconfig */, - ); - path = Platform; - sourceTree = ""; - }; - 8178BEA01B716BF300051CF4 /* Product */ = { - isa = PBXGroup; - children = ( - 8178BEA11B716BF300051CF4 /* Application.xcconfig */, - 8178BEA21B716BF300051CF4 /* Framework.xcconfig */, - 8178BEA31B716BF300051CF4 /* UnitTest.xcconfig */, - ); - path = Product; - sourceTree = ""; - }; - 8178BEA41B716BF300051CF4 /* Project */ = { - isa = PBXGroup; - children = ( - 8178BEA51B716BF300051CF4 /* Debug.xcconfig */, - 8178BEA61B716BF300051CF4 /* Release.xcconfig */, - ); - path = Project; - sourceTree = ""; - }; 81930A3A1BBE1A0600A5E4BB /* Other */ = { isa = PBXGroup; children = ( @@ -406,7 +412,7 @@ path = tvOS; sourceTree = ""; }; - 9274417D12A02673DA657222 /* Pods */ = { + 8C6FD7306DE656C87CF08305 /* Pods */ = { isa = PBXGroup; children = ( ); @@ -416,11 +422,11 @@ F52CD63A1B58383C0051AB86 /* Configurations */ = { isa = PBXGroup; children = ( - 8178BE9B1B716BF200051CF4 /* Shared */, F52CD64A1B5838560051AB86 /* ParseFacebookUtilsV4-iOS.xcconfig */, F52CD64B1B5838620051AB86 /* ParseFacebookUtilsV4-UnitTests.xcconfig */, F52CD64C1B58386F0051AB86 /* ParseFacebookTestApplicationV4.xcconfig */, 81FE7F721C1778FC00E6BD34 /* ParseFacebookUtilsV4-tvOS.xcconfig */, + 8121EA9E1D39862400AC0B02 /* Shared */, ); path = Configurations; sourceTree = ""; @@ -813,7 +819,7 @@ }; 1DEB922308733DC00010E9CD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8178BEA51B716BF300051CF4 /* Debug.xcconfig */; + baseConfigurationReference = 8121EAAB1D39862400AC0B02 /* Debug.xcconfig */; buildSettings = { PARSE_DIR = "$(PROJECT_DIR)/.."; }; @@ -821,7 +827,7 @@ }; 1DEB922408733DC00010E9CD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8178BEA61B716BF300051CF4 /* Release.xcconfig */; + baseConfigurationReference = 8121EAAC1D39862400AC0B02 /* Release.xcconfig */; buildSettings = { PARSE_DIR = "$(PROJECT_DIR)/.."; }; diff --git a/Vendor/xctoolchain b/Vendor/xctoolchain index f1dd6b9..af8d7f6 160000 --- a/Vendor/xctoolchain +++ b/Vendor/xctoolchain @@ -1 +1 @@ -Subproject commit f1dd6b981643e1bbf5815093d37818d7f8e8e96a +Subproject commit af8d7f69bf7a5b8e8edd94a139f83fc465b7b64a From c53f3098cbd207f8e683cbe11eae741413fac44d Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 14:11:13 -0700 Subject: [PATCH 5/6] Add ruby-version file. --- .ruby-version | 1 + 1 file changed, 1 insertion(+) create mode 100644 .ruby-version diff --git a/.ruby-version b/.ruby-version new file mode 100644 index 0000000..2bf1c1c --- /dev/null +++ b/.ruby-version @@ -0,0 +1 @@ +2.3.1 From 607a94ba07d942ae551eded3717f49d7c2f70352 Mon Sep 17 00:00:00 2001 From: Nikita Lutsenko Date: Fri, 15 Jul 2016 14:19:16 -0700 Subject: [PATCH 6/6] Update CocoaPods repo and gems when running on Travis. --- .travis.yml | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0c74745..26952e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,18 +13,23 @@ env: - TEST_TYPE=iOS - TEST_TYPE=CocoaPods - TEST_TYPE=Package +install: +- | + bundle install + pod repo update --silent + pod install script: - | - if [ "$TEST_TYPE" = iOS ]; then - set -o pipefail - xcodebuild test -workspace ParseFacebookUtils.xcworkspace -sdk iphonesimulator -scheme ParseFacebookUtilsV4-iOS -configuration Debug -destination "platform=iOS Simulator,name=iPhone 4s" -destination "platform=iOS Simulator,name=iPhone 6 Plus" GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=YES GCC_GENERATE_TEST_COVERAGE_FILES=YES | xcpretty - elif [ "$TEST_TYPE" = CocoaPods ]; then - pod lib lint --use-libraries ParseFacebookUtilsV4.podspec - elif [ "$TEST_TYPE" = Package ]; then - bundle exec rake package:frameworks - fi + if [ "$TEST_TYPE" = iOS ]; then + set -o pipefail + xcodebuild test -workspace ParseFacebookUtils.xcworkspace -sdk iphonesimulator -scheme ParseFacebookUtilsV4-iOS -configuration Debug -destination "platform=iOS Simulator,name=iPhone 4s" -destination "platform=iOS Simulator,name=iPhone 6 Plus" GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=YES GCC_GENERATE_TEST_COVERAGE_FILES=YES | xcpretty + elif [ "$TEST_TYPE" = CocoaPods ]; then + pod lib lint --use-libraries ParseFacebookUtilsV4.podspec + elif [ "$TEST_TYPE" = Package ]; then + bundle exec rake package:frameworks + fi after_success: - | - if [ "$TEST_TYPE" = iOS ]; then - bash <(curl -s https://codecov.io/bash) - fi + if [ "$TEST_TYPE" = iOS ]; then + bash <(curl -s https://codecov.io/bash) + fi