-
Notifications
You must be signed in to change notification settings - Fork 59
Move build settings from pbxproj to xcconfig files #780
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.OpenSwiftUI.Example | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.$(OPENSWIFTUI_TARGET_BUNDLE_ID).Example |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.OpenSwiftUI.HostingExample | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.$(OPENSWIFTUI_TARGET_BUNDLE_ID).HostingExample |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1,3 @@ | ||
| OPENSWIFTUI_TARGET_BUNDLE_ID = SwiftUI | ||
|
|
||
| OPENSWIFTUI_AVAILABILITY_MACRO = "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v1_0:iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v1_4:iOS 13.4, macOS 10.15.4, tvOS 13.4, watchOS 6.2" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v2_0:iOS 14.0, macOS 11.0, tvOS 14.0, watchOS 7.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_macOS_v2_0:macOS 11.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v2_1:iOS 14.2, macOS 11.0, tvOS 14.1, watchOS 7.1" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v2_3:iOS 14.5, macOS 11.3, tvOS 14.5, watchOS 7.4" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v3_0:iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v3_2:iOS 15.2, macOS 12.1, tvOS 15.2, watchOS 8.3" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v3_4:iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v4_0:iOS 16.0, macOS 13.0, tvOS 16.0, watchOS 9.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v4_1:iOS 16.1, macOS 13.0, tvOS 16.1, watchOS 9.1" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v4_4:iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v5_0:iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v5_1:iOS 17.1, macOS 14.1, tvOS 17.1, watchOS 10.1, visionOS 1.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v5_2:iOS 17.2, macOS 14.2, tvOS 17.2, watchOS 10.2, visionOS 1.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v5_4:iOS 17.4, macOS 14.4, tvOS 17.4, watchOS 10.4, visionOS 1.1" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v5_5:iOS 17.5, macOS 14.5, tvOS 17.5, watchOS 10.5, visionOS 1.2" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v6_0:iOS 18.0, macOS 15.0, tvOS 18.0, watchOS 11.0, visionOS 2.0" "-Xfrontend" "-enable-experimental-feature" "-Xfrontend" "AvailabilityMacro=OpenSwiftUI_v7_0:iOS 19.0, macOS 16.0, tvOS 19.0, watchOS 12.0, visionOS 3.0" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,3 @@ | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.OpenSwiftUI.TestingHost | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUIProject.$(OPENSWIFTUI_TARGET_BUNDLE_ID).TestingHost | ||
|
|
||
| CODE_SIGN_ENTITLEMENTS = TestingHost/TestingHost.entitlements |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -50,14 +50,14 @@ | |
|
|
||
| /* Begin PBXFileReference section */ | ||
| 271D81642BB1E8E300A6D543 /* OpenAttributeGraph */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = OpenAttributeGraph; path = ../../OpenAttributeGraph; sourceTree = "<group>"; }; | ||
| 275751E32DEE1441003E467C /* TestingHost.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TestingHost.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 275751E32DEE1441003E467C /* TestingHost_SwiftUI.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TestingHost_SwiftUI.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The UI test Severity: high Other Locations
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage. |
||
| 279080912E8E5E7B0082B5B6 /* Testing.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Testing.framework; path = Platforms/MacOSX.platform/Developer/Library/Frameworks/Testing.framework; sourceTree = DEVELOPER_DIR; }; | ||
| 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = OpenSwiftUIUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests_SwiftUI.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = OpenSwiftUIUITests_SwiftUI.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 27AF22B12E758F0F00D534AB /* BacklightServices.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = BacklightServices.xcframework; path = ../../DarwinPrivateFrameworks/BLS/2024/BacklightServices.xcframework; sourceTree = "<group>"; }; | ||
| 27B7FC802BB31FF500272BA5 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; }; | ||
| 27CD0B492AFC8D37003665EB /* Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 27CD0B492AFC8D37003665EB /* Example_SwiftUI.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Example_SwiftUI.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 27CD0B612AFC8E0E003665EB /* OpenSwiftUI */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = OpenSwiftUI; path = ..; sourceTree = "<group>"; }; | ||
| 27D49DF82BA604FB00F6E2E2 /* HostingExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = HostingExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 27D49DF82BA604FB00F6E2E2 /* HostingExample_SwiftUI.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = HostingExample_SwiftUI.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 27E6C4D02D2842530010502F /* OpenRenderBox */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = OpenRenderBox; path = ../../OpenRenderBox; sourceTree = "<group>"; }; | ||
| 27E6C4D12D2842740010502F /* AttributeGraph.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = AttributeGraph.xcframework; path = ../../DarwinPrivateFrameworks/AG/2024/AttributeGraph.xcframework; sourceTree = "<group>"; }; | ||
| 27E6C4D42D2842810010502F /* RenderBox.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RenderBox.xcframework; path = ../../DarwinPrivateFrameworks/RB/2024/RenderBox.xcframework; sourceTree = "<group>"; }; | ||
|
|
@@ -182,10 +182,10 @@ | |
| 27CD0B4A2AFC8D37003665EB /* Products */ = { | ||
| isa = PBXGroup; | ||
| children = ( | ||
| 27CD0B492AFC8D37003665EB /* Example.app */, | ||
| 27D49DF82BA604FB00F6E2E2 /* HostingExample.app */, | ||
| 275751E32DEE1441003E467C /* TestingHost.app */, | ||
| 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests.xctest */, | ||
| 27CD0B492AFC8D37003665EB /* Example_SwiftUI.app */, | ||
| 27D49DF82BA604FB00F6E2E2 /* HostingExample_SwiftUI.app */, | ||
| 275751E32DEE1441003E467C /* TestingHost_SwiftUI.app */, | ||
| 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests_SwiftUI.xctest */, | ||
| ); | ||
| name = Products; | ||
| sourceTree = "<group>"; | ||
|
|
@@ -225,7 +225,7 @@ | |
| 279FED0C2DF4567B00320390 /* OpenSwiftUI */, | ||
| ); | ||
| productName = TestingHost; | ||
| productReference = 275751E32DEE1441003E467C /* TestingHost.app */; | ||
| productReference = 275751E32DEE1441003E467C /* TestingHost_SwiftUI.app */; | ||
| productType = "com.apple.product-type.application"; | ||
| }; | ||
| 279283B82DFF11CE00234D64 /* OpenSwiftUIUITests */ = { | ||
|
|
@@ -250,7 +250,7 @@ | |
| 2792849E2DFF137400234D64 /* SnapshotTesting */, | ||
| ); | ||
| productName = OpenSwiftUIUITests; | ||
| productReference = 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests.xctest */; | ||
| productReference = 279283B92DFF11CE00234D64 /* OpenSwiftUIUITests_SwiftUI.xctest */; | ||
| productType = "com.apple.product-type.bundle.unit-test"; | ||
| }; | ||
| 27CD0B482AFC8D37003665EB /* Example */ = { | ||
|
|
@@ -275,7 +275,7 @@ | |
| 278EF52E2E227304009C32EB /* Equatable */, | ||
| ); | ||
| productName = Example; | ||
| productReference = 27CD0B492AFC8D37003665EB /* Example.app */; | ||
| productReference = 27CD0B492AFC8D37003665EB /* Example_SwiftUI.app */; | ||
| productType = "com.apple.product-type.application"; | ||
| }; | ||
| 27D49DF72BA604FB00F6E2E2 /* HostingExample */ = { | ||
|
|
@@ -300,7 +300,7 @@ | |
| 278EF52C2E2272F2009C32EB /* Equatable */, | ||
| ); | ||
| productName = HostingExample; | ||
| productReference = 27D49DF82BA604FB00F6E2E2 /* HostingExample.app */; | ||
| productReference = 27D49DF82BA604FB00F6E2E2 /* HostingExample_SwiftUI.app */; | ||
| productType = "com.apple.product-type.application"; | ||
| }; | ||
| /* End PBXNativeTarget section */ | ||
|
|
@@ -513,7 +513,6 @@ | |
| INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; | ||
| LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; | ||
| "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks"; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -543,7 +542,6 @@ | |
| "$(inherited)", | ||
| "@executable_path/Frameworks", | ||
| ); | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = NO; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -620,7 +618,6 @@ | |
| MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; | ||
| MTL_FAST_MATH = YES; | ||
| ONLY_ACTIVE_ARCH = YES; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = YES; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -689,7 +686,6 @@ | |
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| MTL_ENABLE_DEBUG_INFO = NO; | ||
| MTL_FAST_MATH = YES; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = YES; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -759,7 +755,6 @@ | |
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| MTL_ENABLE_DEBUG_INFO = NO; | ||
| MTL_FAST_MATH = YES; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = YES; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -829,7 +824,6 @@ | |
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| MTL_ENABLE_DEBUG_INFO = NO; | ||
| MTL_FAST_MATH = YES; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = YES; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -923,7 +917,6 @@ | |
| INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; | ||
| LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; | ||
| "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks"; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -953,7 +946,6 @@ | |
| "$(inherited)", | ||
| "@executable_path/Frameworks", | ||
| ); | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = NO; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -1051,7 +1043,6 @@ | |
| INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; | ||
| LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; | ||
| "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks"; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1081,7 +1072,6 @@ | |
| "$(inherited)", | ||
| "@executable_path/Frameworks", | ||
| ); | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = NO; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
@@ -1109,8 +1099,6 @@ | |
| GENERATE_INFOPLIST_FILE = YES; | ||
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| ONLY_ACTIVE_ARCH = YES; | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUI.OpenSwiftUIUITests; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1131,8 +1119,6 @@ | |
| ENABLE_USER_SCRIPT_SANDBOXING = YES; | ||
| GENERATE_INFOPLIST_FILE = YES; | ||
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUI.OpenSwiftUIUITests; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1153,8 +1139,6 @@ | |
| ENABLE_USER_SCRIPT_SANDBOXING = YES; | ||
| GENERATE_INFOPLIST_FILE = YES; | ||
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUI.OpenSwiftUIUITests; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1175,8 +1159,6 @@ | |
| ENABLE_USER_SCRIPT_SANDBOXING = YES; | ||
| GENERATE_INFOPLIST_FILE = YES; | ||
| LOCALIZATION_PREFERS_STRING_CATALOGS = YES; | ||
| PRODUCT_BUNDLE_IDENTIFIER = org.OpenSwiftUI.OpenSwiftUIUITests; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1269,7 +1251,6 @@ | |
| INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight"; | ||
| LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; | ||
| "LD_RUNPATH_SEARCH_PATHS[sdk=macosx*]" = "@executable_path/../Frameworks"; | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
| SUPPORTS_MACCATALYST = NO; | ||
|
|
@@ -1299,7 +1280,6 @@ | |
| "$(inherited)", | ||
| "@executable_path/Frameworks", | ||
| ); | ||
| PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| REGISTER_APP_GROUPS = NO; | ||
| SDKROOT = auto; | ||
| SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx xros xrsimulator"; | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PRODUCT_NAME = $(TARGET_NAME)_$(OPENSWIFTUI_TARGET_BUNDLE_ID)makes the built product name vary between SwiftUI vs OpenSwiftUI configurations, but the Example project product references are hardcoded to*_SwiftUIinproject.pbxproj. If you build anOpenSwiftUI*configuration, Xcode may end up pointing at non-existent products (e.g. expectingExample_SwiftUI.appwhile producingExample_OpenSwiftUI.app).Severity: medium
Other Locations
Example/Example.xcodeproj/project.pbxproj:53Example/Example.xcodeproj/project.pbxproj:55Example/Example.xcodeproj/project.pbxproj:58Example/Example.xcodeproj/project.pbxproj:60🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.