Skip to content

RU-T50 Build fix#243

Merged
ucswift merged 2 commits into
masterfrom
develop
May 13, 2026
Merged

RU-T50 Build fix#243
ucswift merged 2 commits into
masterfrom
develop

Conversation

@ucswift
Copy link
Copy Markdown
Member

@ucswift ucswift commented May 13, 2026

Summary by CodeRabbit

  • Bug Fixes
    • Improved iOS build configuration to better handle cross-module imports
    • Enhanced error handling and messaging for build configuration issues

Review Change Stack

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 13, 2026

Warning

Rate limit exceeded

@ucswift has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 54 minutes and 35 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a63c6d14-8977-4aef-8a8f-9b4e9b47c133

📥 Commits

Reviewing files that changed from the base of the PR and between 649eb0f and c5d6906.

📒 Files selected for processing (1)
  • plugins/withWebRTCFrameworkFix.js
📝 Walkthrough

Walkthrough

The plugin enhances iOS Podfile patching by inserting use_modular_headers! after the last use_frameworks! line to enable cross-module imports, and improves the post_install hook injection with parentheses-balancing logic and clearer error handling when locating the react_native_post_install( call.

Changes

WebRTC Podfile Patching Enhancements

Layer / File(s) Summary
Documentation and modular headers insertion
plugins/withWebRTCFrameworkFix.js
Plugin documentation updated to describe modular headers and non-modular includes fixes. New logic inserts use_modular_headers! after the last use_frameworks! line when missing, with a conditional guard for post-install hook addition.
Enhanced post-install hook insertion logic
plugins/withWebRTCFrameworkFix.js
Hook insertion now locates the react_native_post_install( call by scanning balanced parentheses with explicit error handling for missing anchors and unclosed calls, then inserts the hook at the computed position.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • Resgrid/Unit#242: Both PRs modify plugins/withWebRTCFrameworkFix.js to change the iOS Podfile injection for CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES, including the scope/placement of that post_install change.
  • Resgrid/Unit#241: The main PR updates the same plugins/withWebRTCFrameworkFix.js Podfile injection logic (and modular headers insertion) that was introduced in the retrieved PR, specifically around inserting CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES after the react_native_post_install( call.

Poem

🐰 The Podfile hops with modular care,
Headers align, imports declare—
Balanced parens find their place,
WebRTC dancing in framework space! 🎯

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'RU-T50 Build fix' is too vague and does not clearly describe the actual changes made to the WebRTC plugin or Podfile modifications. Consider a more descriptive title like 'Fix WebRTC framework compatibility with modular headers support' or 'Add modular headers support to iOS Podfile in WebRTC plugin' to clearly communicate the nature of the fix.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch develop

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@plugins/withWebRTCFrameworkFix.js`:
- Around line 25-31: The insertion uses match[0] and
contents.lastIndexOf(match[0]) which picks the first matched string, causing
wrong insertion when there are multiple differing use_frameworks! lines; replace
the single-match logic in the block that defines useFrameworksPattern, match and
lastIdx by using a global match (e.g., /use_frameworks!.*\n/g) with matchAll or
iterating matches to capture the final match object, then compute lastIdx from
that finalMatch.index + finalMatch[0].length and insert 'use_modular_headers!\n'
at that position so the new header is placed after the true last use_frameworks!
line.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ee99a0c1-561d-4ffb-8ee8-8df1706b99ee

📥 Commits

Reviewing files that changed from the base of the PR and between c534ed6 and 649eb0f.

📒 Files selected for processing (1)
  • plugins/withWebRTCFrameworkFix.js

Comment thread plugins/withWebRTCFrameworkFix.js Outdated
@ucswift
Copy link
Copy Markdown
Member Author

ucswift commented May 13, 2026

Approve

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is approved.

@ucswift ucswift merged commit 6582984 into master May 13, 2026
18 of 19 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant