From b1ad507ce1748fc2574b26d3f6de6f6764378eb9 Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Thu, 20 Apr 2017 04:19:43 +0500 Subject: [PATCH 01/12] Carthage + watchOS + tvOS + macOS Support --- .gitignore | 2 +- Darkly.xcodeproj/project.pbxproj | 1472 +++++++++------ .../{Darkly.xcscheme => Darkly_iOS.xcscheme} | 36 +- .../xcschemes/Darkly_osx.xcscheme | 80 + ...uickTest.xcscheme => Darkly_tvOS.xcscheme} | 42 +- .../xcschemes/Darkly_watchOS.xcscheme | 80 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + Darkly/Darkly.h | 23 + Darkly/DarklyConstants.h | 4 + Darkly/DarklyConstants.m | 4 + Darkly/LDClient.h | 14 +- Darkly/LDClientManager.h | 14 +- Darkly/LDClientManager.m | 14 +- Darkly/LDConfig.h | 2 + Darkly/{Models => }/LDDataManager.h | 0 Darkly/{Models => }/LDDataManager.m | 0 Darkly/LDPollingManager.h | 1 + Darkly/LDUserBuilder.h | 5 +- Darkly/LDUserBuilder.m | 15 +- Darkly/LDUtil.h | 9 +- Darkly/LDUtil.m | 62 +- Darkly/NSDictionary+JSON.h | 2 + DarklyTests/DarklyXCTestCase.h | 1 + DarklyTests/Info.plist | 2 - DarklyTests/LDConfigTest.m | 1 + DarklyTests/Models/LDEventModelTest.m | 8 +- Framework/Darkly.h | 32 + Framework/Info.plist | 24 + Framework/module.modulemap | 5 + LaunchDarkly.podspec | 107 +- Podfile | 21 +- Podfile.lock | 21 +- .../EventSource/EventSource.h | 6 +- .../EventSource/EventSource.m | 113 +- Pods/DarklyEventSource/README.md | 53 +- .../DarklyEventSource.podspec.json | 12 +- Pods/Manifest.lock | 21 +- Pods/OCMock/Source/OCMock/OCClassMockObject.m | 9 +- Pods/OCMock/Source/OCMock/OCMFunctions.m | 9 +- Pods/OCMock/Source/OCMock/OCMockObject.m | 11 +- .../Source/OCMock/OCObserverMockObject.m | 5 + .../Source/OCMock/OCPartialMockObject.m | 20 +- Pods/Pods.xcodeproj/project.pbxproj | 1646 ++++++++++++----- .../DarklyEventSource-OSX-dummy.m | 5 + .../DarklyEventSource-OSX-prefix.pch | 4 + .../DarklyEventSource-OSX.xcconfig | 10 + .../DarklyEventSource-iOS-dummy.m | 5 + .../DarklyEventSource-iOS-prefix.pch} | 0 .../DarklyEventSource-iOS.xcconfig} | 4 +- .../DarklyEventSource-tvOS-dummy.m | 5 + .../DarklyEventSource-tvOS-prefix.pch | 4 + .../DarklyEventSource-tvOS.xcconfig | 9 + .../DarklyEventSource-watchOS-dummy.m | 5 + .../DarklyEventSource-watchOS-prefix.pch | 4 + .../DarklyEventSource-watchOS.xcconfig | 9 + .../DarklyEventSource-dummy.m | 5 - .../Pods-Darkly/Pods-Darkly-dummy.m | 5 - .../Pods-Darkly/Pods-Darkly-frameworks.sh | 84 - ...Pods-Darkly_iOS-acknowledgements.markdown} | 0 .../Pods-Darkly_iOS-acknowledgements.plist} | 0 .../Pods-Darkly_iOS/Pods-Darkly_iOS-dummy.m | 5 + .../Pods-Darkly_iOS-resources.sh} | 0 .../Pods-Darkly_iOS.debug.xcconfig} | 4 +- .../Pods-Darkly_iOS.release.xcconfig} | 4 +- .../Pods-Darkly_osx-acknowledgements.markdown | 25 + .../Pods-Darkly_osx-acknowledgements.plist | 57 + .../Pods-Darkly_osx/Pods-Darkly_osx-dummy.m | 5 + .../Pods-Darkly_osx-resources.sh | 96 + .../Pods-Darkly_osx.debug.xcconfig | 10 + .../Pods-Darkly_osx.release.xcconfig | 10 + ...Pods-Darkly_tvOS-acknowledgements.markdown | 25 + .../Pods-Darkly_tvOS-acknowledgements.plist | 57 + .../Pods-Darkly_tvOS/Pods-Darkly_tvOS-dummy.m | 5 + .../Pods-Darkly_tvOS-resources.sh | 96 + .../Pods-Darkly_tvOS.debug.xcconfig | 9 + .../Pods-Darkly_tvOS.release.xcconfig | 9 + ...s-Darkly_watchOS-acknowledgements.markdown | 25 + ...Pods-Darkly_watchOS-acknowledgements.plist | 57 + .../Pods-Darkly_watchOS-dummy.m | 5 + .../Pods-Darkly_watchOS-resources.sh | 96 + .../Pods-Darkly_watchOS.debug.xcconfig | 9 + .../Pods-Darkly_watchOS.release.xcconfig | 9 + circle.yml | 4 +- 83 files changed, 3346 insertions(+), 1450 deletions(-) rename Darkly.xcodeproj/xcshareddata/xcschemes/{Darkly.xcscheme => Darkly_iOS.xcscheme} (76%) create mode 100644 Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme rename Darkly.xcodeproj/xcshareddata/xcschemes/{QuickTest.xcscheme => Darkly_tvOS.xcscheme} (73%) create mode 100644 Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme create mode 100644 Darkly.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 Darkly/Darkly.h rename Darkly/{Models => }/LDDataManager.h (100%) rename Darkly/{Models => }/LDDataManager.m (100%) create mode 100644 Framework/Darkly.h create mode 100644 Framework/Info.plist create mode 100644 Framework/module.modulemap create mode 100644 Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-dummy.m create mode 100644 Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch create mode 100644 Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX.xcconfig create mode 100644 Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-dummy.m rename Pods/Target Support Files/{DarklyEventSource/DarklyEventSource-prefix.pch => DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch} (100%) rename Pods/Target Support Files/{DarklyEventSource/DarklyEventSource.xcconfig => DarklyEventSource-iOS/DarklyEventSource-iOS.xcconfig} (94%) create mode 100644 Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-dummy.m create mode 100644 Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch create mode 100644 Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS.xcconfig create mode 100644 Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-dummy.m create mode 100644 Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch create mode 100644 Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS.xcconfig delete mode 100644 Pods/Target Support Files/DarklyEventSource/DarklyEventSource-dummy.m delete mode 100644 Pods/Target Support Files/Pods-Darkly/Pods-Darkly-dummy.m delete mode 100755 Pods/Target Support Files/Pods-Darkly/Pods-Darkly-frameworks.sh rename Pods/Target Support Files/{Pods-Darkly/Pods-Darkly-acknowledgements.markdown => Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.markdown} (100%) rename Pods/Target Support Files/{Pods-Darkly/Pods-Darkly-acknowledgements.plist => Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.plist} (100%) create mode 100644 Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-dummy.m rename Pods/Target Support Files/{Pods-Darkly/Pods-Darkly-resources.sh => Pods-Darkly_iOS/Pods-Darkly_iOS-resources.sh} (100%) rename Pods/Target Support Files/{Pods-Darkly/Pods-Darkly.debug.xcconfig => Pods-Darkly_iOS/Pods-Darkly_iOS.debug.xcconfig} (89%) rename Pods/Target Support Files/{Pods-Darkly/Pods-Darkly.release.xcconfig => Pods-Darkly_iOS/Pods-Darkly_iOS.release.xcconfig} (89%) create mode 100644 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.markdown create mode 100644 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.plist create mode 100644 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-dummy.m create mode 100755 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-resources.sh create mode 100644 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.debug.xcconfig create mode 100644 Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.release.xcconfig create mode 100644 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.markdown create mode 100644 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.plist create mode 100644 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-dummy.m create mode 100755 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-resources.sh create mode 100644 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.debug.xcconfig create mode 100644 Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.release.xcconfig create mode 100644 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.markdown create mode 100644 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.plist create mode 100644 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-dummy.m create mode 100755 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-resources.sh create mode 100644 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.debug.xcconfig create mode 100644 Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.release.xcconfig diff --git a/.gitignore b/.gitignore index ba4d4c40..55822793 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ # Xcode .DS_Store */build/* -build/* +build/ *.pbxuser !default.pbxuser *.mode1v3 diff --git a/Darkly.xcodeproj/project.pbxproj b/Darkly.xcodeproj/project.pbxproj index 43953f7b..a2d1f107 100644 --- a/Darkly.xcodeproj/project.pbxproj +++ b/Darkly.xcodeproj/project.pbxproj @@ -7,578 +7,705 @@ objects = { /* Begin PBXBuildFile section */ - 231CBA361B97970E0068BB8C /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 231CBA351B97970E0068BB8C /* UIKit.framework */; }; - 23DCFA9E1B95105A00F15531 /* LDPollingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 23DCFA9D1B95105A00F15531 /* LDPollingManager.m */; }; - 23E819541B8AA4A700010DD3 /* LDPollingManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E819531B8AA4A700010DD3 /* LDPollingManagerTest.m */; }; - 3A0C4DE91C4D93B70059886B /* LDFlagConfigModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A0C4DE81C4D93B70059886B /* LDFlagConfigModel.m */; }; - 3A0C4DEF1C4D9D660059886B /* LDEventModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A0C4DEE1C4D9D660059886B /* LDEventModel.m */; }; - 3A0C4DF21C4DA0330059886B /* LDUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A0C4DF11C4DA0330059886B /* LDUserModel.m */; }; - 3A0F25041B71650C00DAB39F /* LDClientTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A70A7891B6FD20600984E23 /* LDClientTest.m */; }; - 3A0F25051B71651400DAB39F /* LDConfigTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A70A7931B704BD100984E23 /* LDConfigTest.m */; }; - 3A5F93C01B6F10DB0093E419 /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A5F93BF1B6F10DB0093E419 /* LDUtil.m */; }; - 3A5F93C31B6F146F0093E419 /* LDUtilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A5F93C21B6F146F0093E419 /* LDUtilTest.m */; }; - 3A70A7881B6FCFAC00984E23 /* LDClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A70A7871B6FCFAC00984E23 /* LDClient.m */; }; - 3A70A78D1B7008B700984E23 /* LDConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A70A78C1B7008B700984E23 /* LDConfig.m */; }; - 3A70A7971B705F2C00984E23 /* DarklyConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A70A7961B705F2C00984E23 /* DarklyConstants.m */; }; - 3A9F23D11B82D19900D0EF2F /* LDRequestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3A9F23D01B82D19900D0EF2F /* LDRequestManager.m */; }; - 3AAF19A31B97DF9800FACF58 /* LDClientManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AAF19A21B97DF9800FACF58 /* LDClientManagerTest.m */; }; - 3AB1B71A1B89036A0006E970 /* LDRequestManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AB1B7191B89036A0006E970 /* LDRequestManagerTest.m */; }; - 3AC5D0DE1B8AA44A00417CBB /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AC5D0DD1B8AA44A00417CBB /* NSDictionary+JSON.m */; }; - 3AD8ACB61B86B5E800922AA6 /* LDClientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3AD8ACB51B86B5E700922AA6 /* LDClientManager.m */; }; - 9C26D624D5C421C86E51C5A8 /* libPods-DarklyTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A44BAF6AB27A088EB7A34F7 /* libPods-DarklyTests.a */; }; - 9D4CD7721BB923C700CBD687 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CCA68A121B7066480052BE63 /* CoreData.framework */; }; - 9D4CD7731BB925DB00CBD687 /* DarklyLibraryModels.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 9D4CD76B1BB9236B00CBD687 /* DarklyLibraryModels.bundle */; }; - 9DEEE93B1B9766B100238073 /* libDarkly.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CC36AA941B6D5FED008200F1 /* libDarkly.a */; }; - AD10D39D1B7B5F6700DB30E7 /* LDDataManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = AD10D39C1B7B5F6700DB30E7 /* LDDataManagerTest.m */; }; - ADE5294F1B8418B200761F3D /* LDUserBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = ADE5294E1B8418B200761F3D /* LDUserBuilder.m */; }; - ADE529511B84196000761F3D /* LDUserBuilderTest.m in Sources */ = {isa = PBXBuildFile; fileRef = ADE529501B84196000761F3D /* LDUserBuilderTest.m */; }; - CC01CCE31BB07703006B4A36 /* NSArray+UnitTests.m in Sources */ = {isa = PBXBuildFile; fileRef = CC01CCE21BB07703006B4A36 /* NSArray+UnitTests.m */; }; - CC36AAA01B6D5FED008200F1 /* libDarkly.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CC36AA941B6D5FED008200F1 /* libDarkly.a */; }; - CC467AB71B78323F0035C07E /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = CC467AB61B78323F0035C07E /* LDDataManager.m */; }; - CC4E8F431B8ABB3500F2A19D /* LDEventModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = CC4E8F421B8ABB3500F2A19D /* LDEventModelTest.m */; }; - CC4E8F461B8B3A7B00F2A19D /* LDUserModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = CC4E8F451B8B3A7B00F2A19D /* LDUserModelTest.m */; }; - CCDDE16D1B74058200DFC04B /* LDFlagConfigModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = CCDDE16C1B74058200DFC04B /* LDFlagConfigModelTest.m */; }; - CCDDE1741B7408F200DFC04B /* feature_flags.json in Resources */ = {isa = PBXBuildFile; fileRef = CCDDE1731B7408F200DFC04B /* feature_flags.json */; }; - CCEF66011BAF41FB00103FD5 /* DarklyXCTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = CCEF66001BAF41FB00103FD5 /* DarklyXCTestCase.m */; }; - E52B3EB8C8E800E2ED2BE540 /* libPods-Darkly.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D4123AB55EABA4FCD91AD877 /* libPods-Darkly.a */; }; + 0683B371C263390DDBF6D4F3 /* libPods-Darkly_watchOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8FD52A39AA4B4463CE25C809 /* libPods-Darkly_watchOS.a */; }; + 2551AE586CD06CDAB92F562B /* libPods-Darkly_iOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C1E7AAC94234A6885E5825DF /* libPods-Darkly_iOS.a */; }; + 3D3B4579599E5087793BDEA4 /* libPods-Darkly_tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5904632AF94FD233ACF9F607 /* libPods-Darkly_tvOS.a */; }; + 690346C81E6872EA00E45133 /* Darkly.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 690346BE1E6872EA00E45133 /* Darkly.framework */; }; + 690346F41E68990000E45133 /* Darkly-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 690346D81E68990000E45133 /* Darkly-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346F51E68990000E45133 /* DarklyConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346D91E68990000E45133 /* DarklyConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346F61E68990000E45133 /* DarklyConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DA1E68990000E45133 /* DarklyConstants.m */; }; + 690346F71E68990000E45133 /* LDClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DB1E68990000E45133 /* LDClient.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346F81E68990000E45133 /* LDClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DC1E68990000E45133 /* LDClient.m */; }; + 690346F91E68990000E45133 /* LDClientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DD1E68990000E45133 /* LDClientManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346FA1E68990000E45133 /* LDClientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DE1E68990000E45133 /* LDClientManager.m */; }; + 690346FB1E68990000E45133 /* LDConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DF1E68990000E45133 /* LDConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346FC1E68990000E45133 /* LDConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E01E68990000E45133 /* LDConfig.m */; }; + 690346FD1E68990000E45133 /* LDEventModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E11E68990000E45133 /* LDEventModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690346FE1E68990000E45133 /* LDEventModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E21E68990000E45133 /* LDEventModel.m */; }; + 690346FF1E68990000E45133 /* LDFlagConfigModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E31E68990000E45133 /* LDFlagConfigModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347001E68990000E45133 /* LDFlagConfigModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E41E68990000E45133 /* LDFlagConfigModel.m */; }; + 690347011E68990000E45133 /* LDPollingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E51E68990000E45133 /* LDPollingManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347021E68990000E45133 /* LDPollingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E61E68990000E45133 /* LDPollingManager.m */; }; + 690347031E68990000E45133 /* LDRequestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E71E68990000E45133 /* LDRequestManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347041E68990000E45133 /* LDRequestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E81E68990000E45133 /* LDRequestManager.m */; }; + 690347051E68990000E45133 /* LDUserBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E91E68990000E45133 /* LDUserBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347061E68990000E45133 /* LDUserBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EA1E68990000E45133 /* LDUserBuilder.m */; }; + 690347071E68990000E45133 /* LDUserModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346EB1E68990000E45133 /* LDUserModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347081E68990000E45133 /* LDUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EC1E68990000E45133 /* LDUserModel.m */; }; + 690347091E68990000E45133 /* LDUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346ED1E68990000E45133 /* LDUtil.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6903470A1E68990000E45133 /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; + 6903470D1E68990000E45133 /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6903470E1E68990000E45133 /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; + 690347111E68994500E45133 /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 690347121E68994500E45133 /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; + 690347261E689B9F00E45133 /* LDUserBuilderTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347131E689B9F00E45133 /* LDUserBuilderTest.m */; }; + 690347291E689B9F00E45133 /* LDEventModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347171E689B9F00E45133 /* LDEventModelTest.m */; }; + 6903472A1E689B9F00E45133 /* LDUserModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347181E689B9F00E45133 /* LDUserModelTest.m */; }; + 6903472B1E689B9F00E45133 /* LDPollingManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347191E689B9F00E45133 /* LDPollingManagerTest.m */; }; + 6903472C1E689B9F00E45133 /* LDClientTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 6903471A1E689B9F00E45133 /* LDClientTest.m */; }; + 6903472D1E689B9F00E45133 /* LDUtilTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 6903471B1E689B9F00E45133 /* LDUtilTest.m */; }; + 6903472E1E689B9F00E45133 /* LDClientManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 6903471C1E689B9F00E45133 /* LDClientManagerTest.m */; }; + 6903472F1E689B9F00E45133 /* feature_flags.json in Resources */ = {isa = PBXBuildFile; fileRef = 6903471E1E689B9F00E45133 /* feature_flags.json */; }; + 690347301E689B9F00E45133 /* LDConfigTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 6903471F1E689B9F00E45133 /* LDConfigTest.m */; }; + 690347311E689B9F00E45133 /* LDFlagConfigModelTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347211E689B9F00E45133 /* LDFlagConfigModelTest.m */; }; + 690347321E689B9F00E45133 /* DarklyXCTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347221E689B9F00E45133 /* DarklyXCTestCase.m */; }; + 690347331E689B9F00E45133 /* NSArray+UnitTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347251E689B9F00E45133 /* NSArray+UnitTests.m */; }; + 69071F7E1EA2A7CA00497F93 /* Darkly.h in Headers */ = {isa = PBXBuildFile; fileRef = 69BAF40B1E9AAB4800747613 /* Darkly.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69071F7F1EA2A7CB00497F93 /* Darkly.h in Headers */ = {isa = PBXBuildFile; fileRef = 69BAF40B1E9AAB4800747613 /* Darkly.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69071F801EA2A7CC00497F93 /* Darkly.h in Headers */ = {isa = PBXBuildFile; fileRef = 69BAF40B1E9AAB4800747613 /* Darkly.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E971E74712800B88B23 /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E981E74712800B88B23 /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; + 69A87E991E74712800B88B23 /* Darkly-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 690346D81E68990000E45133 /* Darkly-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E9A1E74712800B88B23 /* DarklyConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346D91E68990000E45133 /* DarklyConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E9B1E74712800B88B23 /* DarklyConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DA1E68990000E45133 /* DarklyConstants.m */; }; + 69A87E9C1E74712800B88B23 /* LDClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DB1E68990000E45133 /* LDClient.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E9D1E74712800B88B23 /* LDClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DC1E68990000E45133 /* LDClient.m */; }; + 69A87E9E1E74712800B88B23 /* LDClientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DD1E68990000E45133 /* LDClientManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87E9F1E74712800B88B23 /* LDClientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DE1E68990000E45133 /* LDClientManager.m */; }; + 69A87EA01E74712800B88B23 /* LDConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DF1E68990000E45133 /* LDConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EA11E74712800B88B23 /* LDConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E01E68990000E45133 /* LDConfig.m */; }; + 69A87EA21E74712800B88B23 /* LDEventModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E11E68990000E45133 /* LDEventModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EA31E74712800B88B23 /* LDEventModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E21E68990000E45133 /* LDEventModel.m */; }; + 69A87EA41E74712800B88B23 /* LDFlagConfigModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E31E68990000E45133 /* LDFlagConfigModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EA51E74712800B88B23 /* LDFlagConfigModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E41E68990000E45133 /* LDFlagConfigModel.m */; }; + 69A87EA61E74712800B88B23 /* LDPollingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E51E68990000E45133 /* LDPollingManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EA71E74712800B88B23 /* LDPollingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E61E68990000E45133 /* LDPollingManager.m */; }; + 69A87EA81E74712800B88B23 /* LDRequestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E71E68990000E45133 /* LDRequestManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EA91E74712800B88B23 /* LDRequestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E81E68990000E45133 /* LDRequestManager.m */; }; + 69A87EAA1E74712800B88B23 /* LDUserBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E91E68990000E45133 /* LDUserBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EAB1E74712800B88B23 /* LDUserBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EA1E68990000E45133 /* LDUserBuilder.m */; }; + 69A87EAC1E74712800B88B23 /* LDUserModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346EB1E68990000E45133 /* LDUserModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EAD1E74712800B88B23 /* LDUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EC1E68990000E45133 /* LDUserModel.m */; }; + 69A87EAE1E74712800B88B23 /* LDUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346ED1E68990000E45133 /* LDUtil.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EAF1E74712800B88B23 /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; + 69A87EB01E74712800B88B23 /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69A87EB11E74712800B88B23 /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; + 69BAF40D1E9AAB4800747613 /* Darkly.h in Headers */ = {isa = PBXBuildFile; fileRef = 69BAF40B1E9AAB4800747613 /* Darkly.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BAF40E1E9AAB4800747613 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 69BAF40C1E9AAB4800747613 /* Info.plist */; }; + 69BD7E181E6C79910056D70F /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E191E6C79910056D70F /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; + 69BD7E1A1E6C79910056D70F /* Darkly-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 690346D81E68990000E45133 /* Darkly-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E1B1E6C79910056D70F /* DarklyConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346D91E68990000E45133 /* DarklyConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E1C1E6C79910056D70F /* DarklyConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DA1E68990000E45133 /* DarklyConstants.m */; }; + 69BD7E1D1E6C79910056D70F /* LDClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DB1E68990000E45133 /* LDClient.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E1E1E6C79910056D70F /* LDClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DC1E68990000E45133 /* LDClient.m */; }; + 69BD7E1F1E6C79910056D70F /* LDClientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DD1E68990000E45133 /* LDClientManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E201E6C79910056D70F /* LDClientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DE1E68990000E45133 /* LDClientManager.m */; }; + 69BD7E211E6C79910056D70F /* LDConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DF1E68990000E45133 /* LDConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E221E6C79910056D70F /* LDConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E01E68990000E45133 /* LDConfig.m */; }; + 69BD7E231E6C79910056D70F /* LDEventModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E11E68990000E45133 /* LDEventModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E241E6C79910056D70F /* LDEventModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E21E68990000E45133 /* LDEventModel.m */; }; + 69BD7E251E6C79910056D70F /* LDFlagConfigModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E31E68990000E45133 /* LDFlagConfigModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E261E6C79910056D70F /* LDFlagConfigModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E41E68990000E45133 /* LDFlagConfigModel.m */; }; + 69BD7E271E6C79910056D70F /* LDPollingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E51E68990000E45133 /* LDPollingManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E281E6C79910056D70F /* LDPollingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E61E68990000E45133 /* LDPollingManager.m */; }; + 69BD7E291E6C79910056D70F /* LDRequestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E71E68990000E45133 /* LDRequestManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E2A1E6C79910056D70F /* LDRequestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E81E68990000E45133 /* LDRequestManager.m */; }; + 69BD7E2B1E6C79910056D70F /* LDUserBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E91E68990000E45133 /* LDUserBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E2C1E6C79910056D70F /* LDUserBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EA1E68990000E45133 /* LDUserBuilder.m */; }; + 69BD7E2D1E6C79910056D70F /* LDUserModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346EB1E68990000E45133 /* LDUserModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E2E1E6C79910056D70F /* LDUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EC1E68990000E45133 /* LDUserModel.m */; }; + 69BD7E2F1E6C79910056D70F /* LDUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346ED1E68990000E45133 /* LDUtil.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E301E6C79910056D70F /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; + 69BD7E311E6C79910056D70F /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69BD7E321E6C79910056D70F /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; + 69E5275D1E6E948200E4B63B /* LDRequestManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347141E689B9F00E45133 /* LDRequestManagerTest.m */; }; + 69E5275E1E6E948F00E4B63B /* LDDataManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347161E689B9F00E45133 /* LDDataManagerTest.m */; }; + 69F3F6921E6BF7F600079A09 /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; + 69F3F6941E6BF80800079A09 /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6951E6BF82100079A09 /* DarklyConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346D91E68990000E45133 /* DarklyConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6961E6BF82100079A09 /* DarklyConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DA1E68990000E45133 /* DarklyConstants.m */; }; + 69F3F6971E6BF82C00079A09 /* LDClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DB1E68990000E45133 /* LDClient.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6981E6BF82C00079A09 /* LDClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DC1E68990000E45133 /* LDClient.m */; }; + 69F3F6991E6BF82C00079A09 /* LDClientManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DD1E68990000E45133 /* LDClientManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F69A1E6BF82C00079A09 /* LDClientManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346DE1E68990000E45133 /* LDClientManager.m */; }; + 69F3F69B1E6BF82C00079A09 /* LDConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346DF1E68990000E45133 /* LDConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F69C1E6BF82C00079A09 /* LDConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E01E68990000E45133 /* LDConfig.m */; }; + 69F3F69D1E6BF82C00079A09 /* LDEventModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E11E68990000E45133 /* LDEventModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F69E1E6BF82C00079A09 /* LDEventModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E21E68990000E45133 /* LDEventModel.m */; }; + 69F3F69F1E6BF82C00079A09 /* LDFlagConfigModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E31E68990000E45133 /* LDFlagConfigModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6A01E6BF82C00079A09 /* LDFlagConfigModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E41E68990000E45133 /* LDFlagConfigModel.m */; }; + 69F3F6A11E6BF82C00079A09 /* LDPollingManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E51E68990000E45133 /* LDPollingManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6A21E6BF82C00079A09 /* LDPollingManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E61E68990000E45133 /* LDPollingManager.m */; }; + 69F3F6A31E6BF82C00079A09 /* LDRequestManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E71E68990000E45133 /* LDRequestManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6A41E6BF82C00079A09 /* LDRequestManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346E81E68990000E45133 /* LDRequestManager.m */; }; + 69F3F6A51E6BF82C00079A09 /* LDUserBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346E91E68990000E45133 /* LDUserBuilder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6A61E6BF82C00079A09 /* LDUserBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EA1E68990000E45133 /* LDUserBuilder.m */; }; + 69F3F6A71E6BF82C00079A09 /* LDUserModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346EB1E68990000E45133 /* LDUserModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6A81E6BF82C00079A09 /* LDUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EC1E68990000E45133 /* LDUserModel.m */; }; + 69F3F6A91E6BF82C00079A09 /* LDUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346ED1E68990000E45133 /* LDUtil.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6AA1E6BF82C00079A09 /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; + 69F3F6AB1E6BF82C00079A09 /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 69F3F6AC1E6BF82C00079A09 /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; + 69F3F6AE1E6BF84B00079A09 /* Darkly-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 690346D81E68990000E45133 /* Darkly-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; }; + BFAEEF645115F1F7FAB4C79D /* libPods-Darkly_osx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C59BD281845EC949FED485E0 /* libPods-Darkly_osx.a */; }; + D0676DBF15A7B57BFC2505F6 /* libPods-DarklyTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 29E40506FC1C68667E74CDC9 /* libPods-DarklyTests.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 23AA1AD21B721E3F00FE6A00 /* PBXContainerItemProxy */ = { + 690346C91E6872EA00E45133 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = CC36AA8C1B6D5FED008200F1 /* Project object */; + containerPortal = 690346B51E6872EA00E45133 /* Project object */; proxyType = 1; - remoteGlobalIDString = 23AA1AB51B721E3E00FE6A00; - remoteInfo = QuickTest; - }; - CC36AAA11B6D5FED008200F1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = CC36AA8C1B6D5FED008200F1 /* Project object */; - proxyType = 1; - remoteGlobalIDString = CC36AA931B6D5FED008200F1; + remoteGlobalIDString = 690346BD1E6872EA00E45133; remoteInfo = Darkly; }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - CC36AA921B6D5FED008200F1 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = "include/$(PRODUCT_NAME)"; - dstSubfolderSpec = 16; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ - 0A44BAF6AB27A088EB7A34F7 /* libPods-DarklyTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-DarklyTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 0B0C661B865D9A3A089371B2 /* Pods-DarklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DarklyTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests.release.xcconfig"; sourceTree = ""; }; - 0CF3D8B3D5EBA564267F784E /* Pods-Darkly.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly/Pods-Darkly.debug.xcconfig"; sourceTree = ""; }; - 231CBA291B9791340068BB8C /* libPods-DarklyTests.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-DarklyTests.a"; path = "Pods/../build/Debug-iphoneos/libPods-DarklyTests.a"; sourceTree = ""; }; - 231CBA2B1B97913B0068BB8C /* libPods-Darkly.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-Darkly.a"; path = "Pods/../build/Debug-iphoneos/libPods-Darkly.a"; sourceTree = ""; }; - 231CBA2D1B97914B0068BB8C /* libMantle.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMantle.a; path = "Pods/../build/Debug-iphoneos/libMantle.a"; sourceTree = ""; }; - 231CBA2F1B97923D0068BB8C /* libMantle.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMantle.a; path = "Pods/../build/Debug-iphoneos/libMantle.a"; sourceTree = ""; }; - 231CBA311B9792AC0068BB8C /* libMTLManagedObjectAdapter.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMTLManagedObjectAdapter.a; path = "Pods/../build/Debug-iphoneos/libMTLManagedObjectAdapter.a"; sourceTree = ""; }; - 231CBA331B9795610068BB8C /* libPods-Darkly.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-Darkly.a"; path = "Pods/../build/Debug-iphoneos/libPods-Darkly.a"; sourceTree = ""; }; - 231CBA351B97970E0068BB8C /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; - 231CBA371B97971A0068BB8C /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; - 231CBA391B97972B0068BB8C /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = System/Library/Frameworks/StoreKit.framework; sourceTree = SDKROOT; }; - 231CBA3B1B9797320068BB8C /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; - 231CBA3D1B9797530068BB8C /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; - 231CBA3F1B9797680068BB8C /* libPods-Darkly.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-Darkly.a"; path = "Pods/../build/Debug-iphoneos/libPods-Darkly.a"; sourceTree = ""; }; - 23AA1AB61B721E3E00FE6A00 /* QuickTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = QuickTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 23AA1AD11B721E3F00FE6A00 /* QuickTestTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = QuickTestTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 23DCFA9C1B95105A00F15531 /* LDPollingManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDPollingManager.h; sourceTree = ""; }; - 23DCFA9D1B95105A00F15531 /* LDPollingManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDPollingManager.m; sourceTree = ""; }; - 23E819531B8AA4A700010DD3 /* LDPollingManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDPollingManagerTest.m; sourceTree = ""; }; - 3A0C4DE71C4D93B70059886B /* LDFlagConfigModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDFlagConfigModel.h; sourceTree = ""; }; - 3A0C4DE81C4D93B70059886B /* LDFlagConfigModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDFlagConfigModel.m; sourceTree = ""; }; - 3A0C4DED1C4D9D660059886B /* LDEventModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDEventModel.h; sourceTree = ""; }; - 3A0C4DEE1C4D9D660059886B /* LDEventModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDEventModel.m; sourceTree = ""; }; - 3A0C4DF01C4DA0330059886B /* LDUserModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUserModel.h; sourceTree = ""; }; - 3A0C4DF11C4DA0330059886B /* LDUserModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserModel.m; sourceTree = ""; }; - 3A5F93BF1B6F10DB0093E419 /* LDUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUtil.m; sourceTree = ""; }; - 3A5F93C11B6F10F50093E419 /* LDUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUtil.h; sourceTree = ""; }; - 3A5F93C21B6F146F0093E419 /* LDUtilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUtilTest.m; sourceTree = ""; }; - 3A70A7861B6FCF9300984E23 /* LDClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDClient.h; sourceTree = ""; }; - 3A70A7871B6FCFAC00984E23 /* LDClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClient.m; sourceTree = ""; }; - 3A70A7891B6FD20600984E23 /* LDClientTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientTest.m; sourceTree = ""; }; - 3A70A78B1B7008A900984E23 /* LDConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDConfig.h; sourceTree = ""; }; - 3A70A78C1B7008B700984E23 /* LDConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDConfig.m; sourceTree = ""; }; - 3A70A7921B702F8F00984E23 /* Darkly-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Darkly-Prefix.pch"; sourceTree = ""; }; - 3A70A7931B704BD100984E23 /* LDConfigTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDConfigTest.m; sourceTree = ""; }; - 3A70A7951B705F1100984E23 /* DarklyConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DarklyConstants.h; sourceTree = ""; }; - 3A70A7961B705F2C00984E23 /* DarklyConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DarklyConstants.m; sourceTree = ""; }; - 3A9F23CF1B82D19900D0EF2F /* LDRequestManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDRequestManager.h; sourceTree = ""; }; - 3A9F23D01B82D19900D0EF2F /* LDRequestManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDRequestManager.m; sourceTree = ""; }; - 3AAF19A21B97DF9800FACF58 /* LDClientManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientManagerTest.m; sourceTree = ""; }; - 3AB1B7191B89036A0006E970 /* LDRequestManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDRequestManagerTest.m; sourceTree = ""; }; - 3AC5D0DC1B8AA44A00417CBB /* NSDictionary+JSON.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+JSON.h"; sourceTree = ""; }; - 3AC5D0DD1B8AA44A00417CBB /* NSDictionary+JSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+JSON.m"; sourceTree = ""; }; - 3AD8ACB41B86B5E700922AA6 /* LDClientManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDClientManager.h; sourceTree = ""; }; - 3AD8ACB51B86B5E700922AA6 /* LDClientManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientManager.m; sourceTree = ""; }; - 9D4CD76B1BB9236B00CBD687 /* DarklyLibraryModels.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DarklyLibraryModels.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; - 9D4CD76D1BB9236B00CBD687 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 9DEEE9431B976F8B00238073 /* libMantle.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMantle.a; path = "Pods/../build/Debug-iphoneos/libMantle.a"; sourceTree = ""; }; - 9DEEE9451B976F8F00238073 /* libMTLManagedObjectAdapter.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMTLManagedObjectAdapter.a; path = "Pods/../build/Debug-iphoneos/libMTLManagedObjectAdapter.a"; sourceTree = ""; }; - AD10D39C1B7B5F6700DB30E7 /* LDDataManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LDDataManagerTest.m; path = Models/LDDataManagerTest.m; sourceTree = ""; }; - ADE5294D1B8418B200761F3D /* LDUserBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUserBuilder.h; sourceTree = ""; }; - ADE5294E1B8418B200761F3D /* LDUserBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserBuilder.m; sourceTree = ""; }; - ADE529501B84196000761F3D /* LDUserBuilderTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserBuilderTest.m; sourceTree = ""; }; - CC01CCE11BB07703006B4A36 /* NSArray+UnitTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSArray+UnitTests.h"; path = "Categories/NSArray+UnitTests.h"; sourceTree = ""; }; - CC01CCE21BB07703006B4A36 /* NSArray+UnitTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSArray+UnitTests.m"; path = "Categories/NSArray+UnitTests.m"; sourceTree = ""; }; - CC36AA941B6D5FED008200F1 /* libDarkly.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDarkly.a; sourceTree = BUILT_PRODUCTS_DIR; }; - CC36AA9F1B6D5FED008200F1 /* DarklyTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DarklyTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - CC36AAA51B6D5FED008200F1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - CC467AB51B78323F0035C07E /* LDDataManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LDDataManager.h; path = Models/LDDataManager.h; sourceTree = ""; }; - CC467AB61B78323F0035C07E /* LDDataManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LDDataManager.m; path = Models/LDDataManager.m; sourceTree = ""; }; - CC4E8F421B8ABB3500F2A19D /* LDEventModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LDEventModelTest.m; path = Models/LDEventModelTest.m; sourceTree = ""; }; - CC4E8F451B8B3A7B00F2A19D /* LDUserModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LDUserModelTest.m; path = Models/LDUserModelTest.m; sourceTree = ""; }; - CCA68A121B7066480052BE63 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; - CCDDE16C1B74058200DFC04B /* LDFlagConfigModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDFlagConfigModelTest.m; sourceTree = ""; }; - CCDDE1731B7408F200DFC04B /* feature_flags.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = feature_flags.json; sourceTree = ""; }; - CCEF65FF1BAF41FB00103FD5 /* DarklyXCTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DarklyXCTestCase.h; sourceTree = ""; }; - CCEF66001BAF41FB00103FD5 /* DarklyXCTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DarklyXCTestCase.m; sourceTree = ""; }; - D4123AB55EABA4FCD91AD877 /* libPods-Darkly.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - F19BA3C600D75D385DA50A51 /* Pods-Darkly.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly.release.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly/Pods-Darkly.release.xcconfig"; sourceTree = ""; }; - FEEDBB6719EB6CBAC2086BA5 /* Pods-DarklyTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DarklyTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests.debug.xcconfig"; sourceTree = ""; }; + 19A2EE50240D0C590DE0B72D /* Pods-DarklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DarklyTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests.release.xcconfig"; sourceTree = ""; }; + 29E40506FC1C68667E74CDC9 /* libPods-DarklyTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-DarklyTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 445D1E11EB456D1548CD16E7 /* Pods-Darkly_tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_tvOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.release.xcconfig"; sourceTree = ""; }; + 45230012EB61EE79C3E92D63 /* Pods-Darkly_watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_watchOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.release.xcconfig"; sourceTree = ""; }; + 5904632AF94FD233ACF9F607 /* libPods-Darkly_tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly_tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 690346BE1E6872EA00E45133 /* Darkly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Darkly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 690346C71E6872EA00E45133 /* DarklyTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DarklyTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 690346CE1E6872EA00E45133 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 690346D81E68990000E45133 /* Darkly-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Darkly-Prefix.pch"; sourceTree = ""; }; + 690346D91E68990000E45133 /* DarklyConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DarklyConstants.h; sourceTree = ""; }; + 690346DA1E68990000E45133 /* DarklyConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DarklyConstants.m; sourceTree = ""; }; + 690346DB1E68990000E45133 /* LDClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDClient.h; sourceTree = ""; }; + 690346DC1E68990000E45133 /* LDClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClient.m; sourceTree = ""; }; + 690346DD1E68990000E45133 /* LDClientManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDClientManager.h; sourceTree = ""; }; + 690346DE1E68990000E45133 /* LDClientManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientManager.m; sourceTree = ""; }; + 690346DF1E68990000E45133 /* LDConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDConfig.h; sourceTree = ""; }; + 690346E01E68990000E45133 /* LDConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDConfig.m; sourceTree = ""; }; + 690346E11E68990000E45133 /* LDEventModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDEventModel.h; sourceTree = ""; }; + 690346E21E68990000E45133 /* LDEventModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDEventModel.m; sourceTree = ""; }; + 690346E31E68990000E45133 /* LDFlagConfigModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDFlagConfigModel.h; sourceTree = ""; }; + 690346E41E68990000E45133 /* LDFlagConfigModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDFlagConfigModel.m; sourceTree = ""; }; + 690346E51E68990000E45133 /* LDPollingManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDPollingManager.h; sourceTree = ""; }; + 690346E61E68990000E45133 /* LDPollingManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDPollingManager.m; sourceTree = ""; }; + 690346E71E68990000E45133 /* LDRequestManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDRequestManager.h; sourceTree = ""; }; + 690346E81E68990000E45133 /* LDRequestManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDRequestManager.m; sourceTree = ""; }; + 690346E91E68990000E45133 /* LDUserBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUserBuilder.h; sourceTree = ""; }; + 690346EA1E68990000E45133 /* LDUserBuilder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserBuilder.m; sourceTree = ""; }; + 690346EB1E68990000E45133 /* LDUserModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUserModel.h; sourceTree = ""; }; + 690346EC1E68990000E45133 /* LDUserModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserModel.m; sourceTree = ""; }; + 690346ED1E68990000E45133 /* LDUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDUtil.h; sourceTree = ""; }; + 690346EE1E68990000E45133 /* LDUtil.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUtil.m; sourceTree = ""; }; + 690346F21E68990000E45133 /* NSDictionary+JSON.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+JSON.h"; sourceTree = ""; }; + 690346F31E68990000E45133 /* NSDictionary+JSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+JSON.m"; sourceTree = ""; }; + 6903470F1E68994500E45133 /* LDDataManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LDDataManager.h; sourceTree = ""; }; + 690347101E68994500E45133 /* LDDataManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDDataManager.m; sourceTree = ""; }; + 690347131E689B9F00E45133 /* LDUserBuilderTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserBuilderTest.m; sourceTree = ""; }; + 690347141E689B9F00E45133 /* LDRequestManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDRequestManagerTest.m; sourceTree = ""; }; + 690347161E689B9F00E45133 /* LDDataManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDDataManagerTest.m; sourceTree = ""; }; + 690347171E689B9F00E45133 /* LDEventModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDEventModelTest.m; sourceTree = ""; }; + 690347181E689B9F00E45133 /* LDUserModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUserModelTest.m; sourceTree = ""; }; + 690347191E689B9F00E45133 /* LDPollingManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDPollingManagerTest.m; sourceTree = ""; }; + 6903471A1E689B9F00E45133 /* LDClientTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientTest.m; sourceTree = ""; }; + 6903471B1E689B9F00E45133 /* LDUtilTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDUtilTest.m; sourceTree = ""; }; + 6903471C1E689B9F00E45133 /* LDClientManagerTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDClientManagerTest.m; sourceTree = ""; }; + 6903471E1E689B9F00E45133 /* feature_flags.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = feature_flags.json; sourceTree = ""; }; + 6903471F1E689B9F00E45133 /* LDConfigTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDConfigTest.m; sourceTree = ""; }; + 690347201E689B9F00E45133 /* DarklyXCTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DarklyXCTestCase.h; sourceTree = ""; }; + 690347211E689B9F00E45133 /* LDFlagConfigModelTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LDFlagConfigModelTest.m; sourceTree = ""; }; + 690347221E689B9F00E45133 /* DarklyXCTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DarklyXCTestCase.m; sourceTree = ""; }; + 690347241E689B9F00E45133 /* NSArray+UnitTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSArray+UnitTests.h"; sourceTree = ""; }; + 690347251E689B9F00E45133 /* NSArray+UnitTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSArray+UnitTests.m"; sourceTree = ""; }; + 69A87E8F1E74458900B88B23 /* Darkly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Darkly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 69BAF40B1E9AAB4800747613 /* Darkly.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Darkly.h; path = Framework/Darkly.h; sourceTree = SOURCE_ROOT; }; + 69BAF40C1E9AAB4800747613 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Framework/Info.plist; sourceTree = SOURCE_ROOT; }; + 69BD7E101E6C79550056D70F /* Darkly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Darkly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 69F3F67B1E6BF7C000079A09 /* Darkly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Darkly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 802467EF0B1BE213E518DE86 /* Pods-Darkly_watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_watchOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.debug.xcconfig"; sourceTree = ""; }; + 8FD52A39AA4B4463CE25C809 /* libPods-Darkly_watchOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly_watchOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9561B36D8DDA8283B3A20C24 /* Pods-Darkly_osx.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_osx.release.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.release.xcconfig"; sourceTree = ""; }; + AE2313537C4DC7348E7403C2 /* Pods-Darkly_osx.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_osx.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.debug.xcconfig"; sourceTree = ""; }; + B45362DE9A2862E8C314F143 /* Pods-Darkly_iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_iOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.debug.xcconfig"; sourceTree = ""; }; + BB5F4F33459631EF257FFA74 /* Pods-Darkly_iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_iOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.release.xcconfig"; sourceTree = ""; }; + C1394169CDEB2959EFA72572 /* Pods-Darkly_tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Darkly_tvOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.debug.xcconfig"; sourceTree = ""; }; + C1E7AAC94234A6885E5825DF /* libPods-Darkly_iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly_iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + C59BD281845EC949FED485E0 /* libPods-Darkly_osx.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly_osx.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + EBAB2E6FCA2BAFC866C0B2CD /* Pods-DarklyTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DarklyTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 23AA1AB31B721E3E00FE6A00 /* Frameworks */ = { + 690346BA1E6872EA00E45133 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 231CBA361B97970E0068BB8C /* UIKit.framework in Frameworks */, - 9DEEE93B1B9766B100238073 /* libDarkly.a in Frameworks */, + 2551AE586CD06CDAB92F562B /* libPods-Darkly_iOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 23AA1ACE1B721E3F00FE6A00 /* Frameworks */ = { + 690346C41E6872EA00E45133 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 690346C81E6872EA00E45133 /* Darkly.framework in Frameworks */, + D0676DBF15A7B57BFC2505F6 /* libPods-DarklyTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9D4CD7681BB9236B00CBD687 /* Frameworks */ = { + 69A87E8B1E74458900B88B23 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 9D4CD7721BB923C700CBD687 /* CoreData.framework in Frameworks */, + BFAEEF645115F1F7FAB4C79D /* libPods-Darkly_osx.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC36AA911B6D5FED008200F1 /* Frameworks */ = { + 69BD7E0C1E6C79550056D70F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E52B3EB8C8E800E2ED2BE540 /* libPods-Darkly.a in Frameworks */, + 0683B371C263390DDBF6D4F3 /* libPods-Darkly_watchOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC36AA9C1B6D5FED008200F1 /* Frameworks */ = { + 69F3F6771E6BF7C000079A09 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - CC36AAA01B6D5FED008200F1 /* libDarkly.a in Frameworks */, - 9C26D624D5C421C86E51C5A8 /* libPods-DarklyTests.a in Frameworks */, + 3D3B4579599E5087793BDEA4 /* libPods-Darkly_tvOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 3A70A7911B702F4800984E23 /* Supporting Files */ = { + 507503F27C6CAFD4AA21D1BB /* Frameworks */ = { isa = PBXGroup; children = ( - 3A70A7921B702F8F00984E23 /* Darkly-Prefix.pch */, - 3A70A7951B705F1100984E23 /* DarklyConstants.h */, - 3A70A7961B705F2C00984E23 /* DarklyConstants.m */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 3FF807BB26F04091D81CFC5F /* Frameworks */ = { - isa = PBXGroup; - children = ( - 231CBA3F1B9797680068BB8C /* libPods-Darkly.a */, - 231CBA3D1B9797530068BB8C /* Foundation.framework */, - 231CBA3B1B9797320068BB8C /* AVFoundation.framework */, - 231CBA391B97972B0068BB8C /* StoreKit.framework */, - 231CBA371B97971A0068BB8C /* SystemConfiguration.framework */, - 231CBA351B97970E0068BB8C /* UIKit.framework */, - 231CBA331B9795610068BB8C /* libPods-Darkly.a */, - 231CBA311B9792AC0068BB8C /* libMTLManagedObjectAdapter.a */, - 231CBA2F1B97923D0068BB8C /* libMantle.a */, - 231CBA2D1B97914B0068BB8C /* libMantle.a */, - 231CBA2B1B97913B0068BB8C /* libPods-Darkly.a */, - 231CBA291B9791340068BB8C /* libPods-DarklyTests.a */, - 9DEEE9451B976F8F00238073 /* libMTLManagedObjectAdapter.a */, - 9DEEE9431B976F8B00238073 /* libMantle.a */, - CCA68A121B7066480052BE63 /* CoreData.framework */, - D4123AB55EABA4FCD91AD877 /* libPods-Darkly.a */, - 0A44BAF6AB27A088EB7A34F7 /* libPods-DarklyTests.a */, + 29E40506FC1C68667E74CDC9 /* libPods-DarklyTests.a */, + C1E7AAC94234A6885E5825DF /* libPods-Darkly_iOS.a */, + 5904632AF94FD233ACF9F607 /* libPods-Darkly_tvOS.a */, + 8FD52A39AA4B4463CE25C809 /* libPods-Darkly_watchOS.a */, + C59BD281845EC949FED485E0 /* libPods-Darkly_osx.a */, ); name = Frameworks; sourceTree = ""; }; - 70112E112C52AC5B6384EF0C /* Pods */ = { + 690346B41E6872EA00E45133 = { isa = PBXGroup; children = ( - 0CF3D8B3D5EBA564267F784E /* Pods-Darkly.debug.xcconfig */, - F19BA3C600D75D385DA50A51 /* Pods-Darkly.release.xcconfig */, - FEEDBB6719EB6CBAC2086BA5 /* Pods-DarklyTests.debug.xcconfig */, - 0B0C661B865D9A3A089371B2 /* Pods-DarklyTests.release.xcconfig */, + 690346C01E6872EA00E45133 /* Darkly */, + 690346CB1E6872EA00E45133 /* DarklyTests */, + 690346BF1E6872EA00E45133 /* Products */, + FDBF21187E2D69170ACC6811 /* Pods */, + 507503F27C6CAFD4AA21D1BB /* Frameworks */, ); - name = Pods; sourceTree = ""; }; - 9D4CD76C1BB9236B00CBD687 /* DarklyLibraryModels */ = { + 690346BF1E6872EA00E45133 /* Products */ = { isa = PBXGroup; children = ( - 9D4CD76D1BB9236B00CBD687 /* Info.plist */, + 690346BE1E6872EA00E45133 /* Darkly.framework */, + 690346C71E6872EA00E45133 /* DarklyTests.xctest */, + 69F3F67B1E6BF7C000079A09 /* Darkly.framework */, + 69BD7E101E6C79550056D70F /* Darkly.framework */, + 69A87E8F1E74458900B88B23 /* Darkly.framework */, ); - path = DarklyLibraryModels; + name = Products; sourceTree = ""; }; - AD7C652B1B80FD09004BECE2 /* Helpers */ = { + 690346C01E6872EA00E45133 /* Darkly */ = { isa = PBXGroup; children = ( + 69BAF40B1E9AAB4800747613 /* Darkly.h */, + 6903470F1E68994500E45133 /* LDDataManager.h */, + 690347101E68994500E45133 /* LDDataManager.m */, + 690346D81E68990000E45133 /* Darkly-Prefix.pch */, + 690346D91E68990000E45133 /* DarklyConstants.h */, + 690346DA1E68990000E45133 /* DarklyConstants.m */, + 690346DB1E68990000E45133 /* LDClient.h */, + 690346DC1E68990000E45133 /* LDClient.m */, + 690346DD1E68990000E45133 /* LDClientManager.h */, + 690346DE1E68990000E45133 /* LDClientManager.m */, + 690346DF1E68990000E45133 /* LDConfig.h */, + 690346E01E68990000E45133 /* LDConfig.m */, + 690346E11E68990000E45133 /* LDEventModel.h */, + 690346E21E68990000E45133 /* LDEventModel.m */, + 690346E31E68990000E45133 /* LDFlagConfigModel.h */, + 690346E41E68990000E45133 /* LDFlagConfigModel.m */, + 690346E51E68990000E45133 /* LDPollingManager.h */, + 690346E61E68990000E45133 /* LDPollingManager.m */, + 690346E71E68990000E45133 /* LDRequestManager.h */, + 690346E81E68990000E45133 /* LDRequestManager.m */, + 690346E91E68990000E45133 /* LDUserBuilder.h */, + 690346EA1E68990000E45133 /* LDUserBuilder.m */, + 690346EB1E68990000E45133 /* LDUserModel.h */, + 690346EC1E68990000E45133 /* LDUserModel.m */, + 690346ED1E68990000E45133 /* LDUtil.h */, + 690346EE1E68990000E45133 /* LDUtil.m */, + 690346F21E68990000E45133 /* NSDictionary+JSON.h */, + 690346F31E68990000E45133 /* NSDictionary+JSON.m */, + 69BAF40C1E9AAB4800747613 /* Info.plist */, ); - name = Helpers; + path = Darkly; sourceTree = ""; }; - CC01CCE41BB07711006B4A36 /* Categories */ = { + 690346CB1E6872EA00E45133 /* DarklyTests */ = { isa = PBXGroup; children = ( - CC01CCE11BB07703006B4A36 /* NSArray+UnitTests.h */, - CC01CCE21BB07703006B4A36 /* NSArray+UnitTests.m */, + 690347151E689B9F00E45133 /* Models */, + 6903471D1E689B9F00E45133 /* Fixtures */, + 690347231E689B9F00E45133 /* Categories */, + 690347131E689B9F00E45133 /* LDUserBuilderTest.m */, + 690347141E689B9F00E45133 /* LDRequestManagerTest.m */, + 690347191E689B9F00E45133 /* LDPollingManagerTest.m */, + 6903471A1E689B9F00E45133 /* LDClientTest.m */, + 6903471B1E689B9F00E45133 /* LDUtilTest.m */, + 6903471C1E689B9F00E45133 /* LDClientManagerTest.m */, + 6903471F1E689B9F00E45133 /* LDConfigTest.m */, + 690347211E689B9F00E45133 /* LDFlagConfigModelTest.m */, + 690347201E689B9F00E45133 /* DarklyXCTestCase.h */, + 690347221E689B9F00E45133 /* DarklyXCTestCase.m */, + 690346CE1E6872EA00E45133 /* Info.plist */, ); - name = Categories; + path = DarklyTests; sourceTree = ""; }; - CC36AA8B1B6D5FED008200F1 = { + 690347151E689B9F00E45133 /* Models */ = { isa = PBXGroup; children = ( - CC36AA961B6D5FED008200F1 /* Darkly */, - CC36AAA31B6D5FED008200F1 /* DarklyTests */, - 9D4CD76C1BB9236B00CBD687 /* DarklyLibraryModels */, - CC36AA951B6D5FED008200F1 /* Products */, - 3FF807BB26F04091D81CFC5F /* Frameworks */, - 70112E112C52AC5B6384EF0C /* Pods */, + 690347161E689B9F00E45133 /* LDDataManagerTest.m */, + 690347171E689B9F00E45133 /* LDEventModelTest.m */, + 690347181E689B9F00E45133 /* LDUserModelTest.m */, ); + path = Models; sourceTree = ""; }; - CC36AA951B6D5FED008200F1 /* Products */ = { + 6903471D1E689B9F00E45133 /* Fixtures */ = { isa = PBXGroup; children = ( - CC36AA941B6D5FED008200F1 /* libDarkly.a */, - CC36AA9F1B6D5FED008200F1 /* DarklyTests.xctest */, - 23AA1AB61B721E3E00FE6A00 /* QuickTest.app */, - 23AA1AD11B721E3F00FE6A00 /* QuickTestTests.xctest */, - 9D4CD76B1BB9236B00CBD687 /* DarklyLibraryModels.bundle */, + 6903471E1E689B9F00E45133 /* feature_flags.json */, ); - name = Products; + path = Fixtures; sourceTree = ""; }; - CC36AA961B6D5FED008200F1 /* Darkly */ = { + 690347231E689B9F00E45133 /* Categories */ = { isa = PBXGroup; children = ( - CCEE2B191B9AAD17000447AF /* Managers */, - 3A5F93C11B6F10F50093E419 /* LDUtil.h */, - 3A5F93BF1B6F10DB0093E419 /* LDUtil.m */, - 3A70A7861B6FCF9300984E23 /* LDClient.h */, - 3A70A7871B6FCFAC00984E23 /* LDClient.m */, - 3A70A78B1B7008A900984E23 /* LDConfig.h */, - 3A70A78C1B7008B700984E23 /* LDConfig.m */, - ADE5294D1B8418B200761F3D /* LDUserBuilder.h */, - ADE5294E1B8418B200761F3D /* LDUserBuilder.m */, - CCA68A081B7065E50052BE63 /* Models */, - 3A70A7911B702F4800984E23 /* Supporting Files */, - 3AC5D0DC1B8AA44A00417CBB /* NSDictionary+JSON.h */, - 3AC5D0DD1B8AA44A00417CBB /* NSDictionary+JSON.m */, + 690347241E689B9F00E45133 /* NSArray+UnitTests.h */, + 690347251E689B9F00E45133 /* NSArray+UnitTests.m */, ); - path = Darkly; + path = Categories; sourceTree = ""; }; - CC36AAA31B6D5FED008200F1 /* DarklyTests */ = { + FDBF21187E2D69170ACC6811 /* Pods */ = { isa = PBXGroup; children = ( - 23E819531B8AA4A700010DD3 /* LDPollingManagerTest.m */, - ADE529501B84196000761F3D /* LDUserBuilderTest.m */, - AD10D39C1B7B5F6700DB30E7 /* LDDataManagerTest.m */, - AD7C652B1B80FD09004BECE2 /* Helpers */, - CC674C8D1B750FE000B6A78D /* Models */, - CCDDE16F1B74068200DFC04B /* Fixtures */, - CC36AAA41B6D5FED008200F1 /* Supporting Files */, - 3A5F93C21B6F146F0093E419 /* LDUtilTest.m */, - 3A70A7891B6FD20600984E23 /* LDClientTest.m */, - 3A70A7931B704BD100984E23 /* LDConfigTest.m */, - 3AB1B7191B89036A0006E970 /* LDRequestManagerTest.m */, - 3AAF19A21B97DF9800FACF58 /* LDClientManagerTest.m */, - CCEF65FF1BAF41FB00103FD5 /* DarklyXCTestCase.h */, - CCEF66001BAF41FB00103FD5 /* DarklyXCTestCase.m */, - CC01CCE41BB07711006B4A36 /* Categories */, + EBAB2E6FCA2BAFC866C0B2CD /* Pods-DarklyTests.debug.xcconfig */, + 19A2EE50240D0C590DE0B72D /* Pods-DarklyTests.release.xcconfig */, + B45362DE9A2862E8C314F143 /* Pods-Darkly_iOS.debug.xcconfig */, + BB5F4F33459631EF257FFA74 /* Pods-Darkly_iOS.release.xcconfig */, + C1394169CDEB2959EFA72572 /* Pods-Darkly_tvOS.debug.xcconfig */, + 445D1E11EB456D1548CD16E7 /* Pods-Darkly_tvOS.release.xcconfig */, + 802467EF0B1BE213E518DE86 /* Pods-Darkly_watchOS.debug.xcconfig */, + 45230012EB61EE79C3E92D63 /* Pods-Darkly_watchOS.release.xcconfig */, + AE2313537C4DC7348E7403C2 /* Pods-Darkly_osx.debug.xcconfig */, + 9561B36D8DDA8283B3A20C24 /* Pods-Darkly_osx.release.xcconfig */, ); - path = DarklyTests; + name = Pods; sourceTree = ""; }; - CC36AAA41B6D5FED008200F1 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - CC36AAA51B6D5FED008200F1 /* Info.plist */, +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 690346BB1E6872EA00E45133 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 690346FD1E68990000E45133 /* LDEventModel.h in Headers */, + 690346F91E68990000E45133 /* LDClientManager.h in Headers */, + 690346FF1E68990000E45133 /* LDFlagConfigModel.h in Headers */, + 690346F51E68990000E45133 /* DarklyConstants.h in Headers */, + 690346FB1E68990000E45133 /* LDConfig.h in Headers */, + 690347011E68990000E45133 /* LDPollingManager.h in Headers */, + 690346F41E68990000E45133 /* Darkly-Prefix.pch in Headers */, + 690347111E68994500E45133 /* LDDataManager.h in Headers */, + 690347031E68990000E45133 /* LDRequestManager.h in Headers */, + 690347051E68990000E45133 /* LDUserBuilder.h in Headers */, + 6903470D1E68990000E45133 /* NSDictionary+JSON.h in Headers */, + 690347091E68990000E45133 /* LDUtil.h in Headers */, + 69BAF40D1E9AAB4800747613 /* Darkly.h in Headers */, + 690346F71E68990000E45133 /* LDClient.h in Headers */, + 690347071E68990000E45133 /* LDUserModel.h in Headers */, ); - name = "Supporting Files"; - sourceTree = ""; + runOnlyForDeploymentPostprocessing = 0; }; - CC674C8D1B750FE000B6A78D /* Models */ = { - isa = PBXGroup; - children = ( - CCDDE16C1B74058200DFC04B /* LDFlagConfigModelTest.m */, - CC4E8F421B8ABB3500F2A19D /* LDEventModelTest.m */, - CC4E8F451B8B3A7B00F2A19D /* LDUserModelTest.m */, + 69A87E8C1E74458900B88B23 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 69A87EA21E74712800B88B23 /* LDEventModel.h in Headers */, + 69A87E9E1E74712800B88B23 /* LDClientManager.h in Headers */, + 69A87EA41E74712800B88B23 /* LDFlagConfigModel.h in Headers */, + 69A87E9A1E74712800B88B23 /* DarklyConstants.h in Headers */, + 69A87EA01E74712800B88B23 /* LDConfig.h in Headers */, + 69A87EA61E74712800B88B23 /* LDPollingManager.h in Headers */, + 69A87E991E74712800B88B23 /* Darkly-Prefix.pch in Headers */, + 69A87E971E74712800B88B23 /* LDDataManager.h in Headers */, + 69A87EA81E74712800B88B23 /* LDRequestManager.h in Headers */, + 69A87EB01E74712800B88B23 /* NSDictionary+JSON.h in Headers */, + 69A87EAA1E74712800B88B23 /* LDUserBuilder.h in Headers */, + 69A87EAE1E74712800B88B23 /* LDUtil.h in Headers */, + 69071F801EA2A7CC00497F93 /* Darkly.h in Headers */, + 69A87E9C1E74712800B88B23 /* LDClient.h in Headers */, + 69A87EAC1E74712800B88B23 /* LDUserModel.h in Headers */, ); - name = Models; - sourceTree = ""; - }; - CCA68A081B7065E50052BE63 /* Models */ = { - isa = PBXGroup; - children = ( - 3A0C4DE71C4D93B70059886B /* LDFlagConfigModel.h */, - 3A0C4DE81C4D93B70059886B /* LDFlagConfigModel.m */, - 3A0C4DED1C4D9D660059886B /* LDEventModel.h */, - 3A0C4DEE1C4D9D660059886B /* LDEventModel.m */, - 3A0C4DF01C4DA0330059886B /* LDUserModel.h */, - 3A0C4DF11C4DA0330059886B /* LDUserModel.m */, - ); - name = Models; - sourceTree = ""; + runOnlyForDeploymentPostprocessing = 0; }; - CCDDE16F1B74068200DFC04B /* Fixtures */ = { - isa = PBXGroup; - children = ( - CCDDE1731B7408F200DFC04B /* feature_flags.json */, + 69BD7E0D1E6C79550056D70F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 69BD7E231E6C79910056D70F /* LDEventModel.h in Headers */, + 69BD7E1F1E6C79910056D70F /* LDClientManager.h in Headers */, + 69BD7E251E6C79910056D70F /* LDFlagConfigModel.h in Headers */, + 69BD7E1B1E6C79910056D70F /* DarklyConstants.h in Headers */, + 69BD7E211E6C79910056D70F /* LDConfig.h in Headers */, + 69BD7E271E6C79910056D70F /* LDPollingManager.h in Headers */, + 69BD7E1A1E6C79910056D70F /* Darkly-Prefix.pch in Headers */, + 69BD7E181E6C79910056D70F /* LDDataManager.h in Headers */, + 69BD7E291E6C79910056D70F /* LDRequestManager.h in Headers */, + 69BD7E311E6C79910056D70F /* NSDictionary+JSON.h in Headers */, + 69BD7E2B1E6C79910056D70F /* LDUserBuilder.h in Headers */, + 69BD7E2F1E6C79910056D70F /* LDUtil.h in Headers */, + 69071F7F1EA2A7CB00497F93 /* Darkly.h in Headers */, + 69BD7E1D1E6C79910056D70F /* LDClient.h in Headers */, + 69BD7E2D1E6C79910056D70F /* LDUserModel.h in Headers */, ); - path = Fixtures; - sourceTree = ""; + runOnlyForDeploymentPostprocessing = 0; }; - CCEE2B191B9AAD17000447AF /* Managers */ = { - isa = PBXGroup; - children = ( - CC467AB51B78323F0035C07E /* LDDataManager.h */, - CC467AB61B78323F0035C07E /* LDDataManager.m */, - 23DCFA9C1B95105A00F15531 /* LDPollingManager.h */, - 23DCFA9D1B95105A00F15531 /* LDPollingManager.m */, - 3A9F23CF1B82D19900D0EF2F /* LDRequestManager.h */, - 3A9F23D01B82D19900D0EF2F /* LDRequestManager.m */, - 3AD8ACB41B86B5E700922AA6 /* LDClientManager.h */, - 3AD8ACB51B86B5E700922AA6 /* LDClientManager.m */, - ); - name = Managers; - sourceTree = ""; + 69F3F6781E6BF7C000079A09 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 69F3F6AE1E6BF84B00079A09 /* Darkly-Prefix.pch in Headers */, + 69F3F6A11E6BF82C00079A09 /* LDPollingManager.h in Headers */, + 69F3F6941E6BF80800079A09 /* LDDataManager.h in Headers */, + 69F3F6991E6BF82C00079A09 /* LDClientManager.h in Headers */, + 69F3F6A51E6BF82C00079A09 /* LDUserBuilder.h in Headers */, + 69F3F6A91E6BF82C00079A09 /* LDUtil.h in Headers */, + 69F3F69B1E6BF82C00079A09 /* LDConfig.h in Headers */, + 69F3F69F1E6BF82C00079A09 /* LDFlagConfigModel.h in Headers */, + 69F3F6A71E6BF82C00079A09 /* LDUserModel.h in Headers */, + 69F3F6951E6BF82100079A09 /* DarklyConstants.h in Headers */, + 69F3F6971E6BF82C00079A09 /* LDClient.h in Headers */, + 69F3F6AB1E6BF82C00079A09 /* NSDictionary+JSON.h in Headers */, + 69071F7E1EA2A7CA00497F93 /* Darkly.h in Headers */, + 69F3F6A31E6BF82C00079A09 /* LDRequestManager.h in Headers */, + 69F3F69D1E6BF82C00079A09 /* LDEventModel.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; }; -/* End PBXGroup section */ +/* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 23AA1AB51B721E3E00FE6A00 /* QuickTest */ = { + 690346BD1E6872EA00E45133 /* Darkly_iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 23AA1ADD1B721E3F00FE6A00 /* Build configuration list for PBXNativeTarget "QuickTest" */; + buildConfigurationList = 690346D21E6872EA00E45133 /* Build configuration list for PBXNativeTarget "Darkly_iOS" */; buildPhases = ( - 23AA1AB21B721E3E00FE6A00 /* Sources */, - 23AA1AB31B721E3E00FE6A00 /* Frameworks */, - 23AA1AB41B721E3E00FE6A00 /* Resources */, + 400B5FC07BF99DE5C481A731 /* [CP] Check Pods Manifest.lock */, + 690346B91E6872EA00E45133 /* Sources */, + 690346BA1E6872EA00E45133 /* Frameworks */, + 690346BB1E6872EA00E45133 /* Headers */, + 690346BC1E6872EA00E45133 /* Resources */, + AE7BB03C970B87C2BB93C8E9 /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( ); - name = QuickTest; - productName = QuickTest; - productReference = 23AA1AB61B721E3E00FE6A00 /* QuickTest.app */; - productType = "com.apple.product-type.application"; + name = Darkly_iOS; + productName = Darkly; + productReference = 690346BE1E6872EA00E45133 /* Darkly.framework */; + productType = "com.apple.product-type.framework"; }; - 23AA1AD01B721E3F00FE6A00 /* QuickTestTests */ = { + 690346C61E6872EA00E45133 /* DarklyTests */ = { isa = PBXNativeTarget; - buildConfigurationList = 23AA1ADE1B721E3F00FE6A00 /* Build configuration list for PBXNativeTarget "QuickTestTests" */; + buildConfigurationList = 690346D51E6872EA00E45133 /* Build configuration list for PBXNativeTarget "DarklyTests" */; buildPhases = ( - 23AA1ACD1B721E3F00FE6A00 /* Sources */, - 23AA1ACE1B721E3F00FE6A00 /* Frameworks */, - 23AA1ACF1B721E3F00FE6A00 /* Resources */, + BF156E0BAB52CCB17B6F9FDC /* [CP] Check Pods Manifest.lock */, + 690346C31E6872EA00E45133 /* Sources */, + 690346C41E6872EA00E45133 /* Frameworks */, + 690346C51E6872EA00E45133 /* Resources */, + 61E785437C8DFB058FAA9547 /* [CP] Embed Pods Frameworks */, + 3C6B373432EFD282378462BE /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( - 23AA1AD31B721E3F00FE6A00 /* PBXTargetDependency */, + 690346CA1E6872EA00E45133 /* PBXTargetDependency */, ); - name = QuickTestTests; - productName = QuickTestTests; - productReference = 23AA1AD11B721E3F00FE6A00 /* QuickTestTests.xctest */; + name = DarklyTests; + productName = DarklyTests; + productReference = 690346C71E6872EA00E45133 /* DarklyTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - 9D4CD76A1BB9236B00CBD687 /* DarklyLibraryModels */ = { + 69A87E8E1E74458900B88B23 /* Darkly_osx */ = { isa = PBXNativeTarget; - buildConfigurationList = 9D4CD7701BB9236C00CBD687 /* Build configuration list for PBXNativeTarget "DarklyLibraryModels" */; + buildConfigurationList = 69A87E961E74458900B88B23 /* Build configuration list for PBXNativeTarget "Darkly_osx" */; buildPhases = ( - 9D4CD7671BB9236B00CBD687 /* Sources */, - 9D4CD7681BB9236B00CBD687 /* Frameworks */, - 9D4CD7691BB9236B00CBD687 /* Resources */, + BC8F360296950364BAC540B7 /* [CP] Check Pods Manifest.lock */, + 69A87E8A1E74458900B88B23 /* Sources */, + 69A87E8B1E74458900B88B23 /* Frameworks */, + 69A87E8C1E74458900B88B23 /* Headers */, + 69A87E8D1E74458900B88B23 /* Resources */, + 0D45569BB90B02BE34D2640D /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( ); - name = DarklyLibraryModels; - productName = DarklyLibraryModels; - productReference = 9D4CD76B1BB9236B00CBD687 /* DarklyLibraryModels.bundle */; - productType = "com.apple.product-type.bundle"; + name = Darkly_osx; + productName = Darkly_macOS; + productReference = 69A87E8F1E74458900B88B23 /* Darkly.framework */; + productType = "com.apple.product-type.framework"; }; - CC36AA931B6D5FED008200F1 /* Darkly */ = { + 69BD7E0F1E6C79550056D70F /* Darkly_watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CC36AAA81B6D5FED008200F1 /* Build configuration list for PBXNativeTarget "Darkly" */; + buildConfigurationList = 69BD7E151E6C79550056D70F /* Build configuration list for PBXNativeTarget "Darkly_watchOS" */; buildPhases = ( - 8D2649BFFDE572AD586F995D /* [CP] Check Pods Manifest.lock */, - CC36AA901B6D5FED008200F1 /* Sources */, - CC36AA911B6D5FED008200F1 /* Frameworks */, - CC36AA921B6D5FED008200F1 /* CopyFiles */, - 658A25874DD4EDD0E2CD2435 /* [CP] Copy Pods Resources */, + 1F7BB9147833D2FD3D6B0207 /* [CP] Check Pods Manifest.lock */, + 69BD7E0B1E6C79550056D70F /* Sources */, + 69BD7E0C1E6C79550056D70F /* Frameworks */, + 69BD7E0D1E6C79550056D70F /* Headers */, + 69BD7E0E1E6C79550056D70F /* Resources */, + 0C8CADF3DE0811BF51AFE3FE /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( ); - name = Darkly; - productName = Darkly; - productReference = CC36AA941B6D5FED008200F1 /* libDarkly.a */; - productType = "com.apple.product-type.library.static"; + name = Darkly_watchOS; + productName = Darkly_watchOS; + productReference = 69BD7E101E6C79550056D70F /* Darkly.framework */; + productType = "com.apple.product-type.framework"; }; - CC36AA9E1B6D5FED008200F1 /* DarklyTests */ = { + 69F3F67A1E6BF7C000079A09 /* Darkly_tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CC36AAAB1B6D5FED008200F1 /* Build configuration list for PBXNativeTarget "DarklyTests" */; + buildConfigurationList = 69F3F68C1E6BF7C100079A09 /* Build configuration list for PBXNativeTarget "Darkly_tvOS" */; buildPhases = ( - 06097C7CDAEF984FCC39FD10 /* [CP] Check Pods Manifest.lock */, - CC36AA9B1B6D5FED008200F1 /* Sources */, - CC36AA9C1B6D5FED008200F1 /* Frameworks */, - CC36AA9D1B6D5FED008200F1 /* Resources */, - 8D4E98A0B0E27FE9A083F468 /* [CP] Embed Pods Frameworks */, - 820EDF389EB7BC71BF9FD91D /* [CP] Copy Pods Resources */, + 5C4803774368D95181AF24C4 /* [CP] Check Pods Manifest.lock */, + 69F3F6761E6BF7C000079A09 /* Sources */, + 69F3F6771E6BF7C000079A09 /* Frameworks */, + 69F3F6781E6BF7C000079A09 /* Headers */, + 69F3F6791E6BF7C000079A09 /* Resources */, + 5D2C539BFFB0DE3649453E89 /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( - CC36AAA21B6D5FED008200F1 /* PBXTargetDependency */, ); - name = DarklyTests; - productName = DarklyTests; - productReference = CC36AA9F1B6D5FED008200F1 /* DarklyTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; + name = Darkly_tvOS; + productName = "Darkly tvOS"; + productReference = 69F3F67B1E6BF7C000079A09 /* Darkly.framework */; + productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - CC36AA8C1B6D5FED008200F1 /* Project object */ = { + 690346B51E6872EA00E45133 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0800; - ORGANIZATIONNAME = Darkly; + LastUpgradeCheck = 0820; + ORGANIZATIONNAME = LaunchDarkly; TargetAttributes = { - 23AA1AB51B721E3E00FE6A00 = { - CreatedOnToolsVersion = 6.4; - SystemCapabilities = { - com.apple.BackgroundModes = { - enabled = 1; - }; - }; + 690346BD1E6872EA00E45133 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; }; - 23AA1AD01B721E3F00FE6A00 = { - CreatedOnToolsVersion = 6.4; - TestTargetID = 23AA1AB51B721E3E00FE6A00; + 690346C61E6872EA00E45133 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; }; - 9D4CD76A1BB9236B00CBD687 = { - CreatedOnToolsVersion = 7.0; + 69A87E8E1E74458900B88B23 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; }; - CC36AA931B6D5FED008200F1 = { - CreatedOnToolsVersion = 6.4; + 69BD7E0F1E6C79550056D70F = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; }; - CC36AA9E1B6D5FED008200F1 = { - CreatedOnToolsVersion = 6.4; + 69F3F67A1E6BF7C000079A09 = { + CreatedOnToolsVersion = 8.2.1; + ProvisioningStyle = Automatic; }; }; }; - buildConfigurationList = CC36AA8F1B6D5FED008200F1 /* Build configuration list for PBXProject "Darkly" */; + buildConfigurationList = 690346B81E6872EA00E45133 /* Build configuration list for PBXProject "Darkly" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, - Base, ); - mainGroup = CC36AA8B1B6D5FED008200F1; - productRefGroup = CC36AA951B6D5FED008200F1 /* Products */; + mainGroup = 690346B41E6872EA00E45133; + productRefGroup = 690346BF1E6872EA00E45133 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - CC36AA931B6D5FED008200F1 /* Darkly */, - CC36AA9E1B6D5FED008200F1 /* DarklyTests */, - 23AA1AB51B721E3E00FE6A00 /* QuickTest */, - 23AA1AD01B721E3F00FE6A00 /* QuickTestTests */, - 9D4CD76A1BB9236B00CBD687 /* DarklyLibraryModels */, + 690346BD1E6872EA00E45133 /* Darkly_iOS */, + 69F3F67A1E6BF7C000079A09 /* Darkly_tvOS */, + 69BD7E0F1E6C79550056D70F /* Darkly_watchOS */, + 69A87E8E1E74458900B88B23 /* Darkly_osx */, + 690346C61E6872EA00E45133 /* DarklyTests */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 23AA1AB41B721E3E00FE6A00 /* Resources */ = { + 690346BC1E6872EA00E45133 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9D4CD7731BB925DB00CBD687 /* DarklyLibraryModels.bundle in Resources */, + 69BAF40E1E9AAB4800747613 /* Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 23AA1ACF1B721E3F00FE6A00 /* Resources */ = { + 690346C51E6872EA00E45133 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 6903472F1E689B9F00E45133 /* feature_flags.json in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9D4CD7691BB9236B00CBD687 /* Resources */ = { + 69A87E8D1E74458900B88B23 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - CC36AA9D1B6D5FED008200F1 /* Resources */ = { + 69BD7E0E1E6C79550056D70F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 69F3F6791E6BF7C000079A09 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - CCDDE1741B7408F200DFC04B /* feature_flags.json in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 06097C7CDAEF984FCC39FD10 /* [CP] Check Pods Manifest.lock */ = { + 0C8CADF3DE0811BF51AFE3FE /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "[CP] Check Pods Manifest.lock"; + name = "[CP] Copy Pods Resources"; outputPaths = ( ); 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"; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 658A25874DD4EDD0E2CD2435 /* [CP] Copy Pods Resources */ = { + 0D45569BB90B02BE34D2640D /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -590,10 +717,25 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-resources.sh\"\n"; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 820EDF389EB7BC71BF9FD91D /* [CP] Copy Pods Resources */ = { + 1F7BB9147833D2FD3D6B0207 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + ); + 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; + }; + 3C6B373432EFD282378462BE /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -608,7 +750,22 @@ shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 8D2649BFFDE572AD586F995D /* [CP] Check Pods Manifest.lock */ = { + 400B5FC07BF99DE5C481A731 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + ); + 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; + }; + 5C4803774368D95181AF24C4 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -623,7 +780,22 @@ 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; }; - 8D4E98A0B0E27FE9A083F468 /* [CP] Embed Pods Frameworks */ = { + 5D2C539BFFB0DE3649453E89 /* [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-Darkly_tvOS/Pods-Darkly_tvOS-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + 61E785437C8DFB058FAA9547 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -638,204 +810,170 @@ shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-DarklyTests/Pods-DarklyTests-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; + AE7BB03C970B87C2BB93C8E9 /* [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-Darkly_iOS/Pods-Darkly_iOS-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + BC8F360296950364BAC540B7 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + ); + 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; + }; + BF156E0BAB52CCB17B6F9FDC /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + ); + 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; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 23AA1AB21B721E3E00FE6A00 /* Sources */ = { + 690346B91E6872EA00E45133 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 690346FE1E68990000E45133 /* LDEventModel.m in Sources */, + 690347121E68994500E45133 /* LDDataManager.m in Sources */, + 690347041E68990000E45133 /* LDRequestManager.m in Sources */, + 690346FA1E68990000E45133 /* LDClientManager.m in Sources */, + 690346F81E68990000E45133 /* LDClient.m in Sources */, + 690346F61E68990000E45133 /* DarklyConstants.m in Sources */, + 6903470E1E68990000E45133 /* NSDictionary+JSON.m in Sources */, + 690347021E68990000E45133 /* LDPollingManager.m in Sources */, + 690346FC1E68990000E45133 /* LDConfig.m in Sources */, + 690347061E68990000E45133 /* LDUserBuilder.m in Sources */, + 690347081E68990000E45133 /* LDUserModel.m in Sources */, + 6903470A1E68990000E45133 /* LDUtil.m in Sources */, + 690347001E68990000E45133 /* LDFlagConfigModel.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 23AA1ACD1B721E3F00FE6A00 /* Sources */ = { + 690346C31E6872EA00E45133 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 690347291E689B9F00E45133 /* LDEventModelTest.m in Sources */, + 690347301E689B9F00E45133 /* LDConfigTest.m in Sources */, + 690347261E689B9F00E45133 /* LDUserBuilderTest.m in Sources */, + 6903472A1E689B9F00E45133 /* LDUserModelTest.m in Sources */, + 6903472B1E689B9F00E45133 /* LDPollingManagerTest.m in Sources */, + 6903472E1E689B9F00E45133 /* LDClientManagerTest.m in Sources */, + 69E5275E1E6E948F00E4B63B /* LDDataManagerTest.m in Sources */, + 690347321E689B9F00E45133 /* DarklyXCTestCase.m in Sources */, + 6903472D1E689B9F00E45133 /* LDUtilTest.m in Sources */, + 690347311E689B9F00E45133 /* LDFlagConfigModelTest.m in Sources */, + 69E5275D1E6E948200E4B63B /* LDRequestManagerTest.m in Sources */, + 690347331E689B9F00E45133 /* NSArray+UnitTests.m in Sources */, + 6903472C1E689B9F00E45133 /* LDClientTest.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9D4CD7671BB9236B00CBD687 /* Sources */ = { + 69A87E8A1E74458900B88B23 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 69A87EA31E74712800B88B23 /* LDEventModel.m in Sources */, + 69A87E9D1E74712800B88B23 /* LDClient.m in Sources */, + 69A87E9B1E74712800B88B23 /* DarklyConstants.m in Sources */, + 69A87EA11E74712800B88B23 /* LDConfig.m in Sources */, + 69A87EA51E74712800B88B23 /* LDFlagConfigModel.m in Sources */, + 69A87EB11E74712800B88B23 /* NSDictionary+JSON.m in Sources */, + 69A87EAF1E74712800B88B23 /* LDUtil.m in Sources */, + 69A87EA71E74712800B88B23 /* LDPollingManager.m in Sources */, + 69A87E9F1E74712800B88B23 /* LDClientManager.m in Sources */, + 69A87EAD1E74712800B88B23 /* LDUserModel.m in Sources */, + 69A87E981E74712800B88B23 /* LDDataManager.m in Sources */, + 69A87EAB1E74712800B88B23 /* LDUserBuilder.m in Sources */, + 69A87EA91E74712800B88B23 /* LDRequestManager.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC36AA901B6D5FED008200F1 /* Sources */ = { + 69BD7E0B1E6C79550056D70F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3A0C4DEF1C4D9D660059886B /* LDEventModel.m in Sources */, - 3AD8ACB61B86B5E800922AA6 /* LDClientManager.m in Sources */, - 3A70A7971B705F2C00984E23 /* DarklyConstants.m in Sources */, - 3A70A78D1B7008B700984E23 /* LDConfig.m in Sources */, - 3A70A7881B6FCFAC00984E23 /* LDClient.m in Sources */, - ADE5294F1B8418B200761F3D /* LDUserBuilder.m in Sources */, - 3AC5D0DE1B8AA44A00417CBB /* NSDictionary+JSON.m in Sources */, - 3A0C4DF21C4DA0330059886B /* LDUserModel.m in Sources */, - 3A9F23D11B82D19900D0EF2F /* LDRequestManager.m in Sources */, - 3A5F93C01B6F10DB0093E419 /* LDUtil.m in Sources */, - CC467AB71B78323F0035C07E /* LDDataManager.m in Sources */, - 23DCFA9E1B95105A00F15531 /* LDPollingManager.m in Sources */, - 3A0C4DE91C4D93B70059886B /* LDFlagConfigModel.m in Sources */, + 69BD7E241E6C79910056D70F /* LDEventModel.m in Sources */, + 69BD7E1E1E6C79910056D70F /* LDClient.m in Sources */, + 69BD7E1C1E6C79910056D70F /* DarklyConstants.m in Sources */, + 69BD7E221E6C79910056D70F /* LDConfig.m in Sources */, + 69BD7E261E6C79910056D70F /* LDFlagConfigModel.m in Sources */, + 69BD7E321E6C79910056D70F /* NSDictionary+JSON.m in Sources */, + 69BD7E301E6C79910056D70F /* LDUtil.m in Sources */, + 69BD7E281E6C79910056D70F /* LDPollingManager.m in Sources */, + 69BD7E201E6C79910056D70F /* LDClientManager.m in Sources */, + 69BD7E2E1E6C79910056D70F /* LDUserModel.m in Sources */, + 69BD7E191E6C79910056D70F /* LDDataManager.m in Sources */, + 69BD7E2C1E6C79910056D70F /* LDUserBuilder.m in Sources */, + 69BD7E2A1E6C79910056D70F /* LDRequestManager.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC36AA9B1B6D5FED008200F1 /* Sources */ = { + 69F3F6761E6BF7C000079A09 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3AB1B71A1B89036A0006E970 /* LDRequestManagerTest.m in Sources */, - CC4E8F431B8ABB3500F2A19D /* LDEventModelTest.m in Sources */, - CC01CCE31BB07703006B4A36 /* NSArray+UnitTests.m in Sources */, - ADE529511B84196000761F3D /* LDUserBuilderTest.m in Sources */, - 3A0F25051B71651400DAB39F /* LDConfigTest.m in Sources */, - 23E819541B8AA4A700010DD3 /* LDPollingManagerTest.m in Sources */, - AD10D39D1B7B5F6700DB30E7 /* LDDataManagerTest.m in Sources */, - CC4E8F461B8B3A7B00F2A19D /* LDUserModelTest.m in Sources */, - 3A0F25041B71650C00DAB39F /* LDClientTest.m in Sources */, - CCDDE16D1B74058200DFC04B /* LDFlagConfigModelTest.m in Sources */, - CCEF66011BAF41FB00103FD5 /* DarklyXCTestCase.m in Sources */, - 3A5F93C31B6F146F0093E419 /* LDUtilTest.m in Sources */, - 3AAF19A31B97DF9800FACF58 /* LDClientManagerTest.m in Sources */, + 69F3F69E1E6BF82C00079A09 /* LDEventModel.m in Sources */, + 69F3F6981E6BF82C00079A09 /* LDClient.m in Sources */, + 69F3F6961E6BF82100079A09 /* DarklyConstants.m in Sources */, + 69F3F69C1E6BF82C00079A09 /* LDConfig.m in Sources */, + 69F3F6A01E6BF82C00079A09 /* LDFlagConfigModel.m in Sources */, + 69F3F6AC1E6BF82C00079A09 /* NSDictionary+JSON.m in Sources */, + 69F3F6AA1E6BF82C00079A09 /* LDUtil.m in Sources */, + 69F3F6A21E6BF82C00079A09 /* LDPollingManager.m in Sources */, + 69F3F69A1E6BF82C00079A09 /* LDClientManager.m in Sources */, + 69F3F6A81E6BF82C00079A09 /* LDUserModel.m in Sources */, + 69F3F6921E6BF7F600079A09 /* LDDataManager.m in Sources */, + 69F3F6A61E6BF82C00079A09 /* LDUserBuilder.m in Sources */, + 69F3F6A41E6BF82C00079A09 /* LDRequestManager.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 23AA1AD31B721E3F00FE6A00 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 23AA1AB51B721E3E00FE6A00 /* QuickTest */; - targetProxy = 23AA1AD21B721E3F00FE6A00 /* PBXContainerItemProxy */; - }; - CC36AAA21B6D5FED008200F1 /* PBXTargetDependency */ = { + 690346CA1E6872EA00E45133 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = CC36AA931B6D5FED008200F1 /* Darkly */; - targetProxy = CC36AAA11B6D5FED008200F1 /* PBXContainerItemProxy */; + target = 690346BD1E6872EA00E45133 /* Darkly_iOS */; + targetProxy = 690346C91E6872EA00E45133 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 23AA1AD91B721E3F00FE6A00 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - HEADER_SEARCH_PATHS = ( - "\"${PODS_ROOT}/Headers\"", - "$(inherited)", - ); - INFOPLIST_FILE = QuickTest/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ""; - OTHER_CFLAGS = "-DFLR_CONFIG_URL_STRING=__STRING(\"$(FLR_CONFIG_URL)\")"; - OTHER_LDFLAGS = ( - "-ObjC", - "$(inherited)", - ); - OTHER_LIBTOOLFLAGS = "$(OTHER_LDFLAGS)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 23AA1ADA1B721E3F00FE6A00 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - HEADER_SEARCH_PATHS = ( - "\"${PODS_ROOT}/Headers\"", - "$(inherited)", - ); - INFOPLIST_FILE = QuickTest/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ""; - OTHER_CFLAGS = "-DFLR_CONFIG_URL_STRING=__STRING(\"$(FLR_CONFIG_URL)\")"; - OTHER_LDFLAGS = ( - "-ObjC", - "$(inherited)", - ); - OTHER_LIBTOOLFLAGS = "$(OTHER_LDFLAGS)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 23AA1ADB1B721E3F00FE6A00 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = QuickTestTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/QuickTest.app/QuickTest"; - }; - name = Debug; - }; - 23AA1ADC1B721E3F00FE6A00 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - INFOPLIST_FILE = QuickTestTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/QuickTest.app/QuickTest"; - }; - name = Release; - }; - 9D4CD76E1BB9236C00CBD687 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_TESTABILITY = YES; - INFOPLIST_FILE = DarklyLibraryModels/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.DarklyLibraryModels; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Debug; - }; - 9D4CD76F1BB9236C00CBD687 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = DarklyLibraryModels/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - MACOSX_DEPLOYMENT_TARGET = 10.10; - PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.DarklyLibraryModels; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - WRAPPER_EXTENSION = bundle; - }; - name = Release; - }; - CC36AAA61B6D5FED008200F1 /* Debug */ = { + 690346D01E6872EA00E45133 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -843,6 +981,7 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = 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; @@ -851,10 +990,13 @@ CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + FRAMEWORK_SEARCH_PATHS = ""; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -863,29 +1005,29 @@ "DEBUG=1", "$(inherited)", ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ( - "\"${PODS_ROOT}/Headers\"", - "$(inherited)", - ); - IPHONEOS_DEPLOYMENT_TARGET = 8.4; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; - OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = Darkly; SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; name = Debug; }; - CC36AAA71B6D5FED008200F1 /* Release */ = { + 690346D11E6872EA00E45133 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -893,6 +1035,7 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = 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; @@ -901,10 +1044,13 @@ CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + FRAMEWORK_SEARCH_PATHS = ""; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -913,146 +1059,276 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ( - "\"${PODS_ROOT}/Headers\"", - "$(inherited)", - ); - IPHONEOS_DEPLOYMENT_TARGET = 8.4; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; - OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = Darkly; SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; name = Release; }; - CC36AAA91B6D5FED008200F1 /* Debug */ = { + 690346D31E6872EA00E45133 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0CF3D8B3D5EBA564267F784E /* Pods-Darkly.debug.xcconfig */; + baseConfigurationReference = B45362DE9A2862E8C314F143 /* Pods-Darkly_iOS.debug.xcconfig */; buildSettings = { - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "Darkly/Darkly-Prefix.pch"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/build/Debug-iphoneos", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "$(inherited)", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ""; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly; + PRODUCT_NAME = Darkly; SKIP_INSTALL = YES; }; name = Debug; }; - CC36AAAA1B6D5FED008200F1 /* Release */ = { + 690346D41E6872EA00E45133 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F19BA3C600D75D385DA50A51 /* Pods-Darkly.release.xcconfig */; + baseConfigurationReference = BB5F4F33459631EF257FFA74 /* Pods-Darkly_iOS.release.xcconfig */; buildSettings = { - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "Darkly/Darkly-Prefix.pch"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/build/Debug-iphoneos", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "$(inherited)", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ""; + HEADER_SEARCH_PATHS = "$(inherited)"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly; + PRODUCT_NAME = Darkly; SKIP_INSTALL = YES; }; name = Release; }; - CC36AAAC1B6D5FED008200F1 /* Debug */ = { + 690346D61E6872EA00E45133 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FEEDBB6719EB6CBAC2086BA5 /* Pods-DarklyTests.debug.xcconfig */; + baseConfigurationReference = EBAB2E6FCA2BAFC866C0B2CD /* Pods-DarklyTests.debug.xcconfig */; buildSettings = { - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - FRAMEWORK_SEARCH_PATHS = ""; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "Darkly/Darkly-Prefix.pch"; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); INFOPLIST_FILE = DarklyTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.DarklyTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; }; - CC36AAAD1B6D5FED008200F1 /* Release */ = { + 690346D71E6872EA00E45133 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0B0C661B865D9A3A089371B2 /* Pods-DarklyTests.release.xcconfig */; + baseConfigurationReference = 19A2EE50240D0C590DE0B72D /* Pods-DarklyTests.release.xcconfig */; buildSettings = { - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - FRAMEWORK_SEARCH_PATHS = ""; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "Darkly/Darkly-Prefix.pch"; INFOPLIST_FILE = DarklyTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.DarklyTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; }; + 69A87E941E74458900B88B23 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AE2313537C4DC7348E7403C2 /* Pods-Darkly_osx.debug.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; + COMBINE_HIDPI_IMAGES = YES; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS"; + PRODUCT_NAME = Darkly; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 69A87E951E74458900B88B23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9561B36D8DDA8283B3A20C24 /* Pods-Darkly_osx.release.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; + COMBINE_HIDPI_IMAGES = YES; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_VERSION = A; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS"; + PRODUCT_NAME = Darkly; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 69BD7E161E6C79550056D70F /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 802467EF0B1BE213E518DE86 /* Pods-Darkly_watchOS.debug.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS"; + PRODUCT_NAME = Darkly; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Debug; + }; + 69BD7E171E6C79550056D70F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 45230012EB61EE79C3E92D63 /* Pods-Darkly_watchOS.release.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS"; + PRODUCT_NAME = Darkly; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Release; + }; + 69F3F68D1E6BF7C100079A09 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C1394169CDEB2959EFA72572 /* Pods-Darkly_tvOS.debug.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS"; + PRODUCT_NAME = Darkly; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Debug; + }; + 69F3F68E1E6BF7C100079A09 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 445D1E11EB456D1548CD16E7 /* Pods-Darkly_tvOS.release.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/Framework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; + PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS"; + PRODUCT_NAME = Darkly; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 23AA1ADD1B721E3F00FE6A00 /* Build configuration list for PBXNativeTarget "QuickTest" */ = { + 690346B81E6872EA00E45133 /* Build configuration list for PBXProject "Darkly" */ = { isa = XCConfigurationList; buildConfigurations = ( - 23AA1AD91B721E3F00FE6A00 /* Debug */, - 23AA1ADA1B721E3F00FE6A00 /* Release */, + 690346D01E6872EA00E45133 /* Debug */, + 690346D11E6872EA00E45133 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 23AA1ADE1B721E3F00FE6A00 /* Build configuration list for PBXNativeTarget "QuickTestTests" */ = { + 690346D21E6872EA00E45133 /* Build configuration list for PBXNativeTarget "Darkly_iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 23AA1ADB1B721E3F00FE6A00 /* Debug */, - 23AA1ADC1B721E3F00FE6A00 /* Release */, + 690346D31E6872EA00E45133 /* Debug */, + 690346D41E6872EA00E45133 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 9D4CD7701BB9236C00CBD687 /* Build configuration list for PBXNativeTarget "DarklyLibraryModels" */ = { + 690346D51E6872EA00E45133 /* Build configuration list for PBXNativeTarget "DarklyTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9D4CD76E1BB9236C00CBD687 /* Debug */, - 9D4CD76F1BB9236C00CBD687 /* Release */, + 690346D61E6872EA00E45133 /* Debug */, + 690346D71E6872EA00E45133 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - CC36AA8F1B6D5FED008200F1 /* Build configuration list for PBXProject "Darkly" */ = { + 69A87E961E74458900B88B23 /* Build configuration list for PBXNativeTarget "Darkly_osx" */ = { isa = XCConfigurationList; buildConfigurations = ( - CC36AAA61B6D5FED008200F1 /* Debug */, - CC36AAA71B6D5FED008200F1 /* Release */, + 69A87E941E74458900B88B23 /* Debug */, + 69A87E951E74458900B88B23 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - CC36AAA81B6D5FED008200F1 /* Build configuration list for PBXNativeTarget "Darkly" */ = { + 69BD7E151E6C79550056D70F /* Build configuration list for PBXNativeTarget "Darkly_watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - CC36AAA91B6D5FED008200F1 /* Debug */, - CC36AAAA1B6D5FED008200F1 /* Release */, + 69BD7E161E6C79550056D70F /* Debug */, + 69BD7E171E6C79550056D70F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - CC36AAAB1B6D5FED008200F1 /* Build configuration list for PBXNativeTarget "DarklyTests" */ = { + 69F3F68C1E6BF7C100079A09 /* Build configuration list for PBXNativeTarget "Darkly_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - CC36AAAC1B6D5FED008200F1 /* Debug */, - CC36AAAD1B6D5FED008200F1 /* Release */, + 69F3F68D1E6BF7C100079A09 /* Debug */, + 69F3F68E1E6BF7C100079A09 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = CC36AA8C1B6D5FED008200F1 /* Project object */; + rootObject = 690346B51E6872EA00E45133 /* Project object */; } diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_iOS.xcscheme similarity index 76% rename from Darkly.xcodeproj/xcshareddata/xcschemes/Darkly.xcscheme rename to Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_iOS.xcscheme index 0724dc50..6aab9c48 100644 --- a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly.xcscheme +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_iOS.xcscheme @@ -1,6 +1,6 @@ @@ -32,27 +32,19 @@ skipped = "NO"> - - - - - - @@ -72,9 +64,9 @@ @@ -90,9 +82,9 @@ diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme new file mode 100644 index 00000000..2c06fd7b --- /dev/null +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/QuickTest.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_tvOS.xcscheme similarity index 73% rename from Darkly.xcodeproj/xcshareddata/xcschemes/QuickTest.xcscheme rename to Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_tvOS.xcscheme index 96ff56a6..c2ae5ebe 100644 --- a/Darkly.xcodeproj/xcshareddata/xcschemes/QuickTest.xcscheme +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_tvOS.xcscheme @@ -1,6 +1,6 @@ @@ -32,9 +32,9 @@ skipped = "NO"> @@ -42,9 +42,9 @@ @@ -61,16 +61,15 @@ debugDocumentVersioning = "YES" debugServiceExtension = "internal" allowLocationSimulation = "YES"> - + - + @@ -80,16 +79,15 @@ savedToolIdentifier = "" useCustomWorkingDirectory = "NO" debugDocumentVersioning = "YES"> - + - + diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme new file mode 100644 index 00000000..553ba359 --- /dev/null +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Darkly.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Darkly.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..54782e32 --- /dev/null +++ b/Darkly.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded + + + diff --git a/Darkly/Darkly.h b/Darkly/Darkly.h new file mode 100644 index 00000000..d13b0f0b --- /dev/null +++ b/Darkly/Darkly.h @@ -0,0 +1,23 @@ +// +// Darkly.h +// Darkly +// +// Created by Danial Zahid on 3/2/17. +// Copyright © 2017 LaunchDarkly. All rights reserved. +// + +#import + +#import "LDDataManager.h" +#import "DarklyConstants.h" +#import "LDClient.h" +#import "LDClientManager.h" +#import "LDConfig.h" +#import "LDEventModel.h" +#import "LDFlagConfigModel.h" +#import "LDPollingManager.h" +#import "LDRequestManager.h" +#import "LDUserBuilder.h" +#import "LDUserModel.h" +#import "LDUtil.h" +#import "NSDictionary+JSON.h" diff --git a/Darkly/DarklyConstants.h b/Darkly/DarklyConstants.h index 6c0b8600..109988c0 100644 --- a/Darkly/DarklyConstants.h +++ b/Darkly/DarklyConstants.h @@ -31,7 +31,11 @@ extern NSString * const kClientAlreadyStartedExceptionName; extern NSString * const kClientAlreadyStartedExceptionReason; extern NSString * const kIphone; extern NSString * const kIpad; +extern NSString * const kAppleWatch; +extern NSString * const kAppleTV; +extern NSString * const kMacOS; extern NSString * const kUserDictionaryStorageKey; +extern NSString * const kDeviceIdentifierKey; extern NSString *const kLDUserUpdatedNotification; extern NSString *const kLDFlagConfigChangedNotification; extern NSString *const kLDBackgroundFetchInitiated; diff --git a/Darkly/DarklyConstants.m b/Darkly/DarklyConstants.m index 01157918..20b3a4af 100644 --- a/Darkly/DarklyConstants.m +++ b/Darkly/DarklyConstants.m @@ -18,7 +18,11 @@ NSString * const kClientAlreadyStartedExceptionReason = @"The LDClient can only be started once"; NSString * const kIphone = @"iPhone"; NSString * const kIpad = @"iPad"; +NSString * const kAppleWatch = @"Apple Watch"; +NSString * const kAppleTV = @"Apple TV"; +NSString * const kMacOS = @"macOS"; NSString * const kUserDictionaryStorageKey = @"ldUserModelDictionary"; +NSString * const kDeviceIdentifierKey = @"ldDeviceIdentifier"; NSString * const kLDUserUpdatedNotification = @"Darkly.UserUpdatedNotification"; NSString * const kLDBackgroundFetchInitiated = @"Darkly.BackgroundFetchInitiated"; NSString *const kLDFlagConfigChangedNotification = @"Darkly.FlagConfigChangedNotification"; diff --git a/Darkly/LDClient.h b/Darkly/LDClient.h index a6be9ce0..d0bcc4e9 100644 --- a/Darkly/LDClient.h +++ b/Darkly/LDClient.h @@ -37,8 +37,8 @@ * flag is retrieved from the server that value is returned, otherwise * the fallback is returned. * - * @param featureName Name of feature flag - * @param fallback Fallback value for feature flag + * @param featureKey Key of feature flag + * @param fallback Fallback value for feature flag * @return the feature flag value */ - (BOOL)boolVariation:(NSString *)featureKey fallback:(BOOL)fallback; @@ -47,7 +47,7 @@ * flag is retrieved from the server that value is returned, otherwise * the fallback is returned. * - * @param featureName Name of feature flag + * @param featureKey Key of feature flag * @param fallback Fallback value for feature flag * @return the feature flag value */ @@ -57,7 +57,7 @@ * flag is retrieved from the server that value is returned, otherwise * the fallback is returned. * - * @param featureName Name of feature flag + * @param featureKey Key of feature flag * @param fallback Fallback value for feature flag * @return the feature flag value */ @@ -67,7 +67,7 @@ * flag is retrieved from the server that value is returned, otherwise * the fallback is returned. * - * @param featureName Name of feature flag + * @param featureKey Key of feature flag * @param fallback Fallback value for feature flag * @return the feature flag value */ @@ -77,7 +77,7 @@ * flag is retrieved from the server that value is returned, otherwise * the fallback is returned. * - * @param featureName Name of feature flag + * @param featureKey Key of feature flag * @param fallback Fallback value for feature flag * @return the feature flag value */ @@ -86,7 +86,7 @@ * Track a custom event. * * @param eventName Name of the custom event - * @param data Data to be attached to custom event + * @param dataDictionary Data to be attached to custom event * @return whether the event was successfully recorded */ - (BOOL)track:(NSString *)eventName data:(NSDictionary *)dataDictionary; diff --git a/Darkly/LDClientManager.h b/Darkly/LDClientManager.h index 913ebb1c..6b0f8e74 100644 --- a/Darkly/LDClientManager.h +++ b/Darkly/LDClientManager.h @@ -4,14 +4,24 @@ #import "LDRequestManager.h" +#if TARGET_OS_OSX +#import +#else #import -#import +#endif +#if TARGET_OS_WATCH +@interface LDClientManager : NSObject { +} +#elif TARGET_OS_OSX +@interface LDClientManager : NSObject { +} +#else @interface LDClientManager : NSObject { } +#endif @property (nonatomic) BOOL offlineEnabled; -@property(nonatomic, strong, readonly) EventSource *eventSource; +(LDClientManager *)sharedInstance; diff --git a/Darkly/LDClientManager.m b/Darkly/LDClientManager.m index 053e8be8..f8984c6d 100644 --- a/Darkly/LDClientManager.m +++ b/Darkly/LDClientManager.m @@ -2,7 +2,6 @@ // Copyright © 2015 Catamorphic Co. All rights reserved. // - #import "LDClientManager.h" #import "LDPollingManager.h" #import "LDDataManager.h" @@ -11,6 +10,13 @@ #import "LDEventModel.h" #import "LDFlagConfigModel.h" #import "NSDictionary+JSON.h" +#import "EventSource.h" + +@interface LDClientManager() + +@property(nonatomic, strong, readonly) EventSource *eventSource; + +@end @implementation LDClientManager @@ -21,9 +27,13 @@ +(LDClientManager *)sharedInstance { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ sharedApiManager = [[self alloc] init]; - +#if TARGET_OS_IOS || TARGET_OS_TV [[NSNotificationCenter defaultCenter] addObserver:sharedApiManager selector:@selector(willEnterForeground) name:UIApplicationDidBecomeActiveNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:sharedApiManager selector:@selector(willEnterBackground) name:UIApplicationWillResignActiveNotification object:nil]; +#elif TARGET_OS_OSX + [[NSNotificationCenter defaultCenter] addObserver:sharedApiManager selector:@selector(willEnterForeground) name:NSApplicationDidBecomeActiveNotification object:nil]; + [[NSNotificationCenter defaultCenter] addObserver:sharedApiManager selector:@selector(willEnterBackground) name:NSApplicationWillResignActiveNotification object:nil]; +#endif [[NSNotificationCenter defaultCenter] addObserver:sharedApiManager selector:@selector(syncWithServerForConfig) name:kLDBackgroundFetchInitiated object:nil]; }); diff --git a/Darkly/LDConfig.h b/Darkly/LDConfig.h index 647a7038..29ff93b5 100644 --- a/Darkly/LDConfig.h +++ b/Darkly/LDConfig.h @@ -2,6 +2,8 @@ // Copyright © 2015 Catamorphic Co. All rights reserved. // +#import + @interface LDConfig : NSObject { } diff --git a/Darkly/Models/LDDataManager.h b/Darkly/LDDataManager.h similarity index 100% rename from Darkly/Models/LDDataManager.h rename to Darkly/LDDataManager.h diff --git a/Darkly/Models/LDDataManager.m b/Darkly/LDDataManager.m similarity index 100% rename from Darkly/Models/LDDataManager.m rename to Darkly/LDDataManager.m diff --git a/Darkly/LDPollingManager.h b/Darkly/LDPollingManager.h index 53e4f5a1..66825740 100644 --- a/Darkly/LDPollingManager.h +++ b/Darkly/LDPollingManager.h @@ -2,6 +2,7 @@ // Copyright © 2015 Catamorphic Co. All rights reserved. // +#import typedef enum { POLL_STOPPED = 0, diff --git a/Darkly/LDUserBuilder.h b/Darkly/LDUserBuilder.h index 95a92185..de21d4b5 100644 --- a/Darkly/LDUserBuilder.h +++ b/Darkly/LDUserBuilder.h @@ -102,8 +102,7 @@ * Provide custom NSMutableDictionary data for the dictionary associated with * the user. (Optional) * - * @param inputKey key for the data - * @param value value for the data + * @param inputDictionary Dictionary to associated with the user * @return the user builder */ - (LDUserBuilder *)withCustomDictionary:(NSMutableDictionary *)inputDictionary; @@ -119,4 +118,4 @@ -(id)build; -@end \ No newline at end of file +@end diff --git a/Darkly/LDUserBuilder.m b/Darkly/LDUserBuilder.m index 48ef0f9a..21ba4146 100644 --- a/Darkly/LDUserBuilder.m +++ b/Darkly/LDUserBuilder.m @@ -191,7 +191,20 @@ -(LDUserModel *)build { [user key:key]; DEBUG_LOG(@"LDUserBuilder building User with key: %@", key); } else { - NSString *uniqueKey = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; + NSString *uniqueKey; +#if TARGET_OS_IOS || TARGET_OS_TV + uniqueKey = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; +#else + if ([[NSUserDefaults standardUserDefaults] valueForKey:kDeviceIdentifierKey]) { + uniqueKey = [[NSUserDefaults standardUserDefaults] valueForKey:kDeviceIdentifierKey]; + } + else{ + uniqueKey = [[NSUUID UUID] UUIDString]; + [[NSUserDefaults standardUserDefaults] setValue:uniqueKey forKey:kDeviceIdentifierKey]; + [[NSUserDefaults standardUserDefaults] synchronize]; + } + +#endif DEBUG_LOG(@"LDUserBuilder building User with key: %@", uniqueKey); user = [[LDUserModel alloc] init]; diff --git a/Darkly/LDUtil.h b/Darkly/LDUtil.h index 128b6c29..c4cccb1f 100644 --- a/Darkly/LDUtil.h +++ b/Darkly/LDUtil.h @@ -2,10 +2,13 @@ // Copyright © 2015 Catamorphic Co. All rights reserved. // - -#import #import "LDClient.h" #import "DarklyConstants.h" +#if TARGET_OS_OSX +#import +#else +#import +#endif #define CRITICAL_LOGX(string) \ if ([LDUtil logLevel] >= DarklyLogLevelCriticalOnly) { \ @@ -52,8 +55,6 @@ if (!(condition) && DEBUG) { \ // <---- device info ---- + (NSInteger)getSystemVersionAsAnInteger; -+ (BOOL)isIPad; -+ (BOOL)isRetina; + (NSString *)getDeviceAsString; + (NSString *)getSystemVersionAsString; diff --git a/Darkly/LDUtil.m b/Darkly/LDUtil.m index a6956240..73940709 100644 --- a/Darkly/LDUtil.m +++ b/Darkly/LDUtil.m @@ -5,6 +5,9 @@ #import "LDUtil.h" +#if TARGET_OS_WATCH +#import +#endif @implementation LDUtil @@ -20,44 +23,41 @@ + (void)assertThreadIsNotMain #endif } -+ (BOOL)isIPad -{ - if ([[UIDevice currentDevice] respondsToSelector:@selector(userInterfaceIdiom)] && - [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) - { - return YES; - } - return NO; -} - -+ (BOOL)isRetina -{ - UIScreen *curScreen = [UIScreen mainScreen]; - - if ([curScreen respondsToSelector:@selector(displayLinkWithTarget:selector:)] && - ([curScreen respondsToSelector:@selector(scale)])) { - if (curScreen.scale == 2.0) { - return YES; - } else { - return NO; - } - } else { - return NO; - } -} - + (NSString *)getDeviceAsString { - if ([self isIPad]) { - return kIpad; - } else { - return kIphone; +#if TARGET_OS_IOS || TARGET_OS_TV + if ([[UIDevice currentDevice] respondsToSelector:@selector(userInterfaceIdiom)]) { + switch ([[UIDevice currentDevice] userInterfaceIdiom]) { + case UIUserInterfaceIdiomPhone: + return kIphone; + case UIUserInterfaceIdiomPad: + return kIpad; + case UIUserInterfaceIdiomTV: + return kAppleTV; + default: + break; + } } + return @""; + +#elif TARGET_OS_WATCH + return kAppleWatch; +#elif TARGET_OS_OSX + return kMacOS; +#endif + return @""; } + (NSString *)getSystemVersionAsString { +#if TARGET_OS_IOS || TARGET_OS_TV return [[UIDevice currentDevice] systemVersion]; +#elif TARGET_OS_WATCH + return [[WKInterfaceDevice currentDevice] systemVersion]; +#elif TARGET_OS_OSX + return [[NSProcessInfo processInfo] operatingSystemVersionString]; +#endif + return @""; } + (NSInteger)getSystemVersionAsAnInteger { @@ -70,7 +70,7 @@ + (NSInteger)getSystemVersionAsAnInteger { return version; } - NSArray* digits = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."]; + NSArray* digits = [[self getSystemVersionAsString] componentsSeparatedByString:@"."]; NSEnumerator* enumer = [digits objectEnumerator]; NSString* number; while (number = [enumer nextObject]) { diff --git a/Darkly/NSDictionary+JSON.h b/Darkly/NSDictionary+JSON.h index 04f1588a..403a26c6 100644 --- a/Darkly/NSDictionary+JSON.h +++ b/Darkly/NSDictionary+JSON.h @@ -2,6 +2,8 @@ // Copyright © 2015 Catamorphic Co. All rights reserved. // +#import + @interface NSDictionary (BVJSONString) -(NSString*) ld_jsonString; @end diff --git a/DarklyTests/DarklyXCTestCase.h b/DarklyTests/DarklyXCTestCase.h index 985a2a66..4817bbb4 100644 --- a/DarklyTests/DarklyXCTestCase.h +++ b/DarklyTests/DarklyXCTestCase.h @@ -3,6 +3,7 @@ // #import +#import "DarklyConstants.h" @interface DarklyXCTestCase : XCTestCase @property (nonatomic) id dataManagerMock; diff --git a/DarklyTests/Info.plist b/DarklyTests/Info.plist index ba72822e..6c6c23c4 100644 --- a/DarklyTests/Info.plist +++ b/DarklyTests/Info.plist @@ -16,8 +16,6 @@ BNDL CFBundleShortVersionString 1.0 - CFBundleSignature - ???? CFBundleVersion 1 diff --git a/DarklyTests/LDConfigTest.m b/DarklyTests/LDConfigTest.m index 2c484c41..fa793063 100644 --- a/DarklyTests/LDConfigTest.m +++ b/DarklyTests/LDConfigTest.m @@ -4,6 +4,7 @@ #import "LDConfig.h" #import "DarklyXCTestCase.h" +#import "DarklyConstants.h" @interface LDConfigTest : DarklyXCTestCase diff --git a/DarklyTests/Models/LDEventModelTest.m b/DarklyTests/Models/LDEventModelTest.m index 6ef9c408..00014307 100644 --- a/DarklyTests/Models/LDEventModelTest.m +++ b/DarklyTests/Models/LDEventModelTest.m @@ -24,8 +24,8 @@ - (void)tearDown { - (void)testFeatureEventWithKeyCreatesEventWithDefaults { LDEventModel *event = [[LDEventModel alloc] initFeatureEventWithKey:@"red" keyValue:[NSNumber numberWithBool:NO] defaultKeyValue:[NSNumber numberWithBool:NO] userValue:self.user]; - XCTAssertEqual(event.key, @"red"); - XCTAssertEqual(event.kind, @"feature"); + XCTAssertEqualObjects(event.key, @"red"); + XCTAssertEqualObjects(event.kind, @"feature"); XCTAssertFalse([(NSNumber *)event.value boolValue]); XCTAssertFalse([(NSNumber *)event.isDefault boolValue]); } @@ -35,8 +35,8 @@ - (void)testCustomEventWithKeyCreatesEventWithDefaults { LDEventModel *event = [[LDEventModel alloc] initCustomEventWithKey:@"red" andDataDictionary:dictionary userValue:self.user]; - XCTAssertEqual(event.key, @"red"); - XCTAssertEqual(event.kind, @"custom"); + XCTAssertEqualObjects(event.key, @"red"); + XCTAssertEqualObjects(event.kind, @"custom"); XCTAssertEqual([event.data allValues].firstObject, [dictionary allValues].firstObject); } diff --git a/Framework/Darkly.h b/Framework/Darkly.h new file mode 100644 index 00000000..c28be8c4 --- /dev/null +++ b/Framework/Darkly.h @@ -0,0 +1,32 @@ +// +// Darkly.h +// Darkly +// +// Created by Danial Zahid on 3/2/17. +// Copyright © 2017 LaunchDarkly. All rights reserved. +// + +#import +#import + +//! Project version number for Darkly. +FOUNDATION_EXPORT double DarklyVersionNumber; + +//! Project version string for Darkly. +FOUNDATION_EXPORT const unsigned char DarklyVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import diff --git a/Framework/Info.plist b/Framework/Info.plist new file mode 100644 index 00000000..fbe1e6b3 --- /dev/null +++ b/Framework/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + + diff --git a/Framework/module.modulemap b/Framework/module.modulemap new file mode 100644 index 00000000..645b6da1 --- /dev/null +++ b/Framework/module.modulemap @@ -0,0 +1,5 @@ +framework module Darkly { + umbrella header "Darkly.h" + export * + module * { export * } +} \ No newline at end of file diff --git a/LaunchDarkly.podspec b/LaunchDarkly.podspec index 3db571ac..e6cc90e3 100644 --- a/LaunchDarkly.podspec +++ b/LaunchDarkly.podspec @@ -1,20 +1,5 @@ -# -# Be sure to run `pod spec lint darkly.podspec' to ensure this is a -# valid spec and to remove all comments including this before submitting the spec. -# -# To learn more about Podspec attributes see http://docs.cocoapods.org/specification.html -# To see working Podspecs in the CocoaPods repo see https://github.com/CocoaPods/Specs/ -# - Pod::Spec.new do |s| - # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # These will help people to find your library, and whilst it - # can feel like a chore to fill in it's definitely to your advantage. The - # summary should be tweet-length, and the description more in depth. - # - s.name = "LaunchDarkly" s.version = "2.2.0" s.summary = "iOS SDK for LaunchDarkly" @@ -29,104 +14,22 @@ Pod::Spec.new do |s| DESC s.homepage = "https://github.com/launchdarkly/ios-client" - # s.screenshots = "www.example.com/screenshots_1.gif", "www.example.com/screenshots_2.gif" - - - # ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Licensing your code is important. See http://choosealicense.com for more info. - # CocoaPods will detect a license file if there is a named LICENSE* - # Popular ones are 'MIT', 'BSD' and 'Apache License, Version 2.0'. - # s.license = { :type => "Apache License, Version 2.0", :file => "LICENSE.txt" } - # ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Specify the authors of the library, with email addresses. Email addresses - # of the authors are extracted from the SCM log. E.g. $ git log. CocoaPods also - # accepts just a name if you'd rather not provide an email address. - # - # Specify a social_media_url where others can refer to, for example a twitter - # profile URL. - # - s.author = { "LaunchDarkly" => "team@launchdarkly.com" } - # ――― Platform Specifics ――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # If this Pod runs only on iOS or OS X, then specify the platform and - # the deployment target. You can optionally include the target after the platform. - # - - s.platform = :ios, "7.0" - # s.platform = :ios, "5.0" - - # When using multiple platforms - # s.ios.deployment_target = "5.0" - # s.osx.deployment_target = "10.7" - # s.watchos.deployment_target = "2.0" - - - # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Specify the location from where the source should be retrieved. - # Supports git, hg, bzr, svn and HTTP. - # + s.ios.deployment_target = "8.0" + s.watchos.deployment_target = "2.0" + s.tvos.deployment_target = "9.0" + s.osx.deployment_target = '10.10' s.source = { :git => "https://github.com/launchdarkly/ios-client.git", :tag => "2.2.0" } - - # ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # CocoaPods is smart about how it includes source code. For source files - # giving a folder will include any swift, h, m, mm, c & cpp files. - # For header files it will include any header in the folder. - # Not including the public_header_files will make all headers public. - # - - s.source_files = "Darkly/**/*.{h,m}", "Darkly/*.{h,m}" - # s.public_header_files = "Classes/**/*.h" - - - # ――― Resources ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # A list of resources included with the Pod. These are copied into the - # target bundle with a build phase script. Anything else will be cleaned. - # You can preserve files from being cleaned, please don't preserve - # non-essential files like tests, examples and documentation. - # - - # s.resource = "icon.png" - # s.resources = "Resources/*.png" - - # s.preserve_paths = "FilesToSave", "MoreFilesToSave" - - - # ――― Project Linking ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # Link your library with frameworks, or libraries. Libraries do not include - # the lib prefix of their name. - # - - # s.frameworks = 'CoreData' - - # s.frameworks = "SomeFramework", "AnotherFramework" - - # s.library = "iconv" - # s.libraries = "iconv", "xml2" - - - # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - # - # If your library depends on compiler flags you can set them in the xcconfig hash - # where they will only apply to your library. If you depend on other Podspecs - # you can include multiple dependencies to ensure it works. + s.source_files = "Darkly/*.{h,m}" s.requires_arc = true - # s.xcconfig = { "HEADER_SEARCH_PATHS" => "$(SDKROOT)/usr/include/libxml2" } - # s.dependency "JSONKit", "~> 1.4" s.subspec 'Core' do |ss| ss.dependency 'DarklyEventSource', '~> 1.3.1' end diff --git a/Podfile b/Podfile index d8e11617..8e7d723e 100644 --- a/Podfile +++ b/Podfile @@ -1,8 +1,21 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, '6.0' +target 'Darkly_iOS' do + platform :ios, '8.0' + pod 'DarklyEventSource', '~> 1.3.1' +end + +target 'Darkly_tvOS' do + platform :tvos, '9.0' + pod 'DarklyEventSource', '~> 1.3.1' +end + +target 'Darkly_watchOS' do + platform :watchos, '2.0' + pod 'DarklyEventSource', '~> 1.3.1' +end -target 'Darkly' do - pod 'DarklyEventSource', :git => 'https://github.com/launchdarkly/ios-eventsource.git' +target 'Darkly_osx' do + platform :osx, '10.10' + pod 'DarklyEventSource', '~> 1.3.1' end target 'DarklyTests' do diff --git a/Podfile.lock b/Podfile.lock index 93d98148..b8e16439 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,6 +1,6 @@ PODS: - - DarklyEventSource (1.1.0) - - OCMock (3.3.1) + - DarklyEventSource (1.3.1) + - OCMock (3.4) - OHHTTPStubs (4.8.0): - OHHTTPStubs/Default (= 4.8.0) - OHHTTPStubs/Core (4.8.0) @@ -16,24 +16,15 @@ PODS: - OHHTTPStubs/OHPathHelpers (4.8.0) DEPENDENCIES: - - DarklyEventSource (from `https://github.com/launchdarkly/ios-eventsource.git`) + - DarklyEventSource (~> 1.3.1) - OCMock (~> 3.1) - OHHTTPStubs (~> 4.2) -EXTERNAL SOURCES: - DarklyEventSource: - :git: https://github.com/launchdarkly/ios-eventsource.git - -CHECKOUT OPTIONS: - DarklyEventSource: - :commit: 2a16bf0ad5544acc6c8ccb62aa72119681260f46 - :git: https://github.com/launchdarkly/ios-eventsource.git - SPEC CHECKSUMS: - DarklyEventSource: 0e55ed5a5bfed78b24a75a296c4a7fb048c96f6a - OCMock: f3f61e6eaa16038c30caa5798c5e49d3307b6f22 + DarklyEventSource: ce31d84740e96ddd3d9cb7804ada109b9983d3ed + OCMock: 35ae71d6a8fcc1b59434d561d1520b9dd4f15765 OHHTTPStubs: b393565822317305b87a1440d4c7aff131679f66 -PODFILE CHECKSUM: 0a5bdfb12ce813bf11701f52e1fed86965c0702c +PODFILE CHECKSUM: 1f9cabeb4067cbefd3b7b5bf500bc475140c7de9 COCOAPODS: 1.1.1 diff --git a/Pods/DarklyEventSource/EventSource/EventSource.h b/Pods/DarklyEventSource/EventSource/EventSource.h index 8d2e1b4f..9c67ae47 100644 --- a/Pods/DarklyEventSource/EventSource/EventSource.h +++ b/Pods/DarklyEventSource/EventSource/EventSource.h @@ -45,22 +45,26 @@ typedef void (^EventSourceEventHandler)(Event *event); /// Returns a new instance of EventSource with the specified URL. /// /// @param URL The URL of the EventSource. -/// @param timeoutInterval The request timeout interval in seconds. See NSURLRequest for more details. Default: 5 minutes. +/// @param mobileKey The mobile key to be included in the authorization header + (instancetype)eventSourceWithURL:(NSURL *)URL mobileKey:(NSString *)mobileKey; /// Returns a new instance of EventSource with the specified URL. /// /// @param URL The URL of the EventSource. +/// @param mobileKey The mobile key to be included in the authorization header +/// @param timeoutInterval The request timeout interval in seconds. See NSURLRequest for more details. Default: 5 minutes. + (instancetype)eventSourceWithURL:(NSURL *)URL mobileKey:(NSString *)mobileKey timeoutInterval:(NSTimeInterval)timeoutInterval; /// Creates a new instance of EventSource with the specified URL. /// /// @param URL The URL of the EventSource. +/// @param mobileKey The mobile key to be included in the authorization header - (instancetype)initWithURL:(NSURL *)URL mobileKey:(NSString *)mobileKey; /// Creates a new instance of EventSource with the specified URL. /// /// @param URL The URL of the EventSource. +/// @param mobileKey The mobile key to be included in the authorization header /// @param timeoutInterval The request timeout interval in seconds. See NSURLRequest for more details. Default: 5 minutes. - (instancetype)initWithURL:(NSURL *)URL mobileKey:(NSString *)mobileKey timeoutInterval:(NSTimeInterval)timeoutInterval; diff --git a/Pods/DarklyEventSource/EventSource/EventSource.m b/Pods/DarklyEventSource/EventSource/EventSource.m index f83d6f8b..3959ec0c 100644 --- a/Pods/DarklyEventSource/EventSource/EventSource.m +++ b/Pods/DarklyEventSource/EventSource/EventSource.m @@ -11,6 +11,7 @@ static CGFloat const ES_RETRY_INTERVAL = 1.0; static CGFloat const ES_DEFAULT_TIMEOUT = 300.0; +static CGFloat const ES_MAX_RECONNECT_TIME = 180.0; static NSString *const ESKeyValueDelimiter = @":"; static NSString *const ESEventSeparatorLFLF = @"\n\n"; @@ -23,17 +24,18 @@ static NSString *const ESEventEventKey = @"event"; static NSString *const ESEventRetryKey = @"retry"; -@interface EventSource () { +@interface EventSource () { BOOL wasClosed; dispatch_queue_t messageQueue; dispatch_queue_t connectionQueue; } @property (nonatomic, strong) NSURL *eventURL; -@property (nonatomic, strong) NSURLConnection *eventSource; +@property (nonatomic, strong) NSURLSessionDataTask *eventSourceTask; @property (nonatomic, strong) NSMutableDictionary *listeners; @property (nonatomic, assign) NSTimeInterval timeoutInterval; @property (nonatomic, assign) NSTimeInterval retryInterval; +@property (nonatomic, assign) NSInteger retryAttempt; @property (nonatomic, strong) NSString *mobileKey; @property (nonatomic, strong) id lastEventID; @@ -67,10 +69,11 @@ - (instancetype)initWithURL:(NSURL *)URL mobileKey:(NSString *)mobileKey timeout _eventURL = URL; _timeoutInterval = timeoutInterval; _retryInterval = ES_RETRY_INTERVAL; + _retryAttempt = 0; _mobileKey = mobileKey; messageQueue = dispatch_queue_create("co.cwbrn.eventsource-queue", DISPATCH_QUEUE_SERIAL); connectionQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0); - + dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(_retryInterval * NSEC_PER_SEC)); dispatch_after(popTime, connectionQueue, ^(void){ [self _open]; @@ -111,12 +114,11 @@ - (void)onReadyStateChanged:(EventSourceEventHandler)handler - (void)close { wasClosed = YES; - [self.eventSource cancel]; + [self.eventSourceTask cancel]; } -// --------------------------------------------------------------------------------------------------------------------- - -- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response +- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask +didReceiveResponse:(NSURLResponse *)response completionHandler:(void (^)(NSURLSessionResponseDisposition disposition))completionHandler { NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response; if (httpResponse.statusCode == 200) { @@ -124,65 +126,48 @@ - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLRespon Event *e = [Event new]; e.readyState = kEventStateOpen; - + _retryAttempt = 0; [self _dispatchEvent:e type:ReadyStateEvent]; [self _dispatchEvent:e type:OpenEvent]; } -} - -- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error -{ - self.eventSource = nil; - - if (wasClosed) { - return; + + if (completionHandler) { + completionHandler(NSURLSessionResponseAllow); } - - Event *e = [Event new]; - e.readyState = kEventStateClosed; - e.error = error; - - [self _dispatchEvent:e type:ReadyStateEvent]; - [self _dispatchEvent:e type:ErrorEvent]; - - dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(_retryInterval * NSEC_PER_SEC)); - dispatch_after(popTime, connectionQueue, ^(void){ - [self _open]; - }); } -- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data +- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data { NSString *eventString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSArray *lines = [eventString componentsSeparatedByCharactersInSet:[NSCharacterSet newlineCharacterSet]]; - + Event *event = [Event new]; event.readyState = kEventStateOpen; - + for (NSString *line in lines) { if ([line hasPrefix:ESKeyValueDelimiter]) { continue; } - + if (!line || line.length == 0) { - dispatch_async(messageQueue, ^{ - [self _dispatchEvent:event]; - }); - - event = [Event new]; - event.readyState = kEventStateOpen; + dispatch_async(messageQueue, ^{ + [self _dispatchEvent:event]; + }); + + event = [Event new]; + event.readyState = kEventStateOpen; continue; } - + @autoreleasepool { NSScanner *scanner = [NSScanner scannerWithString:line]; scanner.charactersToBeSkipped = [NSCharacterSet whitespaceCharacterSet]; - + NSString *key, *value; [scanner scanUpToString:ESKeyValueDelimiter intoString:&key]; [scanner scanString:ESKeyValueDelimiter intoString:nil]; [scanner scanUpToCharactersFromSet:[NSCharacterSet newlineCharacterSet] intoString:&value]; - + if (key && value) { if ([key isEqualToString:ESEventEventKey]) { event.event = value; @@ -203,24 +188,24 @@ - (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data } } -- (void)connectionDidFinishLoading:(NSURLConnection *)connection +- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCompleteWithError:(nullable NSError *)error { - self.eventSource = nil; - + self.eventSourceTask = nil; + if (wasClosed) { return; } Event *e = [Event new]; e.readyState = kEventStateClosed; - e.error = [NSError errorWithDomain:@"" - code:e.readyState - userInfo:@{ NSLocalizedDescriptionKey: @"Connection with the event source was closed." }]; - + e.error = error ?: [NSError errorWithDomain:@"" + code:e.readyState + userInfo:@{ NSLocalizedDescriptionKey: @"Connection with the event source was closed." }]; + [self _dispatchEvent:e type:ReadyStateEvent]; [self _dispatchEvent:e type:ErrorEvent]; - - dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(_retryInterval * NSEC_PER_SEC)); + + dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)([self increaseIntervalWithBackoff] * NSEC_PER_SEC)); dispatch_after(popTime, connectionQueue, ^(void){ [self _open]; }); @@ -234,13 +219,19 @@ - (void)_open if (self.lastEventID) { [request setValue:self.lastEventID forHTTPHeaderField:@"Last-Event-ID"]; } - self.eventSource = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES]; - + + NSURLSession *session = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration] + delegate:self + delegateQueue:[NSOperationQueue currentQueue]]; + + self.eventSourceTask = [session dataTaskWithRequest:request]; + [self.eventSourceTask resume]; + Event *e = [Event new]; e.readyState = kEventStateConnecting; - + [self _dispatchEvent:e type:ReadyStateEvent]; - + if (![NSThread isMainThread]) { CFRunLoopRun(); } @@ -259,15 +250,19 @@ - (void)_dispatchEvent:(Event *)event type:(NSString * const)type - (void)_dispatchEvent:(Event *)event { [self _dispatchEvent:event type:MessageEvent]; - + if (event.event != nil) { [self _dispatchEvent:event type:event.event]; } } +- (CGFloat)increaseIntervalWithBackoff { + _retryAttempt++; + return arc4random_uniform(MIN(ES_MAX_RECONNECT_TIME, _retryInterval * pow(2, _retryAttempt))); +} + @end -// --------------------------------------------------------------------------------------------------------------------- @implementation Event @@ -275,13 +270,13 @@ - (NSString *)description { NSString *state = nil; switch (self.readyState) { - case kEventStateConnecting: + case kEventStateConnecting: state = @"CONNECTING"; break; - case kEventStateOpen: + case kEventStateOpen: state = @"OPEN"; break; - case kEventStateClosed: + case kEventStateClosed: state = @"CLOSED"; break; } diff --git a/Pods/DarklyEventSource/README.md b/Pods/DarklyEventSource/README.md index 809393e8..b910bea7 100644 --- a/Pods/DarklyEventSource/README.md +++ b/Pods/DarklyEventSource/README.md @@ -1,7 +1,10 @@ # EventSource -**Server-Sent Events for iOS and Mac** +**Server-Sent Events for iOS, watchOS, tvOS and Mac** ![Travis](https://travis-ci.org/neilco/EventSource.svg?branch=master) +[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/DarklyEventSource.svg)](https://img.shields.io/cocoapods/v/DarklyEventSource.svg) +[![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) +[![Platform](https://img.shields.io/cocoapods/p/AFNetworking.svg?style=flat)](http://cocoadocs.org/docsets/AFNetworking) ## What does it do? @@ -71,6 +74,54 @@ http.createServer(function (req, res) { The payload above doesn't include an `id` parameter, but if you include one it will be available in the `Event` object in your Cocoa code. +## Installation +EventSource supports multiple methods for installing the library in a project. + +### Installation with CocoaPods + +[CocoaPods](http://cocoapods.org) is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like EventSource in your projects. You can install it with the following command: + +```bash +$ gem install cocoapods +``` +#### Podfile + +To integrate EventSource into your Xcode project using CocoaPods, specify it in your `Podfile`: + +```ruby +source 'https://github.com/CocoaPods/Specs.git' +platform :ios, '8.0' + +target 'TargetName' do +pod 'DarklyEventSource', '~> 1.3.0' +end +``` + +Then, run the following command: + +```bash +$ pod install +``` + +### Installation with Carthage + +[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. + +You can install Carthage with [Homebrew](http://brew.sh/) using the following command: + +```bash +$ brew update +$ brew install carthage +``` + +To integrate EventSource into your Xcode project using Carthage, specify it in your `Cartfile`: + +```ogdl +github "launchdarkly/ios-eventsource" ~> 1.3.0 +``` + +Run `carthage` to build the framework and drag the built `EventSource.framework` into your Xcode project. + ### Contact [Neil Cowburn](http://github.com/neilco) diff --git a/Pods/Local Podspecs/DarklyEventSource.podspec.json b/Pods/Local Podspecs/DarklyEventSource.podspec.json index 0255d8f4..b1bc31b8 100644 --- a/Pods/Local Podspecs/DarklyEventSource.podspec.json +++ b/Pods/Local Podspecs/DarklyEventSource.podspec.json @@ -1,6 +1,6 @@ { "name": "DarklyEventSource", - "version": "1.1.0", + "version": "1.3.1", "summary": "HTML5 Server-Sent Events in your Cocoa app.", "homepage": "https://github.com/launchdarkly/ios-eventsource", "license": "MIT (see LICENSE.txt)", @@ -9,7 +9,7 @@ }, "source": { "git": "https://github.com/launchdarkly/ios-eventsource.git", - "tag": "1.1.0" + "tag": "1.3.1" }, "source_files": [ "EventSource", @@ -26,11 +26,13 @@ } }, "platforms": { - "ios": "5.0", - "osx": "10.7" + "ios": "8.0", + "osx": "10.7", + "watchos": "2.0", + "tvos": "9.0" }, "requires_arc": true, "xcconfig": { - "OTHER_LDFLAGS": "-lObjC" + "OTHER_LDFLAGS": "-lobjc" } } diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock index 93d98148..b8e16439 100644 --- a/Pods/Manifest.lock +++ b/Pods/Manifest.lock @@ -1,6 +1,6 @@ PODS: - - DarklyEventSource (1.1.0) - - OCMock (3.3.1) + - DarklyEventSource (1.3.1) + - OCMock (3.4) - OHHTTPStubs (4.8.0): - OHHTTPStubs/Default (= 4.8.0) - OHHTTPStubs/Core (4.8.0) @@ -16,24 +16,15 @@ PODS: - OHHTTPStubs/OHPathHelpers (4.8.0) DEPENDENCIES: - - DarklyEventSource (from `https://github.com/launchdarkly/ios-eventsource.git`) + - DarklyEventSource (~> 1.3.1) - OCMock (~> 3.1) - OHHTTPStubs (~> 4.2) -EXTERNAL SOURCES: - DarklyEventSource: - :git: https://github.com/launchdarkly/ios-eventsource.git - -CHECKOUT OPTIONS: - DarklyEventSource: - :commit: 2a16bf0ad5544acc6c8ccb62aa72119681260f46 - :git: https://github.com/launchdarkly/ios-eventsource.git - SPEC CHECKSUMS: - DarklyEventSource: 0e55ed5a5bfed78b24a75a296c4a7fb048c96f6a - OCMock: f3f61e6eaa16038c30caa5798c5e49d3307b6f22 + DarklyEventSource: ce31d84740e96ddd3d9cb7804ada109b9983d3ed + OCMock: 35ae71d6a8fcc1b59434d561d1520b9dd4f15765 OHHTTPStubs: b393565822317305b87a1440d4c7aff131679f66 -PODFILE CHECKSUM: 0a5bdfb12ce813bf11701f52e1fed86965c0702c +PODFILE CHECKSUM: 1f9cabeb4067cbefd3b7b5bf500bc475140c7de9 COCOAPODS: 1.1.1 diff --git a/Pods/OCMock/Source/OCMock/OCClassMockObject.m b/Pods/OCMock/Source/OCMock/OCClassMockObject.m index 8770a632..0555b80b 100644 --- a/Pods/OCMock/Source/OCMock/OCClassMockObject.m +++ b/Pods/OCMock/Source/OCMock/OCClassMockObject.m @@ -215,7 +215,14 @@ - (BOOL)isKindOfClass:(Class)aClass - (BOOL)conformsToProtocol:(Protocol *)aProtocol { - return class_conformsToProtocol(mockedClass, aProtocol); + Class clazz = mockedClass; + while (clazz != nil) { + if (class_conformsToProtocol(clazz, aProtocol)) { + return YES; + } + clazz = class_getSuperclass(clazz); + } + return NO; } @end diff --git a/Pods/OCMock/Source/OCMock/OCMFunctions.m b/Pods/OCMock/Source/OCMock/OCMFunctions.m index 79f6e9ac..c3a96f80 100644 --- a/Pods/OCMock/Source/OCMock/OCMFunctions.m +++ b/Pods/OCMock/Source/OCMock/OCMFunctions.m @@ -126,6 +126,10 @@ CFNumberType OCMNumberTypeForObjCType(const char *objcType) * compared textually. This can happen particularly for pointers to such structures, which still * encode what is being pointed to. * + * In addition, this funtion will consider structures with unknown names, encoded as "{?=}, equal to + * structures with any name. This means that "{?=dd}" and "{foo=dd}", and even "{?=}" and "{foo=dd}", + * are considered equal. + * * For some types some runtime functions throw exceptions, which is why we wrap this in an * exception handler just below. */ @@ -159,8 +163,9 @@ static BOOL OCMEqualTypesAllowingOpaqueStructsInternal(const char *type1, const intptr_t type1NameLen = type1NameEnd - type1; intptr_t type2NameLen = type2NameEnd - type2; - /* If the names are not equal, return NO */ - if (type1NameLen != type2NameLen || strncmp(type1, type2, type1NameLen)) + /* If the names are not equal and neither of the names is a question mark, return NO */ + if ((type1NameLen != type2NameLen || strncmp(type1, type2, type1NameLen)) && + !((type1NameLen == 2) && (type1[1] == '?')) && !((type2NameLen == 2) && (type2[1] == '?'))) return NO; /* If the same name, and at least one is opaque, that is close enough. */ diff --git a/Pods/OCMock/Source/OCMock/OCMockObject.m b/Pods/OCMock/Source/OCMock/OCMockObject.m index 0f79f119..b3e38730 100644 --- a/Pods/OCMock/Source/OCMock/OCMockObject.m +++ b/Pods/OCMock/Source/OCMock/OCMockObject.m @@ -224,7 +224,16 @@ - (void)verifyWithDelay:(NSTimeInterval)delay atLocation:(OCMLocation *)location { @synchronized(expectations) { - if([expectations count] == 0) + BOOL allExpectationsAreMatchAndReject = YES; + for(OCMInvocationExpectation *expectation in expectations) + { + if(![expectation isMatchAndReject]) + { + allExpectationsAreMatchAndReject = NO; + break; + } + } + if(allExpectationsAreMatchAndReject) break; } [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:MIN(step, delay)]]; diff --git a/Pods/OCMock/Source/OCMock/OCObserverMockObject.m b/Pods/OCMock/Source/OCMock/OCObserverMockObject.m index 03db0d34..8e1fe062 100644 --- a/Pods/OCMock/Source/OCMock/OCObserverMockObject.m +++ b/Pods/OCMock/Source/OCMock/OCObserverMockObject.m @@ -112,6 +112,11 @@ - (NSNotification *)notificationWithName:(NSString *)name object:(id)sender return [[self expect] notificationWithName:name object:sender]; } +- (NSNotification *)notificationWithName:(NSString *)name object:(id)sender userInfo:(NSDictionary *)userInfo +{ + return [[self expect] notificationWithName:name object:sender userInfo:userInfo]; +} + #pragma mark Receiving notifications diff --git a/Pods/OCMock/Source/OCMock/OCPartialMockObject.m b/Pods/OCMock/Source/OCMock/OCPartialMockObject.m index 991e994f..1298ba23 100644 --- a/Pods/OCMock/Source/OCMock/OCPartialMockObject.m +++ b/Pods/OCMock/Source/OCMock/OCPartialMockObject.m @@ -30,8 +30,9 @@ @implementation OCPartialMockObject - (id)initWithObject:(NSObject *)anObject { NSParameterAssert(anObject != nil); - [self assertClassIsSupported:[anObject class]]; - [super initWithClass:[anObject class]]; + Class const class = [self classToSubclassForObject:anObject]; + [self assertClassIsSupported:class]; + [super initWithClass:class]; realObject = [anObject retain]; [self prepareObjectForInstanceMethodMocking]; return self; @@ -69,6 +70,21 @@ - (void)assertClassIsSupported:(Class)class [[NSException exceptionWithName:NSInvalidArgumentException reason:reason userInfo:nil] raise]; } +- (Class)classToSubclassForObject:(id)object +{ + /* object_getClass() gives us the actual class backing the object, whereas [object class] + * is sometimes overridden, by KVO or CoreData, for example, to return a subclass. + * + * With KVO, if we replace and subclass the actual class, as returned by object_getClass(), + * we lose notifications. So, in that case only, we return the class reported by the class + * method. + */ + + if([object observationInfo] != NULL) + return [object class]; + + return object_getClass(object); +} #pragma mark Extending/overriding superclass behaviour diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj index eb241336..434d5aa7 100644 --- a/Pods/Pods.xcodeproj/project.pbxproj +++ b/Pods/Pods.xcodeproj/project.pbxproj @@ -7,290 +7,425 @@ objects = { /* Begin PBXBuildFile section */ - 03EF931564978791D4ABC400F3FDDBED /* OCMVerifier.m in Sources */ = {isa = PBXBuildFile; fileRef = F825F9A7529BD9305936CE538F54D3D5 /* OCMVerifier.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 046937EA1C4859D4D96EFA7B7687E441 /* OCMBlockCaller.m in Sources */ = {isa = PBXBuildFile; fileRef = A67F319A8BF716628CA8EBD0073A0067 /* OCMBlockCaller.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 0718F50539C75449ECDAC11F70E268EC /* EventSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E4EBDDFA8B1C2C27407D755D02C1C0A /* EventSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 075CD6C5BB938BB549069BE44FFBB4AC /* OHHTTPStubs-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 985A436C462A037FA8390AF21D8AF7D1 /* OHHTTPStubs-dummy.m */; }; - 0934D3DAC27331C1569A357A677B2206 /* NSMethodSignature+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D0C6FC13E9ABEAB4D472CE07246D1F17 /* NSMethodSignature+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 0A7C4089DBD8BD40374AFA8EEAB7CA3C /* OCMPassByRefSetter.m in Sources */ = {isa = PBXBuildFile; fileRef = 92EA785A2BE6E7B0182815D5F8836B52 /* OCMPassByRefSetter.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 0D66F2D7A7038BBDBE4E0F6C5EF5F3A5 /* Pods-Darkly-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B00872DE75F7DAA97E60F0293D6FD4F1 /* Pods-Darkly-dummy.m */; }; - 0EE98780873CB1A29EE8B4A36BA7E14A /* OCMFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EAA69EA01ED805C3E43C5ECCCBB296A /* OCMFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0FF3FC1E48C180F85E9A6E9154D07ED6 /* OHHTTPStubsResponse+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = C60C373CAAAA6BB49B814D5FB7E2794E /* OHHTTPStubsResponse+JSON.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 10AEAD2136880EEE7E771F533331F250 /* OCMock.h in Headers */ = {isa = PBXBuildFile; fileRef = F496DEF1CBD879A62ED848750C243F2B /* OCMock.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 149DE9C6DB74B12EFF07D185484D946F /* NSInvocation+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 608CCFE3847CB6EEAFD794B1F260074D /* NSInvocation+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 1586CD3BDB1E92D87A0E423AAC313FD4 /* OCMObserverRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = 150AF7DFCF0592A3EAA65F601160A03E /* OCMObserverRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 1B7E21160BEF08CC76BA8C17E94E455A /* OCMLocation.m in Sources */ = {isa = PBXBuildFile; fileRef = 2448FF5555CE93A33B6D140D1EB46FA5 /* OCMLocation.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 1CEF74126A682572F3DDBF39496CC4C6 /* OHPathHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = EE2EAE940C6CC1A77AE5D4F62764BBCD /* OHPathHelpers.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - 20C39DB909C33B491D60F23FA1D415C2 /* OCMRealObjectForwarder.m in Sources */ = {isa = PBXBuildFile; fileRef = F930BC7FD1A6834408D8BA01EAE1641D /* OCMRealObjectForwarder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 226E96EF42F54BDF063CFB60F6C58B36 /* OHHTTPStubsResponse+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 6894A030EA760D0761EBD9C59F1DD1A0 /* OHHTTPStubsResponse+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 242BBBE1DEF72969A491A4B5052B5042 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */; }; - 2BF27FB1EEB80A33E6D86D0C203F6BE8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */; }; - 3152811CD17686AA726713BFE3612206 /* OCMConstraint.h in Headers */ = {isa = PBXBuildFile; fileRef = B8D62F8B6424C2E5A52E524F5318D543 /* OCMConstraint.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 330042D247A328BF03DC865E57E58807 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */; }; - 33C4E9CA4B43CD4C468B338E2ED06860 /* OCMVerifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C23FF9E77646944C5C9B60E625ED60C /* OCMVerifier.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 3A769EE15211B7EBBAF4B1C8AD542502 /* OCMFunctionsPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A03268A5C7489C1A04E2F9FCEE53EB40 /* OCMFunctionsPrivate.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 3C08656F7BF3A342B5EB9EE902E81357 /* OHPathHelpers.h in Headers */ = {isa = PBXBuildFile; fileRef = 91546DDB0FCE9F585BDA696A88F7C08C /* OHPathHelpers.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3EEE56426C5838CA2F13E8F95B594401 /* OCMRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = E36D1B2940B0243068A3C3EF9EAFAEF2 /* OCMRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 3F62BC4730B3C5B247A302D1D4E978CA /* OHHTTPStubsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = AAE6834F1110E227BA41AEA1162E23AB /* OHHTTPStubsResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 40B2ABF25812A14D83A05D8937FBDB7B /* OCProtocolMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = FF73608535683B7CE73310B6B671828A /* OCProtocolMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 4B7803BBB30ECAE8AA424D2B7279BDFF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */; }; - 4CF0A4AD04F2F3CF7465991A5E76AD47 /* OCMStubRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D19AEF870CA489E42E40F3D77F6A8A /* OCMStubRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 55EA7FCA2F507BCC25959CE95D295A8C /* OCMConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C98A59855B6E25D7DD9C6EE81A4C2B3 /* OCMConstraint.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 55F2C7C98AB5E300663D064AAA64B80B /* OCMArgAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4729156A61EF01D06A596388E7B4172E /* OCMArgAction.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 562C4A7A171B6F0000B132E22372C3DA /* OCPartialMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 969A7F4CB3179643A289034DBAD445E4 /* OCPartialMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 59BC54DA90AD2433D20358F9853622CA /* OCMMacroState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9665EBD0286D5EF8773D2C0D98B9C8A4 /* OCMMacroState.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 5BB246B2587EBC3E5597DBD6CD33777F /* NSMethodSignature+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 691BC8EA9BF2494A07A1C931A08C39DD /* NSMethodSignature+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 5F04262019BBB326960E643861626099 /* OCMExceptionReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = FC8B875DE2140135DB5675EB5B034CB6 /* OCMExceptionReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 620D1C1787D9BC05B0E96C1EA18ECBD3 /* Compatibility.h in Headers */ = {isa = PBXBuildFile; fileRef = CAD0B56E31A78F0892477445FDC87B66 /* Compatibility.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 651F3096B56BFF131C5F956001D7BAAB /* OCMArg.m in Sources */ = {isa = PBXBuildFile; fileRef = FE35F423C620CE3C19E0F252F954C5C2 /* OCMArg.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 672FE514B7C1EB583AF6CEB2538025A7 /* OCMBoxedReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F0115150262490C9B552591EF063A498 /* OCMBoxedReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 696B28961DEC673700A91C29 /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 88E5C31D75E19B443989CBABA2955244 /* EventSource.m */; }; - 6D2AD1DFA8F27BA0EBB3365A5AF7AC1B /* OCMExpectationRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = D61A2D40FAFE74E1A92F39AE4671AF5C /* OCMExpectationRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 70AC31D0736F568C0386716176361D09 /* OCMInvocationMatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = C7AE890C5B71EDEA043980B18E7D158C /* OCMInvocationMatcher.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 71899DFD8094C412FFC39669279B4533 /* OCMBlockArgCaller.h in Headers */ = {isa = PBXBuildFile; fileRef = 6AA8016CD9A715874973309F8563BF10 /* OCMBlockArgCaller.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 7EE0FD33AB30006545874DEF02F9243E /* OCMNotificationPoster.m in Sources */ = {isa = PBXBuildFile; fileRef = C27006D28989D1F58B31FAB4DB7F19E7 /* OCMNotificationPoster.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 7FCBACC709D8947B90BA69B6AF5426E8 /* DarklyEventSource-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 928089ED577220CE63FCD0E512FE1BB0 /* DarklyEventSource-dummy.m */; }; - 7FFCEEC0036EC9E7A5D3BAD719B28D4A /* NSNotificationCenter+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 06F6A5D74B3896315C0E3ADD85C475F5 /* NSNotificationCenter+OCMAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 830B3A29668D59C62571A4CE4D3BAFCA /* OCMIndirectReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AE5AAC2FB38D72FD2B426F2623281F6 /* OCMIndirectReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 87AA263FA688A8E92C2B8ADEE72C98C6 /* OCMObserverRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = E76DCE77AE357E35835DCF9EF4F88185 /* OCMObserverRecorder.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8A1370FF0DD475F945954535A988ED4B /* OCMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 21AC88F3F035F47ED7ED079FC48D1EC1 /* OCMockObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 8D40AF80800C0D4A691F4A0656E53D98 /* OCMRealObjectForwarder.h in Headers */ = {isa = PBXBuildFile; fileRef = CB7F58FDB37B851EC33ADD2A26F18362 /* OCMRealObjectForwarder.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 94216C983E91F2BA503920465DE1972A /* OCClassMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = ED7CDBAD2DD052F7924A0DD722A2235D /* OCClassMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 9424A65B7DE915848BFF6DB192463EC4 /* Pods-DarklyTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DACE97983A7011CEF94852D61195084F /* Pods-DarklyTests-dummy.m */; }; - 950C209E1D004EBDCD43D6C2136B5AA2 /* OCMStubRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = 116842ABDD729D8B367A58AF57FC4AF1 /* OCMStubRecorder.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9C195CB2280DCD3183057794B4504B22 /* OCMRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = F0AECEEBEF4C518DE57585AEE3EB4B32 /* OCMRecorder.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9CC6FD64C69152C0A5848C0E50442380 /* OHHTTPStubs.h in Headers */ = {isa = PBXBuildFile; fileRef = A597752AE66882C9227C660A1FDDC861 /* OHHTTPStubs.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9ED6B48F0C000C83C89249483D3398A6 /* OCMFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5759D5D33C4C27A9F41CBF6EF99ED79C /* OCMFunctions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - A425B4C6EAA79B2C9BB4F374180DC194 /* NSValue+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 046DADF7166189802A85F50046ADEE1C /* NSValue+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; - A516CB608A827C4FEA550CB372854AF7 /* OCMReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EE0A362089BBF81CB149A46DE54F4F1 /* OCMReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - AD672A92EF1A71CB35F77D51924A63D7 /* OCMInvocationStub.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F9062561B132F149E4C7522A8A125CE /* OCMInvocationStub.h */; settings = {ATTRIBUTES = (Project, ); }; }; - B28B82281F2A75B1A27E9B1B289B179D /* OCClassMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 4EC18921F9FE7AD482BF74DC062928F8 /* OCClassMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - B36995CF7E36CC57C8C118EC5EC049A6 /* OCMock-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EEE4E130B67044471AC79AB1FDEB2487 /* OCMock-dummy.m */; }; - B4D6973B3F74EB04E719BFCFCBF04C0B /* OCMInvocationStub.m in Sources */ = {isa = PBXBuildFile; fileRef = E50678E89D61AADC68189A0E39117545 /* OCMInvocationStub.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - BC7143B82E45DDE808B1D8E8F6970E41 /* OCMInvocationExpectation.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ACD7C43A58DE99EF78A97E9BB278291 /* OCMInvocationExpectation.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C01520F21314A4A11E0BD5C9BE190A1A /* OCMExpectationRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = BB7D622BC5DAA60C9FBAC339D6EC5D04 /* OCMExpectationRecorder.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C4235F3704F471BAF74CB4482A99D340 /* OCMReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B73DE2A0648E0FDDABFCAEBCCDB453A /* OCMReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C508640C7607A5BE183916AC4202A026 /* OCMInvocationMatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 8545593BB8227ABE999C278DD051EFBD /* OCMInvocationMatcher.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - C55C0B0594D26DE09DEC7F161910A211 /* OCObserverMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D933AE19D4FA0C2B62DE3472D1DABC76 /* OCObserverMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - C6DEDAD5B01946A2644F428020F881B6 /* OCObserverMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = CFD4E4E1F5B9DA3213D7476D12DD4A06 /* OCObserverMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C796F27878B148315E4EB60535EEA4BE /* OCMLocation.h in Headers */ = {isa = PBXBuildFile; fileRef = 39B45CF87607653A724FEE23544F0097 /* OCMLocation.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C890F0C7F4C2F2A2FC28BACB640BE70B /* OHHTTPStubs.m in Sources */ = {isa = PBXBuildFile; fileRef = 96D50C132816B12884F05DC2F93B5E18 /* OHHTTPStubs.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - C8B39657A6AAD6B8C7BC769565B7ECAB /* OHHTTPStubs+NSURLSessionConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = 647CA2E9F981B7273517839822965800 /* OHHTTPStubs+NSURLSessionConfiguration.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - CC40C17D2E01DDDF48A7A8D50B8E92F8 /* OCMMacroState.h in Headers */ = {isa = PBXBuildFile; fileRef = 331A5DFB28CD9B5F6B556875FC54B505 /* OCMMacroState.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CC4F14C27B167A64F09A356652410909 /* OCMInvocationExpectation.m in Sources */ = {isa = PBXBuildFile; fileRef = 17F391D82CD3EACF38D6D99060C0B624 /* OCMInvocationExpectation.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - CC5C84B30927F4CE48D7EC04BF652005 /* OCMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 10F2D728900053B974A5484A05628F47 /* OCMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - CD0D58357199DD2C630F60E0C5622B51 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */; }; - CE1D11A21BB0D710B640F31B18935BF3 /* NSObject+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = B7A9D1ACA4E00667A57DFE12D3194F64 /* NSObject+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D470FD7FF206B100A7B79714E7FA0F4A /* OCMNotificationPoster.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F028BED7D934C1EE2DD70E4858609CB /* OCMNotificationPoster.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D78D41AA2CEB6ED571503108CEC3DA15 /* OCMArg.h in Headers */ = {isa = PBXBuildFile; fileRef = 1381937F9E6D2A25C980930F2A6C3ABB /* OCMArg.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D9EA9C8052853B8962318FFD5A5551B6 /* OCMExceptionReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 6174E76E5552D76A13C2706983459805 /* OCMExceptionReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - DADACF239B30C047FA9304E5FDDA8B2E /* NSObject+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 152504BCDE54E1515A3077F85BEA7170 /* NSObject+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - DB377E734D4DF686F341A5BA72EE8903 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DBA5794656CD6EAD5432F6E93991FC63 /* CFNetwork.framework */; }; - DE57384C891A85506CB91EA186D2D2B4 /* OCMArgAction.h in Headers */ = {isa = PBXBuildFile; fileRef = 406AA75BFBA16636190363B46B1D057B /* OCMArgAction.h */; settings = {ATTRIBUTES = (Project, ); }; }; - DF0A3CB81B12C054F9C8258F680F7C9D /* OCPartialMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 78DAC19693E39F9BE072A78244E7E741 /* OCPartialMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - E00ABE7FC44CB9D1B511D96D47C16AD5 /* NSInvocation+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 78FD8A459BEC36342796B61E62588E73 /* NSInvocation+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - E2D2C2DEBBB651077ABC3710A423594F /* NSValue+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5B3EE8B103992F9DE3ADF241C0367C86 /* NSValue+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - E45D617A6259C90DC54D6F22571998E8 /* OCMPassByRefSetter.h in Headers */ = {isa = PBXBuildFile; fileRef = 93BE5F6843B8EA81A9140C68FCE1CC61 /* OCMPassByRefSetter.h */; settings = {ATTRIBUTES = (Project, ); }; }; - E8CDCEDCDC0ADE51EBAFCC09F44EFF12 /* OCMBlockArgCaller.m in Sources */ = {isa = PBXBuildFile; fileRef = 97D9C9C42BE807471F4AB7197E1DBF8C /* OCMBlockArgCaller.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - EA2A970253EA9B298F0BB63864AA18D1 /* OCProtocolMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B6FBD722C3E3D06B9F78C36930DD808 /* OCProtocolMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - EC4D06D78167B5DD86911B4D6A127AFB /* OHHTTPStubsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = ED420FEE1A84D3500263E37FFD355618 /* OHHTTPStubsResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - EEBEC3C68DD8C679511876B4610D582A /* OCMBoxedReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = EB860D52030C58D6F87D6C6DF004F62C /* OCMBoxedReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; - F0E9BE1709D8B3501A9E791E8D36FBED /* NSNotificationCenter+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 01CE0668C07AA060EC521F24A8744826 /* NSNotificationCenter+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - F9A155F62DB095E98D35807C5549B234 /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 88E5C31D75E19B443989CBABA2955244 /* EventSource.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; - FB294C8C8DCC4EACB074C58C027C9723 /* OCMIndirectReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 5497A155F08B78C9EDF62F965A644FCE /* OCMIndirectReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; - FDFD77CF38AE5FDD235A02217B763809 /* OCMBlockCaller.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5B2AE1BA464F917D90AE8223CE2712 /* OCMBlockCaller.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 02527DFB122F73BD3DC8C8A86222F3E2 /* OCMArg.h in Headers */ = {isa = PBXBuildFile; fileRef = 1381937F9E6D2A25C980930F2A6C3ABB /* OCMArg.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 071C795CC71CDDD3C56FF4FB99BAB16A /* NSObject+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = B7A9D1ACA4E00667A57DFE12D3194F64 /* NSObject+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0AC12F1B7957366C81558762D1111533 /* OCMReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EE0A362089BBF81CB149A46DE54F4F1 /* OCMReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 0B2FB0D68A033559883B2C1E52CA534D /* DarklyEventSource-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8E94ED8896498BA95A2B17E492894FE9 /* DarklyEventSource-iOS-dummy.m */; }; + 0D30A6EE1C9F514206A593D6A25A52F7 /* EventSource.h in Headers */ = {isa = PBXBuildFile; fileRef = E841F81A61F2999308605B25670F8FFC /* EventSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0E1ED31837C555C996AAD4A41709AD75 /* NSNotificationCenter+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 01CE0668C07AA060EC521F24A8744826 /* NSNotificationCenter+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 10B81963335CC6CCFEDD58AEF714E68A /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D922F2D72779A1967524BBBAECEF3120 /* CFNetwork.framework */; }; + 1853C34BBA3FC142351D0A2B5A027A7B /* OCClassMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 4EC18921F9FE7AD482BF74DC062928F8 /* OCClassMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 1A0289791659AA5931E87E835F338F45 /* Pods-Darkly_osx-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 63F276E36CC20BA895A95DAA4B6B55DA /* Pods-Darkly_osx-dummy.m */; }; + 1CD34D02EC9C728A6A039636D436F569 /* NSInvocation+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 78FD8A459BEC36342796B61E62588E73 /* NSInvocation+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 1D3CDCDCDD27AC25A359DF0839FD400B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ACDF0E08285415092448B937524BBFBC /* Foundation.framework */; }; + 224BBF3C543C3EC0135E693FB717A0BB /* OHHTTPStubs-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 985A436C462A037FA8390AF21D8AF7D1 /* OHHTTPStubs-dummy.m */; }; + 24DD541C526C4A876C3861024948786F /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 411D0C20238413BDAE6873846A933D0A /* Cocoa.framework */; }; + 2C29ABF82C3C7C0F5DE3AAA4C2975375 /* OCMLocation.m in Sources */ = {isa = PBXBuildFile; fileRef = 2448FF5555CE93A33B6D140D1EB46FA5 /* OCMLocation.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 2D7627390D0826C50E4A03C8470200C3 /* EventSource.h in Headers */ = {isa = PBXBuildFile; fileRef = E841F81A61F2999308605B25670F8FFC /* EventSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2FBAF2C22ED5E2F50D833AF9963E5A2A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ACDF0E08285415092448B937524BBFBC /* Foundation.framework */; }; + 38E49BD2A68848A2697BC3719ACE5EB3 /* EventSource.h in Headers */ = {isa = PBXBuildFile; fileRef = E841F81A61F2999308605B25670F8FFC /* EventSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3C282F482CB14200D161D2262EF37C27 /* OCMStubRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = 116842ABDD729D8B367A58AF57FC4AF1 /* OCMStubRecorder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3D159D347B9908C3BB57E42A8EB29871 /* OCMPassByRefSetter.h in Headers */ = {isa = PBXBuildFile; fileRef = 93BE5F6843B8EA81A9140C68FCE1CC61 /* OCMPassByRefSetter.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3D299CAA41D55E4950FC06710D29AE4A /* OCMRealObjectForwarder.h in Headers */ = {isa = PBXBuildFile; fileRef = CB7F58FDB37B851EC33ADD2A26F18362 /* OCMRealObjectForwarder.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3E3FDF808D7CC042D0FC66A5253B560C /* OHHTTPStubsResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = AAE6834F1110E227BA41AEA1162E23AB /* OHHTTPStubsResponse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 40BA2C54E635E70E3721EEF46153A898 /* NSObject+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 152504BCDE54E1515A3077F85BEA7170 /* NSObject+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 40BE9640ECD0F85906CF3491BFC0354A /* OCMInvocationExpectation.m in Sources */ = {isa = PBXBuildFile; fileRef = 17F391D82CD3EACF38D6D99060C0B624 /* OCMInvocationExpectation.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 418E3B91D43D2DA27CD5AE6A67392AEB /* OHHTTPStubsResponse+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 6894A030EA760D0761EBD9C59F1DD1A0 /* OHHTTPStubsResponse+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 41B44EC9ADBC48D8ADD601284B6AE486 /* OCMRealObjectForwarder.m in Sources */ = {isa = PBXBuildFile; fileRef = F930BC7FD1A6834408D8BA01EAE1641D /* OCMRealObjectForwarder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 42046743618B167BCEB6214E5CBDE6C1 /* OCMRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = E36D1B2940B0243068A3C3EF9EAFAEF2 /* OCMRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 463569FC9155ADC656A7857AAB9A647F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ACDF0E08285415092448B937524BBFBC /* Foundation.framework */; }; + 471694B38D2F34544C9EF90C4A9DD8E0 /* Pods-Darkly_tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AC8750CE32EC1A025F067438B1CFF6CB /* Pods-Darkly_tvOS-dummy.m */; }; + 48E9EB767C5176D4D4A6D54241BE553A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 528B66A2BC53927BB64C91DB055F0D5D /* Foundation.framework */; }; + 490923A3248B26A752F001371AED3D94 /* DarklyEventSource-watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EECA3BE83793286FB4F66387CA746BBD /* DarklyEventSource-watchOS-dummy.m */; }; + 501174F31C9A93462D5137C3A0AF2C49 /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */; }; + 53464AAD32E1DA4780BF51730BA03325 /* OCMBlockCaller.m in Sources */ = {isa = PBXBuildFile; fileRef = A67F319A8BF716628CA8EBD0073A0067 /* OCMBlockCaller.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 546648651CF99C9D510F604F8080C939 /* OCMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 21AC88F3F035F47ED7ED079FC48D1EC1 /* OCMockObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5649F42543F309D40B3A502A20FE253D /* OCObserverMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = CFD4E4E1F5B9DA3213D7476D12DD4A06 /* OCObserverMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5C135BC957224D18A3603E23031CE690 /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 5DDD30521A688DD230E86D4063DE9ACE /* NSValue+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 046DADF7166189802A85F50046ADEE1C /* NSValue+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 600618D5397EF77F820E4C359462C6B7 /* DarklyEventSource-OSX-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EA24864994F40D3813BC1625AC600D2D /* DarklyEventSource-OSX-dummy.m */; }; + 6239AB839A4F9FE4953AA410600CFF3D /* OCMRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = F0AECEEBEF4C518DE57585AEE3EB4B32 /* OCMRecorder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 657A04902AAE0242791FBFA48DC5D64C /* OHHTTPStubs+NSURLSessionConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = 647CA2E9F981B7273517839822965800 /* OHHTTPStubs+NSURLSessionConfiguration.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 6D425653C6BAF07E0833A104C2FECF11 /* OCMExceptionReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 6174E76E5552D76A13C2706983459805 /* OCMExceptionReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 74F11251752068A4669362418849D8BB /* OCMConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C98A59855B6E25D7DD9C6EE81A4C2B3 /* OCMConstraint.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 767E6A941E740E2C33B4BA722A3DDA04 /* OCMock-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EEE4E130B67044471AC79AB1FDEB2487 /* OCMock-dummy.m */; }; + 79DF9CFB844A065CD77BAF14980BDBC2 /* OCMLocation.h in Headers */ = {isa = PBXBuildFile; fileRef = 39B45CF87607653A724FEE23544F0097 /* OCMLocation.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7AF70638D3F5705B49D50A24132B23AD /* OCProtocolMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B6FBD722C3E3D06B9F78C36930DD808 /* OCProtocolMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 7B64E12B678476671480A76FA898D447 /* OHPathHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = EE2EAE940C6CC1A77AE5D4F62764BBCD /* OHPathHelpers.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 7F52A4B361F85B51E77E3E8CBDE3FCCD /* Pods-Darkly_watchOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BAD2DFBBEE1CA8175F6A97A88BD4F600 /* Pods-Darkly_watchOS-dummy.m */; }; + 817D186C7806CF48BBC6A7E092AF8394 /* OHHTTPStubsResponse+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = C60C373CAAAA6BB49B814D5FB7E2794E /* OHHTTPStubsResponse+JSON.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 828BADC5729BF1287CCD1114F2B5A0B4 /* OCObserverMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = D933AE19D4FA0C2B62DE3472D1DABC76 /* OCObserverMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 8376E391D1DA98F25B7A66D4568CC8DC /* OCProtocolMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = FF73608535683B7CE73310B6B671828A /* OCProtocolMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 84F2C52AC76883237FC440600E6A0385 /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */; }; + 863B6A7377BE547337F4063219C50413 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBFEAC80AB2E00CFC60743201EA79E8E /* Foundation.framework */; }; + 868EDDCF8D50052A1262B33D8DA9A0BA /* OCMFunctionsPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A03268A5C7489C1A04E2F9FCEE53EB40 /* OCMFunctionsPrivate.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8C0953C1AC4AB2190448FF3A55C62E0D /* OCMArgAction.h in Headers */ = {isa = PBXBuildFile; fileRef = 406AA75BFBA16636190363B46B1D057B /* OCMArgAction.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 920A24D9C37F9FBF4A76EAECC69E2C75 /* OCMBlockArgCaller.m in Sources */ = {isa = PBXBuildFile; fileRef = 97D9C9C42BE807471F4AB7197E1DBF8C /* OCMBlockArgCaller.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 939F28B70AF3325A78E11C5C765865A0 /* OCMReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B73DE2A0648E0FDDABFCAEBCCDB453A /* OCMReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 972A4220F1E6DCFDB7A133F086550C08 /* OCMInvocationExpectation.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ACD7C43A58DE99EF78A97E9BB278291 /* OCMInvocationExpectation.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 997CCE6087C46AA388366680FA9BBB13 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 411D0C20238413BDAE6873846A933D0A /* Cocoa.framework */; }; + 9A74DA82A9D3063746279C945A504066 /* OCMExceptionReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = FC8B875DE2140135DB5675EB5B034CB6 /* OCMExceptionReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9AA180AC9D8DF08064A18149F30D0D30 /* OCMInvocationMatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 8545593BB8227ABE999C278DD051EFBD /* OCMInvocationMatcher.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + 9D6926B60DD04448C4BDDD147AEFC492 /* OCMInvocationStub.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F9062561B132F149E4C7522A8A125CE /* OCMInvocationStub.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A64BCD7DECCE4C79E1693C6733E4C71E /* OCMArgAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4729156A61EF01D06A596388E7B4172E /* OCMArgAction.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + A6716718F0720573DD09B43478440C62 /* OCMConstraint.h in Headers */ = {isa = PBXBuildFile; fileRef = B8D62F8B6424C2E5A52E524F5318D543 /* OCMConstraint.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AA9AA7A3EAEF09E92599670C1885504A /* OCMBlockCaller.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5B2AE1BA464F917D90AE8223CE2712 /* OCMBlockCaller.h */; settings = {ATTRIBUTES = (Project, ); }; }; + AC02943A62414C8696D23C7650BFA4E1 /* OHHTTPStubs.h in Headers */ = {isa = PBXBuildFile; fileRef = A597752AE66882C9227C660A1FDDC861 /* OHHTTPStubs.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AE761809A4E4FE6602A794A839C2AE0B /* OCMExpectationRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = D61A2D40FAFE74E1A92F39AE4671AF5C /* OCMExpectationRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + B1AC1794DFE45C57D210A79052838297 /* OCClassMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = ED7CDBAD2DD052F7924A0DD722A2235D /* OCClassMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B1C7C41369C4FDED19ED391EFABF908E /* OCMBoxedReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F0115150262490C9B552591EF063A498 /* OCMBoxedReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + B56D0C388C2179A59523A06D48A3CE1F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ACDF0E08285415092448B937524BBFBC /* Foundation.framework */; }; + B6462885514D2F90665D9DC354A0296E /* OCMVerifier.m in Sources */ = {isa = PBXBuildFile; fileRef = F825F9A7529BD9305936CE538F54D3D5 /* OCMVerifier.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + B805C5FF5FD8D7890DD5F8F2644E0481 /* OCMFunctions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5759D5D33C4C27A9F41CBF6EF99ED79C /* OCMFunctions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + BAB1064596A60C4276F829E999F8DA09 /* NSNotificationCenter+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 06F6A5D74B3896315C0E3ADD85C475F5 /* NSNotificationCenter+OCMAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BAC0BDE87C9152E6C109755515C1D26F /* OCMIndirectReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 5497A155F08B78C9EDF62F965A644FCE /* OCMIndirectReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BE11FFFA5819D1764395D5B6FA7622AD /* Pods-DarklyTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A444B96CBFA5F59A2FAD8D226C694B9 /* Pods-DarklyTests-dummy.m */; }; + BF6FB2993CB14EF6BAFB17E6297BC728 /* OCMMacroState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9665EBD0286D5EF8773D2C0D98B9C8A4 /* OCMMacroState.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + C383F49150BF6FC96C10139F13673959 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 528B66A2BC53927BB64C91DB055F0D5D /* Foundation.framework */; }; + C3E81B58946736F92D350FC3A392274B /* Pods-Darkly_iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CA6AC6C66D9B2B101DC71367CF87F1DA /* Pods-Darkly_iOS-dummy.m */; }; + C4933C299ABBEB2A34530305D5457F93 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FBFEAC80AB2E00CFC60743201EA79E8E /* Foundation.framework */; }; + C4945BF00E7C57BB73562DD5BC37D898 /* NSInvocation+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 608CCFE3847CB6EEAFD794B1F260074D /* NSInvocation+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C4E611BA5BA3E0032D4FA80542FF2033 /* OCMArg.m in Sources */ = {isa = PBXBuildFile; fileRef = FE35F423C620CE3C19E0F252F954C5C2 /* OCMArg.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + CAE84311FEDAF57DF4360B27A43C31FE /* EventSource.m in Sources */ = {isa = PBXBuildFile; fileRef = CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */; }; + CB4A0138FBBDB6FAA80F4F6ABB35EECD /* OCMNotificationPoster.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F028BED7D934C1EE2DD70E4858609CB /* OCMNotificationPoster.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CD09AB272C437827BDF24AD1A4E50F61 /* OCPartialMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 78DAC19693E39F9BE072A78244E7E741 /* OCPartialMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + CF01D468B955B1B9169A3D1449FD51AE /* OCMFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EAA69EA01ED805C3E43C5ECCCBB296A /* OCMFunctions.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D0983D6D59B802B2E00F77BEA5D241C4 /* NSMethodSignature+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 691BC8EA9BF2494A07A1C931A08C39DD /* NSMethodSignature+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + D1814014B42FFD24504C6CDCA48CE234 /* OCMMacroState.h in Headers */ = {isa = PBXBuildFile; fileRef = 331A5DFB28CD9B5F6B556875FC54B505 /* OCMMacroState.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D3FA5083C8A87EC5918ED53F18405F32 /* NSValue+OCMAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 5B3EE8B103992F9DE3ADF241C0367C86 /* NSValue+OCMAdditions.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + D4946EC05F4B1948842BB7A8CD50F113 /* OCMStubRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = B4D19AEF870CA489E42E40F3D77F6A8A /* OCMStubRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + D597D84D315E7D2DFA45BBA153D4AF66 /* DarklyEventSource-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AA63D7D263B7D923B72D36CB3ACE2313 /* DarklyEventSource-tvOS-dummy.m */; }; + D754D52C9C0FC5FDA9D79E359A5CEB63 /* NSMethodSignature+OCMAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = D0C6FC13E9ABEAB4D472CE07246D1F17 /* NSMethodSignature+OCMAdditions.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D87328037AC62BC698D991279FD5F164 /* OCMBlockArgCaller.h in Headers */ = {isa = PBXBuildFile; fileRef = 6AA8016CD9A715874973309F8563BF10 /* OCMBlockArgCaller.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D9E5643CBA8E630EB66E688C63170F78 /* OHPathHelpers.h in Headers */ = {isa = PBXBuildFile; fileRef = 91546DDB0FCE9F585BDA696A88F7C08C /* OHPathHelpers.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DB48261589D027DD4B14F7F3FAA7F99F /* OCMock.h in Headers */ = {isa = PBXBuildFile; fileRef = F496DEF1CBD879A62ED848750C243F2B /* OCMock.h */; settings = {ATTRIBUTES = (Public, ); }; }; + DDB838F57DB6DC25B7DBF63B39C46783 /* OCPartialMockObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 969A7F4CB3179643A289034DBAD445E4 /* OCPartialMockObject.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DE28CC61A58ECB6141BCE31C01FCAF25 /* OHHTTPStubs.m in Sources */ = {isa = PBXBuildFile; fileRef = 96D50C132816B12884F05DC2F93B5E18 /* OHHTTPStubs.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + E137E0262BC44A50507D01044AEE807B /* OCMObserverRecorder.m in Sources */ = {isa = PBXBuildFile; fileRef = 150AF7DFCF0592A3EAA65F601160A03E /* OCMObserverRecorder.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + E1D2D5D0D1B27527F86383D63FF739D5 /* OHHTTPStubsResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = ED420FEE1A84D3500263E37FFD355618 /* OHHTTPStubsResponse.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + E6CE7E482261CFBDB354443EFA78D35C /* OCMockObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 10F2D728900053B974A5484A05628F47 /* OCMockObject.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + E8612AABCE826260F2D834D5061AC591 /* OCMNotificationPoster.m in Sources */ = {isa = PBXBuildFile; fileRef = C27006D28989D1F58B31FAB4DB7F19E7 /* OCMNotificationPoster.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + EA9A79135185FA9B8D8E0460B13083A0 /* OCMPassByRefSetter.m in Sources */ = {isa = PBXBuildFile; fileRef = 92EA785A2BE6E7B0182815D5F8836B52 /* OCMPassByRefSetter.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + F261D98AE9E878D134AA810D28E6B84D /* OCMVerifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C23FF9E77646944C5C9B60E625ED60C /* OCMVerifier.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F76C42A3EEA7F274B51B593374D9E6A1 /* OCMIndirectReturnValueProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = 0AE5AAC2FB38D72FD2B426F2623281F6 /* OCMIndirectReturnValueProvider.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + F77DFA9A51A4F147887D4D5F65A2C37A /* OCMInvocationStub.m in Sources */ = {isa = PBXBuildFile; fileRef = E50678E89D61AADC68189A0E39117545 /* OCMInvocationStub.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; + F7FCFD7F34645ED9E8886376A898C234 /* OCMBoxedReturnValueProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = EB860D52030C58D6F87D6C6DF004F62C /* OCMBoxedReturnValueProvider.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F89269879EF3C7BB28BAF1CCFBB90F04 /* EventSource.h in Headers */ = {isa = PBXBuildFile; fileRef = E841F81A61F2999308605B25670F8FFC /* EventSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F9181CD269B33C9EDD91B8FB3A54C168 /* OCMObserverRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = E76DCE77AE357E35835DCF9EF4F88185 /* OCMObserverRecorder.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FB2BA634E6A62EC78CC4B37AC633C099 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ACDF0E08285415092448B937524BBFBC /* Foundation.framework */; }; + FC69D50D4D9E93E1671C5D7C83D884C0 /* Compatibility.h in Headers */ = {isa = PBXBuildFile; fileRef = CAD0B56E31A78F0892477445FDC87B66 /* Compatibility.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FCC7872E4A0286DF5A01DE195F59B67B /* OCMExpectationRecorder.h in Headers */ = {isa = PBXBuildFile; fileRef = BB7D622BC5DAA60C9FBAC339D6EC5D04 /* OCMExpectationRecorder.h */; settings = {ATTRIBUTES = (Project, ); }; }; + FCEB3964FE34FF08B22C795DB6EFA25B /* OCMInvocationMatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = C7AE890C5B71EDEA043980B18E7D158C /* OCMInvocationMatcher.h */; settings = {ATTRIBUTES = (Project, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 1ABC0411B15B9BAEE749E4E69878653C /* PBXContainerItemProxy */ = { + 11FE6625BC411A82DBE4A1ED92860413 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 4A2CAA839F2722C796C6F1DFDC806B92; + remoteGlobalIDString = A561198B7669F579C29FC6864AE4991F; remoteInfo = OCMock; }; - 3C2FEE212E58C1245A52CBB85C802EEE /* PBXContainerItemProxy */ = { + 20CDE6CE420DA2771F9AFA666B3E6576 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = DE5CBF3D63D4D0760E299B262C949D81; - remoteInfo = DarklyEventSource; + remoteGlobalIDString = D58C46A50D62C157E960D4676C6FF70D; + remoteInfo = "DarklyEventSource-tvOS"; }; - ED8DB8FEC74BEBCAFB83356340481C0C /* PBXContainerItemProxy */ = { + 2B4E68466B2AF29086AD1959EBB5318D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 045D3251CE3EFD09123EE341B544522A; + remoteGlobalIDString = 5619C45212EB735445EDEBF49D07CE51; + remoteInfo = "DarklyEventSource-iOS"; + }; + A42079669638BCC6F7D35B82E4597DC0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 9135E9FD702E6C20D43F83356816C512; remoteInfo = OHHTTPStubs; }; + B739CA90BFD655AEF8FF649B739DACFA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2455A73137D54F1A4B54CD2C408B7E02; + remoteInfo = "DarklyEventSource-OSX"; + }; + EC2369572A743638CA9E8FEDF8C25F79 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 07A71BD7951D89FBB0DD80582886E1F6; + remoteInfo = "DarklyEventSource-watchOS"; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ 01CE0668C07AA060EC521F24A8744826 /* NSNotificationCenter+OCMAdditions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSNotificationCenter+OCMAdditions.m"; path = "Source/OCMock/NSNotificationCenter+OCMAdditions.m"; sourceTree = ""; }; + 02C29F5FD630BAA124EB3564C5B7166F /* Pods-Darkly_watchOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_watchOS.release.xcconfig"; sourceTree = ""; }; 046DADF7166189802A85F50046ADEE1C /* NSValue+OCMAdditions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSValue+OCMAdditions.h"; path = "Source/OCMock/NSValue+OCMAdditions.h"; sourceTree = ""; }; 06F6A5D74B3896315C0E3ADD85C475F5 /* NSNotificationCenter+OCMAdditions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSNotificationCenter+OCMAdditions.h"; path = "Source/OCMock/NSNotificationCenter+OCMAdditions.h"; sourceTree = ""; }; - 0A273F31242E3963895F6CBE949BE8C9 /* Pods-Darkly-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Darkly-acknowledgements.markdown"; sourceTree = ""; }; + 09B0B49CD761F7DD498D714084BA87F1 /* Pods-Darkly_watchOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Darkly_watchOS-acknowledgements.plist"; sourceTree = ""; }; 0AE5AAC2FB38D72FD2B426F2623281F6 /* OCMIndirectReturnValueProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMIndirectReturnValueProvider.m; path = Source/OCMock/OCMIndirectReturnValueProvider.m; sourceTree = ""; }; - 0DA48F36C90F522862641EA1660BCB15 /* Pods-Darkly-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly-resources.sh"; sourceTree = ""; }; - 0E143BDA97DE825A32B878D087FB1D7D /* libOCMock.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libOCMock.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 0AF56381AB77FCBE8D8445D6781F954F /* DarklyEventSource-watchOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "DarklyEventSource-watchOS-prefix.pch"; path = "../DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch"; sourceTree = ""; }; 10F2D728900053B974A5484A05628F47 /* OCMockObject.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMockObject.m; path = Source/OCMock/OCMockObject.m; sourceTree = ""; }; - 11132BB7DEAC421E779FE2644C2B2245 /* Pods-DarklyTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DarklyTests-resources.sh"; sourceTree = ""; }; + 10F41C4083182D3F05CFAF19C8C86B90 /* Pods-Darkly_watchOS-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly_watchOS-resources.sh"; sourceTree = ""; }; 116842ABDD729D8B367A58AF57FC4AF1 /* OCMStubRecorder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMStubRecorder.h; path = Source/OCMock/OCMStubRecorder.h; sourceTree = ""; }; + 1245912B92C20FF5B8003D043B8B4446 /* Pods-Darkly_watchOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_watchOS.debug.xcconfig"; sourceTree = ""; }; 12B960BC8278FDB1B933D00A8C9C2E23 /* OCMock-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "OCMock-prefix.pch"; sourceTree = ""; }; 1381937F9E6D2A25C980930F2A6C3ABB /* OCMArg.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMArg.h; path = Source/OCMock/OCMArg.h; sourceTree = ""; }; 150AF7DFCF0592A3EAA65F601160A03E /* OCMObserverRecorder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMObserverRecorder.m; path = Source/OCMock/OCMObserverRecorder.m; sourceTree = ""; }; 152504BCDE54E1515A3077F85BEA7170 /* NSObject+OCMAdditions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSObject+OCMAdditions.m"; path = "Source/OCMock/NSObject+OCMAdditions.m"; sourceTree = ""; }; 17F391D82CD3EACF38D6D99060C0B624 /* OCMInvocationExpectation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMInvocationExpectation.m; path = Source/OCMock/OCMInvocationExpectation.m; sourceTree = ""; }; - 19E9543472634FF451C0DF898648C2CA /* Pods-DarklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DarklyTests.release.xcconfig"; sourceTree = ""; }; 1ACD7C43A58DE99EF78A97E9BB278291 /* OCMInvocationExpectation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMInvocationExpectation.h; path = Source/OCMock/OCMInvocationExpectation.h; sourceTree = ""; }; + 1C191EA8B41E2D8BD2EB0FDC836AC04E /* libOCMock.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libOCMock.a; path = libOCMock.a; sourceTree = BUILT_PRODUCTS_DIR; }; 1EAA69EA01ED805C3E43C5ECCCBB296A /* OCMFunctions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMFunctions.h; path = Source/OCMock/OCMFunctions.h; sourceTree = ""; }; 1EE0A362089BBF81CB149A46DE54F4F1 /* OCMReturnValueProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMReturnValueProvider.m; path = Source/OCMock/OCMReturnValueProvider.m; sourceTree = ""; }; 21AC88F3F035F47ED7ED079FC48D1EC1 /* OCMockObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMockObject.h; path = Source/OCMock/OCMockObject.h; sourceTree = ""; }; 2448FF5555CE93A33B6D140D1EB46FA5 /* OCMLocation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMLocation.m; path = Source/OCMock/OCMLocation.m; sourceTree = ""; }; + 27E07980ECEAEBD513AF9E1A18EEFB76 /* Pods-DarklyTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DarklyTests-frameworks.sh"; sourceTree = ""; }; + 2E78FF244C0690D6F5E63F2B798EC50B /* Pods-Darkly_iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_iOS.release.xcconfig"; sourceTree = ""; }; + 32294AD9D0AC1B3E148A6223CFD4B02D /* libPods-Darkly_tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Darkly_tvOS.a"; path = "libPods-Darkly_tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 331A5DFB28CD9B5F6B556875FC54B505 /* OCMMacroState.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMMacroState.h; path = Source/OCMock/OCMMacroState.h; sourceTree = ""; }; - 38F6B1718A2BFF054B1D594DE0C37955 /* libPods-DarklyTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-DarklyTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3355D3B1EE755DC8F6FFFF6B9101C9B6 /* Pods-Darkly_osx-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly_osx-resources.sh"; sourceTree = ""; }; + 372CE3D00FC66876725C0EBF50AF3858 /* DarklyEventSource-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "DarklyEventSource-iOS.xcconfig"; path = "../DarklyEventSource-iOS/DarklyEventSource-iOS.xcconfig"; sourceTree = ""; }; + 3972E311CE5653126105575B582CC848 /* Pods-Darkly_osx.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_osx.debug.xcconfig"; sourceTree = ""; }; 39B45CF87607653A724FEE23544F0097 /* OCMLocation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMLocation.h; path = Source/OCMock/OCMLocation.h; sourceTree = ""; }; + 3BC60177066FFBC25C53AC8D29BA2DD1 /* libDarklyEventSource-watchOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libDarklyEventSource-watchOS.a"; path = "libDarklyEventSource-watchOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3CA0EF81E7360887EAF5B3D8E8198CF0 /* DarklyEventSource-OSX.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "DarklyEventSource-OSX.xcconfig"; sourceTree = ""; }; 406AA75BFBA16636190363B46B1D057B /* OCMArgAction.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMArgAction.h; path = Source/OCMock/OCMArgAction.h; sourceTree = ""; }; - 445EAECA724D2F6FF501E3EB778CFDB7 /* DarklyEventSource.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = DarklyEventSource.xcconfig; sourceTree = ""; }; - 462B6274D25369D4F65AD53C470AD84D /* Pods-Darkly.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly.debug.xcconfig"; sourceTree = ""; }; + 411D0C20238413BDAE6873846A933D0A /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + 439016C9F93D31BE562BF6EADCB37878 /* Pods-Darkly_osx.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_osx.release.xcconfig"; sourceTree = ""; }; + 445E93B063C0FD7C25FD31E39B4D8F0B /* libDarklyEventSource-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libDarklyEventSource-iOS.a"; path = "libDarklyEventSource-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 4729156A61EF01D06A596388E7B4172E /* OCMArgAction.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMArgAction.m; path = Source/OCMock/OCMArgAction.m; sourceTree = ""; }; + 4A2C85B49390359F26A7A79E82653346 /* libPods-Darkly_iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Darkly_iOS.a"; path = "libPods-Darkly_iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 4A55F3D3DE7F6F8799B2D046EB6795F2 /* libDarklyEventSource-OSX.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libDarklyEventSource-OSX.a"; path = "libDarklyEventSource-OSX.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 4C98A59855B6E25D7DD9C6EE81A4C2B3 /* OCMConstraint.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMConstraint.m; path = Source/OCMock/OCMConstraint.m; sourceTree = ""; }; 4EC18921F9FE7AD482BF74DC062928F8 /* OCClassMockObject.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCClassMockObject.m; path = Source/OCMock/OCClassMockObject.m; sourceTree = ""; }; 4F9062561B132F149E4C7522A8A125CE /* OCMInvocationStub.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMInvocationStub.h; path = Source/OCMock/OCMInvocationStub.h; sourceTree = ""; }; - 51F53E4649BC2F3C34E423465C5884D9 /* Pods-Darkly.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly.release.xcconfig"; sourceTree = ""; }; + 4FC80382BD63510194750829B7144D6A /* DarklyEventSource-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "DarklyEventSource-tvOS.xcconfig"; path = "../DarklyEventSource-tvOS/DarklyEventSource-tvOS.xcconfig"; sourceTree = ""; }; + 50FD41AE0272A972BEECCB44E507924D /* Pods-DarklyTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DarklyTests-resources.sh"; sourceTree = ""; }; + 528B66A2BC53927BB64C91DB055F0D5D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS10.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 5497A155F08B78C9EDF62F965A644FCE /* OCMIndirectReturnValueProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMIndirectReturnValueProvider.h; path = Source/OCMock/OCMIndirectReturnValueProvider.h; sourceTree = ""; }; 5759D5D33C4C27A9F41CBF6EF99ED79C /* OCMFunctions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMFunctions.m; path = Source/OCMock/OCMFunctions.m; sourceTree = ""; }; + 5AB79C3BC9DBCA565B06DA883C108477 /* Pods-Darkly_tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_tvOS.release.xcconfig"; sourceTree = ""; }; 5B3EE8B103992F9DE3ADF241C0367C86 /* NSValue+OCMAdditions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSValue+OCMAdditions.m"; path = "Source/OCMock/NSValue+OCMAdditions.m"; sourceTree = ""; }; - 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 608CCFE3847CB6EEAFD794B1F260074D /* NSInvocation+OCMAdditions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSInvocation+OCMAdditions.h"; path = "Source/OCMock/NSInvocation+OCMAdditions.h"; sourceTree = ""; }; 6174E76E5552D76A13C2706983459805 /* OCMExceptionReturnValueProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMExceptionReturnValueProvider.m; path = Source/OCMock/OCMExceptionReturnValueProvider.m; sourceTree = ""; }; - 63E632A3EB4527BEE4B0E37461327123 /* libOHHTTPStubs.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libOHHTTPStubs.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 617509C9E331A7CE4FC189954D5A580F /* Pods-Darkly_osx-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Darkly_osx-acknowledgements.plist"; sourceTree = ""; }; + 63F276E36CC20BA895A95DAA4B6B55DA /* Pods-Darkly_osx-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Darkly_osx-dummy.m"; sourceTree = ""; }; 647CA2E9F981B7273517839822965800 /* OHHTTPStubs+NSURLSessionConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "OHHTTPStubs+NSURLSessionConfiguration.m"; path = "OHHTTPStubs/Sources/NSURLSession/OHHTTPStubs+NSURLSessionConfiguration.m"; sourceTree = ""; }; 6894A030EA760D0761EBD9C59F1DD1A0 /* OHHTTPStubsResponse+JSON.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "OHHTTPStubsResponse+JSON.h"; path = "OHHTTPStubs/Sources/JSON/OHHTTPStubsResponse+JSON.h"; sourceTree = ""; }; 691BC8EA9BF2494A07A1C931A08C39DD /* NSMethodSignature+OCMAdditions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSMethodSignature+OCMAdditions.m"; path = "Source/OCMock/NSMethodSignature+OCMAdditions.m"; sourceTree = ""; }; 6AA8016CD9A715874973309F8563BF10 /* OCMBlockArgCaller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMBlockArgCaller.h; path = Source/OCMock/OCMBlockArgCaller.h; sourceTree = ""; }; + 6B32DA4DCF7165E04AFBE01CC174E2A9 /* libDarklyEventSource-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libDarklyEventSource-tvOS.a"; path = "libDarklyEventSource-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 6B73DE2A0648E0FDDABFCAEBCCDB453A /* OCMReturnValueProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMReturnValueProvider.h; path = Source/OCMock/OCMReturnValueProvider.h; sourceTree = ""; }; - 6CC66CE381E5E24606B3CB9F4B94FF9B /* libDarklyEventSource.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDarklyEventSource.a; sourceTree = BUILT_PRODUCTS_DIR; }; 78DAC19693E39F9BE072A78244E7E741 /* OCPartialMockObject.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCPartialMockObject.m; path = Source/OCMock/OCPartialMockObject.m; sourceTree = ""; }; 78FD8A459BEC36342796B61E62588E73 /* NSInvocation+OCMAdditions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSInvocation+OCMAdditions.m"; path = "Source/OCMock/NSInvocation+OCMAdditions.m"; sourceTree = ""; }; - 793AF91259FDF28A43A67F2DB4472256 /* Pods-DarklyTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DarklyTests-acknowledgements.markdown"; sourceTree = ""; }; + 79914D11F9DCD1CFF4F14F57490B3A22 /* Pods-Darkly_iOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Darkly_iOS-acknowledgements.plist"; sourceTree = ""; }; 7B6FBD722C3E3D06B9F78C36930DD808 /* OCProtocolMockObject.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCProtocolMockObject.m; path = Source/OCMock/OCProtocolMockObject.m; sourceTree = ""; }; - 7D9D7B998887CEF566A20E0A0ED59D17 /* Pods-DarklyTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DarklyTests.debug.xcconfig"; sourceTree = ""; }; 8086B881AD2BE15603573BA377D15E42 /* OHHTTPStubs.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = OHHTTPStubs.xcconfig; sourceTree = ""; }; + 83CFDB54E7B20B99A79E94E32DCE673E /* Pods-Darkly_osx-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Darkly_osx-acknowledgements.markdown"; sourceTree = ""; }; 8545593BB8227ABE999C278DD051EFBD /* OCMInvocationMatcher.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMInvocationMatcher.m; path = Source/OCMock/OCMInvocationMatcher.m; sourceTree = ""; }; - 88E5C31D75E19B443989CBABA2955244 /* EventSource.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = EventSource.m; path = EventSource/EventSource.m; sourceTree = ""; }; + 85EAF613DE673E17911AC93FBD1F4338 /* Pods-Darkly_tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Darkly_tvOS-acknowledgements.plist"; sourceTree = ""; }; + 8A444B96CBFA5F59A2FAD8D226C694B9 /* Pods-DarklyTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DarklyTests-dummy.m"; sourceTree = ""; }; + 8DC00A07681B543F04D23CDD36257290 /* libPods-Darkly_watchOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Darkly_watchOS.a"; path = "libPods-Darkly_watchOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 8E94ED8896498BA95A2B17E492894FE9 /* DarklyEventSource-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "DarklyEventSource-iOS-dummy.m"; path = "../DarklyEventSource-iOS/DarklyEventSource-iOS-dummy.m"; sourceTree = ""; }; 8F028BED7D934C1EE2DD70E4858609CB /* OCMNotificationPoster.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMNotificationPoster.h; path = Source/OCMock/OCMNotificationPoster.h; sourceTree = ""; }; 91546DDB0FCE9F585BDA696A88F7C08C /* OHPathHelpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OHPathHelpers.h; path = OHHTTPStubs/Sources/OHPathHelpers/OHPathHelpers.h; sourceTree = ""; }; - 928089ED577220CE63FCD0E512FE1BB0 /* DarklyEventSource-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "DarklyEventSource-dummy.m"; sourceTree = ""; }; 92EA785A2BE6E7B0182815D5F8836B52 /* OCMPassByRefSetter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMPassByRefSetter.m; path = Source/OCMock/OCMPassByRefSetter.m; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 93BE5F6843B8EA81A9140C68FCE1CC61 /* OCMPassByRefSetter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMPassByRefSetter.h; path = Source/OCMock/OCMPassByRefSetter.h; sourceTree = ""; }; + 93D917D0371720DFCC8B0F56DF776401 /* DarklyEventSource-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "DarklyEventSource-iOS-prefix.pch"; path = "../DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch"; sourceTree = ""; }; 9665EBD0286D5EF8773D2C0D98B9C8A4 /* OCMMacroState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMMacroState.m; path = Source/OCMock/OCMMacroState.m; sourceTree = ""; }; 969A7F4CB3179643A289034DBAD445E4 /* OCPartialMockObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCPartialMockObject.h; path = Source/OCMock/OCPartialMockObject.h; sourceTree = ""; }; 96D50C132816B12884F05DC2F93B5E18 /* OHHTTPStubs.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OHHTTPStubs.m; path = OHHTTPStubs/Sources/OHHTTPStubs.m; sourceTree = ""; }; 97D9C9C42BE807471F4AB7197E1DBF8C /* OCMBlockArgCaller.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMBlockArgCaller.m; path = Source/OCMock/OCMBlockArgCaller.m; sourceTree = ""; }; 985A436C462A037FA8390AF21D8AF7D1 /* OHHTTPStubs-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "OHHTTPStubs-dummy.m"; sourceTree = ""; }; + 991B7B9D67A978F53885133D1B117A48 /* Pods-DarklyTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-DarklyTests-acknowledgements.markdown"; sourceTree = ""; }; + 99B3983D1E171DB5460A2BC439C8CD12 /* Pods-Darkly_tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Darkly_tvOS-acknowledgements.markdown"; sourceTree = ""; }; + 9A453BD98718E1B29605821754286AE0 /* Pods-Darkly_tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_tvOS.debug.xcconfig"; sourceTree = ""; }; 9C23FF9E77646944C5C9B60E625ED60C /* OCMVerifier.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMVerifier.h; path = Source/OCMock/OCMVerifier.h; sourceTree = ""; }; - 9E4EBDDFA8B1C2C27407D755D02C1C0A /* EventSource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = EventSource.h; path = EventSource/EventSource.h; sourceTree = ""; }; A03268A5C7489C1A04E2F9FCEE53EB40 /* OCMFunctionsPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMFunctionsPrivate.h; path = Source/OCMock/OCMFunctionsPrivate.h; sourceTree = ""; }; + A2A7DE38BDF3A406B1C54F0EDE937A0F /* Pods-Darkly_tvOS-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly_tvOS-resources.sh"; sourceTree = ""; }; A4F6C037736103AC4295CEF6C396473B /* OCMock.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = OCMock.xcconfig; sourceTree = ""; }; + A5910A77494E687E722952807B397D6E /* Pods-DarklyTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DarklyTests.debug.xcconfig"; sourceTree = ""; }; A597752AE66882C9227C660A1FDDC861 /* OHHTTPStubs.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OHHTTPStubs.h; path = OHHTTPStubs/Sources/OHHTTPStubs.h; sourceTree = ""; }; A67F319A8BF716628CA8EBD0073A0067 /* OCMBlockCaller.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMBlockCaller.m; path = Source/OCMock/OCMBlockCaller.m; sourceTree = ""; }; + A6C066C5F008682C40ABFFD50B4814CA /* Pods-Darkly_iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Darkly_iOS.debug.xcconfig"; sourceTree = ""; }; A87690D2B967B056A044B644EF26E658 /* OHHTTPStubs-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "OHHTTPStubs-prefix.pch"; sourceTree = ""; }; + AA63D7D263B7D923B72D36CB3ACE2313 /* DarklyEventSource-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "DarklyEventSource-tvOS-dummy.m"; path = "../DarklyEventSource-tvOS/DarklyEventSource-tvOS-dummy.m"; sourceTree = ""; }; AAE6834F1110E227BA41AEA1162E23AB /* OHHTTPStubsResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OHHTTPStubsResponse.h; path = OHHTTPStubs/Sources/OHHTTPStubsResponse.h; sourceTree = ""; }; - AB9524B3EE291BEE7021EA1007B97ECD /* Pods-DarklyTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DarklyTests-acknowledgements.plist"; sourceTree = ""; }; - B00872DE75F7DAA97E60F0293D6FD4F1 /* Pods-Darkly-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Darkly-dummy.m"; sourceTree = ""; }; + AC8750CE32EC1A025F067438B1CFF6CB /* Pods-Darkly_tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Darkly_tvOS-dummy.m"; sourceTree = ""; }; + ACDF0E08285415092448B937524BBFBC /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + AD95E80FF1B2149E8EE36CE378A963E1 /* Pods-DarklyTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-DarklyTests-acknowledgements.plist"; sourceTree = ""; }; + B4458570F0582149749FFC415EDB6B10 /* DarklyEventSource-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "DarklyEventSource-tvOS-prefix.pch"; path = "../DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch"; sourceTree = ""; }; B4D19AEF870CA489E42E40F3D77F6A8A /* OCMStubRecorder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMStubRecorder.m; path = Source/OCMock/OCMStubRecorder.m; sourceTree = ""; }; B7A9D1ACA4E00667A57DFE12D3194F64 /* NSObject+OCMAdditions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSObject+OCMAdditions.h"; path = "Source/OCMock/NSObject+OCMAdditions.h"; sourceTree = ""; }; - B7D9381BEE065B0A026DD0A3D0AC558A /* DarklyEventSource-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DarklyEventSource-prefix.pch"; sourceTree = ""; }; B8D62F8B6424C2E5A52E524F5318D543 /* OCMConstraint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMConstraint.h; path = Source/OCMock/OCMConstraint.h; sourceTree = ""; }; + BAD2DFBBEE1CA8175F6A97A88BD4F600 /* Pods-Darkly_watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Darkly_watchOS-dummy.m"; sourceTree = ""; }; BB7D622BC5DAA60C9FBAC339D6EC5D04 /* OCMExpectationRecorder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMExpectationRecorder.h; path = Source/OCMock/OCMExpectationRecorder.h; sourceTree = ""; }; - BBAA279832E58E79D595A332BC59774A /* Pods-Darkly-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly-frameworks.sh"; sourceTree = ""; }; - BDC7657C1D5B9D7EA1D13968ABDDCEDF /* Pods-DarklyTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-DarklyTests-frameworks.sh"; sourceTree = ""; }; + BC9B30D39D6AD02B215B6A4CE7E9847D /* libOHHTTPStubs.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libOHHTTPStubs.a; path = libOHHTTPStubs.a; sourceTree = BUILT_PRODUCTS_DIR; }; + BDDD0219BA9E42C31446F564600B0D63 /* Pods-Darkly_iOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Darkly_iOS-acknowledgements.markdown"; sourceTree = ""; }; + C0CCC4CB49D9D09D9290628AEA99B7DC /* Pods-DarklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-DarklyTests.release.xcconfig"; sourceTree = ""; }; C27006D28989D1F58B31FAB4DB7F19E7 /* OCMNotificationPoster.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMNotificationPoster.m; path = Source/OCMock/OCMNotificationPoster.m; sourceTree = ""; }; - C55DA981529849137ABAF69AED458006 /* Pods-Darkly-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Darkly-acknowledgements.plist"; sourceTree = ""; }; C60C373CAAAA6BB49B814D5FB7E2794E /* OHHTTPStubsResponse+JSON.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "OHHTTPStubsResponse+JSON.m"; path = "OHHTTPStubs/Sources/JSON/OHHTTPStubsResponse+JSON.m"; sourceTree = ""; }; C7AE890C5B71EDEA043980B18E7D158C /* OCMInvocationMatcher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMInvocationMatcher.h; path = Source/OCMock/OCMInvocationMatcher.h; sourceTree = ""; }; + CA6AC6C66D9B2B101DC71367CF87F1DA /* Pods-Darkly_iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Darkly_iOS-dummy.m"; sourceTree = ""; }; CAD0B56E31A78F0892477445FDC87B66 /* Compatibility.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Compatibility.h; path = OHHTTPStubs/Sources/Compatibility.h; sourceTree = ""; }; CB7F58FDB37B851EC33ADD2A26F18362 /* OCMRealObjectForwarder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMRealObjectForwarder.h; path = Source/OCMock/OCMRealObjectForwarder.h; sourceTree = ""; }; + CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = EventSource.m; path = EventSource/EventSource.m; sourceTree = ""; }; CD5B2AE1BA464F917D90AE8223CE2712 /* OCMBlockCaller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMBlockCaller.h; path = Source/OCMock/OCMBlockCaller.h; sourceTree = ""; }; CFD4E4E1F5B9DA3213D7476D12DD4A06 /* OCObserverMockObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCObserverMockObject.h; path = Source/OCMock/OCObserverMockObject.h; sourceTree = ""; }; D0C6FC13E9ABEAB4D472CE07246D1F17 /* NSMethodSignature+OCMAdditions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSMethodSignature+OCMAdditions.h"; path = "Source/OCMock/NSMethodSignature+OCMAdditions.h"; sourceTree = ""; }; D61A2D40FAFE74E1A92F39AE4671AF5C /* OCMExpectationRecorder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMExpectationRecorder.m; path = Source/OCMock/OCMExpectationRecorder.m; sourceTree = ""; }; + D922F2D72779A1967524BBBAECEF3120 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/CFNetwork.framework; sourceTree = DEVELOPER_DIR; }; D933AE19D4FA0C2B62DE3472D1DABC76 /* OCObserverMockObject.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCObserverMockObject.m; path = Source/OCMock/OCObserverMockObject.m; sourceTree = ""; }; - DACE97983A7011CEF94852D61195084F /* Pods-DarklyTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-DarklyTests-dummy.m"; sourceTree = ""; }; - DBA5794656CD6EAD5432F6E93991FC63 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/CFNetwork.framework; sourceTree = DEVELOPER_DIR; }; + DC30096096C2C89ABFCF13FABF69876E /* DarklyEventSource-watchOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "DarklyEventSource-watchOS.xcconfig"; path = "../DarklyEventSource-watchOS/DarklyEventSource-watchOS.xcconfig"; sourceTree = ""; }; + DDF63973ED04630EA263E322022E8C5E /* DarklyEventSource-OSX-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DarklyEventSource-OSX-prefix.pch"; sourceTree = ""; }; E36D1B2940B0243068A3C3EF9EAFAEF2 /* OCMRecorder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMRecorder.m; path = Source/OCMock/OCMRecorder.m; sourceTree = ""; }; E50678E89D61AADC68189A0E39117545 /* OCMInvocationStub.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMInvocationStub.m; path = Source/OCMock/OCMInvocationStub.m; sourceTree = ""; }; + E689D3BD13B2D9782C0E945073D296E0 /* Pods-Darkly_watchOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Darkly_watchOS-acknowledgements.markdown"; sourceTree = ""; }; E76DCE77AE357E35835DCF9EF4F88185 /* OCMObserverRecorder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMObserverRecorder.h; path = Source/OCMock/OCMObserverRecorder.h; sourceTree = ""; }; + E841F81A61F2999308605B25670F8FFC /* EventSource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = EventSource.h; path = EventSource/EventSource.h; sourceTree = ""; }; + EA24864994F40D3813BC1625AC600D2D /* DarklyEventSource-OSX-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "DarklyEventSource-OSX-dummy.m"; sourceTree = ""; }; + EB03AEB32DECE882D9F50ECAD0606040 /* Pods-Darkly_iOS-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Darkly_iOS-resources.sh"; sourceTree = ""; }; EB860D52030C58D6F87D6C6DF004F62C /* OCMBoxedReturnValueProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMBoxedReturnValueProvider.h; path = Source/OCMock/OCMBoxedReturnValueProvider.h; sourceTree = ""; }; ED420FEE1A84D3500263E37FFD355618 /* OHHTTPStubsResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OHHTTPStubsResponse.m; path = OHHTTPStubs/Sources/OHHTTPStubsResponse.m; sourceTree = ""; }; ED7CDBAD2DD052F7924A0DD722A2235D /* OCClassMockObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCClassMockObject.h; path = Source/OCMock/OCClassMockObject.h; sourceTree = ""; }; EE2EAE940C6CC1A77AE5D4F62764BBCD /* OHPathHelpers.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OHPathHelpers.m; path = OHHTTPStubs/Sources/OHPathHelpers/OHPathHelpers.m; sourceTree = ""; }; + EECA3BE83793286FB4F66387CA746BBD /* DarklyEventSource-watchOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "DarklyEventSource-watchOS-dummy.m"; path = "../DarklyEventSource-watchOS/DarklyEventSource-watchOS-dummy.m"; sourceTree = ""; }; EEE4E130B67044471AC79AB1FDEB2487 /* OCMock-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "OCMock-dummy.m"; sourceTree = ""; }; F0115150262490C9B552591EF063A498 /* OCMBoxedReturnValueProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMBoxedReturnValueProvider.m; path = Source/OCMock/OCMBoxedReturnValueProvider.m; sourceTree = ""; }; F0AECEEBEF4C518DE57585AEE3EB4B32 /* OCMRecorder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMRecorder.h; path = Source/OCMock/OCMRecorder.h; sourceTree = ""; }; F496DEF1CBD879A62ED848750C243F2B /* OCMock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMock.h; path = Source/OCMock/OCMock.h; sourceTree = ""; }; + F662D009A067052B84ABFC4BB843271B /* libPods-DarklyTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-DarklyTests.a"; path = "libPods-DarklyTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + F6FE9B3DA379093899635BF8A9A6D354 /* libPods-Darkly_osx.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Darkly_osx.a"; path = "libPods-Darkly_osx.a"; sourceTree = BUILT_PRODUCTS_DIR; }; F825F9A7529BD9305936CE538F54D3D5 /* OCMVerifier.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMVerifier.m; path = Source/OCMock/OCMVerifier.m; sourceTree = ""; }; F930BC7FD1A6834408D8BA01EAE1641D /* OCMRealObjectForwarder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMRealObjectForwarder.m; path = Source/OCMock/OCMRealObjectForwarder.m; sourceTree = ""; }; - FAD5C19E743F0E19752BAC27E511162A /* libPods-Darkly.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Darkly.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + FBFEAC80AB2E00CFC60743201EA79E8E /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS3.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; FC8B875DE2140135DB5675EB5B034CB6 /* OCMExceptionReturnValueProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCMExceptionReturnValueProvider.h; path = Source/OCMock/OCMExceptionReturnValueProvider.h; sourceTree = ""; }; FE35F423C620CE3C19E0F252F954C5C2 /* OCMArg.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = OCMArg.m; path = Source/OCMock/OCMArg.m; sourceTree = ""; }; FF73608535683B7CE73310B6B671828A /* OCProtocolMockObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = OCProtocolMockObject.h; path = Source/OCMock/OCProtocolMockObject.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 4C2602132A1D207DB135342BF83AB581 /* Frameworks */ = { + 11C4B28707B499A2A31129FB51329EA9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + B56D0C388C2179A59523A06D48A3CE1F /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 30142CAFE4A6D08E8DA3E098B9AD46FA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 463569FC9155ADC656A7857AAB9A647F /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 400842B3E27BC29C344A44CBE45DD944 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + FB2BA634E6A62EC78CC4B37AC633C099 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5724C1333E4CC8787412678F55B1C2A8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + C4933C299ABBEB2A34530305D5457F93 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 65B62D4812E8D30E9629C53B7E44565D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 863B6A7377BE547337F4063219C50413 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7C9E2CDDE2A2331A026257FC0E3AD2FD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + C383F49150BF6FC96C10139F13673959 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7DF57E93702F9036FEE931B449D6D803 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4B7803BBB30ECAE8AA424D2B7279BDFF /* Foundation.framework in Frameworks */, + 1D3CDCDCDD27AC25A359DF0839FD400B /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5E0F9C30388E5D734E96B82567092757 /* Frameworks */ = { + 94EED86C8E29BD000D077A5B664A8D7C /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DB377E734D4DF686F341A5BA72EE8903 /* CFNetwork.framework in Frameworks */, - 330042D247A328BF03DC865E57E58807 /* Foundation.framework in Frameworks */, + 48E9EB767C5176D4D4A6D54241BE553A /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 617C3DC1A2DDF9B3789916C50C0A6D42 /* Frameworks */ = { + 96647794A6A23F36A15290143059BA70 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2BF27FB1EEB80A33E6D86D0C203F6BE8 /* Foundation.framework in Frameworks */, + 24DD541C526C4A876C3861024948786F /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FC98AA26534B8FDAEDE9568E13615027 /* Frameworks */ = { + A08245C203E4D806DD8604C26EA6C578 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - CD0D58357199DD2C630F60E0C5622B51 /* Foundation.framework in Frameworks */, + 997CCE6087C46AA388366680FA9BBB13 /* Cocoa.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FCCAA1431185A79691E3A0964D9DE01B /* Frameworks */ = { + EDCB5C9535E6A8ED8D25922F53DEFAF7 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 242BBBE1DEF72969A491A4B5052B5042 /* Foundation.framework in Frameworks */, + 10B81963335CC6CCFEDD58AEF714E68A /* CFNetwork.framework in Frameworks */, + 2FBAF2C22ED5E2F50D833AF9963E5A2A /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 07B963F066CF1C907024B787F3D5186F /* iOS */ = { + 083F87E0FC248958C02B09006A3D7490 /* Pods-DarklyTests */ = { isa = PBXGroup; children = ( - DBA5794656CD6EAD5432F6E93991FC63 /* CFNetwork.framework */, - 5C074C11AE6A5B57D6F593C07D4511E4 /* Foundation.framework */, + 991B7B9D67A978F53885133D1B117A48 /* Pods-DarklyTests-acknowledgements.markdown */, + AD95E80FF1B2149E8EE36CE378A963E1 /* Pods-DarklyTests-acknowledgements.plist */, + 8A444B96CBFA5F59A2FAD8D226C694B9 /* Pods-DarklyTests-dummy.m */, + 27E07980ECEAEBD513AF9E1A18EEFB76 /* Pods-DarklyTests-frameworks.sh */, + 50FD41AE0272A972BEECCB44E507924D /* Pods-DarklyTests-resources.sh */, + A5910A77494E687E722952807B397D6E /* Pods-DarklyTests.debug.xcconfig */, + C0CCC4CB49D9D09D9290628AEA99B7DC /* Pods-DarklyTests.release.xcconfig */, ); - name = iOS; + name = "Pods-DarklyTests"; + path = "Target Support Files/Pods-DarklyTests"; + sourceTree = ""; + }; + 0A1EE4B7EEE4F3443483D39E267CDD9E /* tvOS */ = { + isa = PBXGroup; + children = ( + 528B66A2BC53927BB64C91DB055F0D5D /* Foundation.framework */, + ); + name = tvOS; sourceTree = ""; }; 0F361A1C749CF7D5869F95BC1B129B20 /* Support Files */ = { @@ -304,6 +439,28 @@ path = "../Target Support Files/OHHTTPStubs"; sourceTree = ""; }; + 11DA850FFF264118AB75875D7BEB0625 /* Pods-Darkly_osx */ = { + isa = PBXGroup; + children = ( + 83CFDB54E7B20B99A79E94E32DCE673E /* Pods-Darkly_osx-acknowledgements.markdown */, + 617509C9E331A7CE4FC189954D5A580F /* Pods-Darkly_osx-acknowledgements.plist */, + 63F276E36CC20BA895A95DAA4B6B55DA /* Pods-Darkly_osx-dummy.m */, + 3355D3B1EE755DC8F6FFFF6B9101C9B6 /* Pods-Darkly_osx-resources.sh */, + 3972E311CE5653126105575B582CC848 /* Pods-Darkly_osx.debug.xcconfig */, + 439016C9F93D31BE562BF6EADCB37878 /* Pods-Darkly_osx.release.xcconfig */, + ); + name = "Pods-Darkly_osx"; + path = "Target Support Files/Pods-Darkly_osx"; + sourceTree = ""; + }; + 13342D3EFDE0580D6EC31FCFC075F581 /* watchOS */ = { + isa = PBXGroup; + children = ( + FBFEAC80AB2E00CFC60743201EA79E8E /* Foundation.framework */, + ); + name = watchOS; + sourceTree = ""; + }; 13E1F03CA2F5AFFF976DFBBB8369B0F4 /* OHHTTPStubs */ = { isa = PBXGroup; children = ( @@ -313,6 +470,7 @@ F385FA646E786120CC15D95E2C947087 /* OHPathHelpers */, 0F361A1C749CF7D5869F95BC1B129B20 /* Support Files */, ); + name = OHHTTPStubs; path = OHHTTPStubs; sourceTree = ""; }; @@ -336,6 +494,18 @@ path = "../Target Support Files/OCMock"; sourceTree = ""; }; + 285883402D6D5907E1FF0703FDE89663 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 4AC9C2091609058F922367DBF27147C4 /* Pods-Darkly_iOS */, + 11DA850FFF264118AB75875D7BEB0625 /* Pods-Darkly_osx */, + 483FEC0AC9D12919956F370ABBEF8438 /* Pods-Darkly_tvOS */, + 4391C78C8122E1F32653EC92C82888D0 /* Pods-Darkly_watchOS */, + 083F87E0FC248958C02B09006A3D7490 /* Pods-DarklyTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; 3ACA99A694E0EBE3BB76BCD897D6DCDC /* OCMock */ = { isa = PBXGroup; children = ( @@ -409,88 +579,88 @@ 7B6FBD722C3E3D06B9F78C36930DD808 /* OCProtocolMockObject.m */, 233E01F5D0D09C0623D7DC8122862C4F /* Support Files */, ); + name = OCMock; path = OCMock; sourceTree = ""; }; - 41327554EEB91B183377C393A35678B7 /* Support Files */ = { + 4391C78C8122E1F32653EC92C82888D0 /* Pods-Darkly_watchOS */ = { isa = PBXGroup; children = ( - 445EAECA724D2F6FF501E3EB778CFDB7 /* DarklyEventSource.xcconfig */, - 928089ED577220CE63FCD0E512FE1BB0 /* DarklyEventSource-dummy.m */, - B7D9381BEE065B0A026DD0A3D0AC558A /* DarklyEventSource-prefix.pch */, + E689D3BD13B2D9782C0E945073D296E0 /* Pods-Darkly_watchOS-acknowledgements.markdown */, + 09B0B49CD761F7DD498D714084BA87F1 /* Pods-Darkly_watchOS-acknowledgements.plist */, + BAD2DFBBEE1CA8175F6A97A88BD4F600 /* Pods-Darkly_watchOS-dummy.m */, + 10F41C4083182D3F05CFAF19C8C86B90 /* Pods-Darkly_watchOS-resources.sh */, + 1245912B92C20FF5B8003D043B8B4446 /* Pods-Darkly_watchOS.debug.xcconfig */, + 02C29F5FD630BAA124EB3564C5B7166F /* Pods-Darkly_watchOS.release.xcconfig */, ); - name = "Support Files"; - path = "../Target Support Files/DarklyEventSource"; + name = "Pods-Darkly_watchOS"; + path = "Target Support Files/Pods-Darkly_watchOS"; sourceTree = ""; }; - 433CD3331B6C3787F473C941B61FC68F /* Frameworks */ = { + 483FEC0AC9D12919956F370ABBEF8438 /* Pods-Darkly_tvOS */ = { isa = PBXGroup; children = ( - 07B963F066CF1C907024B787F3D5186F /* iOS */, + 99B3983D1E171DB5460A2BC439C8CD12 /* Pods-Darkly_tvOS-acknowledgements.markdown */, + 85EAF613DE673E17911AC93FBD1F4338 /* Pods-Darkly_tvOS-acknowledgements.plist */, + AC8750CE32EC1A025F067438B1CFF6CB /* Pods-Darkly_tvOS-dummy.m */, + A2A7DE38BDF3A406B1C54F0EDE937A0F /* Pods-Darkly_tvOS-resources.sh */, + 9A453BD98718E1B29605821754286AE0 /* Pods-Darkly_tvOS.debug.xcconfig */, + 5AB79C3BC9DBCA565B06DA883C108477 /* Pods-Darkly_tvOS.release.xcconfig */, ); - name = Frameworks; + name = "Pods-Darkly_tvOS"; + path = "Target Support Files/Pods-Darkly_tvOS"; sourceTree = ""; }; - 575EBED235BC877527A1C2DA81271D31 /* Products */ = { + 4AC9C2091609058F922367DBF27147C4 /* Pods-Darkly_iOS */ = { isa = PBXGroup; children = ( - 6CC66CE381E5E24606B3CB9F4B94FF9B /* libDarklyEventSource.a */, - 0E143BDA97DE825A32B878D087FB1D7D /* libOCMock.a */, - 63E632A3EB4527BEE4B0E37461327123 /* libOHHTTPStubs.a */, - FAD5C19E743F0E19752BAC27E511162A /* libPods-Darkly.a */, - 38F6B1718A2BFF054B1D594DE0C37955 /* libPods-DarklyTests.a */, + BDDD0219BA9E42C31446F564600B0D63 /* Pods-Darkly_iOS-acknowledgements.markdown */, + 79914D11F9DCD1CFF4F14F57490B3A22 /* Pods-Darkly_iOS-acknowledgements.plist */, + CA6AC6C66D9B2B101DC71367CF87F1DA /* Pods-Darkly_iOS-dummy.m */, + EB03AEB32DECE882D9F50ECAD0606040 /* Pods-Darkly_iOS-resources.sh */, + A6C066C5F008682C40ABFFD50B4814CA /* Pods-Darkly_iOS.debug.xcconfig */, + 2E78FF244C0690D6F5E63F2B798EC50B /* Pods-Darkly_iOS.release.xcconfig */, ); - name = Products; + name = "Pods-Darkly_iOS"; + path = "Target Support Files/Pods-Darkly_iOS"; sourceTree = ""; }; - 6350C2C799ED4E4CDB982A03B8E041D5 /* Pods */ = { + 5D7078061101325BE5B0B79823B3D260 /* Products */ = { isa = PBXGroup; children = ( - D22703BF432CE590D0361FAA4C2F3D40 /* DarklyEventSource */, - 3ACA99A694E0EBE3BB76BCD897D6DCDC /* OCMock */, - 13E1F03CA2F5AFFF976DFBBB8369B0F4 /* OHHTTPStubs */, + 445E93B063C0FD7C25FD31E39B4D8F0B /* libDarklyEventSource-iOS.a */, + 4A55F3D3DE7F6F8799B2D046EB6795F2 /* libDarklyEventSource-OSX.a */, + 6B32DA4DCF7165E04AFBE01CC174E2A9 /* libDarklyEventSource-tvOS.a */, + 3BC60177066FFBC25C53AC8D29BA2DD1 /* libDarklyEventSource-watchOS.a */, + 1C191EA8B41E2D8BD2EB0FDC836AC04E /* libOCMock.a */, + BC9B30D39D6AD02B215B6A4CE7E9847D /* libOHHTTPStubs.a */, + 4A2C85B49390359F26A7A79E82653346 /* libPods-Darkly_iOS.a */, + F6FE9B3DA379093899635BF8A9A6D354 /* libPods-Darkly_osx.a */, + 32294AD9D0AC1B3E148A6223CFD4B02D /* libPods-Darkly_tvOS.a */, + 8DC00A07681B543F04D23CDD36257290 /* libPods-Darkly_watchOS.a */, + F662D009A067052B84ABFC4BB843271B /* libPods-DarklyTests.a */, ); - name = Pods; - sourceTree = ""; - }; - 6899875353D0852EB96EFF72B343B90E /* Pods-Darkly */ = { - isa = PBXGroup; - children = ( - 0A273F31242E3963895F6CBE949BE8C9 /* Pods-Darkly-acknowledgements.markdown */, - C55DA981529849137ABAF69AED458006 /* Pods-Darkly-acknowledgements.plist */, - B00872DE75F7DAA97E60F0293D6FD4F1 /* Pods-Darkly-dummy.m */, - BBAA279832E58E79D595A332BC59774A /* Pods-Darkly-frameworks.sh */, - 0DA48F36C90F522862641EA1660BCB15 /* Pods-Darkly-resources.sh */, - 462B6274D25369D4F65AD53C470AD84D /* Pods-Darkly.debug.xcconfig */, - 51F53E4649BC2F3C34E423465C5884D9 /* Pods-Darkly.release.xcconfig */, - ); - name = "Pods-Darkly"; - path = "Target Support Files/Pods-Darkly"; + name = Products; sourceTree = ""; }; - 7062E849A6A178863A016757ED1860C6 /* Pods-DarklyTests */ = { + 6350C2C799ED4E4CDB982A03B8E041D5 /* Pods */ = { isa = PBXGroup; children = ( - 793AF91259FDF28A43A67F2DB4472256 /* Pods-DarklyTests-acknowledgements.markdown */, - AB9524B3EE291BEE7021EA1007B97ECD /* Pods-DarklyTests-acknowledgements.plist */, - DACE97983A7011CEF94852D61195084F /* Pods-DarklyTests-dummy.m */, - BDC7657C1D5B9D7EA1D13968ABDDCEDF /* Pods-DarklyTests-frameworks.sh */, - 11132BB7DEAC421E779FE2644C2B2245 /* Pods-DarklyTests-resources.sh */, - 7D9D7B998887CEF566A20E0A0ED59D17 /* Pods-DarklyTests.debug.xcconfig */, - 19E9543472634FF451C0DF898648C2CA /* Pods-DarklyTests.release.xcconfig */, + B3F06B9BE76B0330A7C768CF104CA3A0 /* DarklyEventSource */, + 3ACA99A694E0EBE3BB76BCD897D6DCDC /* OCMock */, + 13E1F03CA2F5AFFF976DFBBB8369B0F4 /* OHHTTPStubs */, ); - name = "Pods-DarklyTests"; - path = "Target Support Files/Pods-DarklyTests"; + name = Pods; sourceTree = ""; }; 7DB346D0F39D3F0E887471402A8071AB = { isa = PBXGroup; children = ( 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - 433CD3331B6C3787F473C941B61FC68F /* Frameworks */, + A69115D6F216CED414AB012A95729459 /* Frameworks */, 6350C2C799ED4E4CDB982A03B8E041D5 /* Pods */, - 575EBED235BC877527A1C2DA81271D31 /* Products */, - D1CEE96C3DC847F6C710A035E6F6EBEF /* Targets Support Files */, + 5D7078061101325BE5B0B79823B3D260 /* Products */, + 285883402D6D5907E1FF0703FDE89663 /* Targets Support Files */, ); sourceTree = ""; }; @@ -506,22 +676,45 @@ name = Core; sourceTree = ""; }; - D1CEE96C3DC847F6C710A035E6F6EBEF /* Targets Support Files */ = { + 9F65A302CEC27DDA6CEFCC1C1055949E /* Support Files */ = { isa = PBXGroup; children = ( - 6899875353D0852EB96EFF72B343B90E /* Pods-Darkly */, - 7062E849A6A178863A016757ED1860C6 /* Pods-DarklyTests */, + 372CE3D00FC66876725C0EBF50AF3858 /* DarklyEventSource-iOS.xcconfig */, + 8E94ED8896498BA95A2B17E492894FE9 /* DarklyEventSource-iOS-dummy.m */, + 93D917D0371720DFCC8B0F56DF776401 /* DarklyEventSource-iOS-prefix.pch */, + 3CA0EF81E7360887EAF5B3D8E8198CF0 /* DarklyEventSource-OSX.xcconfig */, + EA24864994F40D3813BC1625AC600D2D /* DarklyEventSource-OSX-dummy.m */, + DDF63973ED04630EA263E322022E8C5E /* DarklyEventSource-OSX-prefix.pch */, + 4FC80382BD63510194750829B7144D6A /* DarklyEventSource-tvOS.xcconfig */, + AA63D7D263B7D923B72D36CB3ACE2313 /* DarklyEventSource-tvOS-dummy.m */, + B4458570F0582149749FFC415EDB6B10 /* DarklyEventSource-tvOS-prefix.pch */, + DC30096096C2C89ABFCF13FABF69876E /* DarklyEventSource-watchOS.xcconfig */, + EECA3BE83793286FB4F66387CA746BBD /* DarklyEventSource-watchOS-dummy.m */, + 0AF56381AB77FCBE8D8445D6781F954F /* DarklyEventSource-watchOS-prefix.pch */, ); - name = "Targets Support Files"; + name = "Support Files"; + path = "../Target Support Files/DarklyEventSource-OSX"; + sourceTree = ""; + }; + A69115D6F216CED414AB012A95729459 /* Frameworks */ = { + isa = PBXGroup; + children = ( + F1E099E5B288576D1BCE8B7F197C01D1 /* iOS */, + F87E867591EF215DB1680ECFA9762827 /* OS X */, + 0A1EE4B7EEE4F3443483D39E267CDD9E /* tvOS */, + 13342D3EFDE0580D6EC31FCFC075F581 /* watchOS */, + ); + name = Frameworks; sourceTree = ""; }; - D22703BF432CE590D0361FAA4C2F3D40 /* DarklyEventSource */ = { + B3F06B9BE76B0330A7C768CF104CA3A0 /* DarklyEventSource */ = { isa = PBXGroup; children = ( - 9E4EBDDFA8B1C2C27407D755D02C1C0A /* EventSource.h */, - 88E5C31D75E19B443989CBABA2955244 /* EventSource.m */, - 41327554EEB91B183377C393A35678B7 /* Support Files */, + E841F81A61F2999308605B25670F8FFC /* EventSource.h */, + CCA06BB0FF2BA6DFA73D25BB42903ADC /* EventSource.m */, + 9F65A302CEC27DDA6CEFCC1C1055949E /* Support Files */, ); + name = DarklyEventSource; path = DarklyEventSource; sourceTree = ""; }; @@ -533,6 +726,15 @@ name = NSURLSession; sourceTree = ""; }; + F1E099E5B288576D1BCE8B7F197C01D1 /* iOS */ = { + isa = PBXGroup; + children = ( + D922F2D72779A1967524BBBAECEF3120 /* CFNetwork.framework */, + ACDF0E08285415092448B937524BBFBC /* Foundation.framework */, + ); + name = iOS; + sourceTree = ""; + }; F385FA646E786120CC15D95E2C947087 /* OHPathHelpers */ = { isa = PBXGroup; children = ( @@ -542,115 +744,216 @@ name = OHPathHelpers; sourceTree = ""; }; + F87E867591EF215DB1680ECFA9762827 /* OS X */ = { + isa = PBXGroup; + children = ( + 411D0C20238413BDAE6873846A933D0A /* Cocoa.framework */, + ); + name = "OS X"; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 01851C673FDFCAA1050E59683D0E2CD8 /* Headers */ = { + 0E94CF2B1674CA8693A3EE3CE02CAF41 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 38E49BD2A68848A2697BC3719ACE5EB3 /* EventSource.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 92DEFA627A79D46F32783284609FC825 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D30A6EE1C9F514206A593D6A25A52F7 /* EventSource.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BFD6CD6BE5A64CE49045CC9EA325404E /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + C4945BF00E7C57BB73562DD5BC37D898 /* NSInvocation+OCMAdditions.h in Headers */, + D754D52C9C0FC5FDA9D79E359A5CEB63 /* NSMethodSignature+OCMAdditions.h in Headers */, + BAB1064596A60C4276F829E999F8DA09 /* NSNotificationCenter+OCMAdditions.h in Headers */, + 071C795CC71CDDD3C56FF4FB99BAB16A /* NSObject+OCMAdditions.h in Headers */, + 5DDD30521A688DD230E86D4063DE9ACE /* NSValue+OCMAdditions.h in Headers */, + B1AC1794DFE45C57D210A79052838297 /* OCClassMockObject.h in Headers */, + 02527DFB122F73BD3DC8C8A86222F3E2 /* OCMArg.h in Headers */, + 8C0953C1AC4AB2190448FF3A55C62E0D /* OCMArgAction.h in Headers */, + D87328037AC62BC698D991279FD5F164 /* OCMBlockArgCaller.h in Headers */, + AA9AA7A3EAEF09E92599670C1885504A /* OCMBlockCaller.h in Headers */, + F7FCFD7F34645ED9E8886376A898C234 /* OCMBoxedReturnValueProvider.h in Headers */, + A6716718F0720573DD09B43478440C62 /* OCMConstraint.h in Headers */, + 9A74DA82A9D3063746279C945A504066 /* OCMExceptionReturnValueProvider.h in Headers */, + FCC7872E4A0286DF5A01DE195F59B67B /* OCMExpectationRecorder.h in Headers */, + CF01D468B955B1B9169A3D1449FD51AE /* OCMFunctions.h in Headers */, + 868EDDCF8D50052A1262B33D8DA9A0BA /* OCMFunctionsPrivate.h in Headers */, + BAC0BDE87C9152E6C109755515C1D26F /* OCMIndirectReturnValueProvider.h in Headers */, + 972A4220F1E6DCFDB7A133F086550C08 /* OCMInvocationExpectation.h in Headers */, + FCEB3964FE34FF08B22C795DB6EFA25B /* OCMInvocationMatcher.h in Headers */, + 9D6926B60DD04448C4BDDD147AEFC492 /* OCMInvocationStub.h in Headers */, + 79DF9CFB844A065CD77BAF14980BDBC2 /* OCMLocation.h in Headers */, + D1814014B42FFD24504C6CDCA48CE234 /* OCMMacroState.h in Headers */, + CB4A0138FBBDB6FAA80F4F6ABB35EECD /* OCMNotificationPoster.h in Headers */, + F9181CD269B33C9EDD91B8FB3A54C168 /* OCMObserverRecorder.h in Headers */, + DB48261589D027DD4B14F7F3FAA7F99F /* OCMock.h in Headers */, + 546648651CF99C9D510F604F8080C939 /* OCMockObject.h in Headers */, + 3D159D347B9908C3BB57E42A8EB29871 /* OCMPassByRefSetter.h in Headers */, + 3D299CAA41D55E4950FC06710D29AE4A /* OCMRealObjectForwarder.h in Headers */, + 6239AB839A4F9FE4953AA410600CFF3D /* OCMRecorder.h in Headers */, + 939F28B70AF3325A78E11C5C765865A0 /* OCMReturnValueProvider.h in Headers */, + 3C282F482CB14200D161D2262EF37C27 /* OCMStubRecorder.h in Headers */, + F261D98AE9E878D134AA810D28E6B84D /* OCMVerifier.h in Headers */, + 5649F42543F309D40B3A502A20FE253D /* OCObserverMockObject.h in Headers */, + DDB838F57DB6DC25B7DBF63B39C46783 /* OCPartialMockObject.h in Headers */, + 8376E391D1DA98F25B7A66D4568CC8DC /* OCProtocolMockObject.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CDAA84C223507997249F3E2B57080913 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 620D1C1787D9BC05B0E96C1EA18ECBD3 /* Compatibility.h in Headers */, - 9CC6FD64C69152C0A5848C0E50442380 /* OHHTTPStubs.h in Headers */, - 226E96EF42F54BDF063CFB60F6C58B36 /* OHHTTPStubsResponse+JSON.h in Headers */, - 3F62BC4730B3C5B247A302D1D4E978CA /* OHHTTPStubsResponse.h in Headers */, - 3C08656F7BF3A342B5EB9EE902E81357 /* OHPathHelpers.h in Headers */, + FC69D50D4D9E93E1671C5D7C83D884C0 /* Compatibility.h in Headers */, + AC02943A62414C8696D23C7650BFA4E1 /* OHHTTPStubs.h in Headers */, + 418E3B91D43D2DA27CD5AE6A67392AEB /* OHHTTPStubsResponse+JSON.h in Headers */, + 3E3FDF808D7CC042D0FC66A5253B560C /* OHHTTPStubsResponse.h in Headers */, + D9E5643CBA8E630EB66E688C63170F78 /* OHPathHelpers.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5AFF86D43561748E7227622A6EDDA92B /* Headers */ = { + E79316E3FFCE09A71AED44940834A3FC /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 149DE9C6DB74B12EFF07D185484D946F /* NSInvocation+OCMAdditions.h in Headers */, - 0934D3DAC27331C1569A357A677B2206 /* NSMethodSignature+OCMAdditions.h in Headers */, - 7FFCEEC0036EC9E7A5D3BAD719B28D4A /* NSNotificationCenter+OCMAdditions.h in Headers */, - CE1D11A21BB0D710B640F31B18935BF3 /* NSObject+OCMAdditions.h in Headers */, - A425B4C6EAA79B2C9BB4F374180DC194 /* NSValue+OCMAdditions.h in Headers */, - 94216C983E91F2BA503920465DE1972A /* OCClassMockObject.h in Headers */, - D78D41AA2CEB6ED571503108CEC3DA15 /* OCMArg.h in Headers */, - DE57384C891A85506CB91EA186D2D2B4 /* OCMArgAction.h in Headers */, - 71899DFD8094C412FFC39669279B4533 /* OCMBlockArgCaller.h in Headers */, - FDFD77CF38AE5FDD235A02217B763809 /* OCMBlockCaller.h in Headers */, - EEBEC3C68DD8C679511876B4610D582A /* OCMBoxedReturnValueProvider.h in Headers */, - 3152811CD17686AA726713BFE3612206 /* OCMConstraint.h in Headers */, - 5F04262019BBB326960E643861626099 /* OCMExceptionReturnValueProvider.h in Headers */, - C01520F21314A4A11E0BD5C9BE190A1A /* OCMExpectationRecorder.h in Headers */, - 0EE98780873CB1A29EE8B4A36BA7E14A /* OCMFunctions.h in Headers */, - 3A769EE15211B7EBBAF4B1C8AD542502 /* OCMFunctionsPrivate.h in Headers */, - FB294C8C8DCC4EACB074C58C027C9723 /* OCMIndirectReturnValueProvider.h in Headers */, - BC7143B82E45DDE808B1D8E8F6970E41 /* OCMInvocationExpectation.h in Headers */, - 70AC31D0736F568C0386716176361D09 /* OCMInvocationMatcher.h in Headers */, - AD672A92EF1A71CB35F77D51924A63D7 /* OCMInvocationStub.h in Headers */, - C796F27878B148315E4EB60535EEA4BE /* OCMLocation.h in Headers */, - CC40C17D2E01DDDF48A7A8D50B8E92F8 /* OCMMacroState.h in Headers */, - D470FD7FF206B100A7B79714E7FA0F4A /* OCMNotificationPoster.h in Headers */, - 87AA263FA688A8E92C2B8ADEE72C98C6 /* OCMObserverRecorder.h in Headers */, - 10AEAD2136880EEE7E771F533331F250 /* OCMock.h in Headers */, - 8A1370FF0DD475F945954535A988ED4B /* OCMockObject.h in Headers */, - E45D617A6259C90DC54D6F22571998E8 /* OCMPassByRefSetter.h in Headers */, - 8D40AF80800C0D4A691F4A0656E53D98 /* OCMRealObjectForwarder.h in Headers */, - 9C195CB2280DCD3183057794B4504B22 /* OCMRecorder.h in Headers */, - C4235F3704F471BAF74CB4482A99D340 /* OCMReturnValueProvider.h in Headers */, - 950C209E1D004EBDCD43D6C2136B5AA2 /* OCMStubRecorder.h in Headers */, - 33C4E9CA4B43CD4C468B338E2ED06860 /* OCMVerifier.h in Headers */, - C6DEDAD5B01946A2644F428020F881B6 /* OCObserverMockObject.h in Headers */, - 562C4A7A171B6F0000B132E22372C3DA /* OCPartialMockObject.h in Headers */, - 40B2ABF25812A14D83A05D8937FBDB7B /* OCProtocolMockObject.h in Headers */, + 2D7627390D0826C50E4A03C8470200C3 /* EventSource.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6E4970A262C757AAF1BB6C21AB6322E0 /* Headers */ = { + EE0B4D13489CD02838224E6AC1EAB313 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 0718F50539C75449ECDAC11F70E268EC /* EventSource.h in Headers */, + F89269879EF3C7BB28BAF1CCFBB90F04 /* EventSource.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 045D3251CE3EFD09123EE341B544522A /* OHHTTPStubs */ = { + 07A71BD7951D89FBB0DD80582886E1F6 /* DarklyEventSource-watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = AF799BE4F3DDBEDC80BF7E4F2AC94F6E /* Build configuration list for PBXNativeTarget "OHHTTPStubs" */; + buildConfigurationList = 6A57322073EE410C4496BAEF03BC6EF0 /* Build configuration list for PBXNativeTarget "DarklyEventSource-watchOS" */; buildPhases = ( - B17E8BCAEE189AB4B6DF62679776FF66 /* Sources */, - 5E0F9C30388E5D734E96B82567092757 /* Frameworks */, - 01851C673FDFCAA1050E59683D0E2CD8 /* Headers */, + C1B8D645970C3DD67E12ABA726719CEE /* Sources */, + 65B62D4812E8D30E9629C53B7E44565D /* Frameworks */, + E79316E3FFCE09A71AED44940834A3FC /* Headers */, ); buildRules = ( ); dependencies = ( ); - name = OHHTTPStubs; - productName = OHHTTPStubs; - productReference = 63E632A3EB4527BEE4B0E37461327123 /* libOHHTTPStubs.a */; + name = "DarklyEventSource-watchOS"; + productName = "DarklyEventSource-watchOS"; + productReference = 3BC60177066FFBC25C53AC8D29BA2DD1 /* libDarklyEventSource-watchOS.a */; + productType = "com.apple.product-type.library.static"; + }; + 114012A3D83BF87A8FF9C488C2961095 /* Pods-DarklyTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = FDE3626F3589589E8A24761F12A19971 /* Build configuration list for PBXNativeTarget "Pods-DarklyTests" */; + buildPhases = ( + 8A6BFD0A010096E5112FF688378C7265 /* Sources */, + 30142CAFE4A6D08E8DA3E098B9AD46FA /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0669D3DAE338148C62CE31B686ECD8F4 /* PBXTargetDependency */, + EEE8600DF4B47FF17B7E0DCC0AE4C294 /* PBXTargetDependency */, + ); + name = "Pods-DarklyTests"; + productName = "Pods-DarklyTests"; + productReference = F662D009A067052B84ABFC4BB843271B /* libPods-DarklyTests.a */; + productType = "com.apple.product-type.library.static"; + }; + 204EF6C54996BBF10A3647016B566377 /* Pods-Darkly_watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = E8C9057E408A123D09B5BB7B3DBDEC36 /* Build configuration list for PBXNativeTarget "Pods-Darkly_watchOS" */; + buildPhases = ( + 397718B618EEC5556FEBA90731FC90B8 /* Sources */, + 5724C1333E4CC8787412678F55B1C2A8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 1DF80DDC354F766CF0CE71F4CD072837 /* PBXTargetDependency */, + ); + name = "Pods-Darkly_watchOS"; + productName = "Pods-Darkly_watchOS"; + productReference = 8DC00A07681B543F04D23CDD36257290 /* libPods-Darkly_watchOS.a */; + productType = "com.apple.product-type.library.static"; + }; + 2455A73137D54F1A4B54CD2C408B7E02 /* DarklyEventSource-OSX */ = { + isa = PBXNativeTarget; + buildConfigurationList = 317BD8318ADA72C671A1CBCB24C2A6E8 /* Build configuration list for PBXNativeTarget "DarklyEventSource-OSX" */; + buildPhases = ( + 21B55791139C123CCB08BF58796AC876 /* Sources */, + A08245C203E4D806DD8604C26EA6C578 /* Frameworks */, + EE0B4D13489CD02838224E6AC1EAB313 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "DarklyEventSource-OSX"; + productName = "DarklyEventSource-OSX"; + productReference = 4A55F3D3DE7F6F8799B2D046EB6795F2 /* libDarklyEventSource-OSX.a */; + productType = "com.apple.product-type.library.static"; + }; + 5619C45212EB735445EDEBF49D07CE51 /* DarklyEventSource-iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = D26B7297D5DF95A5870C3C91B9C7BD64 /* Build configuration list for PBXNativeTarget "DarklyEventSource-iOS" */; + buildPhases = ( + D6AAC4E3DC3E6B9A11B3F800F70BC2CA /* Sources */, + 11C4B28707B499A2A31129FB51329EA9 /* Frameworks */, + 0E94CF2B1674CA8693A3EE3CE02CAF41 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "DarklyEventSource-iOS"; + productName = "DarklyEventSource-iOS"; + productReference = 445E93B063C0FD7C25FD31E39B4D8F0B /* libDarklyEventSource-iOS.a */; productType = "com.apple.product-type.library.static"; }; - 2F19D07E63EA1EEC56D57A34265BF87F /* Pods-Darkly */ = { + 9135E9FD702E6C20D43F83356816C512 /* OHHTTPStubs */ = { isa = PBXNativeTarget; - buildConfigurationList = 256677855B6A684873600FF77F7CA11D /* Build configuration list for PBXNativeTarget "Pods-Darkly" */; + buildConfigurationList = AB3067A1D448F7628DB5333972F1449A /* Build configuration list for PBXNativeTarget "OHHTTPStubs" */; buildPhases = ( - 955C0B2F69982BF5CD01F63522E6EC5F /* Sources */, - FC98AA26534B8FDAEDE9568E13615027 /* Frameworks */, + 22BFDABAFFCB67FED085F51077708E5F /* Sources */, + EDCB5C9535E6A8ED8D25922F53DEFAF7 /* Frameworks */, + CDAA84C223507997249F3E2B57080913 /* Headers */, ); buildRules = ( ); dependencies = ( - A5A916F93EBD3E99BD0C3B321A9778E6 /* PBXTargetDependency */, ); - name = "Pods-Darkly"; - productName = "Pods-Darkly"; - productReference = FAD5C19E743F0E19752BAC27E511162A /* libPods-Darkly.a */; + name = OHHTTPStubs; + productName = OHHTTPStubs; + productReference = BC9B30D39D6AD02B215B6A4CE7E9847D /* libOHHTTPStubs.a */; productType = "com.apple.product-type.library.static"; }; - 4A2CAA839F2722C796C6F1DFDC806B92 /* OCMock */ = { + A561198B7669F579C29FC6864AE4991F /* OCMock */ = { isa = PBXNativeTarget; - buildConfigurationList = 10542776D8ACCA3DA970BD708ACC2AF4 /* Build configuration list for PBXNativeTarget "OCMock" */; + buildConfigurationList = 5CD5A0F6DBE3892A6E331DD367E18E11 /* Build configuration list for PBXNativeTarget "OCMock" */; buildPhases = ( - 33CF95FAFC48226F1A54C85AA1529B40 /* Sources */, - 4C2602132A1D207DB135342BF83AB581 /* Frameworks */, - 5AFF86D43561748E7227622A6EDDA92B /* Headers */, + 245D3B37990476181F0C81D747F3AAB7 /* Sources */, + 7DF57E93702F9036FEE931B449D6D803 /* Frameworks */, + BFD6CD6BE5A64CE49045CC9EA325404E /* Headers */, ); buildRules = ( ); @@ -658,42 +961,75 @@ ); name = OCMock; productName = OCMock; - productReference = 0E143BDA97DE825A32B878D087FB1D7D /* libOCMock.a */; + productReference = 1C191EA8B41E2D8BD2EB0FDC836AC04E /* libOCMock.a */; productType = "com.apple.product-type.library.static"; }; - CD9D454572980BCF7CB877EAB2E0F3E5 /* Pods-DarklyTests */ = { + BC3CCC8A7F9C65A9534BDC6DC86274CE /* Pods-Darkly_tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = F2048F84EE4B47DC019EE164AF783E9A /* Build configuration list for PBXNativeTarget "Pods-DarklyTests" */; + buildConfigurationList = 012749C18EBB77ADA7E9E6C345991BA0 /* Build configuration list for PBXNativeTarget "Pods-Darkly_tvOS" */; buildPhases = ( - 6FCCAF6C15AB1978FC2A1A9FBCA4334C /* Sources */, - 617C3DC1A2DDF9B3789916C50C0A6D42 /* Frameworks */, + CEC9B600FABC47B84B718C7CBB901190 /* Sources */, + 7C9E2CDDE2A2331A026257FC0E3AD2FD /* Frameworks */, ); buildRules = ( ); dependencies = ( - FBC0DC324756D53894488F727B96C8DE /* PBXTargetDependency */, - 35B90C118FB50C786FB25E613BBD3537 /* PBXTargetDependency */, + 3B340710D02BC6067BD79C272A8F0FB2 /* PBXTargetDependency */, ); - name = "Pods-DarklyTests"; - productName = "Pods-DarklyTests"; - productReference = 38F6B1718A2BFF054B1D594DE0C37955 /* libPods-DarklyTests.a */; + name = "Pods-Darkly_tvOS"; + productName = "Pods-Darkly_tvOS"; + productReference = 32294AD9D0AC1B3E148A6223CFD4B02D /* libPods-Darkly_tvOS.a */; productType = "com.apple.product-type.library.static"; }; - DE5CBF3D63D4D0760E299B262C949D81 /* DarklyEventSource */ = { + CC3D14123D970C2F5DEF0DFCF14DE348 /* Pods-Darkly_osx */ = { isa = PBXNativeTarget; - buildConfigurationList = 82C9A7A5CEB63EE5B80D437CDAA8C0C8 /* Build configuration list for PBXNativeTarget "DarklyEventSource" */; + buildConfigurationList = ABEBA9CCDE77892D0D24BD391C8CEE80 /* Build configuration list for PBXNativeTarget "Pods-Darkly_osx" */; buildPhases = ( - 1B0BC6A0CA47360381A75B1074578CA5 /* Sources */, - FCCAA1431185A79691E3A0964D9DE01B /* Frameworks */, - 6E4970A262C757AAF1BB6C21AB6322E0 /* Headers */, + B338AFAB805717D49856624DC09ED250 /* Sources */, + 96647794A6A23F36A15290143059BA70 /* Frameworks */, ); buildRules = ( ); dependencies = ( + 497256A20989DE3F5D984875091CD255 /* PBXTargetDependency */, ); - name = DarklyEventSource; - productName = DarklyEventSource; - productReference = 6CC66CE381E5E24606B3CB9F4B94FF9B /* libDarklyEventSource.a */; + name = "Pods-Darkly_osx"; + productName = "Pods-Darkly_osx"; + productReference = F6FE9B3DA379093899635BF8A9A6D354 /* libPods-Darkly_osx.a */; + productType = "com.apple.product-type.library.static"; + }; + D58C46A50D62C157E960D4676C6FF70D /* DarklyEventSource-tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 480140B5247CE56572B6542F3F39B1B8 /* Build configuration list for PBXNativeTarget "DarklyEventSource-tvOS" */; + buildPhases = ( + 650C9411E69499136E15250966FBEE17 /* Sources */, + 94EED86C8E29BD000D077A5B664A8D7C /* Frameworks */, + 92DEFA627A79D46F32783284609FC825 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "DarklyEventSource-tvOS"; + productName = "DarklyEventSource-tvOS"; + productReference = 6B32DA4DCF7165E04AFBE01CC174E2A9 /* libDarklyEventSource-tvOS.a */; + productType = "com.apple.product-type.library.static"; + }; + EF9DD1E3BB8B7DF8AA014DE60B01DA0C /* Pods-Darkly_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2DABE329B69C65FFE8C74E6FC041308B /* Build configuration list for PBXNativeTarget "Pods-Darkly_iOS" */; + buildPhases = ( + 21884A8AD0804F525D3FDAB52C11AE89 /* Sources */, + 400842B3E27BC29C344A44CBE45DD944 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 39B61DCE753A36419C24ADB412E2AB26 /* PBXTargetDependency */, + ); + name = "Pods-Darkly_iOS"; + productName = "Pods-Darkly_iOS"; + productReference = 4A2C85B49390359F26A7A79E82653346 /* libPods-Darkly_iOS.a */; productType = "com.apple.product-type.library.static"; }; /* End PBXNativeTarget section */ @@ -702,7 +1038,7 @@ D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0730; + LastSwiftUpdateCheck = 0830; LastUpgradeCheck = 0700; }; buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; @@ -713,152 +1049,227 @@ en, ); mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = 575EBED235BC877527A1C2DA81271D31 /* Products */; + productRefGroup = 5D7078061101325BE5B0B79823B3D260 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - DE5CBF3D63D4D0760E299B262C949D81 /* DarklyEventSource */, - 4A2CAA839F2722C796C6F1DFDC806B92 /* OCMock */, - 045D3251CE3EFD09123EE341B544522A /* OHHTTPStubs */, - 2F19D07E63EA1EEC56D57A34265BF87F /* Pods-Darkly */, - CD9D454572980BCF7CB877EAB2E0F3E5 /* Pods-DarklyTests */, + 5619C45212EB735445EDEBF49D07CE51 /* DarklyEventSource-iOS */, + 2455A73137D54F1A4B54CD2C408B7E02 /* DarklyEventSource-OSX */, + D58C46A50D62C157E960D4676C6FF70D /* DarklyEventSource-tvOS */, + 07A71BD7951D89FBB0DD80582886E1F6 /* DarklyEventSource-watchOS */, + A561198B7669F579C29FC6864AE4991F /* OCMock */, + 9135E9FD702E6C20D43F83356816C512 /* OHHTTPStubs */, + EF9DD1E3BB8B7DF8AA014DE60B01DA0C /* Pods-Darkly_iOS */, + CC3D14123D970C2F5DEF0DFCF14DE348 /* Pods-Darkly_osx */, + BC3CCC8A7F9C65A9534BDC6DC86274CE /* Pods-Darkly_tvOS */, + 204EF6C54996BBF10A3647016B566377 /* Pods-Darkly_watchOS */, + 114012A3D83BF87A8FF9C488C2961095 /* Pods-DarklyTests */, ); }; /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 1B0BC6A0CA47360381A75B1074578CA5 /* Sources */ = { + 21884A8AD0804F525D3FDAB52C11AE89 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C3E81B58946736F92D350FC3A392274B /* Pods-Darkly_iOS-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 21B55791139C123CCB08BF58796AC876 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 600618D5397EF77F820E4C359462C6B7 /* DarklyEventSource-OSX-dummy.m in Sources */, + 5C135BC957224D18A3603E23031CE690 /* EventSource.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 22BFDABAFFCB67FED085F51077708E5F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 657A04902AAE0242791FBFA48DC5D64C /* OHHTTPStubs+NSURLSessionConfiguration.m in Sources */, + 224BBF3C543C3EC0135E693FB717A0BB /* OHHTTPStubs-dummy.m in Sources */, + DE28CC61A58ECB6141BCE31C01FCAF25 /* OHHTTPStubs.m in Sources */, + 817D186C7806CF48BBC6A7E092AF8394 /* OHHTTPStubsResponse+JSON.m in Sources */, + E1D2D5D0D1B27527F86383D63FF739D5 /* OHHTTPStubsResponse.m in Sources */, + 7B64E12B678476671480A76FA898D447 /* OHPathHelpers.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 245D3B37990476181F0C81D747F3AAB7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1CD34D02EC9C728A6A039636D436F569 /* NSInvocation+OCMAdditions.m in Sources */, + D0983D6D59B802B2E00F77BEA5D241C4 /* NSMethodSignature+OCMAdditions.m in Sources */, + 0E1ED31837C555C996AAD4A41709AD75 /* NSNotificationCenter+OCMAdditions.m in Sources */, + 40BA2C54E635E70E3721EEF46153A898 /* NSObject+OCMAdditions.m in Sources */, + D3FA5083C8A87EC5918ED53F18405F32 /* NSValue+OCMAdditions.m in Sources */, + 1853C34BBA3FC142351D0A2B5A027A7B /* OCClassMockObject.m in Sources */, + C4E611BA5BA3E0032D4FA80542FF2033 /* OCMArg.m in Sources */, + A64BCD7DECCE4C79E1693C6733E4C71E /* OCMArgAction.m in Sources */, + 920A24D9C37F9FBF4A76EAECC69E2C75 /* OCMBlockArgCaller.m in Sources */, + 53464AAD32E1DA4780BF51730BA03325 /* OCMBlockCaller.m in Sources */, + B1C7C41369C4FDED19ED391EFABF908E /* OCMBoxedReturnValueProvider.m in Sources */, + 74F11251752068A4669362418849D8BB /* OCMConstraint.m in Sources */, + 6D425653C6BAF07E0833A104C2FECF11 /* OCMExceptionReturnValueProvider.m in Sources */, + AE761809A4E4FE6602A794A839C2AE0B /* OCMExpectationRecorder.m in Sources */, + B805C5FF5FD8D7890DD5F8F2644E0481 /* OCMFunctions.m in Sources */, + F76C42A3EEA7F274B51B593374D9E6A1 /* OCMIndirectReturnValueProvider.m in Sources */, + 40BE9640ECD0F85906CF3491BFC0354A /* OCMInvocationExpectation.m in Sources */, + 9AA180AC9D8DF08064A18149F30D0D30 /* OCMInvocationMatcher.m in Sources */, + F77DFA9A51A4F147887D4D5F65A2C37A /* OCMInvocationStub.m in Sources */, + 2C29ABF82C3C7C0F5DE3AAA4C2975375 /* OCMLocation.m in Sources */, + BF6FB2993CB14EF6BAFB17E6297BC728 /* OCMMacroState.m in Sources */, + E8612AABCE826260F2D834D5061AC591 /* OCMNotificationPoster.m in Sources */, + E137E0262BC44A50507D01044AEE807B /* OCMObserverRecorder.m in Sources */, + 767E6A941E740E2C33B4BA722A3DDA04 /* OCMock-dummy.m in Sources */, + E6CE7E482261CFBDB354443EFA78D35C /* OCMockObject.m in Sources */, + EA9A79135185FA9B8D8E0460B13083A0 /* OCMPassByRefSetter.m in Sources */, + 41B44EC9ADBC48D8ADD601284B6AE486 /* OCMRealObjectForwarder.m in Sources */, + 42046743618B167BCEB6214E5CBDE6C1 /* OCMRecorder.m in Sources */, + 0AC12F1B7957366C81558762D1111533 /* OCMReturnValueProvider.m in Sources */, + D4946EC05F4B1948842BB7A8CD50F113 /* OCMStubRecorder.m in Sources */, + B6462885514D2F90665D9DC354A0296E /* OCMVerifier.m in Sources */, + 828BADC5729BF1287CCD1114F2B5A0B4 /* OCObserverMockObject.m in Sources */, + CD09AB272C437827BDF24AD1A4E50F61 /* OCPartialMockObject.m in Sources */, + 7AF70638D3F5705B49D50A24132B23AD /* OCProtocolMockObject.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 397718B618EEC5556FEBA90731FC90B8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7F52A4B361F85B51E77E3E8CBDE3FCCD /* Pods-Darkly_watchOS-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 650C9411E69499136E15250966FBEE17 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D597D84D315E7D2DFA45BBA153D4AF66 /* DarklyEventSource-tvOS-dummy.m in Sources */, + CAE84311FEDAF57DF4360B27A43C31FE /* EventSource.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8A6BFD0A010096E5112FF688378C7265 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 7FCBACC709D8947B90BA69B6AF5426E8 /* DarklyEventSource-dummy.m in Sources */, - F9A155F62DB095E98D35807C5549B234 /* EventSource.m in Sources */, + BE11FFFA5819D1764395D5B6FA7622AD /* Pods-DarklyTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 33CF95FAFC48226F1A54C85AA1529B40 /* Sources */ = { + B338AFAB805717D49856624DC09ED250 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - E00ABE7FC44CB9D1B511D96D47C16AD5 /* NSInvocation+OCMAdditions.m in Sources */, - 5BB246B2587EBC3E5597DBD6CD33777F /* NSMethodSignature+OCMAdditions.m in Sources */, - F0E9BE1709D8B3501A9E791E8D36FBED /* NSNotificationCenter+OCMAdditions.m in Sources */, - DADACF239B30C047FA9304E5FDDA8B2E /* NSObject+OCMAdditions.m in Sources */, - E2D2C2DEBBB651077ABC3710A423594F /* NSValue+OCMAdditions.m in Sources */, - B28B82281F2A75B1A27E9B1B289B179D /* OCClassMockObject.m in Sources */, - 651F3096B56BFF131C5F956001D7BAAB /* OCMArg.m in Sources */, - 55F2C7C98AB5E300663D064AAA64B80B /* OCMArgAction.m in Sources */, - E8CDCEDCDC0ADE51EBAFCC09F44EFF12 /* OCMBlockArgCaller.m in Sources */, - 046937EA1C4859D4D96EFA7B7687E441 /* OCMBlockCaller.m in Sources */, - 672FE514B7C1EB583AF6CEB2538025A7 /* OCMBoxedReturnValueProvider.m in Sources */, - 696B28961DEC673700A91C29 /* EventSource.m in Sources */, - 55EA7FCA2F507BCC25959CE95D295A8C /* OCMConstraint.m in Sources */, - D9EA9C8052853B8962318FFD5A5551B6 /* OCMExceptionReturnValueProvider.m in Sources */, - 6D2AD1DFA8F27BA0EBB3365A5AF7AC1B /* OCMExpectationRecorder.m in Sources */, - 9ED6B48F0C000C83C89249483D3398A6 /* OCMFunctions.m in Sources */, - 830B3A29668D59C62571A4CE4D3BAFCA /* OCMIndirectReturnValueProvider.m in Sources */, - CC4F14C27B167A64F09A356652410909 /* OCMInvocationExpectation.m in Sources */, - C508640C7607A5BE183916AC4202A026 /* OCMInvocationMatcher.m in Sources */, - B4D6973B3F74EB04E719BFCFCBF04C0B /* OCMInvocationStub.m in Sources */, - 1B7E21160BEF08CC76BA8C17E94E455A /* OCMLocation.m in Sources */, - 59BC54DA90AD2433D20358F9853622CA /* OCMMacroState.m in Sources */, - 7EE0FD33AB30006545874DEF02F9243E /* OCMNotificationPoster.m in Sources */, - 1586CD3BDB1E92D87A0E423AAC313FD4 /* OCMObserverRecorder.m in Sources */, - B36995CF7E36CC57C8C118EC5EC049A6 /* OCMock-dummy.m in Sources */, - CC5C84B30927F4CE48D7EC04BF652005 /* OCMockObject.m in Sources */, - 0A7C4089DBD8BD40374AFA8EEAB7CA3C /* OCMPassByRefSetter.m in Sources */, - 20C39DB909C33B491D60F23FA1D415C2 /* OCMRealObjectForwarder.m in Sources */, - 3EEE56426C5838CA2F13E8F95B594401 /* OCMRecorder.m in Sources */, - A516CB608A827C4FEA550CB372854AF7 /* OCMReturnValueProvider.m in Sources */, - 4CF0A4AD04F2F3CF7465991A5E76AD47 /* OCMStubRecorder.m in Sources */, - 03EF931564978791D4ABC400F3FDDBED /* OCMVerifier.m in Sources */, - C55C0B0594D26DE09DEC7F161910A211 /* OCObserverMockObject.m in Sources */, - DF0A3CB81B12C054F9C8258F680F7C9D /* OCPartialMockObject.m in Sources */, - EA2A970253EA9B298F0BB63864AA18D1 /* OCProtocolMockObject.m in Sources */, + 1A0289791659AA5931E87E835F338F45 /* Pods-Darkly_osx-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6FCCAF6C15AB1978FC2A1A9FBCA4334C /* Sources */ = { + C1B8D645970C3DD67E12ABA726719CEE /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9424A65B7DE915848BFF6DB192463EC4 /* Pods-DarklyTests-dummy.m in Sources */, + 490923A3248B26A752F001371AED3D94 /* DarklyEventSource-watchOS-dummy.m in Sources */, + 84F2C52AC76883237FC440600E6A0385 /* EventSource.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 955C0B2F69982BF5CD01F63522E6EC5F /* Sources */ = { + CEC9B600FABC47B84B718C7CBB901190 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0D66F2D7A7038BBDBE4E0F6C5EF5F3A5 /* Pods-Darkly-dummy.m in Sources */, + 471694B38D2F34544C9EF90C4A9DD8E0 /* Pods-Darkly_tvOS-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - B17E8BCAEE189AB4B6DF62679776FF66 /* Sources */ = { + D6AAC4E3DC3E6B9A11B3F800F70BC2CA /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - C8B39657A6AAD6B8C7BC769565B7ECAB /* OHHTTPStubs+NSURLSessionConfiguration.m in Sources */, - 075CD6C5BB938BB549069BE44FFBB4AC /* OHHTTPStubs-dummy.m in Sources */, - C890F0C7F4C2F2A2FC28BACB640BE70B /* OHHTTPStubs.m in Sources */, - 0FF3FC1E48C180F85E9A6E9154D07ED6 /* OHHTTPStubsResponse+JSON.m in Sources */, - EC4D06D78167B5DD86911B4D6A127AFB /* OHHTTPStubsResponse.m in Sources */, - 1CEF74126A682572F3DDBF39496CC4C6 /* OHPathHelpers.m in Sources */, + 0B2FB0D68A033559883B2C1E52CA534D /* DarklyEventSource-iOS-dummy.m in Sources */, + 501174F31C9A93462D5137C3A0AF2C49 /* EventSource.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 35B90C118FB50C786FB25E613BBD3537 /* PBXTargetDependency */ = { + 0669D3DAE338148C62CE31B686ECD8F4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = OHHTTPStubs; - target = 045D3251CE3EFD09123EE341B544522A /* OHHTTPStubs */; - targetProxy = ED8DB8FEC74BEBCAFB83356340481C0C /* PBXContainerItemProxy */; + name = OCMock; + target = A561198B7669F579C29FC6864AE4991F /* OCMock */; + targetProxy = 11FE6625BC411A82DBE4A1ED92860413 /* PBXContainerItemProxy */; }; - A5A916F93EBD3E99BD0C3B321A9778E6 /* PBXTargetDependency */ = { + 1DF80DDC354F766CF0CE71F4CD072837 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = DarklyEventSource; - target = DE5CBF3D63D4D0760E299B262C949D81 /* DarklyEventSource */; - targetProxy = 3C2FEE212E58C1245A52CBB85C802EEE /* PBXContainerItemProxy */; + name = "DarklyEventSource-watchOS"; + target = 07A71BD7951D89FBB0DD80582886E1F6 /* DarklyEventSource-watchOS */; + targetProxy = EC2369572A743638CA9E8FEDF8C25F79 /* PBXContainerItemProxy */; }; - FBC0DC324756D53894488F727B96C8DE /* PBXTargetDependency */ = { + 39B61DCE753A36419C24ADB412E2AB26 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = OCMock; - target = 4A2CAA839F2722C796C6F1DFDC806B92 /* OCMock */; - targetProxy = 1ABC0411B15B9BAEE749E4E69878653C /* PBXContainerItemProxy */; + name = "DarklyEventSource-iOS"; + target = 5619C45212EB735445EDEBF49D07CE51 /* DarklyEventSource-iOS */; + targetProxy = 2B4E68466B2AF29086AD1959EBB5318D /* PBXContainerItemProxy */; + }; + 3B340710D02BC6067BD79C272A8F0FB2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "DarklyEventSource-tvOS"; + target = D58C46A50D62C157E960D4676C6FF70D /* DarklyEventSource-tvOS */; + targetProxy = 20CDE6CE420DA2771F9AFA666B3E6576 /* PBXContainerItemProxy */; + }; + 497256A20989DE3F5D984875091CD255 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "DarklyEventSource-OSX"; + target = 2455A73137D54F1A4B54CD2C408B7E02 /* DarklyEventSource-OSX */; + targetProxy = B739CA90BFD655AEF8FF649B739DACFA /* PBXContainerItemProxy */; + }; + EEE8600DF4B47FF17B7E0DCC0AE4C294 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = OHHTTPStubs; + target = 9135E9FD702E6C20D43F83356816C512 /* OHHTTPStubs */; + targetProxy = A42079669638BCC6F7D35B82E4597DC0 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 192A0ABDB87834C37590D700B20295B0 /* Release */ = { + 04FFD48E78FC42F38C7A6D150F280C9B /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8086B881AD2BE15603573BA377D15E42 /* OHHTTPStubs.xcconfig */; + baseConfigurationReference = 4FC80382BD63510194750829B7144D6A /* DarklyEventSource-tvOS.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/OHHTTPStubs/OHHTTPStubs-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - MTL_ENABLE_DEBUG_INFO = NO; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch"; + MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_NAME = "$(TARGET_NAME)"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; + TVOS_DEPLOYMENT_TARGET = 9.0; }; - name = Release; + name = Debug; }; - 242C6C9941BA80446ED36EBACBF3FB32 /* Release */ = { + 0692FF7454CFF769D6C1A7DC73FCEA80 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -866,10 +1277,13 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + 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_OBJC_ROOT_CLASS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGNING_REQUIRED = NO; @@ -886,40 +1300,43 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = "${SRCROOT}/../build"; + TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; + WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Release; }; - 251F6E4DED2336884BD6FF3C84CF4487 /* Debug */ = { + 0A64A776F554E8AD500ED1BC55AA7B8C /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 445EAECA724D2F6FF501E3EB778CFDB7 /* DarklyEventSource.xcconfig */; + baseConfigurationReference = 2E78FF244C0690D6F5E63F2B798EC50B /* Pods-Darkly_iOS.release.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource/DarklyEventSource-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - MTL_ENABLE_DEBUG_INFO = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = NO; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; - PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = iphoneos; SKIP_INSTALL = YES; }; - name = Debug; + name = Release; }; - 313C3C38AA16C5DE8AE32B989D5CD1A8 /* Debug */ = { + 0F85DDBCD0EE3D25C5907E8585A03FD1 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 462B6274D25369D4F65AD53C470AD84D /* Pods-Darkly.debug.xcconfig */; + baseConfigurationReference = 8086B881AD2BE15603573BA377D15E42 /* OHHTTPStubs.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -927,22 +1344,22 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; - MACH_O_TYPE = staticlib; + GCC_PREFIX_HEADER = "Target Support Files/OHHTTPStubs/OHHTTPStubs-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 5.0; MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = iphoneos; SKIP_INSTALL = YES; }; name = Debug; }; - 5FD241E00A8C88AE9FAFE1F34906AB6E /* Release */ = { + 10A19222D79F2BAD330D01E20D21CD18 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 51F53E4649BC2F3C34E423465C5884D9 /* Pods-Darkly.release.xcconfig */; + baseConfigurationReference = A4F6C037736103AC4295CEF6C396473B /* OCMock.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -950,32 +1367,32 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; - MACH_O_TYPE = staticlib; + GCC_PREFIX_HEADER = "Target Support Files/OCMock/OCMock-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MTL_ENABLE_DEBUG_INFO = NO; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = iphoneos; SKIP_INSTALL = YES; }; name = Release; }; - 6013E37C827C8E091E4DBCF8AA437157 /* Release */ = { + 1231B4A8E62676CDE08ED2A8CE13A4CB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 19E9543472634FF451C0DF898648C2CA /* Pods-DarklyTests.release.xcconfig */; + baseConfigurationReference = A5910A77494E687E722952807B397D6E /* Pods-DarklyTests.debug.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MACH_O_TYPE = staticlib; - MTL_ENABLE_DEBUG_INFO = NO; + MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -984,67 +1401,92 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; }; - name = Release; + name = Debug; }; - 6B20789F4238C3108A424505CCF10ED9 /* Debug */ = { + 1E095DDBD64EF2EA2CB690D0CA60F234 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7D9D7B998887CEF566A20E0A0ED59D17 /* Pods-DarklyTests.debug.xcconfig */; + baseConfigurationReference = 8086B881AD2BE15603573BA377D15E42 /* OHHTTPStubs.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; - MACH_O_TYPE = staticlib; - MTL_ENABLE_DEBUG_INFO = YES; + GCC_PREFIX_HEADER = "Target Support Files/OHHTTPStubs/OHHTTPStubs-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 5.0; + MTL_ENABLE_DEBUG_INFO = NO; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = iphoneos; SKIP_INSTALL = YES; }; - name = Debug; + name = Release; }; - 9A11429B2550F4D3EF45998ACFB54D96 /* Debug */ = { + 2369E75705BC8071E6F8513F650392DF /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A4F6C037736103AC4295CEF6C396473B /* OCMock.xcconfig */; + baseConfigurationReference = DC30096096C2C89ABFCF13FABF69876E /* DarklyEventSource-watchOS.xcconfig */; buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = watchos; + SKIP_INSTALL = YES; + WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Release; + }; + 242C4BEBA41C19F26D6ED4238F1C9D65 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3CA0EF81E7360887EAF5B3D8E8198CF0 /* DarklyEventSource-OSX.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; + EXECUTABLE_PREFIX = lib; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/OCMock/OCMock-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.7; MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_NAME = "$(TARGET_NAME)"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; + SDKROOT = macosx; }; name = Debug; }; - A6A9C0ED25C6A824E97D237F758D21AC /* Release */ = { + 305A4931644B16A8866DA620E2581DA3 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = A4F6C037736103AC4295CEF6C396473B /* OCMock.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; GCC_PREFIX_HEADER = "Target Support Files/OCMock/OCMock-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - MTL_ENABLE_DEBUG_INFO = NO; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; @@ -1053,36 +1495,38 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; }; - name = Release; + name = Debug; }; - C843CCD93D21CB79D8779B9866F3A7D7 /* Release */ = { + 30C7828CD13AD4B86272D674B1367F6F /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 445EAECA724D2F6FF501E3EB778CFDB7 /* DarklyEventSource.xcconfig */; + baseConfigurationReference = 1245912B92C20FF5B8003D043B8B4446 /* Pods-Darkly_watchOS.debug.xcconfig */; buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource/DarklyEventSource-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; - MTL_ENABLE_DEBUG_INFO = NO; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = watchos; SKIP_INSTALL = YES; + WATCHOS_DEPLOYMENT_TARGET = 2.0; }; - name = Release; + name = Debug; }; - EB10C108E296DEB376DFA4B409A568F9 /* Debug */ = { + 33379CED7D34F5EC700D22CBA988FB68 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -1090,10 +1534,13 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + 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_OBJC_ROOT_CLASS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CODE_SIGNING_REQUIRED = NO; @@ -1114,26 +1561,243 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; ONLY_ACTIVE_ARCH = YES; PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = "${SRCROOT}/../build"; + TVOS_DEPLOYMENT_TARGET = 9.0; + WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; }; - F54C066AF28FA0514D95178020D84709 /* Debug */ = { + 49B4ECBCA2CE5A030926F5EF95801DB7 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8086B881AD2BE15603573BA377D15E42 /* OHHTTPStubs.xcconfig */; + baseConfigurationReference = 3972E311CE5653126105575B582CC848 /* Pods-Darkly_osx.debug.xcconfig */; buildSettings = { + CODE_SIGN_IDENTITY = "-"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; + EXECUTABLE_PREFIX = lib; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/OHHTTPStubs/OHHTTPStubs-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 5.0; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 523F99A79B1288C8D16DA304A7EEFF9D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5AB79C3BC9DBCA565B06DA883C108477 /* Pods-Darkly_tvOS.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Release; + }; + 5D82BCAEC7A33E2BF24A427440DB4085 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A6C066C5F008682C40ABFFD50B4814CA /* Pods-Darkly_iOS.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 60EE183C9A0EEF76728BB8BBFC2E9104 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 439016C9F93D31BE562BF6EADCB37878 /* Pods-Darkly_osx.release.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXECUTABLE_PREFIX = lib; + GCC_NO_COMMON_BLOCKS = YES; + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 7F84B889E63CD165A46FC8F0458F9D92 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 02C29F5FD630BAA124EB3564C5B7166F /* Pods-Darkly_watchOS.release.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = watchos; + SKIP_INSTALL = YES; + WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Release; + }; + 90A20A5DAA519985B4E163E57F0093B0 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9A453BD98718E1B29605821754286AE0 /* Pods-Darkly_tvOS.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Debug; + }; + C5D0C993C2907DCF54958453396F1988 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = DC30096096C2C89ABFCF13FABF69876E /* DarklyEventSource-watchOS.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch"; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = watchos; + SKIP_INSTALL = YES; + WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Debug; + }; + D13002FC80A32A73599F0EB3FB32BD4F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 372CE3D00FC66876725C0EBF50AF3858 /* DarklyEventSource-iOS.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + D39EA55D92937031C57DC9C07B2C4417 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3CA0EF81E7360887EAF5B3D8E8198CF0 /* DarklyEventSource-OSX.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "-"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXECUTABLE_PREFIX = lib; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.7; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = macosx; + }; + name = Release; + }; + E029D8219F4D7B909EEB0FC6A3CC1354 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 372CE3D00FC66876725C0EBF50AF3858 /* DarklyEventSource-iOS.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; @@ -1145,59 +1809,159 @@ }; name = Debug; }; + FB6B5D6CE398E49A9733A1728914911F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C0CCC4CB49D9D09D9290628AEA99B7DC /* Pods-DarklyTests.release.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MACH_O_TYPE = staticlib; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + FFAA740881A75C296F53D82718B3F3EA /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4FC80382BD63510194750829B7144D6A /* DarklyEventSource-tvOS.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 10542776D8ACCA3DA970BD708ACC2AF4 /* Build configuration list for PBXNativeTarget "OCMock" */ = { + 012749C18EBB77ADA7E9E6C345991BA0 /* Build configuration list for PBXNativeTarget "Pods-Darkly_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 9A11429B2550F4D3EF45998ACFB54D96 /* Debug */, - A6A9C0ED25C6A824E97D237F758D21AC /* Release */, + 90A20A5DAA519985B4E163E57F0093B0 /* Debug */, + 523F99A79B1288C8D16DA304A7EEFF9D /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 256677855B6A684873600FF77F7CA11D /* Build configuration list for PBXNativeTarget "Pods-Darkly" */ = { + 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 313C3C38AA16C5DE8AE32B989D5CD1A8 /* Debug */, - 5FD241E00A8C88AE9FAFE1F34906AB6E /* Release */, + 33379CED7D34F5EC700D22CBA988FB68 /* Debug */, + 0692FF7454CFF769D6C1A7DC73FCEA80 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 2DABE329B69C65FFE8C74E6FC041308B /* Build configuration list for PBXNativeTarget "Pods-Darkly_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 5D82BCAEC7A33E2BF24A427440DB4085 /* Debug */, + 0A64A776F554E8AD500ED1BC55AA7B8C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 317BD8318ADA72C671A1CBCB24C2A6E8 /* Build configuration list for PBXNativeTarget "DarklyEventSource-OSX" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 242C4BEBA41C19F26D6ED4238F1C9D65 /* Debug */, + D39EA55D92937031C57DC9C07B2C4417 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 480140B5247CE56572B6542F3F39B1B8 /* Build configuration list for PBXNativeTarget "DarklyEventSource-tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 04FFD48E78FC42F38C7A6D150F280C9B /* Debug */, + FFAA740881A75C296F53D82718B3F3EA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 5CD5A0F6DBE3892A6E331DD367E18E11 /* Build configuration list for PBXNativeTarget "OCMock" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 305A4931644B16A8866DA620E2581DA3 /* Debug */, + 10A19222D79F2BAD330D01E20D21CD18 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 6A57322073EE410C4496BAEF03BC6EF0 /* Build configuration list for PBXNativeTarget "DarklyEventSource-watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C5D0C993C2907DCF54958453396F1988 /* Debug */, + 2369E75705BC8071E6F8513F650392DF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + AB3067A1D448F7628DB5333972F1449A /* Build configuration list for PBXNativeTarget "OHHTTPStubs" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0F85DDBCD0EE3D25C5907E8585A03FD1 /* Debug */, + 1E095DDBD64EF2EA2CB690D0CA60F234 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + ABEBA9CCDE77892D0D24BD391C8CEE80 /* Build configuration list for PBXNativeTarget "Pods-Darkly_osx" */ = { isa = XCConfigurationList; buildConfigurations = ( - EB10C108E296DEB376DFA4B409A568F9 /* Debug */, - 242C6C9941BA80446ED36EBACBF3FB32 /* Release */, + 49B4ECBCA2CE5A030926F5EF95801DB7 /* Debug */, + 60EE183C9A0EEF76728BB8BBFC2E9104 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 82C9A7A5CEB63EE5B80D437CDAA8C0C8 /* Build configuration list for PBXNativeTarget "DarklyEventSource" */ = { + D26B7297D5DF95A5870C3C91B9C7BD64 /* Build configuration list for PBXNativeTarget "DarklyEventSource-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 251F6E4DED2336884BD6FF3C84CF4487 /* Debug */, - C843CCD93D21CB79D8779B9866F3A7D7 /* Release */, + E029D8219F4D7B909EEB0FC6A3CC1354 /* Debug */, + D13002FC80A32A73599F0EB3FB32BD4F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - AF799BE4F3DDBEDC80BF7E4F2AC94F6E /* Build configuration list for PBXNativeTarget "OHHTTPStubs" */ = { + E8C9057E408A123D09B5BB7B3DBDEC36 /* Build configuration list for PBXNativeTarget "Pods-Darkly_watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - F54C066AF28FA0514D95178020D84709 /* Debug */, - 192A0ABDB87834C37590D700B20295B0 /* Release */, + 30C7828CD13AD4B86272D674B1367F6F /* Debug */, + 7F84B889E63CD165A46FC8F0458F9D92 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - F2048F84EE4B47DC019EE164AF783E9A /* Build configuration list for PBXNativeTarget "Pods-DarklyTests" */ = { + FDE3626F3589589E8A24761F12A19971 /* Build configuration list for PBXNativeTarget "Pods-DarklyTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 6B20789F4238C3108A424505CCF10ED9 /* Debug */, - 6013E37C827C8E091E4DBCF8AA437157 /* Release */, + 1231B4A8E62676CDE08ED2A8CE13A4CB /* Debug */, + FB6B5D6CE398E49A9733A1728914911F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-dummy.m b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-dummy.m new file mode 100644 index 00000000..c75b582f --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_DarklyEventSource_OSX : NSObject +@end +@implementation PodsDummy_DarklyEventSource_OSX +@end diff --git a/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch new file mode 100644 index 00000000..b9c163b4 --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX-prefix.pch @@ -0,0 +1,4 @@ +#ifdef __OBJC__ +#import +#endif + diff --git a/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX.xcconfig b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX.xcconfig new file mode 100644 index 00000000..4b8cd5d9 --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-OSX/DarklyEventSource-OSX.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-OSX +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(DEVELOPER_LIBRARY_DIR)/Frameworks" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/DarklyEventSource" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-dummy.m b/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-dummy.m new file mode 100644 index 00000000..e70a04c7 --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_DarklyEventSource_iOS : NSObject +@end +@implementation PodsDummy_DarklyEventSource_iOS +@end diff --git a/Pods/Target Support Files/DarklyEventSource/DarklyEventSource-prefix.pch b/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch similarity index 100% rename from Pods/Target Support Files/DarklyEventSource/DarklyEventSource-prefix.pch rename to Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS-prefix.pch diff --git a/Pods/Target Support Files/DarklyEventSource/DarklyEventSource.xcconfig b/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS.xcconfig similarity index 94% rename from Pods/Target Support Files/DarklyEventSource/DarklyEventSource.xcconfig rename to Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS.xcconfig index 40cc309b..35eb72b8 100644 --- a/Pods/Target Support Files/DarklyEventSource/DarklyEventSource.xcconfig +++ b/Pods/Target Support Files/DarklyEventSource-iOS/DarklyEventSource-iOS.xcconfig @@ -1,8 +1,8 @@ -CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-iOS FRAMEWORK_SEARCH_PATHS = $(inherited) "$(SDKROOT)/Developer/Library/Frameworks" "$(DEVELOPER_LIBRARY_DIR)/Frameworks" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/DarklyEventSource" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" "${PODS_ROOT}/Headers/Public/OCMock" "${PODS_ROOT}/Headers/Public/OHHTTPStubs" -OTHER_LDFLAGS = -l"ObjC" +OTHER_LDFLAGS = -l"objc" PODS_BUILD_DIR = $BUILD_DIR PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-dummy.m b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-dummy.m new file mode 100644 index 00000000..6fb56b16 --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_DarklyEventSource_tvOS : NSObject +@end +@implementation PodsDummy_DarklyEventSource_tvOS +@end diff --git a/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch new file mode 100644 index 00000000..aa992a4a --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS-prefix.pch @@ -0,0 +1,4 @@ +#ifdef __OBJC__ +#import +#endif + diff --git a/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS.xcconfig b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS.xcconfig new file mode 100644 index 00000000..97a4bacd --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-tvOS/DarklyEventSource-tvOS.xcconfig @@ -0,0 +1,9 @@ +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-tvOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/DarklyEventSource" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-dummy.m b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-dummy.m new file mode 100644 index 00000000..f37c7605 --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_DarklyEventSource_watchOS : NSObject +@end +@implementation PodsDummy_DarklyEventSource_watchOS +@end diff --git a/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch new file mode 100644 index 00000000..8afde9dd --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS-prefix.pch @@ -0,0 +1,4 @@ +#ifdef __OBJC__ +#import +#endif + diff --git a/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS.xcconfig b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS.xcconfig new file mode 100644 index 00000000..377fccce --- /dev/null +++ b/Pods/Target Support Files/DarklyEventSource-watchOS/DarklyEventSource-watchOS.xcconfig @@ -0,0 +1,9 @@ +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-watchOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/DarklyEventSource" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Pods/Target Support Files/DarklyEventSource/DarklyEventSource-dummy.m b/Pods/Target Support Files/DarklyEventSource/DarklyEventSource-dummy.m deleted file mode 100644 index fd789f2f..00000000 --- a/Pods/Target Support Files/DarklyEventSource/DarklyEventSource-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_DarklyEventSource : NSObject -@end -@implementation PodsDummy_DarklyEventSource -@end diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-dummy.m b/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-dummy.m deleted file mode 100644 index f8c4f771..00000000 --- a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_Pods_Darkly : NSObject -@end -@implementation PodsDummy_Pods_Darkly -@end diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-frameworks.sh b/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-frameworks.sh deleted file mode 100755 index 893c16a6..00000000 --- a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-frameworks.sh +++ /dev/null @@ -1,84 +0,0 @@ -#!/bin/sh -set -e - -echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" -mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - -SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" - -install_framework() -{ - if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then - local source="${BUILT_PRODUCTS_DIR}/$1" - elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then - local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" - elif [ -r "$1" ]; then - local source="$1" - fi - - local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - - if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" - fi - - # use filter instead of exclude so missing patterns dont' throw errors - echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" - rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" - - local basename - basename="$(basename -s .framework "$1")" - binary="${destination}/${basename}.framework/${basename}" - if ! [ -r "$binary" ]; then - binary="${destination}/${basename}" - fi - - # Strip invalid architectures so "fat" simulator / device frameworks work on device - if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then - strip_invalid_archs "$binary" - fi - - # Resign the code if required by the build settings to avoid unstable apps - code_sign_if_enabled "${destination}/$(basename "$1")" - - # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. - if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then - local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) - for lib in $swift_runtime_libs; do - echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" - rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" - code_sign_if_enabled "${destination}/${lib}" - done - fi -} - -# Signs a framework with the provided identity -code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy - echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" - echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements \"$1\"" - /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1" - fi -} - -# Strip invalid architectures -strip_invalid_archs() { - binary="$1" - # Get architectures for current file - archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" - stripped="" - for arch in $archs; do - if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then - # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 - stripped="$stripped $arch" - fi - done - if [[ "$stripped" ]]; then - echo "Stripped $binary of architectures:$stripped" - fi -} - diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-acknowledgements.markdown b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.markdown similarity index 100% rename from Pods/Target Support Files/Pods-Darkly/Pods-Darkly-acknowledgements.markdown rename to Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.markdown diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-acknowledgements.plist b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.plist similarity index 100% rename from Pods/Target Support Files/Pods-Darkly/Pods-Darkly-acknowledgements.plist rename to Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-acknowledgements.plist diff --git a/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-dummy.m b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-dummy.m new file mode 100644 index 00000000..e4a37de5 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Darkly_iOS : NSObject +@end +@implementation PodsDummy_Pods_Darkly_iOS +@end diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly-resources.sh b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-resources.sh similarity index 100% rename from Pods/Target Support Files/Pods-Darkly/Pods-Darkly-resources.sh rename to Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS-resources.sh diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly.debug.xcconfig b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.debug.xcconfig similarity index 89% rename from Pods/Target Support Files/Pods-Darkly/Pods-Darkly.debug.xcconfig rename to Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.debug.xcconfig index f367a309..70579abd 100644 --- a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly.debug.xcconfig +++ b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.debug.xcconfig @@ -2,9 +2,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO FRAMEWORK_SEARCH_PATHS = $(inherited) "$(SDKROOT)/Developer/Library/Frameworks" "$(DEVELOPER_LIBRARY_DIR)/Frameworks" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" "${PODS_ROOT}/Headers/Public/OCMock" "${PODS_ROOT}/Headers/Public/OHHTTPStubs" -LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" -isystem "${PODS_ROOT}/Headers/Public/OCMock" -isystem "${PODS_ROOT}/Headers/Public/OHHTTPStubs" -OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource" -l"ObjC" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-iOS" -l"objc" PODS_BUILD_DIR = $BUILD_DIR PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly.release.xcconfig b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.release.xcconfig similarity index 89% rename from Pods/Target Support Files/Pods-Darkly/Pods-Darkly.release.xcconfig rename to Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.release.xcconfig index f367a309..70579abd 100644 --- a/Pods/Target Support Files/Pods-Darkly/Pods-Darkly.release.xcconfig +++ b/Pods/Target Support Files/Pods-Darkly_iOS/Pods-Darkly_iOS.release.xcconfig @@ -2,9 +2,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO FRAMEWORK_SEARCH_PATHS = $(inherited) "$(SDKROOT)/Developer/Library/Frameworks" "$(DEVELOPER_LIBRARY_DIR)/Frameworks" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" "${PODS_ROOT}/Headers/Public/OCMock" "${PODS_ROOT}/Headers/Public/OHHTTPStubs" -LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" -isystem "${PODS_ROOT}/Headers/Public/OCMock" -isystem "${PODS_ROOT}/Headers/Public/OHHTTPStubs" -OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource" -l"ObjC" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-iOS" -l"objc" PODS_BUILD_DIR = $BUILD_DIR PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.markdown b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.markdown new file mode 100644 index 00000000..d11ad77f --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.markdown @@ -0,0 +1,25 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## DarklyEventSource + +Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +Generated by CocoaPods - https://cocoapods.org diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.plist b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.plist new file mode 100644 index 00000000..b86ec204 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-acknowledgements.plist @@ -0,0 +1,57 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + License + MIT (see LICENSE.txt) + Title + DarklyEventSource + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-dummy.m b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-dummy.m new file mode 100644 index 00000000..88408102 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Darkly_osx : NSObject +@end +@implementation PodsDummy_Pods_Darkly_osx +@end diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-resources.sh b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-resources.sh new file mode 100755 index 00000000..25e9d377 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx-resources.sh @@ -0,0 +1,96 @@ +#!/bin/sh +set -e + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "${PODS_ROOT}*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.debug.xcconfig b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.debug.xcconfig new file mode 100644 index 00000000..da113769 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.debug.xcconfig @@ -0,0 +1,10 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(DEVELOPER_LIBRARY_DIR)/Frameworks" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-OSX" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-OSX" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.release.xcconfig b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.release.xcconfig new file mode 100644 index 00000000..da113769 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_osx/Pods-Darkly_osx.release.xcconfig @@ -0,0 +1,10 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "$(DEVELOPER_LIBRARY_DIR)/Frameworks" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-OSX" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-OSX" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.markdown b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.markdown new file mode 100644 index 00000000..d11ad77f --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.markdown @@ -0,0 +1,25 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## DarklyEventSource + +Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +Generated by CocoaPods - https://cocoapods.org diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.plist b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.plist new file mode 100644 index 00000000..b86ec204 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-acknowledgements.plist @@ -0,0 +1,57 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + License + MIT (see LICENSE.txt) + Title + DarklyEventSource + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-dummy.m b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-dummy.m new file mode 100644 index 00000000..05413cc0 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Darkly_tvOS : NSObject +@end +@implementation PodsDummy_Pods_Darkly_tvOS +@end diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-resources.sh b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-resources.sh new file mode 100755 index 00000000..25e9d377 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS-resources.sh @@ -0,0 +1,96 @@ +#!/bin/sh +set -e + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "${PODS_ROOT}*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.debug.xcconfig b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.debug.xcconfig new file mode 100644 index 00000000..ad963c6b --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.debug.xcconfig @@ -0,0 +1,9 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-tvOS" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-tvOS" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.release.xcconfig b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.release.xcconfig new file mode 100644 index 00000000..ad963c6b --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_tvOS/Pods-Darkly_tvOS.release.xcconfig @@ -0,0 +1,9 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-tvOS" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-tvOS" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.markdown b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.markdown new file mode 100644 index 00000000..d11ad77f --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.markdown @@ -0,0 +1,25 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## DarklyEventSource + +Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +Generated by CocoaPods - https://cocoapods.org diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.plist b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.plist new file mode 100644 index 00000000..b86ec204 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-acknowledgements.plist @@ -0,0 +1,57 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (c) 2013 Neil Cowburn (http://github.com/neilco/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + License + MIT (see LICENSE.txt) + Title + DarklyEventSource + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-dummy.m b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-dummy.m new file mode 100644 index 00000000..f7dff399 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Darkly_watchOS : NSObject +@end +@implementation PodsDummy_Pods_Darkly_watchOS +@end diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-resources.sh b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-resources.sh new file mode 100755 index 00000000..25e9d377 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS-resources.sh @@ -0,0 +1,96 @@ +#!/bin/sh +set -e + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE="$RESOURCE_PATH" + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "${PODS_ROOT}*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.debug.xcconfig b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.debug.xcconfig new file mode 100644 index 00000000..f38183c0 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.debug.xcconfig @@ -0,0 +1,9 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-watchOS" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-watchOS" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.release.xcconfig b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.release.xcconfig new file mode 100644 index 00000000..f38183c0 --- /dev/null +++ b/Pods/Target Support Files/Pods-Darkly_watchOS/Pods-Darkly_watchOS.release.xcconfig @@ -0,0 +1,9 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/DarklyEventSource" +LIBRARY_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/DarklyEventSource-watchOS" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/DarklyEventSource" +OTHER_LDFLAGS = $(inherited) -ObjC -l"DarklyEventSource-watchOS" -l"objc" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/circle.yml b/circle.yml index 0e1ccc72..b4779644 100644 --- a/circle.yml +++ b/circle.yml @@ -4,5 +4,5 @@ machine: test: post: - - pod lib lint - - if [ "$CIRCLE_BRANCH" = 'master' ]; then pod spec lint; fi \ No newline at end of file + - pod lib lint --use-libraries + - if [ "$CIRCLE_BRANCH" = 'master' ]; then pod spec lint --use-libraries; fi \ No newline at end of file From ac6f361b548877fe6ae74a72463de72d0443c907 Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Tue, 25 Apr 2017 20:29:20 +0500 Subject: [PATCH 02/12] Update Version (#9) * Fix RequestManager mock in LDPollingManagerTest * Update schemes * Update to 2.2.1 * Update XCode version * Remove use of shared instance * Fix for deletion array count * Update to version 2.3.0 * Revert test changes * Revert "Revert test changes" * Update README markdown * Add Platform to README * Update Readme to reflect carthage --- CHANGELOG.md | 19 +++++- Darkly.xcodeproj/project.pbxproj | 6 +- .../xcschemes/Darkly_osx.xcscheme | 19 ++++++ .../xcschemes/Darkly_watchOS.xcscheme | 19 ++++++ Darkly/DarklyConstants.m | 2 +- Darkly/LDDataManager.m | 2 +- DarklyTests/LDPollingManagerTest.m | 2 +- DarklyTests/LDRequestManagerTest.m | 4 +- LaunchDarkly.podspec | 15 +++-- README.md | 58 ++++++++++++++++++- circle.yml | 2 +- 11 files changed, 127 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 92f3978d..b94aaf7e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,23 @@ # Change log -All notable changes to the LaunchDarkly Python SDK will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). +All notable changes to the LaunchDarkly iOS SDK will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). + +## [2.3.0] - 2017-04-20 +### Added +- Support for tvOS 9.0+ +- Support for watchOS 2.0+ +- Support for macOS 10.10+ +- Umbrella header (`Darkly/Darkly.h`) + +### Changed +- Library is now a dynamic framework in order to support the [Carthage](https://github.com/Carthage/Carthage) dependency manager +- Minimum supported iOS version is now iOS 8.0+ +- Updated streaming host from `stream.launchdarkly.com` to `clientstream.launchdarkly.com` +- Default (foreground) polling interval was reduced to 5 minutes +- Minimum polling interval was reduced to 1 minute + +### Fixed +- Potential range exception issue in event processing ## [2.2.0] - 2017-04-05 ### Added diff --git a/Darkly.xcodeproj/project.pbxproj b/Darkly.xcodeproj/project.pbxproj index a2d1f107..d4f0ae89 100644 --- a/Darkly.xcodeproj/project.pbxproj +++ b/Darkly.xcodeproj/project.pbxproj @@ -80,8 +80,8 @@ 69A87EAF1E74712800B88B23 /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; 69A87EB01E74712800B88B23 /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; 69A87EB11E74712800B88B23 /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; + 69B205D31EA92ECD00487CA3 /* LDRequestManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347141E689B9F00E45133 /* LDRequestManagerTest.m */; }; 69BAF40D1E9AAB4800747613 /* Darkly.h in Headers */ = {isa = PBXBuildFile; fileRef = 69BAF40B1E9AAB4800747613 /* Darkly.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 69BAF40E1E9AAB4800747613 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 69BAF40C1E9AAB4800747613 /* Info.plist */; }; 69BD7E181E6C79910056D70F /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; 69BD7E191E6C79910056D70F /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; 69BD7E1A1E6C79910056D70F /* Darkly-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = 690346D81E68990000E45133 /* Darkly-Prefix.pch */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -109,7 +109,6 @@ 69BD7E301E6C79910056D70F /* LDUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346EE1E68990000E45133 /* LDUtil.m */; }; 69BD7E311E6C79910056D70F /* NSDictionary+JSON.h in Headers */ = {isa = PBXBuildFile; fileRef = 690346F21E68990000E45133 /* NSDictionary+JSON.h */; settings = {ATTRIBUTES = (Public, ); }; }; 69BD7E321E6C79910056D70F /* NSDictionary+JSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 690346F31E68990000E45133 /* NSDictionary+JSON.m */; }; - 69E5275D1E6E948200E4B63B /* LDRequestManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347141E689B9F00E45133 /* LDRequestManagerTest.m */; }; 69E5275E1E6E948F00E4B63B /* LDDataManagerTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347161E689B9F00E45133 /* LDDataManagerTest.m */; }; 69F3F6921E6BF7F600079A09 /* LDDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 690347101E68994500E45133 /* LDDataManager.m */; }; 69F3F6941E6BF80800079A09 /* LDDataManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 6903470F1E68994500E45133 /* LDDataManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -654,7 +653,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 69BAF40E1E9AAB4800747613 /* Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -890,9 +888,9 @@ 6903472E1E689B9F00E45133 /* LDClientManagerTest.m in Sources */, 69E5275E1E6E948F00E4B63B /* LDDataManagerTest.m in Sources */, 690347321E689B9F00E45133 /* DarklyXCTestCase.m in Sources */, + 69B205D31EA92ECD00487CA3 /* LDRequestManagerTest.m in Sources */, 6903472D1E689B9F00E45133 /* LDUtilTest.m in Sources */, 690347311E689B9F00E45133 /* LDFlagConfigModelTest.m in Sources */, - 69E5275D1E6E948200E4B63B /* LDRequestManagerTest.m in Sources */, 690347331E689B9F00E45133 /* NSArray+UnitTests.m in Sources */, 6903472C1E689B9F00E45133 /* LDClientTest.m in Sources */, ); diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme index 2c06fd7b..665a157a 100644 --- a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_osx.xcscheme @@ -28,7 +28,26 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + + + diff --git a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme index 553ba359..280c5673 100644 --- a/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme +++ b/Darkly.xcodeproj/xcshareddata/xcschemes/Darkly_watchOS.xcscheme @@ -28,7 +28,26 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + + + diff --git a/Darkly/DarklyConstants.m b/Darkly/DarklyConstants.m index 20b3a4af..479c22a0 100644 --- a/Darkly/DarklyConstants.m +++ b/Darkly/DarklyConstants.m @@ -4,7 +4,7 @@ #import "DarklyConstants.h" -NSString * const kClientVersion = @"2.2.0"; +NSString * const kClientVersion = @"2.3.0"; NSString * const kBaseUrl = @"https://app.launchdarkly.com"; NSString * const kEventsUrl = @"https://mobile.launchdarkly.com"; NSString * const kStreamUrl = @"https://clientstream.launchdarkly.com/mping"; diff --git a/Darkly/LDDataManager.m b/Darkly/LDDataManager.m index ac54152c..ef4d1cbf 100644 --- a/Darkly/LDDataManager.m +++ b/Darkly/LDDataManager.m @@ -166,7 +166,7 @@ -(BOOL)isAtEventCapacity:(NSArray *)currentArray { -(void) deleteProcessedEvents: (NSArray *) processedJsonArray { // Loop through processedEvents - NSInteger count = [processedJsonArray count] > [_eventsArray count] ? [processedJsonArray count] : [_eventsArray count]; + NSInteger count = MIN([processedJsonArray count], [_eventsArray count]); [_eventsArray removeObjectsInRange:NSMakeRange(0, count)]; } diff --git a/DarklyTests/LDPollingManagerTest.m b/DarklyTests/LDPollingManagerTest.m index 3e846497..646b2349 100644 --- a/DarklyTests/LDPollingManagerTest.m +++ b/DarklyTests/LDPollingManagerTest.m @@ -26,7 +26,7 @@ - (void)setUp { OCMStub([requestManagerMock performFeatureFlagRequest:[OCMArg isKindOfClass:[NSString class]]]); id requestManagerClassMock = OCMClassMock([LDRequestManager class]); - OCMStub(ClassMethod([requestManagerClassMock sharedInstance])).andReturn(requestManagerClassMock); + OCMStub(ClassMethod([requestManagerClassMock sharedInstance])).andReturn(requestManager); } - (void)tearDown { diff --git a/DarklyTests/LDRequestManagerTest.m b/DarklyTests/LDRequestManagerTest.m index 2c4ff80b..e41bf466 100644 --- a/DarklyTests/LDRequestManagerTest.m +++ b/DarklyTests/LDRequestManagerTest.m @@ -65,7 +65,7 @@ - (void)testFeatureFlagRequestMakesHttpRequestWithMobileKey { NSString *mobileKey = @"YOUR_MOBILE_KEY"; NSString *encodedUserString = @"eyJrZXkiOiAiamVmZkB0ZXN0LmNvbSJ9"; - LDRequestManager *requestManager = [LDRequestManager sharedInstance]; + LDRequestManager *requestManager = [[LDRequestManager alloc] init]; [requestManager setMobileKey:mobileKey]; [requestManager setBaseUrl:kBaseUrl]; [requestManager setConnectionTimeout:10]; @@ -100,7 +100,7 @@ - (void)testEventRequestMakesHttpRequestWithMobileKey { NSArray *eventsArray = [NSJSONSerialization JSONObjectWithData:eventData options:kNilOptions error:nil]; - LDRequestManager *requestManager = [LDRequestManager sharedInstance]; + LDRequestManager *requestManager = [[LDRequestManager alloc] init]; [requestManager setMobileKey:mobileKey]; [requestManager setEventsUrl:kEventsUrl]; [requestManager setConnectionTimeout:10]; diff --git a/LaunchDarkly.podspec b/LaunchDarkly.podspec index e6cc90e3..cbae7aed 100644 --- a/LaunchDarkly.podspec +++ b/LaunchDarkly.podspec @@ -1,16 +1,15 @@ Pod::Spec.new do |s| s.name = "LaunchDarkly" - s.version = "2.2.0" + s.version = "2.3.0" s.summary = "iOS SDK for LaunchDarkly" s.description = <<-DESC - A longer description of darkly in Markdown format. - - * Think: Why did you write this? What is the focus? What does it do? - * CocoaPods will be using this to generate tags, and improve search results. - * Try to keep it short, snappy and to the point. - * Finally, don't worry about the indent, CocoaPods strips it! + LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can: + * Roll out a new feature to a subset of your users (like a group of users who opt-in to a beta tester group), gathering feedback and bug reports from real-world use cases. + * Gradually roll out a feature to an increasing percentage of users, and track the effect that the feature has on key metrics (for instance, how likely is a user to complete a purchase if they have feature A versus feature B?). + * Turn off a feature that you realize is causing performance problems in production, without needing to re-deploy, or even restart the application with a changed configuration file. + * Grant access to certain features based on user attributes, like payment plan (eg: users on the ‘gold’ plan get access to more features than users in the ‘silver’ plan). Disable parts of your application to facilitate maintenance, without taking everything offline. DESC s.homepage = "https://github.com/launchdarkly/ios-client" @@ -24,7 +23,7 @@ Pod::Spec.new do |s| s.tvos.deployment_target = "9.0" s.osx.deployment_target = '10.10' - s.source = { :git => "https://github.com/launchdarkly/ios-client.git", :tag => "2.2.0" } + s.source = { :git => "https://github.com/launchdarkly/ios-client.git", :tag => "2.3.0" } s.source_files = "Darkly/*.{h,m}" diff --git a/README.md b/README.md index c15a70ba..70201a4a 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,62 @@ LaunchDarkly SDK for iOS ======================== -![CircleCI](https://circleci.com/gh/launchdarkly/ios-client.svg?branch=master) -[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/LaunchDarkly.svg)](https://img.shields.io/cocoapods/v/DarklyEventSource.svg) +![CircleCI](https://circleci.com/gh/launchdarkly/ios-client/tree/master.svg?style=svg) +[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/LaunchDarkly.svg)](https://img.shields.io/cocoapods/v/LaunchDarkly.svg) +[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) +[![Platform](https://img.shields.io/cocoapods/p/LaunchDarkly.svg?style=flat)](http://docs.launchdarkly.com/docs/ios-sdk-reference) + +Installation +------------ + +LaunchDarkly supports multiple methods for installing the library in a project. + +### Installation with CocoaPods + +[CocoaPods](http://cocoapods.org) is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like LaunchDarkly in your projects. You can install it with the following command: + +```bash +$ gem install cocoapods +``` +#### Podfile + +To integrate LaunchDarkly into your Xcode project using CocoaPods, specify it in your `Podfile`: + +```ruby +source 'https://github.com/CocoaPods/Specs.git' +platform :ios, '8.0' + +target 'TargetName' do +pod 'LaunchDarkly', '~> 2.3.0' +end +``` + +Then, run the following command: + +```bash +$ pod install +``` + +### Installation with Carthage + +[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. + +You can install Carthage with [Homebrew](http://brew.sh/) using the following command: + +```bash +$ brew update +$ brew install carthage +``` + +To integrate LaunchDarkly into your Xcode project using Carthage, specify it in your `Cartfile`: + +```ogdl +github "launchdarkly/ios-client" ~> 2.3.0 +``` + +Run `carthage` to build the framework and drag the built `Darkly.framework` into your Xcode project. + + Quick setup ----------- diff --git a/circle.yml b/circle.yml index b4779644..0bb37114 100644 --- a/circle.yml +++ b/circle.yml @@ -1,6 +1,6 @@ machine: xcode: - version: 8.1 + version: 8.3 test: post: From fdabf2833f0b608a95dba1ad003cad4bb3eff88d Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Tue, 25 Apr 2017 22:02:08 +0500 Subject: [PATCH 03/12] Remove Race Conditions (#10) * Remove pollingCount * Introduce semaphores to make synchronous api calls * Remove race condition for creationDate --- Darkly/LDEventModel.h | 2 +- Darkly/LDPollingManager.h | 3 - Darkly/LDPollingManager.m | 18 ----- Darkly/LDRequestManager.h | 2 - Darkly/LDRequestManager.m | 136 ++++++++++++++++++-------------------- 5 files changed, 67 insertions(+), 94 deletions(-) diff --git a/Darkly/LDEventModel.h b/Darkly/LDEventModel.h index 46c6f941..44867e2b 100644 --- a/Darkly/LDEventModel.h +++ b/Darkly/LDEventModel.h @@ -13,7 +13,7 @@ @interface LDEventModel : NSObject @property (nullable, nonatomic, strong) NSString *key; @property (nullable, nonatomic, strong) NSString *kind; -@property (nonatomic) NSInteger creationDate; +@property (atomic, assign) NSInteger creationDate; @property (nullable, nonatomic, strong) NSDictionary *data; @property (nullable, nonatomic, strong) LDUserModel *user; diff --git a/Darkly/LDPollingManager.h b/Darkly/LDPollingManager.h index 66825740..a1bce653 100644 --- a/Darkly/LDPollingManager.h +++ b/Darkly/LDPollingManager.h @@ -29,9 +29,6 @@ typedef enum { @property (strong, nonatomic) dispatch_source_t eventTimer; @property (nonatomic) NSTimeInterval eventPollingIntervalMillis; -+ (NSUInteger)configPollingCount; -+ (NSUInteger)eventPollingCount; - - (void) startConfigPolling; - (void) pauseConfigPolling; - (void) suspendConfigPolling; diff --git a/Darkly/LDPollingManager.m b/Darkly/LDPollingManager.m index fd6f9f30..1a8eb042 100644 --- a/Darkly/LDPollingManager.m +++ b/Darkly/LDPollingManager.m @@ -17,9 +17,6 @@ @implementation LDPollingManager @synthesize configPollingIntervalMillis; @synthesize configPollingState; -static NSUInteger configPollingCount=0; -static NSUInteger eventPollingCount=0; - static id sharedInstance = nil; + (instancetype)sharedInstance @@ -34,9 +31,6 @@ + (instancetype)sharedInstance - (id)init { if ((self = [super init])) { - configPollingCount = 0; - eventPollingCount = 0; - self.configPollingState = POLL_STOPPED; self.eventPollingState = POLL_STOPPED; @@ -49,25 +43,15 @@ - (id)init { - (void)dealloc { [self stopConfigPolling]; [self stopEventPolling]; - configPollingCount = 0; - eventPollingCount = 0; configPollingState = POLL_STOPPED; eventPollingState = POLL_STOPPED; } -+ (NSUInteger)configPollingCount { - return configPollingCount; -} - - (PollingState)configPollingState { return configPollingState; } -+ (NSUInteger)eventPollingCount { - return eventPollingCount; -} - - (PollingState)eventPollingState { return eventPollingState; } @@ -96,7 +80,6 @@ - (void)configPoll { if (configPollingState != POLL_STOPPED || configPollingState != POLL_SUSPENDED) { DEBUG_LOGX(@"PollingManager config interval reached"); - configPollingCount +=1; LDClientManager *clientManager = [LDClientManager sharedInstance]; if (![[[LDClient sharedInstance] ldConfig] streaming]) { @@ -221,7 +204,6 @@ - (void)eventPoll { if (eventPollingState != POLL_STOPPED || eventPollingState != POLL_SUSPENDED) { DEBUG_LOGX(@"PollingManager event interval reached"); - eventPollingCount +=1; LDClientManager *clientManager = [LDClientManager sharedInstance]; [clientManager syncWithServerForEvents]; diff --git a/Darkly/LDRequestManager.h b/Darkly/LDRequestManager.h index 5564f199..6b5ecbf1 100644 --- a/Darkly/LDRequestManager.h +++ b/Darkly/LDRequestManager.h @@ -21,8 +21,6 @@ @property (nonatomic) NSString* eventsUrl; @property (nonatomic) NSTimeInterval connectionTimeout; @property (nonatomic, weak) id delegate; -@property (nonatomic, assign) BOOL configRequestInProgress; -@property (nonatomic, assign) BOOL eventRequestInProgress; +(LDRequestManager *)sharedInstance; diff --git a/Darkly/LDRequestManager.m b/Darkly/LDRequestManager.m index 091fd8de..805c2f36 100644 --- a/Darkly/LDRequestManager.m +++ b/Darkly/LDRequestManager.m @@ -15,7 +15,7 @@ @implementation LDRequestManager -@synthesize mobileKey, baseUrl, eventsUrl, connectionTimeout, delegate, configRequestInProgress, eventRequestInProgress; +@synthesize mobileKey, baseUrl, eventsUrl, connectionTimeout, delegate; +(LDRequestManager *)sharedInstance { @@ -42,50 +42,48 @@ - (void)dealloc -(void)performFeatureFlagRequest:(NSString *)encodedUser { DEBUG_LOGX(@"RequestManager syncing config to server"); - - if (!configRequestInProgress) { - if (mobileKey) { - if (encodedUser) { - configRequestInProgress = YES; - - NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; - NSString *requestUrl = [baseUrl stringByAppendingString:kFeatureFlagUrl]; - - requestUrl = [requestUrl stringByAppendingString:encodedUser]; - - NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; - - [self addFeatureRequestHeaders:request]; - - NSURLSessionDataTask *dataTask = [defaultSession dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { - dispatch_async(dispatch_get_main_queue(), ^{ - configRequestInProgress = NO; - if (!error) { - NSError *jsonError; - NSMutableDictionary * responseObject = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&jsonError]; - if (responseObject) { - [delegate processedConfig:YES jsonConfigDictionary:responseObject]; - } else { - [delegate processedConfig:NO jsonConfigDictionary:nil]; - } - } - else{ + + dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); + + if (mobileKey) { + if (encodedUser) { + NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; + NSString *requestUrl = [baseUrl stringByAppendingString:kFeatureFlagUrl]; + + requestUrl = [requestUrl stringByAppendingString:encodedUser]; + + NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; + + [self addFeatureRequestHeaders:request]; + + NSURLSessionDataTask *dataTask = [defaultSession dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { + dispatch_semaphore_signal(semaphore); + dispatch_async(dispatch_get_main_queue(), ^{ + if (!error) { + NSError *jsonError; + NSMutableDictionary * responseObject = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&jsonError]; + if (responseObject) { + [delegate processedConfig:YES jsonConfigDictionary:responseObject]; + } else { [delegate processedConfig:NO jsonConfigDictionary:nil]; } - }); - - }]; - - [dataTask resume]; + } + else{ + [delegate processedConfig:NO jsonConfigDictionary:nil]; + } + }); - } else { - DEBUG_LOGX(@"RequestManager unable to sync config to server since no encodedUser"); - } + }]; + + [dataTask resume]; + + dispatch_semaphore_wait(semaphore, kConnectionTimeout); + } else { - DEBUG_LOGX(@"RequestManager unable to sync config to server since no mobileKey"); + DEBUG_LOGX(@"RequestManager unable to sync config to server since no encodedUser"); } } else { - DEBUG_LOGX(@"RequestManager already has a sync config in progress"); + DEBUG_LOGX(@"RequestManager unable to sync config to server since no mobileKey"); } } @@ -93,41 +91,39 @@ -(void)performEventRequest:(NSArray *)jsonEventArray { DEBUG_LOGX(@"RequestManager syncing events to server"); - if (!eventRequestInProgress) { - if (mobileKey) { - if (jsonEventArray) { - eventRequestInProgress = YES; + dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); + + if (mobileKey) { + if (jsonEventArray) { + NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; + NSString *requestUrl = [eventsUrl stringByAppendingString:kEventUrl]; + + NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; + [self addEventRequestHeaders:request]; + + NSError *error; + NSData *postData = [NSJSONSerialization dataWithJSONObject:jsonEventArray options:0 error:&error]; + + [request setHTTPMethod:@"POST"]; + [request setHTTPBody:postData]; + + NSURLSessionDataTask *dataTask = [defaultSession dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { + dispatch_semaphore_signal(semaphore); + dispatch_async(dispatch_get_main_queue(), ^{ + BOOL processedEvents = !error ? YES : NO; + [delegate processedEvents:processedEvents jsonEventArray:jsonEventArray]; + }); + }]; + + [dataTask resume]; + + dispatch_semaphore_wait(semaphore, kConnectionTimeout); - NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; - NSString *requestUrl = [eventsUrl stringByAppendingString:kEventUrl]; - - NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; - [self addEventRequestHeaders:request]; - - NSError *error; - NSData *postData = [NSJSONSerialization dataWithJSONObject:jsonEventArray options:0 error:&error]; - - [request setHTTPMethod:@"POST"]; - [request setHTTPBody:postData]; - - NSURLSessionDataTask *dataTask = [defaultSession dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { - dispatch_async(dispatch_get_main_queue(), ^{ - eventRequestInProgress = NO; - BOOL processedEvents = !error ? YES : NO; - [delegate processedEvents:processedEvents jsonEventArray:jsonEventArray]; - }); - }]; - - [dataTask resume]; - - } else { - DEBUG_LOGX(@"RequestManager unable to sync events to server since no events"); - } } else { - DEBUG_LOGX(@"RequestManager unable to sync events to server since no mobileKey"); + DEBUG_LOGX(@"RequestManager unable to sync events to server since no events"); } } else { - DEBUG_LOGX(@"RequestManager already has a sync events in progress"); + DEBUG_LOGX(@"RequestManager unable to sync events to server since no mobileKey"); } } From 9ae14fe7d32e7654e36603c6f50a36a983c057bd Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Fri, 5 May 2017 15:14:40 +0500 Subject: [PATCH 04/12] Fix wait time of semaphore to block for as long as needed --- Darkly/LDRequestManager.m | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Darkly/LDRequestManager.m b/Darkly/LDRequestManager.m index 805c2f36..4c2e9b3d 100644 --- a/Darkly/LDRequestManager.m +++ b/Darkly/LDRequestManager.m @@ -77,7 +77,7 @@ -(void)performFeatureFlagRequest:(NSString *)encodedUser [dataTask resume]; - dispatch_semaphore_wait(semaphore, kConnectionTimeout); + dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER); } else { DEBUG_LOGX(@"RequestManager unable to sync config to server since no encodedUser"); @@ -117,7 +117,7 @@ -(void)performEventRequest:(NSArray *)jsonEventArray [dataTask resume]; - dispatch_semaphore_wait(semaphore, kConnectionTimeout); + dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER); } else { DEBUG_LOGX(@"RequestManager unable to sync events to server since no events"); From 4d99408e8ab8394cf0ac2c7377fa7f9663dd2b9a Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Mon, 15 May 2017 13:15:58 +0500 Subject: [PATCH 05/12] Optimize user storage --- Darkly/LDDataManager.m | 16 +++++++++------- Darkly/LDUserModel.m | 2 ++ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/Darkly/LDDataManager.m b/Darkly/LDDataManager.m index ef4d1cbf..d4a30539 100644 --- a/Darkly/LDDataManager.m +++ b/Darkly/LDDataManager.m @@ -49,10 +49,14 @@ -(void) purgeOldUser: (NSMutableDictionary *)dictionary { removalDate = currentUser.updatedAt; } } else { - [dictionary removeObjectForKey:removalKey]; + if (removalKey) { + [dictionary removeObjectForKey:removalKey]; + } } } - [dictionary removeObjectForKey:removalKey]; + if (removalKey) { + [dictionary removeObjectForKey:removalKey]; + } } } @@ -105,10 +109,8 @@ - (void)compareConfigForUser:(LDUserModel *)user withNewUser:(LDUserModel *)newU - (void)storeUserDictionary:(NSDictionary *)userDictionary { NSMutableDictionary *archiveDictionary = [[NSMutableDictionary alloc] init]; for (NSString *key in userDictionary) { - NSData *userEncodedObject = [NSKeyedArchiver archivedDataWithRootObject:(LDUserModel *)[userDictionary objectForKey:key]]; - [archiveDictionary setObject:userEncodedObject forKey:key]; + [archiveDictionary setObject:[[userDictionary objectForKey:key] dictionaryValue] forKey:key]; } - NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:archiveDictionary forKey:kUserDictionaryStorageKey]; [defaults synchronize]; @@ -116,10 +118,10 @@ - (void)storeUserDictionary:(NSDictionary *)userDictionary { - (NSMutableDictionary *)retrieveUserDictionary { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; - NSMutableDictionary *retrievalDictionary = [[NSMutableDictionary alloc] init]; NSDictionary *encodedDictionary = [defaults objectForKey:kUserDictionaryStorageKey]; + NSMutableDictionary *retrievalDictionary = [[NSMutableDictionary alloc] initWithDictionary:encodedDictionary]; for (NSString *key in encodedDictionary) { - LDUserModel *decodedUser = [NSKeyedUnarchiver unarchiveObjectWithData:(NSData *)[encodedDictionary objectForKey:key]]; + LDUserModel *decodedUser = [[LDUserModel alloc] initWithDictionary:[encodedDictionary objectForKey:key]]; [retrievalDictionary setObject:decodedUser forKey:key]; } return retrievalDictionary; diff --git a/Darkly/LDUserModel.m b/Darkly/LDUserModel.m index 824b1a83..e07fe15c 100644 --- a/Darkly/LDUserModel.m +++ b/Darkly/LDUserModel.m @@ -49,6 +49,8 @@ -(NSDictionary *)dictionaryValue{ self.os ? [customDict setObject:self.os forKey:kOsKey] : nil; [dictionary setObject:customDict forKey:kCustomKey]; + + self.config.featuresJsonDictionary ? [dictionary setObject:[[self.config dictionaryValue] objectForKey:kFeaturesJsonDictionaryKey] forKey:kConfigKey] : nil; return dictionary; } From 6c5e78bef1497299f6162d6b6d4402610c2b7c90 Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Mon, 15 May 2017 13:16:25 +0500 Subject: [PATCH 06/12] Remove polling data race --- Darkly/LDPollingManager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Darkly/LDPollingManager.h b/Darkly/LDPollingManager.h index a1bce653..1b47b127 100644 --- a/Darkly/LDPollingManager.h +++ b/Darkly/LDPollingManager.h @@ -21,8 +21,8 @@ typedef enum { + (id)sharedInstance; -@property (nonatomic, assign) PollingState configPollingState; -@property (nonatomic, assign) PollingState eventPollingState; +@property (atomic, assign) PollingState configPollingState; +@property (atomic, assign) PollingState eventPollingState; @property (strong, nonatomic) dispatch_source_t configTimer; @property (nonatomic) NSTimeInterval configPollingIntervalMillis; From 9ee254abe27b8d6292b921d07e27dbd205d97aff Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Mon, 15 May 2017 23:13:02 +0500 Subject: [PATCH 07/12] Fix for test cases --- Darkly/LDUserModel.m | 7 +++++++ DarklyTests/Models/LDUserModelTest.m | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Darkly/LDUserModel.m b/Darkly/LDUserModel.m index e07fe15c..d13a30a3 100644 --- a/Darkly/LDUserModel.m +++ b/Darkly/LDUserModel.m @@ -43,6 +43,7 @@ -(NSDictionary *)dictionaryValue{ self.avatar ? [dictionary setObject:self.avatar forKey: kAvatarKey] : nil; self.custom ? [dictionary setObject:self.custom forKey: kCustomKey] : nil; self.anonymous ? [dictionary setObject:[NSNumber numberWithBool: self.anonymous ] forKey: kAnonymousKey] : nil; + self.updatedAt ? [dictionary setObject:[formatter stringFromDate:self.updatedAt] forKey:kUpdatedAtKey] : nil; NSMutableDictionary *customDict = [[NSMutableDictionary alloc] initWithDictionary:[dictionary objectForKey:kCustomKey]]; self.device ? [customDict setObject:self.device forKey:kDeviceKey] : nil; @@ -95,6 +96,11 @@ - (id)initWithCoder:(NSCoder *)decoder { - (id)initWithDictionary:(NSDictionary *)dictionary { if((self = [self init])) { //Process json that comes down from server + + NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; + [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"]; + [formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]]; + self.key = [dictionary objectForKey: kKeyKey]; self.ip = [dictionary objectForKey: kIpKey]; self.country = [dictionary objectForKey: kCountryKey]; @@ -106,6 +112,7 @@ - (id)initWithDictionary:(NSDictionary *)dictionary { self.device = [dictionary objectForKey: kDeviceKey]; self.os = [dictionary objectForKey: kOsKey]; self.anonymous = [[dictionary objectForKey: kAnonymousKey] boolValue]; + self.updatedAt = [formatter dateFromString:[dictionary objectForKey:kUpdatedAtKey]]; self.config = [[LDFlagConfigModel alloc] initWithDictionary:[dictionary objectForKey:kConfigKey]]; } return self; diff --git a/DarklyTests/Models/LDUserModelTest.m b/DarklyTests/Models/LDUserModelTest.m index 1e7c7748..450484dc 100644 --- a/DarklyTests/Models/LDUserModelTest.m +++ b/DarklyTests/Models/LDUserModelTest.m @@ -58,7 +58,7 @@ -(void)testDictionaryValue { NSDictionary *userDict2 = [user dictionaryValue]; [userDict setObject:[[NSDictionary alloc] initWithObjects:@[@"iPad",@"IOS 9.2.1"] forKeys:@[@"device",@"os"]] forKey:@"custom"]; - [userDict removeObjectsForKeys:@[@"device",@"os",@"config"]]; + [userDict removeObjectsForKeys:@[@"device",@"os"]]; NSArray *allKeys = [[userDict allKeys] sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)]; NSArray *allKeys2 = [[userDict2 allKeys] sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)]; From 95ce76c229c4815fc7b103f0adfdf69db6e55ebe Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Tue, 16 May 2017 11:07:18 +0500 Subject: [PATCH 08/12] Fix device and os storage --- Darkly/LDUserModel.m | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Darkly/LDUserModel.m b/Darkly/LDUserModel.m index d13a30a3..624242e8 100644 --- a/Darkly/LDUserModel.m +++ b/Darkly/LDUserModel.m @@ -109,8 +109,10 @@ - (id)initWithDictionary:(NSDictionary *)dictionary { self.lastName = [dictionary objectForKey: kLastNameKey]; self.avatar = [dictionary objectForKey: kAvatarKey]; self.custom = [dictionary objectForKey: kCustomKey]; - self.device = [dictionary objectForKey: kDeviceKey]; - self.os = [dictionary objectForKey: kOsKey]; + if (self.custom) { + self.device = [self.custom objectForKey: kDeviceKey]; + self.os = [self.custom objectForKey: kOsKey]; + } self.anonymous = [[dictionary objectForKey: kAnonymousKey] boolValue]; self.updatedAt = [formatter dateFromString:[dictionary objectForKey:kUpdatedAtKey]]; self.config = [[LDFlagConfigModel alloc] initWithDictionary:[dictionary objectForKey:kConfigKey]]; From 6ed8ab71904127895693dd92dd764aaac91a9442 Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Tue, 16 May 2017 11:20:26 +0500 Subject: [PATCH 09/12] Remove warning genrating methods --- Darkly/LDPollingManager.m | 8 -------- 1 file changed, 8 deletions(-) diff --git a/Darkly/LDPollingManager.m b/Darkly/LDPollingManager.m index 1a8eb042..1fd8341b 100644 --- a/Darkly/LDPollingManager.m +++ b/Darkly/LDPollingManager.m @@ -48,14 +48,6 @@ - (void)dealloc { eventPollingState = POLL_STOPPED; } -- (PollingState)configPollingState { - return configPollingState; -} - -- (PollingState)eventPollingState { - return eventPollingState; -} - #pragma mark - Config Polling methods - (void)startConfigPollTimer From b6d6fe549f4d319555941de2739b69e0674256d4 Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Tue, 16 May 2017 19:25:27 +0500 Subject: [PATCH 10/12] Add backwards compatibility for earlier users --- Darkly/LDDataManager.m | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Darkly/LDDataManager.m b/Darkly/LDDataManager.m index d4a30539..b4acca8d 100644 --- a/Darkly/LDDataManager.m +++ b/Darkly/LDDataManager.m @@ -121,7 +121,13 @@ - (NSMutableDictionary *)retrieveUserDictionary { NSDictionary *encodedDictionary = [defaults objectForKey:kUserDictionaryStorageKey]; NSMutableDictionary *retrievalDictionary = [[NSMutableDictionary alloc] initWithDictionary:encodedDictionary]; for (NSString *key in encodedDictionary) { - LDUserModel *decodedUser = [[LDUserModel alloc] initWithDictionary:[encodedDictionary objectForKey:key]]; + LDUserModel *decodedUser; + if ([[encodedDictionary objectForKey:key] isKindOfClass:[NSData class]]) { + decodedUser = [NSKeyedUnarchiver unarchiveObjectWithData:(NSData *)[encodedDictionary objectForKey:key]]; + } + else{ + decodedUser = [[LDUserModel alloc] initWithDictionary:[encodedDictionary objectForKey:key]]; + } [retrievalDictionary setObject:decodedUser forKey:key]; } return retrievalDictionary; From af5c9f234516d4614471d4c9f8c862204c575cfb Mon Sep 17 00:00:00 2001 From: Arun Bhalla Date: Wed, 17 May 2017 21:19:40 -0700 Subject: [PATCH 11/12] [CH3478] Use the configured connection timeout --- Darkly/LDClientManager.m | 2 +- Darkly/LDRequestManager.m | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Darkly/LDClientManager.m b/Darkly/LDClientManager.m index f8984c6d..b1d04f14 100644 --- a/Darkly/LDClientManager.m +++ b/Darkly/LDClientManager.m @@ -49,7 +49,7 @@ - (void)startPolling { [pollingMgr startEventPolling]; if ([config streaming]) { - eventSource = [EventSource eventSourceWithURL:[NSURL URLWithString:kStreamUrl] mobileKey:config.mobileKey]; + eventSource = [EventSource eventSourceWithURL:[NSURL URLWithString:kStreamUrl] mobileKey:config.mobileKey timeoutInterval:[config.connectionTimeout doubleValue]]; [eventSource onMessage:^(Event *e) { [self syncWithServerForConfig]; diff --git a/Darkly/LDRequestManager.m b/Darkly/LDRequestManager.m index 4c2e9b3d..3f6c4656 100644 --- a/Darkly/LDRequestManager.m +++ b/Darkly/LDRequestManager.m @@ -53,6 +53,7 @@ -(void)performFeatureFlagRequest:(NSString *)encodedUser requestUrl = [requestUrl stringByAppendingString:encodedUser]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; + [request setTimeoutInterval:self.connectionTimeout]; [self addFeatureRequestHeaders:request]; @@ -99,6 +100,7 @@ -(void)performEventRequest:(NSArray *)jsonEventArray NSString *requestUrl = [eventsUrl stringByAppendingString:kEventUrl]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestUrl]]; + [request setTimeoutInterval:self.connectionTimeout]; [self addEventRequestHeaders:request]; NSError *error; From 618fe9f73fa03987256430c5e845a456d1f49a1d Mon Sep 17 00:00:00 2001 From: Danial Zahid Date: Thu, 18 May 2017 16:19:11 +0500 Subject: [PATCH 12/12] Optimize purgeUsers and add tests --- Darkly/LDDataManager.h | 1 + Darkly/LDDataManager.m | 58 ++++++++++++++----------- DarklyTests/Fixtures/feature_flags.json | 18 +++++++- DarklyTests/Models/LDUserModelTest.m | 37 +++++++++++++--- 4 files changed, 82 insertions(+), 32 deletions(-) diff --git a/Darkly/LDDataManager.h b/Darkly/LDDataManager.h index eeafd4bb..b0f4acf6 100644 --- a/Darkly/LDDataManager.h +++ b/Darkly/LDDataManager.h @@ -20,6 +20,7 @@ extern int const kUserCacheSize; -(void) createCustomEvent: (NSString *)eventKey withCustomValuesDictionary: (NSDictionary *)customDict; -(void) purgeOldUser: (NSMutableDictionary *)dictionary; -(void) saveUser: (LDUserModel *) user; +-(void) saveUserDeprecated:(LDUserModel *)user __deprecated_msg("Use saveUser: instead"); -(void) deleteProcessedEvents: (NSArray *) processedJsonArray; -(void)flushEventsDictionary; diff --git a/Darkly/LDDataManager.m b/Darkly/LDDataManager.m index b4acca8d..f4796523 100644 --- a/Darkly/LDDataManager.m +++ b/Darkly/LDDataManager.m @@ -33,34 +33,24 @@ + (id)sharedManager { #pragma mark - users -(void) purgeOldUser: (NSMutableDictionary *)dictionary { if (dictionary && [dictionary count] >= kUserCacheSize) { - NSString *removalKey; - NSDate *removalDate; - for (id key in dictionary) { - LDUserModel *currentUser = [dictionary objectForKey:key]; - if (currentUser) { - if (removalKey) { - NSComparisonResult result = [removalDate compare:currentUser.updatedAt]; - if (result==NSOrderedDescending) { - removalKey = currentUser.key; - removalDate = currentUser.updatedAt; - } - } else { - removalKey = currentUser.key; - removalDate = currentUser.updatedAt; - } - } else { - if (removalKey) { - [dictionary removeObjectForKey:removalKey]; - } - } - } - if (removalKey) { - [dictionary removeObjectForKey:removalKey]; - } + + NSArray *sortedKeys = [dictionary keysSortedByValueUsingComparator: ^(LDUserModel *user1, LDUserModel *user2) { + return [user1.updatedAt compare:user2.updatedAt]; + }]; + + [dictionary removeObjectForKey:sortedKeys.firstObject]; } } -(void) saveUser: (LDUserModel *) user { + [self saveUser:user asDict:YES]; +} + +-(void) saveUserDeprecated:(LDUserModel *)user { + [self saveUser:user asDict:NO]; +} + +-(void) saveUser:(LDUserModel *)user asDict:(BOOL)asDict { NSMutableDictionary *userDictionary = [self retrieveUserDictionary]; if (userDictionary) { LDUserModel *resultUser = [userDictionary objectForKey:user.key]; @@ -83,7 +73,13 @@ -(void) saveUser: (LDUserModel *) user { [userDictionary setObject:user forKey:user.key]; } [userDictionary setObject:user forKey:user.key]; - [self storeUserDictionary:userDictionary]; + if (asDict) { + [self storeUserDictionary:userDictionary]; + } + else{ + [self deprecatedStoreUserDictionary:userDictionary]; + } + } -(LDUserModel *)findUserWithkey: (NSString *)key { @@ -116,6 +112,18 @@ - (void)storeUserDictionary:(NSDictionary *)userDictionary { [defaults synchronize]; } +- (void)deprecatedStoreUserDictionary:(NSDictionary *)userDictionary { + NSMutableDictionary *archiveDictionary = [[NSMutableDictionary alloc] init]; + for (NSString *key in userDictionary) { + NSData *userEncodedObject = [NSKeyedArchiver archivedDataWithRootObject:(LDUserModel *)[userDictionary objectForKey:key]]; + [archiveDictionary setObject:userEncodedObject forKey:key]; + } + + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + [defaults setObject:archiveDictionary forKey:kUserDictionaryStorageKey]; + [defaults synchronize]; +} + - (NSMutableDictionary *)retrieveUserDictionary { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSDictionary *encodedDictionary = [defaults objectForKey:kUserDictionaryStorageKey]; diff --git a/DarklyTests/Fixtures/feature_flags.json b/DarklyTests/Fixtures/feature_flags.json index f4def32a..f499189c 100644 --- a/DarklyTests/Fixtures/feature_flags.json +++ b/DarklyTests/Fixtures/feature_flags.json @@ -1 +1,17 @@ -{"_links":{"self":{"href":"/api/eval/users/eyJrZXkiOiAiamVmZkB0ZXN0LmNvbSJ9","type":"application/json"}},"devices.hasipad":false, "isConnected":null, "isAString":"test", "isAArray":[0,1,2], "isAObject":{"key": 0}, "isANumber":0, "isABawler":true} \ No newline at end of file +{ + "_links": + { + "href":"/api/eval/users/eyJrZXkiOiAiamVmZkB0ZXN0LmNvbSJ9", + "type":"application/json" + }, + "devices.hasipad":false, + "isConnected":null, + "isAString":"test", + "isAArray":[0,1,2], + "isAObject": + { + "key": 0 + }, + "isANumber":0, + "isABawler":true +} diff --git a/DarklyTests/Models/LDUserModelTest.m b/DarklyTests/Models/LDUserModelTest.m index 450484dc..ecc09817 100644 --- a/DarklyTests/Models/LDUserModelTest.m +++ b/DarklyTests/Models/LDUserModelTest.m @@ -4,6 +4,7 @@ #import #import "LDUserModel.h" +#import "LDDataManager.h" @interface LDUserModelTest : XCTestCase @end @@ -30,14 +31,14 @@ -(void)testDictionaryValue { NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"]; [formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]]; - + NSString *filepath = [[NSBundle bundleForClass:[LDUserModelTest class]] pathForResource:@"feature_flags" - ofType:@"json"]; + ofType:@"json"]; NSError *error = nil; NSData *data = [NSData dataWithContentsOfFile:filepath]; NSDictionary *serverJson = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions - error:&error]; + error:&error]; NSMutableDictionary *userDict = [[NSMutableDictionary alloc] initWithDictionary:@{ @"key": @"aKey", @"ip": @"123.456.789", @@ -52,7 +53,7 @@ -(void)testDictionaryValue { @"device": @"iPad", @"os": @"IOS 9.2.1" }]; - + LDUserModel *user = [[LDUserModel alloc] initWithDictionary:userDict]; NSDictionary *userDict2 = [user dictionaryValue]; @@ -81,13 +82,37 @@ -(void)testDictionaryValue { XCTAssertEqual([updateAtDate compare:[userDict objectForKey:@"updatedAt"]], NSOrderedSame); NSDictionary *config2 = [userDict2 objectForKey: @"config"]; - + NSArray *originalKeys = [[serverJson objectForKey:@"items"] allKeys]; NSArray *configKeys = [[config2 objectForKey:@"featuresJsonDictionary"] allKeys]; XCTAssertFalse([originalKeys isEqualToArray:configKeys]); - + NSLog(@"Stop"); } +-(void)testUserBackwardsCompatibility { + + NSMutableDictionary *userDict = [[NSMutableDictionary alloc] initWithDictionary:@{ @"key": @"aKey", + @"ip": @"123.456.789", + @"country": @"USA", + @"firstName": @"John", + @"lastName": @"Doe", + @"email": @"jdub@g.com", + @"avatar": @"foo", + @"custom": @{@"foo": @"Foo"}, + @"anonymous": @1, + @"device": @"iPad", + @"os": @"IOS 9.2.1" + }]; + + LDUserModel *user = [[LDUserModel alloc] initWithDictionary:userDict]; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" + [[LDDataManager sharedManager] saveUserDeprecated:user]; +#pragma clang diagnostic pop + [[LDDataManager sharedManager] saveUser:user]; + +} + @end