From 2b903d3a7daa83544c622538e3ea0a142543c473 Mon Sep 17 00:00:00 2001 From: Darin Krauss Date: Wed, 10 Apr 2019 14:15:15 -0700 Subject: [PATCH 1/6] Do not automatically create schemes --- .gitignore | 3 +-- .../xcshareddata/IDEWorkspaceChecks.plist | 8 ++++++++ .../xcshareddata/WorkspaceSettings.xcsettings | 8 ++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 ShareClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ShareClient.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/.gitignore b/.gitignore index 61f9ecb..5c13bfd 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,6 @@ profile DerivedData *.hmap *.ipa -project.xcworkspace # Bundler .bundle @@ -27,7 +26,7 @@ Carthage # We recommend against adding the Pods directory to your .gitignore. However # you should judge for yourself, the pros and cons are mentioned at: # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control -# +# # Note: if you ignore the Pods directory, make sure to uncomment # `pod install` in .travis.yml # diff --git a/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..08de0be --- /dev/null +++ b/ShareClient.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded + + + From 6ee8431b8f021082f8368f6427465ff6d95c3d69 Mon Sep 17 00:00:00 2001 From: Darin Krauss Date: Wed, 10 Apr 2019 14:17:03 -0700 Subject: [PATCH 2/6] Explicitly specify project dependencies --- ShareClient.xcodeproj/project.pbxproj | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ShareClient.xcodeproj/project.pbxproj b/ShareClient.xcodeproj/project.pbxproj index 1d48918..0b4b854 100644 --- a/ShareClient.xcodeproj/project.pbxproj +++ b/ShareClient.xcodeproj/project.pbxproj @@ -72,6 +72,13 @@ remoteGlobalIDString = 432B0E871CDFC3C50045347B; remoteInfo = ShareClient; }; + A9E521F6225E949400EDDEF2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 432B0E7F1CDFC3C50045347B /* Project object */; + proxyType = 1; + remoteGlobalIDString = 432B0E871CDFC3C50045347B; + remoteInfo = ShareClient; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -320,6 +327,7 @@ buildRules = ( ); dependencies = ( + A9E521F7225E949400EDDEF2 /* PBXTargetDependency */, 4325E9D9210E715200969CE5 /* PBXTargetDependency */, ); name = ShareClientUI; @@ -484,6 +492,11 @@ target = 432B0E871CDFC3C50045347B /* ShareClient */; targetProxy = 432B0E941CDFC3C50045347B /* PBXContainerItemProxy */; }; + A9E521F7225E949400EDDEF2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 432B0E871CDFC3C50045347B /* ShareClient */; + targetProxy = A9E521F6225E949400EDDEF2 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ From c71acce856a68af98cff1ec2e49a3932c7890a4d Mon Sep 17 00:00:00 2001 From: Darin Krauss Date: Wed, 10 Apr 2019 16:30:10 -0700 Subject: [PATCH 3/6] Create one shared scheme to improve Carthage build times; remove Cartfile target; project updates --- ShareClient.xcodeproj/project.pbxproj | 111 +----------------- .../xcschemes/ShareClientUI.xcscheme | 80 ------------- ...areClient.xcscheme => Shared iOS.xcscheme} | 28 +++-- 3 files changed, 22 insertions(+), 197 deletions(-) delete mode 100644 ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClientUI.xcscheme rename ShareClient.xcodeproj/xcshareddata/xcschemes/{ShareClient.xcscheme => Shared iOS.xcscheme} (87%) diff --git a/ShareClient.xcodeproj/project.pbxproj b/ShareClient.xcodeproj/project.pbxproj index 0b4b854..9e29343 100644 --- a/ShareClient.xcodeproj/project.pbxproj +++ b/ShareClient.xcodeproj/project.pbxproj @@ -6,20 +6,6 @@ objectVersion = 46; objects = { -/* Begin PBXAggregateTarget section */ - 43A8EC75210E653B00A81379 /* Cartfile */ = { - isa = PBXAggregateTarget; - buildConfigurationList = 43A8EC76210E653C00A81379 /* Build configuration list for PBXAggregateTarget "Cartfile" */; - buildPhases = ( - 43A8EC79210E654300A81379 /* Build Carthage Dependencies */, - ); - dependencies = ( - ); - name = Cartfile; - productName = Cartfile; - }; -/* End PBXAggregateTarget section */ - /* Begin PBXBuildFile section */ 4325E9CF210E6A0A00969CE5 /* HKUnit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4325E9CE210E6A0A00969CE5 /* HKUnit.swift */; }; 4325E9D1210E6A3D00969CE5 /* TimeInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4325E9D0210E6A3D00969CE5 /* TimeInterval.swift */; }; @@ -51,20 +37,6 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 4325E9D6210E714B00969CE5 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 432B0E7F1CDFC3C50045347B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 43A8EC75210E653B00A81379; - remoteInfo = Cartfile; - }; - 4325E9D8210E715200969CE5 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 432B0E7F1CDFC3C50045347B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 43A8EC75210E653B00A81379; - remoteInfo = Cartfile; - }; 432B0E941CDFC3C50045347B /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 432B0E7F1CDFC3C50045347B /* Project object */; @@ -105,11 +77,11 @@ 432B0E921CDFC3C50045347B /* ShareClientTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ShareClientTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 432B0E971CDFC3C50045347B /* ShareClientTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareClientTests.swift; sourceTree = ""; }; 432B0E991CDFC3C50045347B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 43A8EC7B210E661400A81379 /* LoopKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LoopKit.framework; path = Carthage/Build/iOS/LoopKit.framework; sourceTree = ""; }; + 43A8EC7B210E661400A81379 /* LoopKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LoopKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 43A8EC82210E664300A81379 /* ShareClientUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ShareClientUI.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 43A8EC84210E664300A81379 /* ShareClientUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ShareClientUI.h; sourceTree = ""; }; 43A8EC85210E664300A81379 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 43A8EC8B210E665600A81379 /* LoopKitUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LoopKitUI.framework; path = Carthage/Build/iOS/LoopKitUI.framework; sourceTree = ""; }; + 43A8EC8B210E665600A81379 /* LoopKitUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LoopKitUI.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 43A8EC8D210E676500A81379 /* ShareClientSetupViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareClientSetupViewController.swift; sourceTree = ""; }; 43A8EC8E210E676500A81379 /* ShareClientManager+UI.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ShareClientManager+UI.swift"; sourceTree = ""; }; 43A8EC8F210E676500A81379 /* ShareClientSettingsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareClientSettingsViewController.swift; sourceTree = ""; }; @@ -289,7 +261,6 @@ buildRules = ( ); dependencies = ( - 4325E9D7210E714B00969CE5 /* PBXTargetDependency */, ); name = ShareClient; productName = ShareClient; @@ -328,7 +299,6 @@ ); dependencies = ( A9E521F7225E949400EDDEF2 /* PBXTargetDependency */, - 4325E9D9210E715200969CE5 /* PBXTargetDependency */, ); name = ShareClientUI; productName = ShareClientUI; @@ -353,10 +323,6 @@ CreatedOnToolsVersion = 7.3.1; LastSwiftMigration = 0900; }; - 43A8EC75210E653B00A81379 = { - CreatedOnToolsVersion = 9.4.1; - ProvisioningStyle = Automatic; - }; 43A8EC81210E664300A81379 = { CreatedOnToolsVersion = 9.4.1; LastSwiftMigration = 1000; @@ -389,7 +355,6 @@ 432B0E871CDFC3C50045347B /* ShareClient */, 432B0E911CDFC3C50045347B /* ShareClientTests */, 43A8EC81210E664300A81379 /* ShareClientUI */, - 43A8EC75210E653B00A81379 /* Cartfile */, ); }; /* End PBXProject section */ @@ -420,23 +385,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 43A8EC79210E654300A81379 /* Build Carthage Dependencies */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Build Carthage Dependencies"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "if [ \"$CARTHAGE\" = \"YES\" ]; then\n echo \"Skipping carthage build because we're already in one\"\nelif [ -d $PROJECT_DIR/../../../Loop.xcworkspace ]; then\n echo \"Skipping carthage build because we're in a workspace\"\nelif [ -f $PROJECT_DIR/.gitmodules ]; then\n echo \"Skipping checkout due to presence of .gitmodules file\"\n if [ $ACTION = \"install\" ]; then\n echo \"You're installing: Make sure to keep all submodules up-to-date and run carthage build after changes.\"\n fi\nelse\n unset LLVM_TARGET_TRIPLE_SUFFIX\n echo \"Bootstrapping carthage dependencies\"\n /usr/local/bin/carthage bootstrap --project-directory \"$SRCROOT\" --cache-builds\nfi\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ 432B0E831CDFC3C50045347B /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -477,16 +425,6 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 4325E9D7210E714B00969CE5 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 43A8EC75210E653B00A81379 /* Cartfile */; - targetProxy = 4325E9D6210E714B00969CE5 /* PBXContainerItemProxy */; - }; - 4325E9D9210E715200969CE5 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 43A8EC75210E653B00A81379 /* Cartfile */; - targetProxy = 4325E9D8210E715200969CE5 /* PBXContainerItemProxy */; - }; 432B0E951CDFC3C50045347B /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 432B0E871CDFC3C50045347B /* ShareClient */; @@ -541,10 +479,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CARTHAGE_PLATFORM_PATH_iphoneos = iOS; - CARTHAGE_PLATFORM_PATH_iphonesimulator = iOS; - CARTHAGE_PLATFORM_PATH_watchos = watchOS; - CARTHAGE_PLATFORM_PATH_watchsimulator = watchOS; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -611,10 +545,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - CARTHAGE_PLATFORM_PATH_iphoneos = iOS; - CARTHAGE_PLATFORM_PATH_iphonesimulator = iOS; - CARTHAGE_PLATFORM_PATH_watchos = watchOS; - CARTHAGE_PLATFORM_PATH_watchsimulator = watchOS; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -683,7 +613,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM_PATH_$(PLATFORM_NAME))", + "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = ShareClient/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -691,10 +621,8 @@ PRODUCT_BUNDLE_IDENTIFIER = com.mddub.ShareClient; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; - SUPPORTED_PLATFORMS = "iphonesimulator iphoneos watchos watchsimulator"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2,4"; }; name = Debug; }; @@ -710,7 +638,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM_PATH_$(PLATFORM_NAME))", + "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = ShareClient/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -718,9 +646,7 @@ PRODUCT_BUNDLE_IDENTIFIER = com.mddub.ShareClient; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; - SUPPORTED_PLATFORMS = "iphonesimulator iphoneos watchos watchsimulator"; SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2,4"; }; name = Release; }; @@ -728,7 +654,7 @@ isa = XCBuildConfiguration; buildSettings = { FRAMEWORK_SEARCH_PATHS = ( - "$(inherited),", + "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = ShareClientTests/Info.plist; @@ -743,7 +669,7 @@ isa = XCBuildConfiguration; buildSettings = { FRAMEWORK_SEARCH_PATHS = ( - "$(inherited),", + "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = ShareClientTests/Info.plist; @@ -754,22 +680,6 @@ }; name = Release; }; - 43A8EC77210E653C00A81379 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 43A8EC78210E653C00A81379 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; 43A8EC88210E664300A81379 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -867,15 +777,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 43A8EC76210E653C00A81379 /* Build configuration list for PBXAggregateTarget "Cartfile" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 43A8EC77210E653C00A81379 /* Debug */, - 43A8EC78210E653C00A81379 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 43A8EC87210E664300A81379 /* Build configuration list for PBXNativeTarget "ShareClientUI" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClientUI.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClientUI.xcscheme deleted file mode 100644 index f5193fc..0000000 --- a/ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClientUI.xcscheme +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClient.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared iOS.xcscheme similarity index 87% rename from ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClient.xcscheme rename to ShareClient.xcodeproj/xcshareddata/xcschemes/Shared iOS.xcscheme index 58e16e6..1893dad 100644 --- a/ShareClient.xcodeproj/xcshareddata/xcschemes/ShareClient.xcscheme +++ b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared iOS.xcscheme @@ -1,10 +1,10 @@ + buildImplicitDependencies = "NO"> + + + + - - - - Date: Wed, 10 Apr 2019 17:31:28 -0700 Subject: [PATCH 4/6] Create watchOS target and scheme --- ShareClient.xcodeproj/project.pbxproj | 178 ++++++++++++++++-- .../xcschemes/Shared watchOS.xcscheme | 80 ++++++++ 2 files changed, 243 insertions(+), 15 deletions(-) create mode 100644 ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme diff --git a/ShareClient.xcodeproj/project.pbxproj b/ShareClient.xcodeproj/project.pbxproj index 9e29343..0b500d5 100644 --- a/ShareClient.xcodeproj/project.pbxproj +++ b/ShareClient.xcodeproj/project.pbxproj @@ -32,7 +32,18 @@ 43AB51362133177800B3D58D /* LocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43AB51352133177800B3D58D /* LocalizedString.swift */; }; 43AB51372133177800B3D58D /* LocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43AB51352133177800B3D58D /* LocalizedString.swift */; }; 43C418AF1CE0488900405B6A /* ShareClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43C418AE1CE0488900405B6A /* ShareClient.swift */; }; - C17D3CC52184CBCD003458C8 /* LoopKit.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 43A8EC7B210E661400A81379 /* LoopKit.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + A9AD06BC225ECDAC00471B4A /* HealthKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 43A8EC94210E67B000A81379 /* HealthKit.framework */; }; + A9ED4D93225EB4D30080DEBA /* HKUnit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4325E9CE210E6A0A00969CE5 /* HKUnit.swift */; }; + A9ED4D94225EB4D30080DEBA /* TimeInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4325E9D0210E6A3D00969CE5 /* TimeInterval.swift */; }; + A9ED4D95225EB4D30080DEBA /* ShareClientManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43A8EC9C210E68CE00A81379 /* ShareClientManager.swift */; }; + A9ED4D96225EB4D30080DEBA /* LocalizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43AB51352133177800B3D58D /* LocalizedString.swift */; }; + A9ED4D97225EB4D30080DEBA /* ShareGlucose+GlucoseKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43A8EC9A210E68BA00A81379 /* ShareGlucose+GlucoseKit.swift */; }; + A9ED4D98225EB4D30080DEBA /* ShareClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43C418AE1CE0488900405B6A /* ShareClient.swift */; }; + A9ED4D99225EB4D30080DEBA /* ShareService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43A8EC98210E682A00A81379 /* ShareService.swift */; }; + A9ED4D9C225EB4D30080DEBA /* LoopKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 43A8EC7B210E661400A81379 /* LoopKit.framework */; }; + A9ED4D9E225EB4D30080DEBA /* ShareClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 432B0E8B1CDFC3C50045347B /* ShareClient.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A9ED4DA0225EB4D30080DEBA /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 43AB5125213315D300B3D58D /* Localizable.strings */; }; + A9ED4DAF225EB93A0080DEBA /* HealthKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9ED4DAE225EB9390080DEBA /* HealthKit.framework */; }; C17D3CC62184CC26003458C8 /* LoopKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 43A8EC7B210E661400A81379 /* LoopKit.framework */; }; /* End PBXBuildFile section */ @@ -53,19 +64,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - C17D3CC42184CBB7003458C8 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - C17D3CC52184CBCD003458C8 /* LoopKit.framework in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 4325E9CE210E6A0A00969CE5 /* HKUnit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HKUnit.swift; sourceTree = ""; }; 4325E9D0210E6A3D00969CE5 /* TimeInterval.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TimeInterval.swift; sourceTree = ""; }; @@ -112,6 +110,8 @@ 43AB51302133161A00B3D58D /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = ""; }; 43AB51352133177800B3D58D /* LocalizedString.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LocalizedString.swift; sourceTree = ""; }; 43C418AE1CE0488900405B6A /* ShareClient.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareClient.swift; sourceTree = ""; }; + A9ED4DA4225EB4D30080DEBA /* ShareClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ShareClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + A9ED4DAE225EB9390080DEBA /* HealthKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HealthKit.framework; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS.sdk/System/Library/Frameworks/HealthKit.framework; sourceTree = DEVELOPER_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -128,6 +128,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + A9AD06BC225ECDAC00471B4A /* HealthKit.framework in Frameworks */, 432B0E931CDFC3C50045347B /* ShareClient.framework in Frameworks */, C17D3CC62184CC26003458C8 /* LoopKit.framework in Frameworks */, ); @@ -143,6 +144,15 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + A9ED4D9A225EB4D30080DEBA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + A9ED4DAF225EB93A0080DEBA /* HealthKit.framework in Frameworks */, + A9ED4D9C225EB4D30080DEBA /* LoopKit.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -164,6 +174,7 @@ 432B0E881CDFC3C50045347B /* ShareClient.framework */, 432B0E921CDFC3C50045347B /* ShareClientTests.xctest */, 43A8EC82210E664300A81379 /* ShareClientUI.framework */, + A9ED4DA4225EB4D30080DEBA /* ShareClient.framework */, ); name = Products; sourceTree = ""; @@ -197,6 +208,7 @@ isa = PBXGroup; children = ( 43A8EC94210E67B000A81379 /* HealthKit.framework */, + A9ED4DAE225EB9390080DEBA /* HealthKit.framework */, 43A8EC8B210E665600A81379 /* LoopKitUI.framework */, 43A8EC7B210E661400A81379 /* LoopKit.framework */, ); @@ -246,6 +258,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + A9ED4D9D225EB4D30080DEBA /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + A9ED4D9E225EB4D30080DEBA /* ShareClient.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ @@ -274,7 +294,7 @@ 432B0E8E1CDFC3C50045347B /* Sources */, 432B0E8F1CDFC3C50045347B /* Frameworks */, 432B0E901CDFC3C50045347B /* Resources */, - C17D3CC42184CBB7003458C8 /* CopyFiles */, + A9F2C3E0225ECF8800C3B796 /* Copy Frameworks with Carthage */, ); buildRules = ( ); @@ -305,6 +325,24 @@ productReference = 43A8EC82210E664300A81379 /* ShareClientUI.framework */; productType = "com.apple.product-type.framework"; }; + A9ED4D91225EB4D30080DEBA /* ShareClient watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient watchOS" */; + buildPhases = ( + A9ED4D92225EB4D30080DEBA /* Sources */, + A9ED4D9A225EB4D30080DEBA /* Frameworks */, + A9ED4D9D225EB4D30080DEBA /* Headers */, + A9ED4D9F225EB4D30080DEBA /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "ShareClient watchOS"; + productName = ShareClient; + productReference = A9ED4DA4225EB4D30080DEBA /* ShareClient.framework */; + productType = "com.apple.product-type.framework"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -353,6 +391,7 @@ projectRoot = ""; targets = ( 432B0E871CDFC3C50045347B /* ShareClient */, + A9ED4D91225EB4D30080DEBA /* ShareClient watchOS */, 432B0E911CDFC3C50045347B /* ShareClientTests */, 43A8EC81210E664300A81379 /* ShareClientUI */, ); @@ -383,8 +422,39 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + A9ED4D9F225EB4D30080DEBA /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + A9ED4DA0225EB4D30080DEBA /* Localizable.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + A9F2C3E0225ECF8800C3B796 /* Copy Frameworks with Carthage */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "$(BUILT_PRODUCTS_DIR)/LoopKit.framework", + ); + name = "Copy Frameworks with Carthage"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/LoopKit.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "CARTHAGE_BUILD_DIR=\"${SRCROOT}/Carthage/Build\"\nif [ -n \"${IPHONEOS_DEPLOYMENT_TARGET}\" ]; then\n CARTHAGE_BUILD_DIR=\"${CARTHAGE_BUILD_DIR}/iOS\"\nelif [ -n \"${WATCHOS_DEPLOYMENT_TARGET}\" ]; then\n CARTHAGE_BUILD_DIR=\"${CARTHAGE_BUILD_DIR}/watchOS\"\nelse\n echo \"ERROR: Unexpected deployment target type\"\n exit 1\nfi\n\nfor SCRIPT_INPUT_FILE in ${!SCRIPT_INPUT_FILE_*}; do\n CARTHAGE_BUILD_FILE=\"${!SCRIPT_INPUT_FILE/${BUILT_PRODUCTS_DIR}/${CARTHAGE_BUILD_DIR}}\"\n if [ -e \"${CARTHAGE_BUILD_FILE}\" ]; then\n if [ -e \"${SCRIPT_INPUT_FILE}\" ]; then\n echo \"ERROR: Duplicate frameworks found at:\"\n echo \" ${SCRIPT_INPUT_FILE}\"\n echo \" ${CARTHAGE_BUILD_FILE}\"\n exit 1\n fi\n echo \"Substituting \\\"${CARTHAGE_BUILD_FILE}\\\" for \\\"${!SCRIPT_INPUT_FILE}\\\"\"\n export ${SCRIPT_INPUT_FILE}=\"${CARTHAGE_BUILD_FILE}\"\n fi\ndone\n\necho \"Copy Frameworks with Carthage\"\ncarthage copy-frameworks\n"; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 432B0E831CDFC3C50045347B /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -422,6 +492,20 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + A9ED4D92225EB4D30080DEBA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + A9ED4D93225EB4D30080DEBA /* HKUnit.swift in Sources */, + A9ED4D94225EB4D30080DEBA /* TimeInterval.swift in Sources */, + A9ED4D95225EB4D30080DEBA /* ShareClientManager.swift in Sources */, + A9ED4D96225EB4D30080DEBA /* LocalizedString.swift in Sources */, + A9ED4D97225EB4D30080DEBA /* ShareGlucose+GlucoseKit.swift in Sources */, + A9ED4D98225EB4D30080DEBA /* ShareClient.swift in Sources */, + A9ED4D99225EB4D30080DEBA /* ShareService.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -747,6 +831,61 @@ }; name = Release; }; + A9ED4DA2225EB4D30080DEBA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + CLANG_ENABLE_MODULES = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = ShareClient/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.mddub.ShareClient; + PRODUCT_NAME = ShareClient; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SUPPORTED_PLATFORMS = "watchos watchsimulator"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = 4; + }; + name = Debug; + }; + A9ED4DA3225EB4D30080DEBA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + CLANG_ENABLE_MODULES = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 2; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = ShareClient/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.mddub.ShareClient; + PRODUCT_NAME = ShareClient; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "watchos watchsimulator"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = 4; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -786,6 +925,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + A9ED4DA2225EB4D30080DEBA /* Debug */, + A9ED4DA3225EB4D30080DEBA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; /* End XCConfigurationList section */ }; rootObject = 432B0E7F1CDFC3C50045347B /* Project object */; diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme new file mode 100644 index 0000000..eb5dce1 --- /dev/null +++ b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 8a821f94b2ef7fa5440516dbc75adf580a9cf00b Mon Sep 17 00:00:00 2001 From: Darin Krauss Date: Wed, 8 May 2019 18:59:12 -0700 Subject: [PATCH 5/6] Use consistent iOS and watchOS scheme and target name convention --- ShareClient.xcodeproj/project.pbxproj | 10 +++++----- ...Shared watchOS.xcscheme => Shared-watchOS.xcscheme} | 6 +++--- .../xcschemes/{Shared iOS.xcscheme => Shared.xcscheme} | 0 3 files changed, 8 insertions(+), 8 deletions(-) rename ShareClient.xcodeproj/xcshareddata/xcschemes/{Shared watchOS.xcscheme => Shared-watchOS.xcscheme} (94%) rename ShareClient.xcodeproj/xcshareddata/xcschemes/{Shared iOS.xcscheme => Shared.xcscheme} (100%) diff --git a/ShareClient.xcodeproj/project.pbxproj b/ShareClient.xcodeproj/project.pbxproj index 0b500d5..ba6a52f 100644 --- a/ShareClient.xcodeproj/project.pbxproj +++ b/ShareClient.xcodeproj/project.pbxproj @@ -325,9 +325,9 @@ productReference = 43A8EC82210E664300A81379 /* ShareClientUI.framework */; productType = "com.apple.product-type.framework"; }; - A9ED4D91225EB4D30080DEBA /* ShareClient watchOS */ = { + A9ED4D91225EB4D30080DEBA /* ShareClient-watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient watchOS" */; + buildConfigurationList = A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient-watchOS" */; buildPhases = ( A9ED4D92225EB4D30080DEBA /* Sources */, A9ED4D9A225EB4D30080DEBA /* Frameworks */, @@ -338,7 +338,7 @@ ); dependencies = ( ); - name = "ShareClient watchOS"; + name = "ShareClient-watchOS"; productName = ShareClient; productReference = A9ED4DA4225EB4D30080DEBA /* ShareClient.framework */; productType = "com.apple.product-type.framework"; @@ -391,7 +391,7 @@ projectRoot = ""; targets = ( 432B0E871CDFC3C50045347B /* ShareClient */, - A9ED4D91225EB4D30080DEBA /* ShareClient watchOS */, + A9ED4D91225EB4D30080DEBA /* ShareClient-watchOS */, 432B0E911CDFC3C50045347B /* ShareClientTests */, 43A8EC81210E664300A81379 /* ShareClientUI */, ); @@ -925,7 +925,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient watchOS" */ = { + A9ED4DA1225EB4D30080DEBA /* Build configuration list for PBXNativeTarget "ShareClient-watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( A9ED4DA2225EB4D30080DEBA /* Debug */, diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared-watchOS.xcscheme similarity index 94% rename from ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme rename to ShareClient.xcodeproj/xcshareddata/xcschemes/Shared-watchOS.xcscheme index eb5dce1..108701f 100644 --- a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared watchOS.xcscheme +++ b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared-watchOS.xcscheme @@ -16,7 +16,7 @@ BuildableIdentifier = "primary" BlueprintIdentifier = "A9ED4D91225EB4D30080DEBA" BuildableName = "ShareClient.framework" - BlueprintName = "ShareClient watchOS" + BlueprintName = "ShareClient-watchOS" ReferencedContainer = "container:ShareClient.xcodeproj"> @@ -47,7 +47,7 @@ BuildableIdentifier = "primary" BlueprintIdentifier = "A9ED4D91225EB4D30080DEBA" BuildableName = "ShareClient.framework" - BlueprintName = "ShareClient watchOS" + BlueprintName = "ShareClient-watchOS" ReferencedContainer = "container:ShareClient.xcodeproj"> @@ -65,7 +65,7 @@ BuildableIdentifier = "primary" BlueprintIdentifier = "A9ED4D91225EB4D30080DEBA" BuildableName = "ShareClient.framework" - BlueprintName = "ShareClient watchOS" + BlueprintName = "ShareClient-watchOS" ReferencedContainer = "container:ShareClient.xcodeproj"> diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared iOS.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme similarity index 100% rename from ShareClient.xcodeproj/xcshareddata/xcschemes/Shared iOS.xcscheme rename to ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme From a03c312d9ef0b7416acd9c340c994ac2a2ed7c99 Mon Sep 17 00:00:00 2001 From: Pete Schwamb Date: Sun, 19 May 2019 11:14:30 -0500 Subject: [PATCH 6/6] Add tests, update travis --- .travis.yml | 8 +++++--- Cartfile.resolved | 2 +- .../xcshareddata/xcschemes/Shared.xcscheme | 10 ++++++++++ 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6467470..c044b08 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,9 @@ language: objective-c -osx_image: xcode10 +osx_image: xcode10.2 +before_script: + - carthage bootstrap script: -# Build Travis project and run tests -- xcodebuild -project ShareClient.xcodeproj -scheme ShareClient build -destination name="iPhone SE" test + # Build Travis project and run tests + - xcodebuild -project ShareClient.xcodeproj -scheme Shared build -destination name="iPhone SE" test diff --git a/Cartfile.resolved b/Cartfile.resolved index 0284044..56ca222 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1 +1 @@ -github "LoopKit/LoopKit" "7333408f054e269669c91146b0f29bffbdcc150a" +github "LoopKit/LoopKit" "346f5e85940fb56211035ae2e9f522512f17d0c0" diff --git a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme index 1893dad..9b518d2 100644 --- a/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme +++ b/ShareClient.xcodeproj/xcshareddata/xcschemes/Shared.xcscheme @@ -42,6 +42,16 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + +