Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
|
Superseded: #29901 |
The "Clean state and following up dependencies installation with retry" step in the Check diff job runs `yarn setup:github-ci`, which includes `yarn pod:install`. On slower macOS-latest runners this exceeds the 10-minute per-attempt cap and hits "Timeout of 600000ms hit", forcing unnecessary retries that redownload boost (~100MB). Bumping to 20m per attempt gives headroom for slow CDN runs while keeping max_attempts at 3. Co-authored-by: Cursor <cursoragent@cursor.com>
After RN 0.81.5, `pod install` on the GitHub macOS-latest runner produces different SPEC CHECKSUMS for boost / DoubleConversion / fmt / glog than the values committed by the upgrade. This makes `Check diff` fail on every PR (and on main itself) because `git diff --exit-code` sees a dirty Podfile.lock after `yarn pod:install` runs. The new values are taken directly from the failing `Check diff` job log on main (commit 4797726, the RN 0.81.5 merge), which shows exactly these four checksums as the diff CI produces. Same root cause as #29893; including the change here so this PR also unblocks `Check diff`. Co-authored-by: Cursor <cursoragent@cursor.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #29893 +/- ##
=======================================
Coverage 81.50% 81.50%
=======================================
Files 5328 5328
Lines 141146 141146
Branches 32157 32157
=======================================
+ Hits 115046 115048 +2
+ Misses 18239 18237 -2
Partials 7861 7861 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
RN 0.81's `set_RCTNewArchEnabled_in_info_plist` post-install hook (in node_modules/react-native/scripts/cocoapods/new_architecture.rb) runs `find ios -name "Info.plist"` and rewrites every match it finds to add `<key>RCTNewArchEnabled</key>`. Its exclusion list (/Pods, Tests, metainternal, .bundle, build/, DerivedData/) does not respect git submodule boundaries, so it walks into ios/branch-ios-sdk and modifies 8 Info.plist files (TestBed apps, Examples, Branch.framework). This makes the submodule "dirty" after every `pod install`, breaking the Check diff CI step (`git diff --exit-code` reports the submodule as `Subproject commit ...-dirty`). Setting `ignore = dirty` on the submodule makes git ignore working-tree changes inside it while still detecting commit-pointer changes - which is what we actually care about in CI. Aligns local `git status` with CI. Co-authored-by: Cursor <cursoragent@cursor.com>
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection:
None of these changes affect:
No E2E tests are warranted for pure build configuration and CI infrastructure changes. No performance tests are needed as no performance-sensitive code was modified. Performance Test Selection: |
|
This is a temporary solution for branch while we fix it |
|



Description
rn udpdate to 0.81 made check diff fail due to changes on project.pbxproj
Changelog
CHANGELOG entry:
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Medium Risk
Mostly build/CI alignment changes, but updates iOS CocoaPods lockfile checksums and Xcode project metadata which can impact iOS build determinism if incorrect.
Overview
Aligns iOS build metadata after the RN 0.81 update to keep the repo clean under CI.
CI
check-diffis relaxed by increasing theyarn setup:github-ciretry timeout to 20 minutes to reduce flaky timeouts.iOS project housekeeping updates: the
ios/branch-ios-sdksubmodule is set toignore = dirty,project.pbxprojis reordered/normalized forBrazeHelper.mmreferences, andPodfile.lockchecksum entries are updated (e.g.,boost,DoubleConversion,fmt,glog).Reviewed by Cursor Bugbot for commit ed5a536. Bugbot is set up for automated code reviews on this repo. Configure here.