From 40dc57ded08b7a5827ad03365c143baf37685c2a Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 5 May 2025 15:53:21 +1000 Subject: [PATCH 01/23] =?UTF-8?q?Add=20a=20dummy=20local=20package?= =?UTF-8?q?=E2=80=94We'll=20try=20to=20put=20the=20Modules=20there=20next?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ModulesAlterantive/.gitignore | 8 +++++++ ModulesAlterantive/Package.swift | 21 +++++++++++++++++++ .../ModulesAlterantive.swift | 2 ++ .../contents.xcworkspacedata | 3 +++ 4 files changed, 34 insertions(+) create mode 100644 ModulesAlterantive/.gitignore create mode 100644 ModulesAlterantive/Package.swift create mode 100644 ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift diff --git a/ModulesAlterantive/.gitignore b/ModulesAlterantive/.gitignore new file mode 100644 index 000000000000..0023a5340637 --- /dev/null +++ b/ModulesAlterantive/.gitignore @@ -0,0 +1,8 @@ +.DS_Store +/.build +/Packages +xcuserdata/ +DerivedData/ +.swiftpm/configuration/registries.json +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +.netrc diff --git a/ModulesAlterantive/Package.swift b/ModulesAlterantive/Package.swift new file mode 100644 index 000000000000..d94f91f4b181 --- /dev/null +++ b/ModulesAlterantive/Package.swift @@ -0,0 +1,21 @@ +// swift-tools-version: 6.1 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "ModulesAlterantive", + products: [ + // Products define the executables and libraries a package produces, making them visible to other packages. + .library( + name: "ModulesAlterantive", + targets: ["ModulesAlterantive"]), + ], + targets: [ + // Targets are the basic building blocks of a package, defining a module or a test suite. + // Targets can depend on other targets in this package and products from dependencies. + .target( + name: "ModulesAlterantive"), + + ] +) diff --git a/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift b/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift new file mode 100644 index 000000000000..08b22b80fc09 --- /dev/null +++ b/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift @@ -0,0 +1,2 @@ +// The Swift Programming Language +// https://docs.swift.org/swift-book diff --git a/WordPress.xcworkspace/contents.xcworkspacedata b/WordPress.xcworkspace/contents.xcworkspacedata index e1bc1296b185..0aab95b7b99c 100644 --- a/WordPress.xcworkspace/contents.xcworkspacedata +++ b/WordPress.xcworkspace/contents.xcworkspacedata @@ -1,6 +1,9 @@ + + From 758f86202298cc6b3c2fd8b6881db015472467ac Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 5 May 2025 15:58:45 +1000 Subject: [PATCH 02/23] Replace ModulesAlterantive with Modules --- ModulesAlterantive/.gitignore | 8 ------- ModulesAlterantive/Package.swift | 21 ------------------- .../ModulesAlterantive.swift | 2 -- .../contents.xcworkspacedata | 2 +- WordPress/WordPress.xcodeproj/project.pbxproj | 8 ------- 5 files changed, 1 insertion(+), 40 deletions(-) delete mode 100644 ModulesAlterantive/.gitignore delete mode 100644 ModulesAlterantive/Package.swift delete mode 100644 ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift diff --git a/ModulesAlterantive/.gitignore b/ModulesAlterantive/.gitignore deleted file mode 100644 index 0023a5340637..000000000000 --- a/ModulesAlterantive/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -.DS_Store -/.build -/Packages -xcuserdata/ -DerivedData/ -.swiftpm/configuration/registries.json -.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata -.netrc diff --git a/ModulesAlterantive/Package.swift b/ModulesAlterantive/Package.swift deleted file mode 100644 index d94f91f4b181..000000000000 --- a/ModulesAlterantive/Package.swift +++ /dev/null @@ -1,21 +0,0 @@ -// swift-tools-version: 6.1 -// The swift-tools-version declares the minimum version of Swift required to build this package. - -import PackageDescription - -let package = Package( - name: "ModulesAlterantive", - products: [ - // Products define the executables and libraries a package produces, making them visible to other packages. - .library( - name: "ModulesAlterantive", - targets: ["ModulesAlterantive"]), - ], - targets: [ - // Targets are the basic building blocks of a package, defining a module or a test suite. - // Targets can depend on other targets in this package and products from dependencies. - .target( - name: "ModulesAlterantive"), - - ] -) diff --git a/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift b/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift deleted file mode 100644 index 08b22b80fc09..000000000000 --- a/ModulesAlterantive/Sources/ModulesAlterantive/ModulesAlterantive.swift +++ /dev/null @@ -1,2 +0,0 @@ -// The Swift Programming Language -// https://docs.swift.org/swift-book diff --git a/WordPress.xcworkspace/contents.xcworkspacedata b/WordPress.xcworkspace/contents.xcworkspacedata index 0aab95b7b99c..54a51748df8c 100644 --- a/WordPress.xcworkspace/contents.xcworkspacedata +++ b/WordPress.xcworkspace/contents.xcworkspacedata @@ -2,7 +2,7 @@ + location = "group:Modules"> diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 5df5b276a969..1a5c40d79a4c 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -2705,7 +2705,6 @@ ); mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */; packageReferences = ( - 0C8095952DC2A4B9008DFC2F /* XCLocalSwiftPackageReference "../Modules" */, ); preferredProjectObjectVersion = 77; productRefGroup = 19C28FACFE9D520D11CA2CBB /* Products */; @@ -7040,13 +7039,6 @@ }; /* End XCConfigurationList section */ -/* Begin XCLocalSwiftPackageReference section */ - 0C8095952DC2A4B9008DFC2F /* XCLocalSwiftPackageReference "../Modules" */ = { - isa = XCLocalSwiftPackageReference; - relativePath = ../Modules; - }; -/* End XCLocalSwiftPackageReference section */ - /* Begin XCSwiftPackageProductDependency section */ 0C2155A52C39A24D00EFE2C0 /* XcodeTarget_UITests */ = { isa = XCSwiftPackageProductDependency; From 7e2e8905318662e79ebd6cdd421d7d3e537f919b Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 5 May 2025 16:03:14 +1000 Subject: [PATCH 03/23] Re-enable all the test targets in WordPressUnitTests --- Tests/KeystoneTests/WordPressUnitTests.xctestplan | 7 ------- 1 file changed, 7 deletions(-) diff --git a/Tests/KeystoneTests/WordPressUnitTests.xctestplan b/Tests/KeystoneTests/WordPressUnitTests.xctestplan index 533e46b6ccd9..5fbff54d114f 100644 --- a/Tests/KeystoneTests/WordPressUnitTests.xctestplan +++ b/Tests/KeystoneTests/WordPressUnitTests.xctestplan @@ -32,7 +32,6 @@ }, "testTargets" : [ { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "AsyncImageKitTests", @@ -40,7 +39,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:WordPress.xcodeproj", "identifier" : "4AD953BA2C21451700D0EEFA", @@ -62,7 +60,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "WordPressUIUnitTests", @@ -70,7 +67,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "WordPressSharedTests", @@ -78,7 +74,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "JetpackStatsWidgetsCoreTests", @@ -86,7 +81,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "WordPressFluxTests", @@ -94,7 +88,6 @@ } }, { - "enabled" : false, "target" : { "containerPath" : "container:..\/Modules", "identifier" : "WordPressSharedObjCTests", From e2465ccd7eccf8529cf9ade6349683207c8b8642 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 5 May 2025 16:07:32 +1000 Subject: [PATCH 04/23] Delete unnecessary OCLint scheme Given OCLint is something we should drop soon, because it's only for Objective-C and we want to reduce that code surface. --- .../xcshareddata/xcschemes/OCLint.xcscheme | 76 ------------------- 1 file changed, 76 deletions(-) delete mode 100644 WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/OCLint.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/OCLint.xcscheme b/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/OCLint.xcscheme deleted file mode 100644 index 204b88ed5dab..000000000000 --- a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/OCLint.xcscheme +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From b17efe119e006cb845f201016d20aab299bcc89c Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Mon, 5 May 2025 17:17:17 +1000 Subject: [PATCH 05/23] Configure WordPressFlux scheme to run tests --- Modules/Package.swift | 7 +++++- .../WordPressFluxTests.xctestplan | 24 +++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 Modules/Tests/WordPressFluxTests/WordPressFluxTests.xctestplan diff --git a/Modules/Package.swift b/Modules/Package.swift index 0d88e290f045..279239b77f41 100644 --- a/Modules/Package.swift +++ b/Modules/Package.swift @@ -168,7 +168,12 @@ let package = Package( ), .testTarget(name: "JetpackStatsWidgetsCoreTests", dependencies: [.target(name: "JetpackStatsWidgetsCore")], swiftSettings: [.swiftLanguageMode(.v5)]), .testTarget(name: "DesignSystemTests", dependencies: [.target(name: "DesignSystem")], swiftSettings: [.swiftLanguageMode(.v5)]), - .testTarget(name: "WordPressFluxTests", dependencies: ["WordPressFlux"], swiftSettings: [.swiftLanguageMode(.v5)]), + .testTarget( + name: "WordPressFluxTests", + dependencies: ["WordPressFlux"], + exclude: ["WordPressFluxTests.xctestplan"], + swiftSettings: [.swiftLanguageMode(.v5)] + ), .testTarget(name: "AsyncImageKitTests", dependencies: [ .target(name: "AsyncImageKit"), .target(name: "WordPressTesting"), diff --git a/Modules/Tests/WordPressFluxTests/WordPressFluxTests.xctestplan b/Modules/Tests/WordPressFluxTests/WordPressFluxTests.xctestplan new file mode 100644 index 000000000000..5dd4d0071652 --- /dev/null +++ b/Modules/Tests/WordPressFluxTests/WordPressFluxTests.xctestplan @@ -0,0 +1,24 @@ +{ + "configurations" : [ + { + "id" : "92A65F35-8051-4F5F-B68A-1802B2E06105", + "name" : "Test Scheme Action", + "options" : { + + } + } + ], + "defaultOptions" : { + "codeCoverage" : false + }, + "testTargets" : [ + { + "target" : { + "containerPath" : "container:", + "identifier" : "WordPressFluxTests", + "name" : "WordPressFluxTests" + } + } + ], + "version" : 1 +} From f6dd3c496782a7f858d66631e741e149f1865528 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 8 May 2025 12:03:12 +1000 Subject: [PATCH 06/23] Move Modules package reference from workspace to project --- .gitignore | 6 -- .../swiftpm => Modules}/Package.resolved | 58 +++++++++---------- Modules/Package.swift | 5 +- .../contents.xcworkspacedata | 3 - WordPress/WordPress.xcodeproj/project.pbxproj | 2 + 5 files changed, 34 insertions(+), 40 deletions(-) rename {WordPress.xcworkspace/xcshareddata/swiftpm => Modules}/Package.resolved (88%) diff --git a/.gitignore b/.gitignore index b9ef88a5e0e6..9924e15ba219 100644 --- a/.gitignore +++ b/.gitignore @@ -125,12 +125,6 @@ WordPress/InfoPlist-internal.h # and assume no local copy would have generated the Pods. Pods/ -# Modules — Where the Swift packages that make up the modular app live -# -# Ignore the Package.resolved file. The packages source of truth is the -# resolved file generated by the Xcode workspace. -Modules/Package.resolved - # While we depend on gutenberg-mobile, we download its XCFrameworks in # WordPress/Frameworks WordPress/Frameworks/*.xcframework diff --git a/WordPress.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Modules/Package.resolved similarity index 88% rename from WordPress.xcworkspace/xcshareddata/swiftpm/Package.resolved rename to Modules/Package.resolved index cb31731be9ca..cd1cac121943 100644 --- a/WordPress.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Modules/Package.resolved @@ -1,13 +1,13 @@ { - "originHash" : "4d299ae36ff454e0e3ec59a9c04557210efa32d8b96b189963ad0f3ffebb3e70", + "originHash" : "0effbb0d05b722668680dd92a52d353d911169640ab51a2b7ca2c0df9f0f94ae", "pins" : [ { "identity" : "alamofire", "kind" : "remoteSourceControl", "location" : "https://github.com/Alamofire/Alamofire", "state" : { - "revision" : "f455c2975872ccd2d9c81594c658af65716e9b9a", - "version" : "5.9.1" + "revision" : "513364f870f6bfc468f9d2ff0a95caccc10044c5", + "version" : "5.10.2" } }, { @@ -61,7 +61,7 @@ "location" : "https://github.com/Automattic/color-studio", "state" : { "branch" : "trunk", - "revision" : "bdcf795bc2c191bd45bd6c24734030257becd050" + "revision" : "453700ac1ce3b2b17392d56696ead43aeeb579fb" } }, { @@ -69,8 +69,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/commonui_sdk_ios", "state" : { - "revision" : "8729e7f4e316b46f6d33f046e663b6eedfe9955a", - "version" : "9.0.1" + "revision" : "8c1ab48a4a04637c42afc46d6b45b57c26ac05aa", + "version" : "9.0.2" } }, { @@ -78,8 +78,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/core_sdk_ios", "state" : { - "revision" : "8163d4d67f3aa8954467aa8191ee13cb4f1a2b9e", - "version" : "5.0.3" + "revision" : "4d676f214e48017d102cd499d5f453c5cf6d9ef2", + "version" : "5.0.4" } }, { @@ -87,8 +87,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/mattgallagher/CwlCatchException.git", "state" : { - "revision" : "35f9e770f54ce62dd8526470f14c6e137cef3eea", - "version" : "2.1.1" + "revision" : "07b2ba21d361c223e25e3c1e924288742923f08c", + "version" : "2.2.1" } }, { @@ -96,8 +96,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/mattgallagher/CwlPreconditionTesting.git", "state" : { - "revision" : "c21f7bab5ca8eee0a9998bbd17ca1d0eb45d4688", - "version" : "2.1.0" + "revision" : "0139c665ebb45e6a9fbdb68aabfd7c39f3fe0071", + "version" : "2.2.2" } }, { @@ -168,8 +168,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/airbnb/lottie-ios", "state" : { - "revision" : "f522990668c2f9132323a2e68d924c7dcb9130b4", - "version" : "4.4.0" + "revision" : "047aa81b77adcbf583a966dfef620d17650cc656", + "version" : "4.5.1" } }, { @@ -178,7 +178,7 @@ "location" : "https://github.com/wordpress-mobile/MediaEditor-iOS", "state" : { "branch" : "task/spm-support", - "revision" : "4f3fe298a95d1de81099f8c9e5612e0c59c9bf53" + "revision" : "e9f74b21276d5cd1cb94ee1c09cc060b23187832" } }, { @@ -186,8 +186,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/messaging_sdk_ios", "state" : { - "revision" : "4dbb16d26b90452c1d41cba8e8dc81a1bcea7f1e", - "version" : "6.0.1" + "revision" : "0f81007fe9c9467bc583040f3343b205311cebfd", + "version" : "6.0.2" } }, { @@ -195,8 +195,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/messagingapi_sdk_ios", "state" : { - "revision" : "2f21e014a1f284edf484faf39b2b6fe377ec8c64", - "version" : "6.0.0" + "revision" : "f86020a681e28a7bfae9e2445eb027d37dc5d5f5", + "version" : "6.0.1" } }, { @@ -222,7 +222,6 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/wordpress-mobile/NSURL-IDN", "state" : { - "branch" : "cmm-322-remove-plus-from-name", "revision" : "b34794c9a3f32312e1593d4a3d120572afa0d010" } }, @@ -293,8 +292,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/support_providers_sdk_ios", "state" : { - "revision" : "16da780d8a0aa905b3935eee7836b9a0ee276597", - "version" : "8.0.3" + "revision" : "b8194243297eaab61a92138a1dc5872bce358346", + "version" : "8.0.4" } }, { @@ -302,8 +301,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/zendesk/support_sdk_ios", "state" : { - "revision" : "44cf26111bf0bc608a2474578b3d506793eef483", - "version" : "8.0.3" + "revision" : "6b5f6d2ffc92c10d38cb9c716ae37b2832230c89", + "version" : "8.0.4" } }, { @@ -329,8 +328,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/apple/swift-log", "state" : { - "revision" : "e97a6fcb1ab07462881ac165fdbb37f067e205d5", - "version" : "1.5.4" + "revision" : "96a2f8a0fa41e9e09af4585e2724c4e825410b91", + "version" : "1.6.2" } }, { @@ -345,7 +344,7 @@ { "identity" : "swiftsoup", "kind" : "remoteSourceControl", - "location" : "https://github.com/scinfu/SwiftSoup.git", + "location" : "https://github.com/scinfu/SwiftSoup", "state" : { "revision" : "3c2c7e1e72b8abd96eafbae80323c5c1e5317437", "version" : "2.7.5" @@ -356,8 +355,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/buildkite/test-collector-swift", "state" : { - "revision" : "77c7f492f5c1c9ca159f73d18f56bbd1186390b0", - "version" : "0.3.0" + "revision" : "631a2400dbe876141a3ef8c7400885907fec7f89", + "version" : "0.4.1" } }, { @@ -392,7 +391,6 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/wordpress-mobile/WordPressKit-iOS", "state" : { - "branch" : "wpios-edition", "revision" : "5bc08764d2025e21685816065f611e884c8672d1" } }, diff --git a/Modules/Package.swift b/Modules/Package.swift index 279239b77f41..0078ff2e7a7a 100644 --- a/Modules/Package.swift +++ b/Modules/Package.swift @@ -48,7 +48,10 @@ let package = Package( .package(url: "https://github.com/wordpress-mobile/MediaEditor-iOS", branch: "task/spm-support"), .package(url: "https://github.com/wordpress-mobile/NSObject-SafeExpectations", from: "0.0.6"), .package(url: "https://github.com/wordpress-mobile/NSURL-IDN", revision: "b34794c9a3f32312e1593d4a3d120572afa0d010"), - .package(url: "https://github.com/wordpress-mobile/WordPressKit-iOS", branch: "wpios-edition"), + .package( + url: "https://github.com/wordpress-mobile/WordPressKit-iOS", + revision: "5bc08764d2025e21685816065f611e884c8672d1" // see wpios-edition branch + ), .package(url: "https://github.com/zendesk/support_sdk_ios", from: "8.0.3"), // We can't use wordpress-rs branches nor commits here. Only tags work. .package(url: "https://github.com/Automattic/wordpress-rs", revision: "alpha-20250505"), diff --git a/WordPress.xcworkspace/contents.xcworkspacedata b/WordPress.xcworkspace/contents.xcworkspacedata index 54a51748df8c..e1bc1296b185 100644 --- a/WordPress.xcworkspace/contents.xcworkspacedata +++ b/WordPress.xcworkspace/contents.xcworkspacedata @@ -1,9 +1,6 @@ - - diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress/WordPress.xcodeproj/project.pbxproj index 1a5c40d79a4c..57f829d04d52 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress/WordPress.xcodeproj/project.pbxproj @@ -804,6 +804,7 @@ 3F9DD3F62CC214BF00DF1760 /* Common.debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.debug.xcconfig; sourceTree = ""; }; 3F9DD3F72CC2188400DF1760 /* Common.alpha.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.alpha.xcconfig; sourceTree = ""; }; 3FA640652670CEFE0064401E /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + 3FD4B20E2DCC468200781DFA /* Modules */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = Modules; path = ../Modules; sourceTree = SOURCE_ROOT; }; 406A0EEF224D39C50016AD6A /* Flags.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Flags.xcassets; sourceTree = ""; }; 433840C622C2BA5B00CB13F8 /* AppImages.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = AppImages.xcassets; path = Resources/AppImages.xcassets; sourceTree = ""; }; 4A690C142BA790BC00A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; @@ -1606,6 +1607,7 @@ 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { isa = PBXGroup; children = ( + 3FD4B20E2DCC468200781DFA /* Modules */, 0C5C46FB2D98395300F2CD55 /* Sources */, 0C5A19CB2D9B07E700C25301 /* Tests */, F14B5F6F208E648200439554 /* config */, From 38c0d8a9408f2e6129af2b85f0510ef004ef27a5 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 8 May 2025 12:25:08 +1000 Subject: [PATCH 07/23] Use the shared setup CI script in the complete code freeze step --- .buildkite/commands/complete-code-freeze.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.buildkite/commands/complete-code-freeze.sh b/.buildkite/commands/complete-code-freeze.sh index 40653d10c534..9297d9e4d298 100755 --- a/.buildkite/commands/complete-code-freeze.sh +++ b/.buildkite/commands/complete-code-freeze.sh @@ -12,11 +12,7 @@ source use-bot-for-git .buildkite/commands/checkout-release-branch.sh "$RELEASE_NUMBER" -echo '--- :ruby: Setup Ruby tools' -install_gems - -echo "--- :swift: Set up Swift Packages" -install_swiftpm_dependencies +"$(dirname "${BASH_SOURCE[0]}")/shared-set-up.sh" echo '--- :closed_lock_with_key: Access secrets' bundle exec fastlane run configure_apply From cc744d89c823ae8f1f32c1f0dfd91cda86f36d35 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Thu, 8 May 2025 12:28:59 +1000 Subject: [PATCH 08/23] Add workaround for package path support missing --- .buildkite/commands/shared-set-up.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.buildkite/commands/shared-set-up.sh b/.buildkite/commands/shared-set-up.sh index 15a74d84b996..1e04425db6f8 100755 --- a/.buildkite/commands/shared-set-up.sh +++ b/.buildkite/commands/shared-set-up.sh @@ -3,8 +3,12 @@ echo "--- :rubygems: Setting up Gems" install_gems +# The push/pop is workaround for tooling not supporting a Package.swift path. +# Note that neither ours nor Apple's tooling does. +pushd "$(dirname "${BASH_SOURCE[0]}")/../../Modules" echo "--- :swift: Setting up Swift Packages" install_swiftpm_dependencies +popd echo "--- :xcode: Fetch XCFrameworks" rake dependencies From 35e360bb81fb0967ed20b2b02727da28679473f0 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 11:35:17 +1000 Subject: [PATCH 09/23] Point `color-studio` to a commit instead of a branch Locking dependencies to commits makes updating them a bit more burdensome, but at least it makes the update intentional and not automatic and surprising. This change was done to test Xcode's behavior in monitoring `Modules/Package.swift` and updating `Modules/Package.resolved`. See https://github.com/wordpress-mobile/WordPress-iOS/pull/24518#discussion_r2079810655 --- Modules/Package.resolved | 7 +++---- Modules/Package.swift | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Modules/Package.resolved b/Modules/Package.resolved index cd1cac121943..e16ac268b03a 100644 --- a/Modules/Package.resolved +++ b/Modules/Package.resolved @@ -1,5 +1,5 @@ { - "originHash" : "0effbb0d05b722668680dd92a52d353d911169640ab51a2b7ca2c0df9f0f94ae", + "originHash" : "fe094f15c8e18dab512a2ddf88e08b4c895c60964ac1158c031ee731381eda34", "pins" : [ { "identity" : "alamofire", @@ -60,8 +60,7 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/Automattic/color-studio", "state" : { - "branch" : "trunk", - "revision" : "453700ac1ce3b2b17392d56696ead43aeeb579fb" + "revision" : "bf141adc75e2769eb469a3e095bdc93dc30be8de" } }, { @@ -344,7 +343,7 @@ { "identity" : "swiftsoup", "kind" : "remoteSourceControl", - "location" : "https://github.com/scinfu/SwiftSoup", + "location" : "https://github.com/scinfu/SwiftSoup.git", "state" : { "revision" : "3c2c7e1e72b8abd96eafbae80323c5c1e5317437", "version" : "2.7.5" diff --git a/Modules/Package.swift b/Modules/Package.swift index 0078ff2e7a7a..b8b352da1f8c 100644 --- a/Modules/Package.swift +++ b/Modules/Package.swift @@ -56,7 +56,10 @@ let package = Package( // We can't use wordpress-rs branches nor commits here. Only tags work. .package(url: "https://github.com/Automattic/wordpress-rs", revision: "alpha-20250505"), .package(url: "https://github.com/wordpress-mobile/GutenbergKit", from: "0.2.0"), - .package(url: "https://github.com/Automattic/color-studio", branch: "trunk"), + .package( + url: "https://github.com/Automattic/color-studio", + revision: "bf141adc75e2769eb469a3e095bdc93dc30be8de" + ), .package(url: "https://github.com/wordpress-mobile/AztecEditor-iOS", from: "1.20.0"), ], targets: XcodeSupport.targets + [ From f33347b947a4d25f76ff49b36371d15a8604f824 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:06:52 +1000 Subject: [PATCH 10/23] WIP - Delete Xcode workspace in favor of project file only --- .../project.pbxproj | 265 ++---------- .../contents.xcworkspacedata | 2 +- .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/swiftpm/Package.resolved | 407 ++++++++++++++++++ .../xcshareddata/xcschemes/Jetpack.xcscheme | 0 .../xcschemes/JetpackIntents.xcscheme | 0 .../JetpackScreenshotGeneration.xcscheme | 0 .../xcschemes/JetpackUITests.xcscheme | 0 .../xcshareddata/xcschemes/Keystone.xcscheme | 0 .../xcshareddata/xcschemes/Reader.xcscheme | 0 .../xcshareddata/xcschemes/WordPress.xcscheme | 0 .../xcschemes/WordPressAuthenticator.xcscheme | 0 .../xcschemes/WordPressData.xcscheme | 0 .../xcschemes/WordPressKit.xcscheme | 0 .../WordPressScreenshotGeneration.xcscheme | 0 .../WordPressShareExtension.xcscheme | 0 .../xcschemes/WordPressUITests.xcscheme | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 5 - 18 files changed, 444 insertions(+), 235 deletions(-) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/project.pbxproj (97%) rename {WordPress.xcworkspace => WordPress.xcodeproj/project.xcworkspace}/contents.xcworkspacedata (66%) rename {WordPress.xcworkspace => WordPress.xcodeproj/project.xcworkspace}/xcshareddata/IDEWorkspaceChecks.plist (100%) create mode 100644 WordPress.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/Jetpack.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/JetpackIntents.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/JetpackScreenshotGeneration.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/JetpackUITests.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/Keystone.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/Reader.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPress.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressAuthenticator.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressData.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressKit.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressScreenshotGeneration.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressShareExtension.xcscheme (100%) rename {WordPress/WordPress.xcodeproj => WordPress.xcodeproj}/xcshareddata/xcschemes/WordPressUITests.xcscheme (100%) delete mode 100644 WordPress.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/WordPress/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj similarity index 97% rename from WordPress/WordPress.xcodeproj/project.pbxproj rename to WordPress.xcodeproj/project.pbxproj index 57f829d04d52..caa56c95bf3a 100644 --- a/WordPress/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -804,7 +804,7 @@ 3F9DD3F62CC214BF00DF1760 /* Common.debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.debug.xcconfig; sourceTree = ""; }; 3F9DD3F72CC2188400DF1760 /* Common.alpha.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.alpha.xcconfig; sourceTree = ""; }; 3FA640652670CEFE0064401E /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; - 3FD4B20E2DCC468200781DFA /* Modules */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = Modules; path = ../Modules; sourceTree = SOURCE_ROOT; }; + 3FD4B20E2DCC468200781DFA /* Modules */ = {isa = PBXFileReference; lastKnownFileType = wrapper; path = Modules; sourceTree = SOURCE_ROOT; }; 406A0EEF224D39C50016AD6A /* Flags.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Flags.xcassets; sourceTree = ""; }; 433840C622C2BA5B00CB13F8 /* AppImages.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = AppImages.xcassets; path = Resources/AppImages.xcassets; sourceTree = ""; }; 4A690C142BA790BC00A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; @@ -816,7 +816,7 @@ 4AD953BB2C21451700D0EEFA /* WordPressAuthenticatorTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WordPressAuthenticatorTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 5D69DBC3165428CA00A2D1F7 /* n.caf */ = {isa = PBXFileReference; lastKnownFileType = file; name = n.caf; path = Resources/Sounds/n.caf; sourceTree = ""; }; 6E5BA46826A59D620043A6F2 /* SupportScreenTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SupportScreenTests.swift; sourceTree = ""; }; - 6EDC0E8E105881A800F68A1D /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = file; path = iTunesArtwork; sourceTree = ""; }; + 6EDC0E8E105881A800F68A1D /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = text; path = iTunesArtwork; sourceTree = ""; }; 7335AC5F21220D550012EF2D /* RemoteNotificationActionParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemoteNotificationActionParser.swift; sourceTree = ""; }; 733F36052126197800988727 /* UserNotificationsUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UserNotificationsUI.framework; path = System/Library/Frameworks/UserNotificationsUI.framework; sourceTree = SDKROOT; }; 734740762114C296007FDDFF /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -863,7 +863,7 @@ 8546B44E1BEAD48900193C07 /* WordPress-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPress-Alpha.entitlements"; sourceTree = ""; }; 8574469C1BF154E1007FDB5F /* cy */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cy; path = cy.lproj/InfoPlist.strings; sourceTree = ""; }; 8574469D1BF154E2007FDB5F /* cy */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cy; path = cy.lproj/Localizable.strings; sourceTree = ""; }; - 85ED98AA17DFB17200090D0B /* iTunesArtwork@2x */ = {isa = PBXFileReference; lastKnownFileType = file; path = "iTunesArtwork@2x"; sourceTree = ""; }; + 85ED98AA17DFB17200090D0B /* iTunesArtwork@2x */ = {isa = PBXFileReference; lastKnownFileType = text; path = "iTunesArtwork@2x"; sourceTree = ""; }; 931DF4D718D09A2F00540BDD /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 931DF4D918D09A9B00540BDD /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/InfoPlist.strings; sourceTree = ""; }; 931DF4DA18D09AE100540BDD /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -894,8 +894,8 @@ 93F2E54E1E9E5CB70050D489 /* CoreImage.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreImage.framework; path = System/Library/Frameworks/CoreImage.framework; sourceTree = SDKROOT; }; 93F2E5501E9E5CCD0050D489 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; }; 93F2E5521E9E5CF00050D489 /* VideoToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = VideoToolbox.framework; path = System/Library/Frameworks/VideoToolbox.framework; sourceTree = SDKROOT; }; - 93FA0F0118E451A80007903B /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; - 93FA0F0218E451A80007903B /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README.md; path = ../README.md; sourceTree = ""; }; + 93FA0F0118E451A80007903B /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = ""; }; + 93FA0F0218E451A80007903B /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; 98FB6E9F23074CE5002DDC8D /* Common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = ""; }; A01C542D0E24E88400D411F2 /* SystemConfiguration.framework */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; A20971B419B0BC390058F395 /* en-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-GB"; path = "en-GB.lproj/Localizable.strings"; sourceTree = ""; }; @@ -930,7 +930,7 @@ E133DB40137AE180003C0AF9 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Localizable.strings; sourceTree = ""; }; E1457202135EC85700C7BAD2 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = ""; }; E14D65C717E09663007E3EA4 /* Social.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; }; - E16273E21B2AD89A00088AF7 /* MIGRATIONS.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = MIGRATIONS.md; path = ../MIGRATIONS.md; sourceTree = ""; }; + E16273E21B2AD89A00088AF7 /* MIGRATIONS.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = MIGRATIONS.md; sourceTree = ""; }; E163AF9E1ED45B100035317E /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/Localizable.strings; sourceTree = ""; }; E167745A1377F24300EE44DD /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; E167745B1377F25500EE44DD /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; @@ -974,7 +974,7 @@ FF2716911CAAC87B0006E2D4 /* LoginTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginTests.swift; sourceTree = ""; }; FF2716931CAAC87B0006E2D4 /* WordPressUITests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WordPressUITests-Info.plist"; sourceTree = ""; }; FF2716A01CABC7D40006E2D4 /* XCTest+Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "XCTest+Extensions.swift"; sourceTree = ""; }; - FF37F90822385C9F00AFA3DB /* RELEASE-NOTES.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "RELEASE-NOTES.txt"; path = "../RELEASE-NOTES.txt"; sourceTree = ""; }; + FF37F90822385C9F00AFA3DB /* RELEASE-NOTES.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "RELEASE-NOTES.txt"; sourceTree = ""; }; FF4DEAD7244B56E200ACA032 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = System/Library/Frameworks/CoreServices.framework; sourceTree = SDKROOT; }; FF75933A1BE2423800814D3B /* Photos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Photos.framework; path = System/Library/Frameworks/Photos.framework; sourceTree = SDKROOT; }; FFE69A1E1B1BD4F10073C2EB /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -992,178 +992,6 @@ FFE69A2A1B1BFE200073C2EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/InfoPlist.strings; sourceTree = ""; }; /* End PBXFileReference section */ -/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ - 0C2390242D9ADFAA00981631 /* Exceptions for "WordPressAuthenticator" folder in "WordPressAuthenticator" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - publicHeaders = ( - Features/NUX/WPNUXMainButton.h, - Features/NUX/WPWalkthroughTextField.h, - Helpers/LoginFacade.h, - Helpers/WordPressXMLRPCAPIFacade.h, - WordPressAuthenticator.h, - ); - target = 4AD953B32C21451700D0EEFA /* WordPressAuthenticator */; - }; - 0C3CC0152DA058E6009F3BFB /* Exceptions for "WordPress" folder in "WordPress" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - Info.plist, - ); - target = 1D6058900D05DD3D006BFB54 /* WordPress */; - }; - 0C3E79F82DB164FF000C7072 /* Exceptions for "JetpackStatsWidgets" folder in "JetpackStatsWidgets" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - Info.plist, - ); - target = 0107E0B128F97D5000DE87DB /* JetpackStatsWidgets */; - }; - 0C3E79F92DB16747000C7072 /* Exceptions for "Jetpack" folder in "Jetpack" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - Info.plist, - ); - target = FABB1F8F2602FC2C00C8785C /* Jetpack */; - }; - 0C5A3FB42D9B214200C25301 /* Exceptions for "Reader" folder in "Reader" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - Info.plist, - ); - target = 0C5A3F8B2D9B1E3700C25301 /* Reader */; - }; - 0C5C46F42D98343300F2CD55 /* Exceptions for "Classes" folder in "Keystone" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "Services/PostRepository+Helpers.swift", - "System/ApiCredentials+BuildSecrets.swift", - System/main.swift, - "System/WordPress-Bridging-Header.h", - ); - publicHeaders = ( - "Categories/Media+Extensions.h", - "Categories/NSObject+Helpers.h", - "Categories/UIApplication+Helpers.h", - "Categories/UIView+Subviews.h", - Services/AccountService.h, - Services/BlogService.h, - Services/CommentService.h, - Services/Facades/BlogSyncFacade.h, - Services/MediaService.h, - Services/MenusService.h, - Services/PostCategoryService.h, - Services/PostTagService.h, - "Services/Reader Post/ReaderPostService.h", - Services/ReaderSiteService_Internal.h, - Services/ReaderSiteService.h, - Services/ReaderTopicService.h, - Services/ThemeService.h, - System/Constants/Constants.h, - Utility/Analytics/WPAppAnalytics.h, - Utility/Logging/WPLogger.h, - Utility/Sharing/WPActivityDefaults.h, - Utility/UIAlertControllerProxy.h, - Utility/WPError.h, - "ViewRelated/Blog/Blog Details/BlogDetailsViewController.h", - ViewRelated/Blog/Sharing/SharingViewController.h, - "ViewRelated/Blog/Site Settings/SettingTableViewCell.h", - "ViewRelated/Blog/Site Settings/SiteSettingsViewController.h", - ViewRelated/Comments/Controllers/CommentsViewController.h, - "ViewRelated/Me/Help & Support/Activity Logs/ActivityLogViewController.h", - ViewRelated/Menus/Controllers/MenuItemsViewController.h, - ViewRelated/Menus/Controllers/MenusViewController.h, - ViewRelated/Pages/PageSettingsViewController.h, - ViewRelated/Post/PostSettingsViewController.h, - ViewRelated/Stats/StatsViewController.h, - ViewRelated/Suggestions/SuggestionsTableView.h, - ViewRelated/Suggestions/SuggestionsTableViewCell.h, - ViewRelated/System/WPTabBarController.h, - ViewRelated/Tools/SettingsMultiTextViewController.h, - ViewRelated/Tools/SettingsSelectionViewController.h, - ViewRelated/Tools/SettingsTextViewController.h, - ViewRelated/Views/WPUploadStatusButton.h, - ); - target = 0CED016F2D95B897003015CF /* Keystone */; - }; - 0C5C47012D9839DE00F2CD55 /* Exceptions for "Keystone" folder in "Keystone" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - publicHeaders = ( - WordPress.h, - ); - target = 0CED016F2D95B897003015CF /* Keystone */; - }; - 0C73D1A22DAEFA9800CC0F3A /* Exceptions for "KeystoneTests" folder in "WordPressTest" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "WordPressTest-Info.plist", - WordPressUnitTests.xctestplan, - ); - target = E16AB92914D978240047A2E5 /* WordPressTest */; - }; - 3F0F25872D9BD88C00CD05D6 /* Exceptions for "Classes" folder in "WordPressData" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "Networking/WordPressOrgRestApi+WordPress.swift", - "RemotePost+Metadata.swift", - "Services/PostRepository+Helpers.swift", - ); - target = 3F7AE0B42D9B30A100AB4892 /* WordPressData */; - }; - 3F164FCF2D9E49A8008BC606 /* Exceptions for "Classes" folder in "WordPress" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "Networking/WordPressOrgRestApi+WordPress.swift", - "RemotePost+Metadata.swift", - "Services/PostRepository+Helpers.swift", - ); - target = 1D6058900D05DD3D006BFB54 /* WordPress */; - }; - 3F164FD02D9E49A8008BC606 /* Exceptions for "Classes" folder in "Jetpack" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "Networking/WordPressOrgRestApi+WordPress.swift", - "RemotePost+Metadata.swift", - "Services/PostRepository+Helpers.swift", - ); - target = FABB1F8F2602FC2C00C8785C /* Jetpack */; - }; - 3F1A64F82DA7ABC300786B92 /* Exceptions for "Classes" folder in "Reader" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - "System/ApiCredentials+BuildSecrets.swift", - ); - target = 0C5A3F8B2D9B1E3700C25301 /* Reader */; - }; - 3F7AE0D02D9B30A200AB4892 /* Exceptions for "WordPressData" folder in "WordPressData" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - publicHeaders = ( - "Objective-C/include/AbstractPost.h", - "Objective-C/include/BasePost.h", - "Objective-C/include/Blog.h", - "Objective-C/include/CoreDataStack.h", - "Objective-C/include/LocalCoreDataService.h", - "Objective-C/include/Media.h", - "Objective-C/include/Menu.h", - "Objective-C/include/MenuItem.h", - "Objective-C/include/MenuLocation.h", - "Objective-C/include/PostCategory.h", - "Objective-C/include/PostContentProvider.h", - "Objective-C/include/PostHelper.h", - "Objective-C/include/PostService.h", - "Objective-C/include/PostServiceOptions.h", - "Objective-C/include/PostTag.h", - "Objective-C/include/PostType.h", - "Objective-C/include/ReaderGapMarker.h", - "Objective-C/include/ReaderPost.h", - "Objective-C/include/SourcePostAttribution.h", - "Objective-C/include/Theme.h", - "Objective-C/include/WPAccount.h", - WordPressData.h, - ); - target = 3F7AE0B42D9B30A100AB4892 /* WordPressData */; - }; -/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ - /* Begin PBXFileSystemSynchronizedRootGroup section */ 0C1CB0CD2D95C63C00494A8C /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; @@ -1172,33 +1000,21 @@ }; 0C238F782D9ADF0200981631 /* WordPressAuthenticator */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C2390242D9ADFAA00981631 /* Exceptions for "WordPressAuthenticator" folder in "WordPressAuthenticator" target */, - ); path = WordPressAuthenticator; sourceTree = ""; }; 0C3C988F2DA04EEF009F3BFB /* Jetpack */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C3E79F92DB16747000C7072 /* Exceptions for "Jetpack" folder in "Jetpack" target */, - ); path = Jetpack; sourceTree = ""; }; 0C3C98902DA04EF9009F3BFB /* WordPress */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C3CC0152DA058E6009F3BFB /* Exceptions for "WordPress" folder in "WordPress" target */, - ); path = WordPress; sourceTree = ""; }; 0C3E79892DB164B3000C7072 /* JetpackStatsWidgets */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C3E79F82DB164FF000C7072 /* Exceptions for "JetpackStatsWidgets" folder in "JetpackStatsWidgets" target */, - ); path = JetpackStatsWidgets; sourceTree = ""; }; @@ -1209,25 +1025,16 @@ }; 0C5A3FAB2D9B1EF400C25301 /* Reader */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C5A3FB42D9B214200C25301 /* Exceptions for "Reader" folder in "Reader" target */, - ); path = Reader; sourceTree = ""; }; 0C5C46FE2D98397A00F2CD55 /* Keystone */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C5C47012D9839DE00F2CD55 /* Exceptions for "Keystone" folder in "Keystone" target */, - ); path = Keystone; sourceTree = ""; }; 0C73A9BD2DAEDFDE00CC0F3A /* KeystoneTests */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 0C73D1A22DAEFA9800CC0F3A /* Exceptions for "KeystoneTests" folder in "WordPressTest" target */, - ); path = KeystoneTests; sourceTree = ""; }; @@ -1243,21 +1050,12 @@ }; 24CE57C42CD3375200C7B37D /* Classes */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 3F164FCF2D9E49A8008BC606 /* Exceptions for "Classes" folder in "WordPress" target */, - 3F164FD02D9E49A8008BC606 /* Exceptions for "Classes" folder in "Jetpack" target */, - 3F1A64F82DA7ABC300786B92 /* Exceptions for "Classes" folder in "Reader" target */, - 0C5C46F42D98343300F2CD55 /* Exceptions for "Classes" folder in "Keystone" target */, - 3F0F25872D9BD88C00CD05D6 /* Exceptions for "Classes" folder in "WordPressData" target */, - ); - path = Classes; + name = Classes; + path = WordPress/Classes; sourceTree = ""; }; 3F7AE0B62D9B30A100AB4892 /* WordPressData */ = { isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 3F7AE0D02D9B30A200AB4892 /* Exceptions for "WordPressData" folder in "WordPressData" target */, - ); path = WordPressData; sourceTree = ""; }; @@ -1548,8 +1346,7 @@ 0C5A1A042D9B080900C25301 /* WordPressAuthenticatorTests */, 3F7AE0C22D9B30A200AB4892 /* WordPressDataTests */, ); - name = Tests; - path = ../Tests; + path = Tests; sourceTree = SOURCE_ROOT; }; 0C5C46FB2D98395300F2CD55 /* Sources */ = { @@ -1563,8 +1360,7 @@ 3F7AE0B62D9B30A100AB4892 /* WordPressData */, 0C3E79892DB164B3000C7072 /* JetpackStatsWidgets */, ); - name = Sources; - path = ../Sources; + path = Sources; sourceTree = SOURCE_ROOT; }; 19C28FACFE9D520D11CA2CBB /* Products */ = { @@ -1760,7 +1556,8 @@ 7396FE64210F72D400496D0D /* Sources */, 7347407C2114C29B007FDDFF /* Supporting Files */, ); - path = WordPressNotificationServiceExtension; + name = WordPressNotificationServiceExtension; + path = WordPress/WordPressNotificationServiceExtension; sourceTree = ""; }; 73768B69212B4DE8005136A1 /* NotificationContent */ = { @@ -1796,7 +1593,8 @@ children = ( 74576686202B571700F42E40 /* Supporting Files */, ); - path = WordPressDraftActionExtension; + name = WordPressDraftActionExtension; + path = WordPress/WordPressDraftActionExtension; sourceTree = ""; }; 74576686202B571700F42E40 /* Supporting Files */ = { @@ -1816,7 +1614,8 @@ children = ( 8096212A28E553A500940A5D /* Info.plist */, ); - path = JetpackShareExtension; + name = JetpackShareExtension; + path = WordPress/JetpackShareExtension; sourceTree = ""; }; 8096218728E55CB800940A5D /* JetpackDraftActionExtension */ = { @@ -1825,7 +1624,8 @@ 8096218828E55D2400940A5D /* Info.plist */, 8058730D28F7B70B00340C11 /* InfoPlist.strings */, ); - path = JetpackDraftActionExtension; + name = JetpackDraftActionExtension; + path = WordPress/JetpackDraftActionExtension; sourceTree = ""; }; 80F6D05628EE869900953C1A /* JetpackNotificationServiceExtension */ = { @@ -1833,7 +1633,8 @@ children = ( 80F6D05828EE86F800953C1A /* Info.plist */, ); - path = JetpackNotificationServiceExtension; + name = JetpackNotificationServiceExtension; + path = WordPress/JetpackNotificationServiceExtension; sourceTree = ""; }; 8511CFB71C607A7000B7CEED /* WordPressScreenshotGeneration */ = { @@ -1844,7 +1645,8 @@ 8511CFC61C60894200B7CEED /* WordPressScreenshotGeneration.swift */, F9463A7221C05EE90081F11E /* ScreenshotCredentials.swift */, ); - path = WordPressScreenshotGeneration; + name = WordPressScreenshotGeneration; + path = WordPress/WordPressScreenshotGeneration; sourceTree = ""; }; 932225A81C7CE50300443B02 /* WordPressShareExtension */ = { @@ -1854,7 +1656,8 @@ B5BEA5661C7CEB4400C8035B /* Supporting Files */, E1AFA8C21E8E34230004A323 /* WordPressShare.js */, ); - path = WordPressShareExtension; + name = WordPressShareExtension; + path = WordPress/WordPressShareExtension; sourceTree = ""; }; B5BEA5661C7CEB4400C8035B /* Supporting Files */ = { @@ -1918,7 +1721,8 @@ children = ( 24AE9E66264B34E500AC7F15 /* Secrets-example.swift */, ); - path = Credentials; + name = Credentials; + path = WordPress/Credentials; sourceTree = ""; }; F14B5F6F208E648200439554 /* config */ = { @@ -1939,8 +1743,7 @@ 0C5A651B2D9B21CE00C25301 /* Reader.release.xcconfig */, 0C5A65192D9B21CE00C25301 /* Reader.alpha.xcconfig */, ); - name = config; - path = ../config; + path = config; sourceTree = ""; }; F1F163BF25658B4D003DC13B /* JetpackIntents */ = { @@ -1952,7 +1755,8 @@ 3F46AB0225BF5D6300CE2E98 /* Sites.intentdefinition */, 0167F4AC2AAA0250005B9E42 /* Supporting Files */, ); - path = JetpackIntents; + name = JetpackIntents; + path = WordPress/JetpackIntents; sourceTree = ""; }; F5A34D0525DF2F7700C9654B /* Fonts */ = { @@ -1971,7 +1775,8 @@ 24B54FAF2624F84C0041B18E /* JetpackRelease.entitlements */, 24B54FAE2624F8430041B18E /* JetpackRelease-Alpha.entitlements */, ); - path = Jetpack; + name = Jetpack; + path = WordPress/Jetpack; sourceTree = ""; }; FAF64BC82637DF0600E8A1DF /* JetpackScreenshotGeneration */ = { @@ -1980,7 +1785,8 @@ FAF64BDC2637DF7500E8A1DF /* Info.plist */, FAF64E4E2637E85800E8A1DF /* JetpackScreenshotGeneration.swift */, ); - path = JetpackScreenshotGeneration; + name = JetpackScreenshotGeneration; + path = WordPress/JetpackScreenshotGeneration; sourceTree = ""; }; FF2716901CAAC87B0006E2D4 /* UITests */ = { @@ -1996,7 +1802,8 @@ 80D65C1129CC0813008E69D5 /* JetpackUITests-Info.plist */, FF2716931CAAC87B0006E2D4 /* WordPressUITests-Info.plist */, ); - path = UITests; + name = UITests; + path = WordPress/UITests; sourceTree = ""; }; /* End PBXGroup section */ diff --git a/WordPress.xcworkspace/contents.xcworkspacedata b/WordPress.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 66% rename from WordPress.xcworkspace/contents.xcworkspacedata rename to WordPress.xcodeproj/project.xcworkspace/contents.xcworkspacedata index e1bc1296b185..919434a6254f 100644 --- a/WordPress.xcworkspace/contents.xcworkspacedata +++ b/WordPress.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/WordPress.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/WordPress.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from WordPress.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to WordPress.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/WordPress.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/WordPress.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 000000000000..9cd2a4c18354 --- /dev/null +++ b/WordPress.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,407 @@ +{ + "originHash" : "fe094f15c8e18dab512a2ddf88e08b4c895c60964ac1158c031ee731381eda34", + "pins" : [ + { + "identity" : "alamofire", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Alamofire/Alamofire", + "state" : { + "revision" : "513364f870f6bfc468f9d2ff0a95caccc10044c5", + "version" : "5.10.2" + } + }, + { + "identity" : "automattic-tracks-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/Automattic-Tracks-iOS", + "state" : { + "revision" : "437f586a62c07c6ceec9baf043237b2afe7ea1ac", + "version" : "3.5.2" + } + }, + { + "identity" : "automatticabout-swift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/AutomatticAbout-swift", + "state" : { + "revision" : "606384a7492faa1139d489080dd961b0b57f9fd9", + "version" : "1.1.5" + } + }, + { + "identity" : "azteceditor-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/AztecEditor-iOS", + "state" : { + "revision" : "f20f4102aab2dd9a14dffe5d42af069dcb08538f", + "version" : "1.20.0" + } + }, + { + "identity" : "charts", + "kind" : "remoteSourceControl", + "location" : "https://github.com/ChartsOrg/Charts", + "state" : { + "revision" : "dd9c72e3d7e751e769971092a6bd72d39198ae63", + "version" : "5.1.0" + } + }, + { + "identity" : "cocoalumberjack", + "kind" : "remoteSourceControl", + "location" : "https://github.com/CocoaLumberjack/CocoaLumberjack", + "state" : { + "revision" : "4b8714a7fb84d42393314ce897127b3939885ec3", + "version" : "3.8.5" + } + }, + { + "identity" : "color-studio", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/color-studio", + "state" : { + "revision" : "bf141adc75e2769eb469a3e095bdc93dc30be8de" + } + }, + { + "identity" : "commonui_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/commonui_sdk_ios", + "state" : { + "revision" : "8c1ab48a4a04637c42afc46d6b45b57c26ac05aa", + "version" : "9.0.2" + } + }, + { + "identity" : "core_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/core_sdk_ios", + "state" : { + "revision" : "4d676f214e48017d102cd499d5f453c5cf6d9ef2", + "version" : "5.0.4" + } + }, + { + "identity" : "cwlcatchexception", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlCatchException.git", + "state" : { + "revision" : "07b2ba21d361c223e25e3c1e924288742923f08c", + "version" : "2.2.1" + } + }, + { + "identity" : "cwlpreconditiontesting", + "kind" : "remoteSourceControl", + "location" : "https://github.com/mattgallagher/CwlPreconditionTesting.git", + "state" : { + "revision" : "0139c665ebb45e6a9fbdb68aabfd7c39f3fe0071", + "version" : "2.2.2" + } + }, + { + "identity" : "down", + "kind" : "remoteSourceControl", + "location" : "https://github.com/johnxnguyen/Down", + "state" : { + "branch" : "master", + "revision" : "e754ab1c80920dd51a8e08290c912ac1c2ac8b58" + } + }, + { + "identity" : "fsinteractivemap", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/FSInteractiveMap", + "state" : { + "revision" : "3a05cd433c4f6bfe66f09253459cef2be058b3ec", + "version" : "0.3.0" + } + }, + { + "identity" : "gifu", + "kind" : "remoteSourceControl", + "location" : "https://github.com/kaishin/Gifu", + "state" : { + "revision" : "82da0086dea14ca9afc9801234ad8dc4cd9e2738", + "version" : "3.4.1" + } + }, + { + "identity" : "gravatar-sdk-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/Gravatar-SDK-iOS", + "state" : { + "revision" : "693616b9fb95432ac25ebb1fc3194767c1bd3904", + "version" : "3.2.0" + } + }, + { + "identity" : "gridicons-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/Gridicons-iOS", + "state" : { + "branch" : "develop", + "revision" : "79c7e58c81ea5cfad954974b1982b9ed9a0a48ad" + } + }, + { + "identity" : "gutenbergkit", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/GutenbergKit", + "state" : { + "revision" : "a508888e828eb215e074c00042d9e3fd9a71568d", + "version" : "0.2.0" + } + }, + { + "identity" : "jtapplecalendar", + "kind" : "remoteSourceControl", + "location" : "https://github.com/patchthecode/JTAppleCalendar", + "state" : { + "revision" : "718f0ab68ba0fcd2bc134f6e9d30edc1b9b038e1", + "version" : "8.0.5" + } + }, + { + "identity" : "lottie-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/airbnb/lottie-ios", + "state" : { + "revision" : "047aa81b77adcbf583a966dfef620d17650cc656", + "version" : "4.5.1" + } + }, + { + "identity" : "mediaeditor-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/MediaEditor-iOS", + "state" : { + "branch" : "task/spm-support", + "revision" : "e9f74b21276d5cd1cb94ee1c09cc060b23187832" + } + }, + { + "identity" : "messaging_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/messaging_sdk_ios", + "state" : { + "revision" : "0f81007fe9c9467bc583040f3343b205311cebfd", + "version" : "6.0.2" + } + }, + { + "identity" : "messagingapi_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/messagingapi_sdk_ios", + "state" : { + "revision" : "f86020a681e28a7bfae9e2445eb027d37dc5d5f5", + "version" : "6.0.1" + } + }, + { + "identity" : "nimble", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Quick/Nimble", + "state" : { + "revision" : "1f3bde57bde12f5e7b07909848c071e9b73d6edc", + "version" : "10.0.0" + } + }, + { + "identity" : "nsobject-safeexpectations", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/NSObject-SafeExpectations", + "state" : { + "revision" : "eb84d994ab13a153888a19e5b99f536aafa77434", + "version" : "0.0.6" + } + }, + { + "identity" : "nsurl-idn", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/NSURL-IDN", + "state" : { + "revision" : "b34794c9a3f32312e1593d4a3d120572afa0d010" + } + }, + { + "identity" : "ocmock", + "kind" : "remoteSourceControl", + "location" : "https://github.com/erikdoe/ocmock", + "state" : { + "revision" : "2c0bfd373289f4a7716db5d6db471640f91a6507" + } + }, + { + "identity" : "ohhttpstubs", + "kind" : "remoteSourceControl", + "location" : "https://github.com/AliSoftware/OHHTTPStubs", + "state" : { + "revision" : "12f19662426d0434d6c330c6974d53e2eb10ecd9", + "version" : "9.1.0" + } + }, + { + "identity" : "reachability", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/Reachability", + "state" : { + "branch" : "framework-support-via-spm", + "revision" : "5552d6a2ceeb40ad6aa1a288ea7bbd544fb68d6f" + } + }, + { + "identity" : "screenobject", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/ScreenObject", + "state" : { + "revision" : "5a62548524a0ad65d8e2e5d4f665981c48066253", + "version" : "0.3.0" + } + }, + { + "identity" : "sdkconfigurations_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/sdkconfigurations_sdk_ios", + "state" : { + "revision" : "fec7b8bf3d85cb895a0820a2f9d102f9d6ba3070", + "version" : "4.0.0" + } + }, + { + "identity" : "sentry-cocoa", + "kind" : "remoteSourceControl", + "location" : "https://github.com/getsentry/sentry-cocoa", + "state" : { + "revision" : "f45e9c62d7a4d9258ac3cf35a3acf9dbab4481d1", + "version" : "8.43.0" + } + }, + { + "identity" : "starscream", + "kind" : "remoteSourceControl", + "location" : "https://github.com/daltoniam/Starscream", + "state" : { + "revision" : "c6bfd1af48efcc9a9ad203665db12375ba6b145a", + "version" : "4.0.8" + } + }, + { + "identity" : "support_providers_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/support_providers_sdk_ios", + "state" : { + "revision" : "b8194243297eaab61a92138a1dc5872bce358346", + "version" : "8.0.4" + } + }, + { + "identity" : "support_sdk_ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/zendesk/support_sdk_ios", + "state" : { + "revision" : "6b5f6d2ffc92c10d38cb9c716ae37b2832230c89", + "version" : "8.0.4" + } + }, + { + "identity" : "svprogresshud", + "kind" : "remoteSourceControl", + "location" : "https://github.com/SVProgressHUD/SVProgressHUD", + "state" : { + "revision" : "c33f7c775ba7feea6047a1fc3257f2e5863b44f7", + "version" : "2.3.1" + } + }, + { + "identity" : "swift-collections", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-collections", + "state" : { + "revision" : "671108c96644956dddcd89dd59c203dcdb36cec7", + "version" : "1.1.4" + } + }, + { + "identity" : "swift-log", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-log", + "state" : { + "revision" : "96a2f8a0fa41e9e09af4585e2724c4e825410b91", + "version" : "1.6.2" + } + }, + { + "identity" : "swift-sodium", + "kind" : "remoteSourceControl", + "location" : "https://github.com/jedisct1/swift-sodium", + "state" : { + "revision" : "4f9164a0a2c9a6a7ff53a2833d54a5c79c957342", + "version" : "0.9.1" + } + }, + { + "identity" : "swiftsoup", + "kind" : "remoteSourceControl", + "location" : "https://github.com/scinfu/SwiftSoup", + "state" : { + "revision" : "3c2c7e1e72b8abd96eafbae80323c5c1e5317437", + "version" : "2.7.5" + } + }, + { + "identity" : "test-collector-swift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/buildkite/test-collector-swift", + "state" : { + "revision" : "631a2400dbe876141a3ef8c7400885907fec7f89", + "version" : "0.4.1" + } + }, + { + "identity" : "tocropviewcontroller", + "kind" : "remoteSourceControl", + "location" : "https://github.com/TimOliver/TOCropViewController", + "state" : { + "revision" : "a634cb7cdfd580006e79a6e74e64417fe9e9783b", + "version" : "2.7.4" + } + }, + { + "identity" : "uideviceidentifier", + "kind" : "remoteSourceControl", + "location" : "https://github.com/squarefrog/UIDeviceIdentifier", + "state" : { + "revision" : "4699794b08bb79a4d77785edaba6ea739e298e4b", + "version" : "2.3.0" + } + }, + { + "identity" : "wordpress-rs", + "kind" : "remoteSourceControl", + "location" : "https://github.com/Automattic/wordpress-rs", + "state" : { + "branch" : "alpha-20250505", + "revision" : "645c8a22303e93267d4f1e645f8e01d228fd7e7c" + } + }, + { + "identity" : "wordpresskit-ios", + "kind" : "remoteSourceControl", + "location" : "https://github.com/wordpress-mobile/WordPressKit-iOS", + "state" : { + "revision" : "5bc08764d2025e21685816065f611e884c8672d1" + } + }, + { + "identity" : "zipfoundation", + "kind" : "remoteSourceControl", + "location" : "https://github.com/weichsel/ZIPFoundation", + "state" : { + "revision" : "02b6abe5f6eef7e3cbd5f247c5cc24e246efcfe0", + "version" : "0.9.19" + } + } + ], + "version" : 3 +} diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Jetpack.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/Jetpack.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Jetpack.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/Jetpack.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackIntents.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackIntents.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackIntents.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/JetpackIntents.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackScreenshotGeneration.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackScreenshotGeneration.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackScreenshotGeneration.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/JetpackScreenshotGeneration.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackUITests.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackUITests.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/JetpackUITests.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/JetpackUITests.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Keystone.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/Keystone.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Keystone.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/Keystone.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Reader.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/Reader.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/Reader.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/Reader.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPress.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPress.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPress.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPress.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressAuthenticator.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressAuthenticator.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressAuthenticator.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressAuthenticator.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressData.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressData.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressData.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressData.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressKit.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressKit.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressKit.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressKit.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressScreenshotGeneration.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressScreenshotGeneration.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressScreenshotGeneration.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressScreenshotGeneration.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressShareExtension.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressShareExtension.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressShareExtension.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressShareExtension.xcscheme diff --git a/WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressUITests.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressUITests.xcscheme similarity index 100% rename from WordPress/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressUITests.xcscheme rename to WordPress.xcodeproj/xcshareddata/xcschemes/WordPressUITests.xcscheme diff --git a/WordPress.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/WordPress.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index 0c67376ebacb..000000000000 --- a/WordPress.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,5 +0,0 @@ - - - - - From 1cfc8528273414dd21554522e668eb05c2b9d3f3 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:17:36 +1000 Subject: [PATCH 11/23] WIP - Fix xcframeworks paths --- WordPress.xcodeproj/project.pbxproj | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index caa56c95bf3a..4b1a0343ecf6 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -794,11 +794,11 @@ 3F46AB0125BF5D6300CE2E98 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; name = Base; path = Base.lproj/Sites.intentdefinition; sourceTree = ""; }; 3F526C4D2538CF2A0069706C /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WidgetKit.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; }; 3F526C4F2538CF2A0069706C /* SwiftUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SwiftUI.framework; path = System/Library/Frameworks/SwiftUI.framework; sourceTree = SDKROOT; }; - 3F60D38F2D2C4BA3008ACD86 /* React.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = React.xcframework; path = Frameworks/React.xcframework; sourceTree = ""; }; - 3F60D3902D2C4BA3008ACD86 /* Gutenberg.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Gutenberg.xcframework; path = Frameworks/Gutenberg.xcframework; sourceTree = ""; }; - 3F60D3912D2C4BA3008ACD86 /* RNTAztecView.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RNTAztecView.xcframework; path = Frameworks/RNTAztecView.xcframework; sourceTree = ""; }; - 3F60D3922D2C4BA3008ACD86 /* hermes.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = hermes.xcframework; path = Frameworks/hermes.xcframework; sourceTree = ""; }; - 3F60D3932D2C4BA4008ACD86 /* yoga.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = yoga.xcframework; path = Frameworks/yoga.xcframework; sourceTree = ""; }; + 3F60D38F2D2C4BA3008ACD86 /* React.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = React.xcframework; path = WordPress/Frameworks/React.xcframework; sourceTree = ""; }; + 3F60D3902D2C4BA3008ACD86 /* Gutenberg.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Gutenberg.xcframework; path = WordPress/Frameworks/Gutenberg.xcframework; sourceTree = ""; }; + 3F60D3912D2C4BA3008ACD86 /* RNTAztecView.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = RNTAztecView.xcframework; path = WordPress/Frameworks/RNTAztecView.xcframework; sourceTree = ""; }; + 3F60D3922D2C4BA3008ACD86 /* hermes.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = hermes.xcframework; path = WordPress/Frameworks/hermes.xcframework; sourceTree = ""; }; + 3F60D3932D2C4BA4008ACD86 /* yoga.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = yoga.xcframework; path = WordPress/Frameworks/yoga.xcframework; sourceTree = ""; }; 3F7AE0B52D9B30A100AB4892 /* WordPressData.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WordPressData.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 3F7AE0BC2D9B30A200AB4892 /* WordPressDataTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WordPressDataTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 3F9DD3F62CC214BF00DF1760 /* Common.debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.debug.xcconfig; sourceTree = ""; }; From 21e4cd1cb1bcab9f1491e93da7942a046a8dbad4 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:18:06 +1000 Subject: [PATCH 12/23] WIP - Update paths for build phase scripts --- WordPress.xcodeproj/project.pbxproj | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 4b1a0343ecf6..e4bda61aacff 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -2787,7 +2787,7 @@ files = ( ); inputFileListPaths = ( - "$(SRCROOT)/../Scripts/BuildPhases/GenerateCredentials.xcfilelist", + "$(SRCROOT)/Scripts/BuildPhases/GenerateCredentials.xcfilelist", ); inputPaths = ( ); @@ -2799,7 +2799,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "$SRCROOT/../Scripts/BuildPhases/GenerateCredentials.sh\n"; + shellScript = "$SRCROOT/Scripts/BuildPhases/GenerateCredentials.sh\n"; }; 245562402C5C3C5D00A15446 /* Build Acknowledgements Bundle */ = { isa = PBXShellScriptBuildPhase; @@ -2820,7 +2820,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/bash; - shellScript = "#!/bin/bash\n\nbash ../Scripts/BuildPhases/GenerateAcknowledgementsBundle.sh\n"; + shellScript = "#!/bin/bash\n\nbash $SRCROOT/Scripts/BuildPhases/GenerateAcknowledgementsBundle.sh\n"; }; 24E55D502CCC143F008D071D /* Build Acknowledgements Bundle */ = { isa = PBXShellScriptBuildPhase; @@ -2841,7 +2841,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/bash; - shellScript = "#!/bin/bash\n\nbash ../Scripts/BuildPhases/GenerateAcknowledgementsBundle.sh\n"; + shellScript = "#!/bin/bash\n\nbash $SRCROOT/Scripts/BuildPhases/GenerateAcknowledgementsBundle.sh\n"; }; 3F1A64F52DA7A43900786B92 /* Generate Credentials */ = { isa = PBXShellScriptBuildPhase; @@ -2869,7 +2869,7 @@ files = ( ); inputFileListPaths = ( - "$(SRCROOT)/../Scripts/BuildPhases/GenerateCredentials.xcfilelist", + "$(SRCROOT)/Scripts/BuildPhases/GenerateCredentials.xcfilelist", ); inputPaths = ( ); @@ -2881,7 +2881,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "$SRCROOT/../Scripts/BuildPhases/GenerateCredentials.sh\n"; + shellScript = "$SRCROOT/Scripts/BuildPhases/GenerateCredentials.sh\n"; }; 3F47AC4E2A7206C900208F0D /* Set up Simulator */ = { isa = PBXShellScriptBuildPhase; @@ -2909,18 +2909,18 @@ files = ( ); inputPaths = ( - $SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.inputs.xcfilelist, + $SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.inputs.xcfilelist, ); name = "Copy Gutenberg JS"; outputFileListPaths = ( - $SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.outputs.xcfilelist, + $SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.outputs.xcfilelist, ); outputPaths = ( "", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"$SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.sh\"\n"; + shellScript = "\"$SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.sh\"\n"; }; FABB264C2602FC2C00C8785C /* Copy Gutenberg JS */ = { isa = PBXShellScriptBuildPhase; @@ -2928,19 +2928,19 @@ files = ( ); inputFileListPaths = ( - $SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.inputs.xcfilelist, + $SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.inputs.xcfilelist, ); inputPaths = ( ); name = "Copy Gutenberg JS"; outputFileListPaths = ( - $SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.outputs.xcfilelist, + $SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.outputs.xcfilelist, ); outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"$SRCROOT/../Scripts/BuildPhases/CopyGutenbergJS.sh\"\n"; + shellScript = "\"$SRCROOT/Scripts/BuildPhases/CopyGutenbergJS.sh\"\n"; }; FFA8E2301F94E3EF0002170F /* SwiftLint */ = { isa = PBXShellScriptBuildPhase; From 5eaec7353d7157652465fc9d4bf03ec0e8a0bbfe Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:37:40 +1000 Subject: [PATCH 13/23] WIP - Update Info.plist path for WordPress --- WordPress.xcodeproj/project.pbxproj | 16 +++++++++++++--- config/Common.xcconfig | 2 ++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index e4bda61aacff..33e5296211dc 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -992,6 +992,16 @@ FFE69A2A1B1BFE200073C2EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/InfoPlist.strings; sourceTree = ""; }; /* End PBXFileReference section */ +/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ + 3F8432C12DCDA127001CD739 /* Exceptions for "WordPress" folder in "WordPress" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + Info.plist, + ); + target = 1D6058900D05DD3D006BFB54 /* WordPress */; + }; +/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ + /* Begin PBXFileSystemSynchronizedRootGroup section */ 0C1CB0CD2D95C63C00494A8C /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; @@ -1010,6 +1020,9 @@ }; 0C3C98902DA04EF9009F3BFB /* WordPress */ = { isa = PBXFileSystemSynchronizedRootGroup; + exceptions = ( + 3F8432C12DCDA127001CD739 /* Exceptions for "WordPress" folder in "WordPress" target */, + ); path = WordPress; sourceTree = ""; }; @@ -4105,7 +4118,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/WordPress/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -4162,7 +4174,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/WordPress/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -5637,7 +5648,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/WordPress/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", diff --git a/config/Common.xcconfig b/config/Common.xcconfig index e48ba4329508..51ba2f4cfc87 100644 --- a/config/Common.xcconfig +++ b/config/Common.xcconfig @@ -2,3 +2,5 @@ GCC_WARN_UNUSED_PARAMETER = YES WARNING_CFLAGS = -Wno-nullability-completeness IPHONEOS_DEPLOYMENT_TARGET = 16.0 CODE_SIGN_STYLE = Manual + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist From 18576e87aee1b6bc4f41c91ebdcad2c76e46905a Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:39:08 +1000 Subject: [PATCH 14/23] WIP - Fix path for SwiftLint aggregate target --- WordPress.xcodeproj/project.pbxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 33e5296211dc..b825b917cec4 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -2968,7 +2968,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "sh \"${SRCROOT}/../Scripts/BuildPhases/SwiftLint.sh\"\n"; + shellScript = "sh \"${SRCROOT}/Scripts/BuildPhases/SwiftLint.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ From 51015472442bc93e28e9807b384421ba434a10df Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:53:44 +1000 Subject: [PATCH 15/23] WIP - Fix a bunch more paths --- WordPress.xcodeproj/project.pbxproj | 36 +++++++++++++++-------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index b825b917cec4..3e720298be97 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -805,9 +805,9 @@ 3F9DD3F72CC2188400DF1760 /* Common.alpha.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.alpha.xcconfig; sourceTree = ""; }; 3FA640652670CEFE0064401E /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 3FD4B20E2DCC468200781DFA /* Modules */ = {isa = PBXFileReference; lastKnownFileType = wrapper; path = Modules; sourceTree = SOURCE_ROOT; }; - 406A0EEF224D39C50016AD6A /* Flags.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Flags.xcassets; sourceTree = ""; }; - 433840C622C2BA5B00CB13F8 /* AppImages.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = AppImages.xcassets; path = Resources/AppImages.xcassets; sourceTree = ""; }; - 4A690C142BA790BC00A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; + 406A0EEF224D39C50016AD6A /* Flags.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Flags.xcassets; path = WordPress/Flags.xcassets; sourceTree = ""; }; + 433840C622C2BA5B00CB13F8 /* AppImages.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = AppImages.xcassets; path = WordPress/Resources/AppImages.xcassets; sourceTree = ""; }; + 4A690C142BA790BC00A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = WordPress/PrivacyInfo.xcprivacy; sourceTree = ""; }; 4A690C172BA794C300A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; 4A690C1A2BA7958F00A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; 4A690C1D2BA796C500A8E0C5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; @@ -816,7 +816,7 @@ 4AD953BB2C21451700D0EEFA /* WordPressAuthenticatorTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WordPressAuthenticatorTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 5D69DBC3165428CA00A2D1F7 /* n.caf */ = {isa = PBXFileReference; lastKnownFileType = file; name = n.caf; path = Resources/Sounds/n.caf; sourceTree = ""; }; 6E5BA46826A59D620043A6F2 /* SupportScreenTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SupportScreenTests.swift; sourceTree = ""; }; - 6EDC0E8E105881A800F68A1D /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = text; path = iTunesArtwork; sourceTree = ""; }; + 6EDC0E8E105881A800F68A1D /* iTunesArtwork */ = {isa = PBXFileReference; lastKnownFileType = file; name = iTunesArtwork; path = WordPress/iTunesArtwork; sourceTree = ""; }; 7335AC5F21220D550012EF2D /* RemoteNotificationActionParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemoteNotificationActionParser.swift; sourceTree = ""; }; 733F36052126197800988727 /* UserNotificationsUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UserNotificationsUI.framework; path = System/Library/Frameworks/UserNotificationsUI.framework; sourceTree = SDKROOT; }; 734740762114C296007FDDFF /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -860,10 +860,10 @@ 8511CFC41C60884400B7CEED /* SnapshotHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SnapshotHelper.swift; sourceTree = ""; }; 8511CFC61C60894200B7CEED /* WordPressScreenshotGeneration.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WordPressScreenshotGeneration.swift; sourceTree = ""; }; 8527B15717CE98C5001CBA2E /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; - 8546B44E1BEAD48900193C07 /* WordPress-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "WordPress-Alpha.entitlements"; sourceTree = ""; }; + 8546B44E1BEAD48900193C07 /* WordPress-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; name = "WordPress-Alpha.entitlements"; path = "WordPress/WordPress-Alpha.entitlements"; sourceTree = ""; }; 8574469C1BF154E1007FDB5F /* cy */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cy; path = cy.lproj/InfoPlist.strings; sourceTree = ""; }; 8574469D1BF154E2007FDB5F /* cy */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cy; path = cy.lproj/Localizable.strings; sourceTree = ""; }; - 85ED98AA17DFB17200090D0B /* iTunesArtwork@2x */ = {isa = PBXFileReference; lastKnownFileType = text; path = "iTunesArtwork@2x"; sourceTree = ""; }; + 85ED98AA17DFB17200090D0B /* iTunesArtwork@2x */ = {isa = PBXFileReference; lastKnownFileType = file; name = "iTunesArtwork@2x"; path = "WordPress/iTunesArtwork@2x"; sourceTree = ""; }; 931DF4D718D09A2F00540BDD /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 931DF4D918D09A9B00540BDD /* pt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pt; path = pt.lproj/InfoPlist.strings; sourceTree = ""; }; 931DF4DA18D09AE100540BDD /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -873,7 +873,7 @@ 931DF4DE18D09B2600540BDD /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/InfoPlist.strings; sourceTree = ""; }; 931DF4DF18D09B3900540BDD /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/InfoPlist.strings; sourceTree = ""; }; 932225A71C7CE50300443B02 /* WordPressShareExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = WordPressShareExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - 934F1B3119ACCE5600E9E63E /* WordPress.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = WordPress.entitlements; sourceTree = ""; }; + 934F1B3119ACCE5600E9E63E /* WordPress.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = WordPress.entitlements; path = WordPress/WordPress.entitlements; sourceTree = ""; }; 9371F25C1E4A207F00BF26A0 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/Localizable.strings; sourceTree = ""; }; 9371F25D1E4A208E00BF26A0 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/Localizable.strings; sourceTree = ""; }; 9371F25E1E4A20A100BF26A0 /* sq */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sq; path = sq.lproj/Localizable.strings; sourceTree = ""; }; @@ -903,8 +903,8 @@ A20971B719B0BC570058F395 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; A20971B819B0BC570058F395 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; B50248B91C96FFCC00AFBDED /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = WordPressShareExtension/Info.plist; sourceTree = SOURCE_ROOT; }; - B50248BA1C96FFCC00AFBDED /* WordPressShare-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = "WordPressShare-Alpha.entitlements"; path = "WordPressShareExtension/WordPressShare-Alpha.entitlements"; sourceTree = SOURCE_ROOT; }; - B50248BD1C96FFCC00AFBDED /* WordPressShare.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = WordPressShare.entitlements; path = WordPressShareExtension/WordPressShare.entitlements; sourceTree = SOURCE_ROOT; }; + B50248BA1C96FFCC00AFBDED /* WordPressShare-Alpha.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; name = "WordPressShare-Alpha.entitlements"; path = "WordPress/WordPressShareExtension/WordPressShare-Alpha.entitlements"; sourceTree = SOURCE_ROOT; }; + B50248BD1C96FFCC00AFBDED /* WordPressShare.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; name = WordPressShare.entitlements; path = WordPress/WordPressShareExtension/WordPressShare.entitlements; sourceTree = SOURCE_ROOT; }; B5AA54D41A8E7510003BDD12 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; BE2B4E9E1FD664F5007AE3E4 /* BaseScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseScreen.swift; sourceTree = ""; }; BED4D82F1FF11DEF00A11345 /* EditorAztecTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EditorAztecTests.swift; sourceTree = ""; }; @@ -1053,7 +1053,8 @@ }; 0CED35262D959427003015CF /* Misc */ = { isa = PBXFileSystemSynchronizedRootGroup; - path = Misc; + name = Misc; + path = WordPress/Misc; sourceTree = ""; }; 0CFC380E2DA408BB00DB3386 /* Recoleta */ = { @@ -1778,7 +1779,8 @@ 0CFC380E2DA408BB00DB3386 /* Recoleta */, F5A34D0C25DF2F7700C9654B /* Noticons.ttf */, ); - path = Fonts; + name = Fonts; + path = WordPress/Fonts; sourceTree = ""; }; FABB1F8E2602FC0100C8785C /* Jetpack */ = { @@ -4924,7 +4926,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES; - CODE_SIGN_ENTITLEMENTS = WordPressDraftActionExtension/WordPressDraftActionExtension.entitlements; + CODE_SIGN_ENTITLEMENTS = WordPress/WordPressDraftActionExtension/WordPressDraftActionExtension.entitlements; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; ENABLE_BITCODE = NO; @@ -4969,7 +4971,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES; - CODE_SIGN_ENTITLEMENTS = WordPressDraftActionExtension/WordPressDraftActionExtension.entitlements; + CODE_SIGN_ENTITLEMENTS = WordPress/WordPressDraftActionExtension/WordPressDraftActionExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; @@ -5011,7 +5013,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES; - CODE_SIGN_ENTITLEMENTS = "WordPressDraftActionExtension/WordPressDraftActionExtension-Alpha.entitlements"; + CODE_SIGN_ENTITLEMENTS = "WordPress/WordPressDraftActionExtension/WordPressDraftActionExtension-Alpha.entitlements"; CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; @@ -5721,7 +5723,7 @@ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = WordPressShareExtension/WordPressShare.entitlements; + CODE_SIGN_ENTITLEMENTS = WordPress/WordPressShareExtension/WordPressShare.entitlements; COPY_PHASE_STRIP = NO; ENABLE_BITCODE = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -5776,7 +5778,7 @@ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = WordPressShareExtension/WordPressShare.entitlements; + CODE_SIGN_ENTITLEMENTS = WordPress/WordPressShareExtension/WordPressShare.entitlements; CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; COPY_PHASE_STRIP = NO; ENABLE_BITCODE = NO; @@ -5827,7 +5829,7 @@ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_ENTITLEMENTS = "WordPressShareExtension/WordPressShare-Alpha.entitlements"; + CODE_SIGN_ENTITLEMENTS = "WordPress/WordPressShareExtension/WordPressShare-Alpha.entitlements"; CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; COPY_PHASE_STRIP = NO; ENABLE_BITCODE = NO; From ae1ae180e25a7f88d8761d87010e001982d3e259 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 12:53:59 +1000 Subject: [PATCH 16/23] WIP - Track some new-ly-generated shared schemes --- .../WordPressDraftActionExtension.xcscheme | 97 +++++++++++++++++++ ...PressNotificationServiceExtension.xcscheme | 97 +++++++++++++++++++ 2 files changed, 194 insertions(+) create mode 100644 WordPress.xcodeproj/xcshareddata/xcschemes/WordPressDraftActionExtension.xcscheme create mode 100644 WordPress.xcodeproj/xcshareddata/xcschemes/WordPressNotificationServiceExtension.xcscheme diff --git a/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressDraftActionExtension.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressDraftActionExtension.xcscheme new file mode 100644 index 000000000000..15e42fa52f0d --- /dev/null +++ b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressDraftActionExtension.xcscheme @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressNotificationServiceExtension.xcscheme b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressNotificationServiceExtension.xcscheme new file mode 100644 index 000000000000..d838b5b4700c --- /dev/null +++ b/WordPress.xcodeproj/xcshareddata/xcschemes/WordPressNotificationServiceExtension.xcscheme @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 5b36a72c001c248201d47842ab6e2dd09d0599f2 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 14:09:41 +1000 Subject: [PATCH 17/23] WIP - Fix more paths - Resources --- WordPress.xcodeproj/project.pbxproj | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 3e720298be97..4ad54713ba77 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -945,7 +945,7 @@ E19853331755E461001CC6D5 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Localizable.strings; sourceTree = ""; }; E1A386C714DB05C300954CF8 /* AVFoundation.framework */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; E1A386C914DB05F700954CF8 /* CoreMedia.framework */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; - E1AFA8C21E8E34230004A323 /* WordPressShare.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = WordPressShare.js; path = WordPressShareExtension/WordPressShare.js; sourceTree = SOURCE_ROOT; }; + E1AFA8C21E8E34230004A323 /* WordPressShare.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = WordPressShare.js; path = WordPress/WordPressShareExtension/WordPressShare.js; sourceTree = SOURCE_ROOT; }; E1D91455134A853D0089019C /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; E1D91457134A854A0089019C /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; E1E977BC17B0FA9A00AFB867 /* th */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = th; path = th.lproj/Localizable.strings; sourceTree = ""; }; @@ -3472,7 +3472,7 @@ 09C8BB8427DFF9CC00974175 /* sk */, ); name = InfoPlist.strings; - path = Resources; + path = WordPress/Resources; sourceTree = ""; }; E1D91454134A853D0089019C /* Localizable.strings */ = { @@ -3514,7 +3514,7 @@ E163AF9E1ED45B100035317E /* sk */, ); name = Localizable.strings; - path = Resources; + path = WordPress/Resources; sourceTree = ""; }; /* End PBXVariantGroup section */ From 9e5987a63c5a6e9f5e7b480c70cdcf99fb832ef1 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 14:22:06 +1000 Subject: [PATCH 18/23] WIP -fix more .. paths --- .../GenerateCredentials.xcfilelist | 2 +- WordPress.xcodeproj/project.pbxproj | 49 ++++++++----------- 2 files changed, 21 insertions(+), 30 deletions(-) diff --git a/Scripts/BuildPhases/GenerateCredentials.xcfilelist b/Scripts/BuildPhases/GenerateCredentials.xcfilelist index c52def6be2d1..b390a597a606 100644 --- a/Scripts/BuildPhases/GenerateCredentials.xcfilelist +++ b/Scripts/BuildPhases/GenerateCredentials.xcfilelist @@ -18,4 +18,4 @@ ${SRCROOT}/Credentials/Secrets-example.swift # Add the script that uses this file as a source, so that, if the script # changes, Xcode will run it again on the next build. -${SRCROOT}/../Scripts/BuildPhases/ApplyConfiguration.sh +${SRCROOT}/Scripts/BuildPhases/ApplyConfiguration.sh diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 4ad54713ba77..95a8b8936dc2 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -2773,7 +2773,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = "/bin/bash -eu"; - shellScript = "\"$SRCROOT/../Scripts/BuildPhases/LintAppLocalizedStringsUsage.sh\"\n"; + shellScript = "\"$SRCROOT/Scripts/BuildPhases/LintAppLocalizedStringsUsage.sh\"\n"; showEnvVarsInLog = 0; }; 09607CE8281C9D0F002D2E5A /* [Lint] Check AppLocalizedString usage */ = { @@ -2793,7 +2793,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = "/bin/bash -eu"; - shellScript = "\"$SRCROOT/../Scripts/BuildPhases/LintAppLocalizedStringsUsage.sh\"\n"; + shellScript = "\"$SRCROOT/Scripts/BuildPhases/LintAppLocalizedStringsUsage.sh\"\n"; showEnvVarsInLog = 0; }; 0C96F99E2D92E28E000779B8 /* Generate Credentials */ = { @@ -2864,7 +2864,7 @@ files = ( ); inputFileListPaths = ( - "${SRCROOT}/../Scripts/BuildPhases/GenerateCredentials.xcfilelist", + "${SRCROOT}/Scripts/BuildPhases/GenerateCredentials.xcfilelist", ); inputPaths = ( ); @@ -2876,7 +2876,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/../Scripts/BuildPhases/GenerateCredentials.sh\"\n"; + shellScript = "\"${SRCROOT}/Scripts/BuildPhases/GenerateCredentials.sh\"\n"; }; 3F32E4AE270EAF5100A33D51 /* Generate Credentials */ = { isa = PBXShellScriptBuildPhase; @@ -2915,7 +2915,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "$SRCROOT/../Scripts/BuildPhases/ConfigureSimulatorForUITesting.sh\n"; + shellScript = "$SRCROOT/Scripts/BuildPhases/ConfigureSimulatorForUITesting.sh\n"; showEnvVarsInLog = 0; }; E1C5456F219F10E000896227 /* Copy Gutenberg JS */ = { @@ -3536,7 +3536,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../Sources/JetpackStatsWidgets/JetpackStatsWidgets.entitlements; + CODE_SIGN_ENTITLEMENTS = Sources/JetpackStatsWidgets/JetpackStatsWidgets.entitlements; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -3547,7 +3547,6 @@ ); GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = ../Sources/JetpackStatsWidgets/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -3581,7 +3580,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = ../Sources/JetpackStatsWidgets/JetpackStatsWidgets.entitlements; + CODE_SIGN_ENTITLEMENTS = Sources/JetpackStatsWidgets/JetpackStatsWidgets.entitlements; CODE_SIGN_IDENTITY = "Apple Distribution: Automattic, Inc. (PZYM8XX95Q)"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; @@ -3589,7 +3588,6 @@ GCC_C_LANGUAGE_STANDARD = gnu11; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = ../Sources/JetpackStatsWidgets/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -3622,7 +3620,7 @@ CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_ENTITLEMENTS = "../Sources/JetpackStatsWidgets/JetpackStatsWidgetsRelease-Alpha.entitlements"; + CODE_SIGN_ENTITLEMENTS = "Sources/JetpackStatsWidgets/JetpackStatsWidgetsRelease-Alpha.entitlements"; CODE_SIGN_IDENTITY = "iPhone Distribution: Automattic, Inc."; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; @@ -3630,7 +3628,6 @@ GCC_C_LANGUAGE_STANDARD = gnu11; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = ../Sources/JetpackStatsWidgets/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -3796,7 +3793,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../Sources/Reader/Info.plist; INFOPLIST_KEY_ITSAppUsesNonExemptEncryption = NO; INFOPLIST_KEY_NSCameraUsageDescription = "To take photos or videos to use in your posts."; INFOPLIST_KEY_NSMicrophoneUsageDescription = "Enable microphone access to record sound in your videos."; @@ -3844,7 +3840,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../Sources/Reader/Info.plist; INFOPLIST_KEY_ITSAppUsesNonExemptEncryption = NO; INFOPLIST_KEY_NSCameraUsageDescription = "To take photos or videos to use in your posts."; INFOPLIST_KEY_NSMicrophoneUsageDescription = "Enable microphone access to record sound in your videos."; @@ -3891,7 +3886,6 @@ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GENERATE_INFOPLIST_FILE = YES; - INFOPLIST_FILE = ../Sources/Reader/Info.plist; INFOPLIST_KEY_ITSAppUsesNonExemptEncryption = NO; INFOPLIST_KEY_NSCameraUsageDescription = "To take photos or videos to use in your posts."; INFOPLIST_KEY_NSMicrophoneUsageDescription = "Enable microphone access to record sound in your videos."; @@ -3936,7 +3930,7 @@ ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; GCC_DYNAMIC_NO_PIC = NO; - GCC_PREFIX_HEADER = ../Sources/Keystone/Keystone_Prefix.pch; + GCC_PREFIX_HEADER = Sources/Keystone/Keystone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", @@ -4001,7 +3995,7 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_PREFIX_HEADER = ../Sources/Keystone/Keystone_Prefix.pch; + GCC_PREFIX_HEADER = Sources/Keystone/Keystone_Prefix.pch; GCC_TREAT_WARNINGS_AS_ERRORS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; @@ -4061,7 +4055,7 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_PREFIX_HEADER = ../Sources/Keystone/Keystone_Prefix.pch; + GCC_PREFIX_HEADER = Sources/Keystone/Keystone_Prefix.pch; GCC_TREAT_WARNINGS_AS_ERRORS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; @@ -4253,7 +4247,7 @@ ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; GCC_DYNAMIC_NO_PIC = NO; - GCC_PREFIX_HEADER = ../Sources/WordPressData/WordPressData_Prefix.pch; + GCC_PREFIX_HEADER = Sources/WordPressData/WordPressData_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", @@ -4323,7 +4317,7 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_PREFIX_HEADER = ../Sources/WordPressData/WordPressData_Prefix.pch; + GCC_PREFIX_HEADER = Sources/WordPressData/WordPressData_Prefix.pch; GCC_TREAT_WARNINGS_AS_ERRORS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; @@ -4388,7 +4382,7 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; - GCC_PREFIX_HEADER = ../Sources/WordPressData/WordPressData_Prefix.pch; + GCC_PREFIX_HEADER = Sources/WordPressData/WordPressData_Prefix.pch; GCC_TREAT_WARNINGS_AS_ERRORS = NO; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; @@ -5688,7 +5682,7 @@ COPY_PHASE_STRIP = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "../Tests/KeystoneTests/WordPressTest-Prefix.pch"; + GCC_PREFIX_HEADER = "Tests/KeystoneTests/WordPressTest-Prefix.pch"; GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; HEADER_SEARCH_PATHS = ( @@ -5696,7 +5690,7 @@ "$(SDKROOT)/usr/include/libxml2", "$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources", ); - INFOPLIST_FILE = "../Tests/KeystoneTests/WordPressTest-Info.plist"; + INFOPLIST_FILE = "Tests/KeystoneTests/WordPressTest-Info.plist"; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_TREAT_WARNINGS_AS_ERRORS = NO; @@ -5983,7 +5977,7 @@ GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "../Tests/KeystoneTests/WordPressTest-Prefix.pch"; + GCC_PREFIX_HEADER = "Tests/KeystoneTests/WordPressTest-Prefix.pch"; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", @@ -5996,7 +5990,7 @@ "$(SDKROOT)/usr/include/libxml2", "$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources", ); - INFOPLIST_FILE = "../Tests/KeystoneTests/WordPressTest-Info.plist"; + INFOPLIST_FILE = "Tests/KeystoneTests/WordPressTest-Info.plist"; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_TREAT_WARNINGS_AS_ERRORS = NO; @@ -6014,7 +6008,7 @@ COPY_PHASE_STRIP = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "../Tests/KeystoneTests/WordPressTest-Prefix.pch"; + GCC_PREFIX_HEADER = "Tests/KeystoneTests/WordPressTest-Prefix.pch"; GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; HEADER_SEARCH_PATHS = ( @@ -6022,7 +6016,7 @@ "$(SDKROOT)/usr/include/libxml2", "$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources", ); - INFOPLIST_FILE = "../Tests/KeystoneTests/WordPressTest-Info.plist"; + INFOPLIST_FILE = "Tests/KeystoneTests/WordPressTest-Info.plist"; PRODUCT_BUNDLE_IDENTIFIER = "org.wordpress.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_TREAT_WARNINGS_AS_ERRORS = NO; @@ -6184,7 +6178,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -6241,7 +6234,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -6292,7 +6284,6 @@ "$(inherited)", /usr/include/libxml2, ); - INFOPLIST_FILE = ../Sources/Jetpack/Info.plist; INFOPLIST_PREPROCESS = YES; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", From c1f56a5ed7823ab5b62cd37424692e700cc7443a Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 14:34:39 +1000 Subject: [PATCH 19/23] Fix `INFOPLIST_FILE` definition - Frameworks can't have it --- config/Common.xcconfig | 2 -- config/Jetpack.alpha.xcconfig | 2 ++ config/Jetpack.debug.xcconfig | 2 ++ config/Jetpack.release.xcconfig | 2 ++ config/Reader.alpha.xcconfig | 2 ++ config/Reader.debug.xcconfig | 2 ++ config/Reader.release.xcconfig | 2 ++ config/WordPress.alpha.xcconfig | 2 ++ config/WordPress.debug.xcconfig | 2 ++ config/WordPress.release.xcconfig | 2 ++ 10 files changed, 18 insertions(+), 2 deletions(-) diff --git a/config/Common.xcconfig b/config/Common.xcconfig index 51ba2f4cfc87..e48ba4329508 100644 --- a/config/Common.xcconfig +++ b/config/Common.xcconfig @@ -2,5 +2,3 @@ GCC_WARN_UNUSED_PARAMETER = YES WARNING_CFLAGS = -Wno-nullability-completeness IPHONEOS_DEPLOYMENT_TARGET = 16.0 CODE_SIGN_STYLE = Manual - -INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Jetpack.alpha.xcconfig b/config/Jetpack.alpha.xcconfig index c5b040eaad64..1d99a6daf3a7 100644 --- a/config/Jetpack.alpha.xcconfig +++ b/config/Jetpack.alpha.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = com.jetpack.alpha WP_BUILD_CONFIGURATION = alpha WP_APP_URL_SCHEME = ${WP_JETPACK_APP_URL_SCHEME} + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Jetpack.debug.xcconfig b/config/Jetpack.debug.xcconfig index be99f837d875..1aa5d5101bf3 100644 --- a/config/Jetpack.debug.xcconfig +++ b/config/Jetpack.debug.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = com.jetpack.appstore.dev WP_BUILD_CONFIGURATION = debug WP_APP_URL_SCHEME = ${WP_JETPACK_APP_URL_SCHEME} + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Jetpack.release.xcconfig b/config/Jetpack.release.xcconfig index dc670c3ee62b..bdb35785c5b6 100644 --- a/config/Jetpack.release.xcconfig +++ b/config/Jetpack.release.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = com.jetpack.appstore WP_BUILD_CONFIGURATION = release WP_APP_URL_SCHEME = ${WP_JETPACK_APP_URL_SCHEME} + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Reader.alpha.xcconfig b/config/Reader.alpha.xcconfig index 17b40f97ba3b..476703b1e37b 100644 --- a/config/Reader.alpha.xcconfig +++ b/config/Reader.alpha.xcconfig @@ -8,3 +8,5 @@ WP_BUILD_CONFIGURATION = alpha WP_APP_URL_SCHEME = wpreader CODE_SIGN_ENTITLEMENTS = ../Sources/Reader/Reader.entitlements + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Reader.debug.xcconfig b/config/Reader.debug.xcconfig index 6dbe490d37a1..841689f7b446 100644 --- a/config/Reader.debug.xcconfig +++ b/config/Reader.debug.xcconfig @@ -9,3 +9,5 @@ WP_APP_URL_SCHEME = wpreader PROVISIONING_PROFILE_SPECIFIER = Reader Development CODE_SIGN_ENTITLEMENTS = ../Sources/Reader/Reader.entitlements + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/Reader.release.xcconfig b/config/Reader.release.xcconfig index b2e88a878233..9debb7cb67ce 100644 --- a/config/Reader.release.xcconfig +++ b/config/Reader.release.xcconfig @@ -9,3 +9,5 @@ WP_APP_URL_SCHEME = wpreader PROVISIONING_PROFILE_SPECIFIER = match AppStore ${PRODUCT_BUNDLE_IDENTIFIER} CODE_SIGN_ENTITLEMENTS = ../Sources/Reader/Reader.entitlements + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/WordPress.alpha.xcconfig b/config/WordPress.alpha.xcconfig index 9a52d299471c..2d15240f4f26 100644 --- a/config/WordPress.alpha.xcconfig +++ b/config/WordPress.alpha.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = org.wordpress.alpha WP_BUILD_CONFIGURATION = alpha WP_APP_URL_SCHEME = wpalpha + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/WordPress.debug.xcconfig b/config/WordPress.debug.xcconfig index 30c0938a5e1f..1fb7cb6c6636 100644 --- a/config/WordPress.debug.xcconfig +++ b/config/WordPress.debug.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = org.wordpress.appstore.dev WP_BUILD_CONFIGURATION = debug WP_APP_URL_SCHEME = wpdebug + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist diff --git a/config/WordPress.release.xcconfig b/config/WordPress.release.xcconfig index ab24ee2d95f2..afe695889c5f 100644 --- a/config/WordPress.release.xcconfig +++ b/config/WordPress.release.xcconfig @@ -4,3 +4,5 @@ WP_PUSH_NOTIFICATION_APP_ID = org.wordpress.appstore WP_BUILD_CONFIGURATION = release WP_APP_URL_SCHEME = wordpress + +INFOPLIST_FILE = Sources/$PRODUCT_NAME/Info.plist From b2c7c515328c4d7547d85916d462f14a13797348 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 14:22:50 +1000 Subject: [PATCH 20/23] Convert Sources to a folder reference --- WordPress.xcodeproj/project.pbxproj | 80 ++--------------------------- 1 file changed, 5 insertions(+), 75 deletions(-) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 95a8b8936dc2..6ee4f42928c2 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -992,60 +992,17 @@ FFE69A2A1B1BFE200073C2EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/InfoPlist.strings; sourceTree = ""; }; /* End PBXFileReference section */ -/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ - 3F8432C12DCDA127001CD739 /* Exceptions for "WordPress" folder in "WordPress" target */ = { - isa = PBXFileSystemSynchronizedBuildFileExceptionSet; - membershipExceptions = ( - Info.plist, - ); - target = 1D6058900D05DD3D006BFB54 /* WordPress */; - }; -/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ - /* Begin PBXFileSystemSynchronizedRootGroup section */ 0C1CB0CD2D95C63C00494A8C /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; path = Sources; sourceTree = ""; }; - 0C238F782D9ADF0200981631 /* WordPressAuthenticator */ = { - isa = PBXFileSystemSynchronizedRootGroup; - path = WordPressAuthenticator; - sourceTree = ""; - }; - 0C3C988F2DA04EEF009F3BFB /* Jetpack */ = { - isa = PBXFileSystemSynchronizedRootGroup; - path = Jetpack; - sourceTree = ""; - }; - 0C3C98902DA04EF9009F3BFB /* WordPress */ = { - isa = PBXFileSystemSynchronizedRootGroup; - exceptions = ( - 3F8432C12DCDA127001CD739 /* Exceptions for "WordPress" folder in "WordPress" target */, - ); - path = WordPress; - sourceTree = ""; - }; - 0C3E79892DB164B3000C7072 /* JetpackStatsWidgets */ = { - isa = PBXFileSystemSynchronizedRootGroup; - path = JetpackStatsWidgets; - sourceTree = ""; - }; 0C5A1A042D9B080900C25301 /* WordPressAuthenticatorTests */ = { isa = PBXFileSystemSynchronizedRootGroup; path = WordPressAuthenticatorTests; sourceTree = ""; }; - 0C5A3FAB2D9B1EF400C25301 /* Reader */ = { - isa = PBXFileSystemSynchronizedRootGroup; - path = Reader; - sourceTree = ""; - }; - 0C5C46FE2D98397A00F2CD55 /* Keystone */ = { - isa = PBXFileSystemSynchronizedRootGroup; - path = Keystone; - sourceTree = ""; - }; 0C73A9BD2DAEDFDE00CC0F3A /* KeystoneTests */ = { isa = PBXFileSystemSynchronizedRootGroup; path = KeystoneTests; @@ -1068,14 +1025,14 @@ path = WordPress/Classes; sourceTree = ""; }; - 3F7AE0B62D9B30A100AB4892 /* WordPressData */ = { + 3F7AE0C22D9B30A200AB4892 /* WordPressDataTests */ = { isa = PBXFileSystemSynchronizedRootGroup; - path = WordPressData; + path = WordPressDataTests; sourceTree = ""; }; - 3F7AE0C22D9B30A200AB4892 /* WordPressDataTests */ = { + 3F841F862DCDBA84001CD739 /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; - path = WordPressDataTests; + path = Sources; sourceTree = ""; }; /* End PBXFileSystemSynchronizedRootGroup section */ @@ -1363,20 +1320,6 @@ path = Tests; sourceTree = SOURCE_ROOT; }; - 0C5C46FB2D98395300F2CD55 /* Sources */ = { - isa = PBXGroup; - children = ( - 0C3C98902DA04EF9009F3BFB /* WordPress */, - 0C3C988F2DA04EEF009F3BFB /* Jetpack */, - 0C5A3FAB2D9B1EF400C25301 /* Reader */, - 0C5C46FE2D98397A00F2CD55 /* Keystone */, - 0C238F782D9ADF0200981631 /* WordPressAuthenticator */, - 3F7AE0B62D9B30A100AB4892 /* WordPressData */, - 0C3E79892DB164B3000C7072 /* JetpackStatsWidgets */, - ); - path = Sources; - sourceTree = SOURCE_ROOT; - }; 19C28FACFE9D520D11CA2CBB /* Products */ = { isa = PBXGroup; children = ( @@ -1418,7 +1361,7 @@ isa = PBXGroup; children = ( 3FD4B20E2DCC468200781DFA /* Modules */, - 0C5C46FB2D98395300F2CD55 /* Sources */, + 3F841F862DCDBA84001CD739 /* Sources */, 0C5A19CB2D9B07E700C25301 /* Tests */, F14B5F6F208E648200439554 /* config */, E1B34C091CCDFFCE00889709 /* Credentials */, @@ -1861,9 +1804,6 @@ ); dependencies = ( ); - fileSystemSynchronizedGroups = ( - 0C3E79892DB164B3000C7072 /* JetpackStatsWidgets */, - ); name = JetpackStatsWidgets; packageProductDependencies = ( 0C6AC6232C364A8000BF7600 /* XcodeTarget_StatsWidget */, @@ -1911,7 +1851,6 @@ 0C28C63C2DAD830F00F81F20 /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( - 0C5A3FAB2D9B1EF400C25301 /* Reader */, 0CED35262D959427003015CF /* Misc */, 0CFC380E2DA408BB00DB3386 /* Recoleta */, ); @@ -1939,7 +1878,6 @@ 0C128FED2D9ECE6200C69EBA /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( - 0C5C46FE2D98397A00F2CD55 /* Keystone */, 24CE57C42CD3375200C7B37D /* Classes */, ); name = Keystone; @@ -1975,7 +1913,6 @@ 3F0FD9FF2D9B92F700CD05D6 /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( - 0C3C98902DA04EF9009F3BFB /* WordPress */, 0CED35262D959427003015CF /* Misc */, 0CFC380E2DA408BB00DB3386 /* Recoleta */, 24CE57C42CD3375200C7B37D /* Classes */, @@ -2001,9 +1938,6 @@ ); dependencies = ( ); - fileSystemSynchronizedGroups = ( - 3F7AE0B62D9B30A100AB4892 /* WordPressData */, - ); name = WordPressData; packageProductDependencies = ( 3F0F25A52D9BDB5800CD05D6 /* XcodeTarget_WordPressData */, @@ -2049,9 +1983,6 @@ ); dependencies = ( ); - fileSystemSynchronizedGroups = ( - 0C238F782D9ADF0200981631 /* WordPressAuthenticator */, - ); name = WordPressAuthenticator; packageProductDependencies = ( 0C6AC6272C364A9000BF7600 /* XcodeTarget_WordPressAuthentificator */, @@ -2315,7 +2246,6 @@ 3F0FDA032D9B930100CD05D6 /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( - 0C3C988F2DA04EEF009F3BFB /* Jetpack */, 0CED35262D959427003015CF /* Misc */, 0CFC380E2DA408BB00DB3386 /* Recoleta */, 24CE57C42CD3375200C7B37D /* Classes */, From 218236bd632f9e591d55c903b0cb8ec1602c5b50 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 15:47:54 +1000 Subject: [PATCH 21/23] Restore sources for WordPressAuthenticator --- WordPress.xcodeproj/project.pbxproj | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 6ee4f42928c2..62f67a469099 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -992,6 +992,27 @@ FFE69A2A1B1BFE200073C2EB /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/InfoPlist.strings; sourceTree = ""; }; /* End PBXFileReference section */ +/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ + 3FA373132DCDCD9200B6CD77 /* Exceptions for "Sources" folder in "WordPressAuthenticator" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + WordPressAuthenticator/Features/NUX/WPNUXMainButton.h, + WordPressAuthenticator/Features/NUX/WPWalkthroughTextField.h, + WordPressAuthenticator/Helpers/LoginFacade.h, + WordPressAuthenticator/Helpers/WordPressXMLRPCAPIFacade.h, + WordPressAuthenticator/WordPressAuthenticator.h, + ); + publicHeaders = ( + WordPressAuthenticator/Features/NUX/WPNUXMainButton.h, + WordPressAuthenticator/Features/NUX/WPWalkthroughTextField.h, + WordPressAuthenticator/Helpers/LoginFacade.h, + WordPressAuthenticator/Helpers/WordPressXMLRPCAPIFacade.h, + WordPressAuthenticator/WordPressAuthenticator.h, + ); + target = 4AD953B32C21451700D0EEFA /* WordPressAuthenticator */; + }; +/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ + /* Begin PBXFileSystemSynchronizedRootGroup section */ 0C1CB0CD2D95C63C00494A8C /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; @@ -1032,6 +1053,9 @@ }; 3F841F862DCDBA84001CD739 /* Sources */ = { isa = PBXFileSystemSynchronizedRootGroup; + exceptions = ( + 3FA373132DCDCD9200B6CD77 /* Exceptions for "Sources" folder in "WordPressAuthenticator" target */, + ); path = Sources; sourceTree = ""; }; From e32bca9b6a2ab061f6a0bd6574d180495c09bf9e Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 16:03:36 +1000 Subject: [PATCH 22/23] Restore header for WordPressData --- WordPress.xcodeproj/project.pbxproj | 53 +++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 62f67a469099..6dba0c71a7e1 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -1011,6 +1011,58 @@ ); target = 4AD953B32C21451700D0EEFA /* WordPressAuthenticator */; }; + 3FA373192DCDD18A00B6CD77 /* Exceptions for "Sources" folder in "WordPressData" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + "WordPressData/Objective-C/include/AbstractPost.h", + "WordPressData/Objective-C/include/BasePost.h", + "WordPressData/Objective-C/include/Blog.h", + "WordPressData/Objective-C/include/CoreDataStack.h", + "WordPressData/Objective-C/include/LocalCoreDataService.h", + "WordPressData/Objective-C/include/Media.h", + "WordPressData/Objective-C/include/Menu.h", + "WordPressData/Objective-C/include/MenuItem.h", + "WordPressData/Objective-C/include/MenuLocation.h", + "WordPressData/Objective-C/include/PostCategory.h", + "WordPressData/Objective-C/include/PostContentProvider.h", + "WordPressData/Objective-C/include/PostHelper.h", + "WordPressData/Objective-C/include/PostService.h", + "WordPressData/Objective-C/include/PostServiceOptions.h", + "WordPressData/Objective-C/include/PostTag.h", + "WordPressData/Objective-C/include/PostType.h", + "WordPressData/Objective-C/include/ReaderGapMarker.h", + "WordPressData/Objective-C/include/ReaderPost.h", + "WordPressData/Objective-C/include/SourcePostAttribution.h", + "WordPressData/Objective-C/include/Theme.h", + "WordPressData/Objective-C/include/WPAccount.h", + WordPressData/WordPressData.h, + ); + publicHeaders = ( + "WordPressData/Objective-C/include/AbstractPost.h", + "WordPressData/Objective-C/include/BasePost.h", + "WordPressData/Objective-C/include/Blog.h", + "WordPressData/Objective-C/include/CoreDataStack.h", + "WordPressData/Objective-C/include/LocalCoreDataService.h", + "WordPressData/Objective-C/include/Media.h", + "WordPressData/Objective-C/include/Menu.h", + "WordPressData/Objective-C/include/MenuItem.h", + "WordPressData/Objective-C/include/MenuLocation.h", + "WordPressData/Objective-C/include/PostCategory.h", + "WordPressData/Objective-C/include/PostContentProvider.h", + "WordPressData/Objective-C/include/PostHelper.h", + "WordPressData/Objective-C/include/PostService.h", + "WordPressData/Objective-C/include/PostServiceOptions.h", + "WordPressData/Objective-C/include/PostTag.h", + "WordPressData/Objective-C/include/PostType.h", + "WordPressData/Objective-C/include/ReaderGapMarker.h", + "WordPressData/Objective-C/include/ReaderPost.h", + "WordPressData/Objective-C/include/SourcePostAttribution.h", + "WordPressData/Objective-C/include/Theme.h", + "WordPressData/Objective-C/include/WPAccount.h", + WordPressData/WordPressData.h, + ); + target = 3F7AE0B42D9B30A100AB4892 /* WordPressData */; + }; /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ /* Begin PBXFileSystemSynchronizedRootGroup section */ @@ -1055,6 +1107,7 @@ isa = PBXFileSystemSynchronizedRootGroup; exceptions = ( 3FA373132DCDCD9200B6CD77 /* Exceptions for "Sources" folder in "WordPressAuthenticator" target */, + 3FA373192DCDD18A00B6CD77 /* Exceptions for "Sources" folder in "WordPressData" target */, ); path = Sources; sourceTree = ""; From 152cc58be859ba784230b736694b41fd514e662a Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Fri, 9 May 2025 16:10:50 +1000 Subject: [PATCH 23/23] Restore public header for Keystone --- WordPress.xcodeproj/project.pbxproj | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/WordPress.xcodeproj/project.pbxproj b/WordPress.xcodeproj/project.pbxproj index 6dba0c71a7e1..1c088549dc86 100644 --- a/WordPress.xcodeproj/project.pbxproj +++ b/WordPress.xcodeproj/project.pbxproj @@ -1063,6 +1063,16 @@ ); target = 3F7AE0B42D9B30A100AB4892 /* WordPressData */; }; + 3FA373302DCDD32800B6CD77 /* Exceptions for "Sources" folder in "Keystone" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + Keystone/WordPress.h, + ); + publicHeaders = ( + Keystone/WordPress.h, + ); + target = 0CED016F2D95B897003015CF /* Keystone */; + }; /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ /* Begin PBXFileSystemSynchronizedRootGroup section */ @@ -1107,6 +1117,7 @@ isa = PBXFileSystemSynchronizedRootGroup; exceptions = ( 3FA373132DCDCD9200B6CD77 /* Exceptions for "Sources" folder in "WordPressAuthenticator" target */, + 3FA373302DCDD32800B6CD77 /* Exceptions for "Sources" folder in "Keystone" target */, 3FA373192DCDD18A00B6CD77 /* Exceptions for "Sources" folder in "WordPressData" target */, ); path = Sources;