Skip to content

chore: bump up rn version#146

Merged
patrickkabwe merged 2 commits intomainfrom
chore/bump-up-rn-version
Mar 19, 2026
Merged

chore: bump up rn version#146
patrickkabwe merged 2 commits intomainfrom
chore/bump-up-rn-version

Conversation

@patrickkabwe
Copy link
Copy Markdown
Owner

@patrickkabwe patrickkabwe commented Mar 19, 2026

Summary by CodeRabbit

  • Chores

    • Updated React to 19.2.3 and React Native to 0.84.1; bumped related tooling versions and Node engine requirement
    • Consolidated Android and iOS build pipelines into single build jobs
    • Adjusted example app build & run settings (iOS build settings, app orientations, frame-rate tweak; Android network/cleartext configuration; removed debug manifest)
  • Documentation

    • Refined project description in README

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 19, 2026

Warning

Rate limit exceeded

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

⌛ 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: 29c072b1-1df6-42a8-9040-0485e3be316c

📥 Commits

Reviewing files that changed from the base of the PR and between 809ef4c and 9c203aa.

⛔ Files ignored due to path filters (2)
  • bun.lock is excluded by !**/*.lock
  • example/ios/Podfile.lock is excluded by !**/*.lock
📒 Files selected for processing (12)
  • .github/workflows/android-build.yml
  • .github/workflows/ios-build.yml
  • README.md
  • example/android/app/src/debug/AndroidManifest.xml
  • example/android/app/src/main/AndroidManifest.xml
  • example/android/app/src/main/java/com/nitroinappbrowserexample/MainApplication.kt
  • example/ios/NitroInAppBrowserExample.xcodeproj/project.pbxproj
  • example/ios/NitroInAppBrowserExample/Info.plist
  • example/package.json
  • example/tsconfig.json
  • package.json
  • src/specs/nitro-in-app-browser.nitro.ts
📝 Walkthrough

Walkthrough

Consolidates platform CI jobs into single build jobs, removes old-architecture toggles, updates example app manifests and build settings, bumps React/React Native and related tooling, refactors Android MainApplication to lazy ReactHost initialization, and adjusts TypeScript config and minor docs text. (50 words)

Changes

Cohort / File(s) Summary
CI Workflows
\.github/workflows/android-build.yml, \.github/workflows/ios-build.yml
Merged architecture-specific jobs into a single build job per platform; removed old-architecture steps that toggled Gradle/Podfile and buildcache restore.
Android Manifests & App Init
example/android/app/src/debug/AndroidManifest.xml, example/android/app/src/main/AndroidManifest.xml, example/android/app/src/main/java/com/nitroinappbrowserexample/MainApplication.kt
Deleted debug manifest; parameterized android:usesCleartextTraffic in main manifest; refactored MainApplication from an eager reactNativeHost to a lazy reactHost using getDefaultReactHost with explicit package list.
iOS Project & Info.plist
example/ios/.../project.pbxproj, example/ios/NitroInAppBrowserExample/Info.plist
Quoted bundling env args in RN bundle script; added SUPPORTED_PLATFORMS/TARGETED_DEVICE_FAMILY and RCT legacy-arch removal flags; disabled Swift explicit modules; changed supported orientations and added CADisableMinimumFrameDurationOnPhone.
Dependency & TS Config Updates
example/package.json, package.json, example/tsconfig.json
Bumped React to 19.2.3 and React Native to 0.84.1; tightened Node engine to >= 22.11.0; changed TS extends and added compilerOptions.types: ["jest"].
Type-only Import
src/specs/nitro-in-app-browser.nitro.ts
Converted HybridObject import to a type-only import.
Documentation
README.md
Clarified README tagline to describe module purpose.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related PRs

  • Feat/new nitro #85 — Overlaps changes to MainApplication.kt initialization and related example/CI adjustments.

Poem

🐰 I hopped through builds both old and new,
Merged their trails into one neat view.
Hosts now wake when the app needs a start,
Versions updated, configs smart—
A tiny rabbit cheers this change anew. 🥕

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'chore: bump up rn version' accurately reflects the main change in the pull request, which is updating React Native and related dependencies from 0.81.0 to 0.84.1 across multiple configuration files.

✏️ 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 chore/bump-up-rn-version
📝 Coding Plan
  • Generate coding plan for human review comments

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

🧹 Nitpick comments (3)
example/package.json (1)

34-34: Node >= 22.11.0 is a significant requirement bump.

Jumping from Node >=18 to >= 22.11.0 may break CI pipelines or developer environments not yet on Node 22. The specific patch version (22.11.0) suggests this might be tied to a specific feature requirement—consider documenting why this exact version is needed.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@example/package.json` at line 34, The package.json engines field currently
pins "node": ">= 22.11.0", which is a large, potentially breaking bump; either
relax or justify it: update the engines entry (engines.node) to a less strict
range (e.g., ">=18" or ">=18 <25") if no 22.11-only feature is required, or keep
the 22.11.0 requirement but add a short explanation in the README and a CI note
describing which Node feature/bugfix necessitates 22.11.0 and instructions for
developers to upgrade their environments; reference the package.json
engines.node field when making the change and ensure CI configs (e.g.,
.github/workflows) are updated to match.
.github/workflows/ios-build.yml (1)

63-63: Consider updating Ruby version.

Ruby 2.7.2 reached end-of-life in March 2023. While it may still work, consider upgrading to a supported Ruby version (e.g., 3.1.x or 3.2.x) to avoid potential security issues and ensure long-term compatibility.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/ios-build.yml at line 63, The workflow pins ruby-version:
2.7.2 which is EOL; update the ruby-version key in the GitHub Actions workflow
(.github/workflows/ios-build.yml) to a supported release like "3.2.x" or "3.1.x"
(or a specific patch such as "3.2.2"), then run CI to confirm compatibility and
adjust any Ruby-dependent steps or Gemfile/RubyGems versions if tests or bundler
fail; search for the ruby-version entry to locate where to change it.
example/ios/NitroInAppBrowserExample.xcodeproj/project.pbxproj (1)

395-395: Add a comment explaining the Xcode 26 compatibility requirement.

SWIFT_ENABLE_EXPLICIT_MODULES = NO is necessary to resolve React Native compatibility issues with Xcode 26, where explicit Swift modules cause module resolution failures. Consider adding a comment in the project (e.g., in the project file or Xcode build settings UI) documenting this requirement for future maintainers. For projects on React Native 0.83+, this may be handled automatically; otherwise, ensure this setting is applied to all build targets that interact with React Native.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@example/ios/NitroInAppBrowserExample.xcodeproj/project.pbxproj` at line 395,
Add a brief inline comment near the SWIFT_ENABLE_EXPLICIT_MODULES = NO setting
explaining it’s required for Xcode 26 compatibility with React Native (explicit
Swift modules can cause module resolution failures), and ensure the comment
notes that RN >=0.83 may handle this automatically and that the setting should
be applied to all build targets interacting with React Native (update the
project.pbxproj entry containing SWIFT_ENABLE_EXPLICIT_MODULES and any target
build settings references).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@example/android/app/src/main/AndroidManifest.xml`:
- Line 12: The manifest uses the placeholder ${usesCleartextTraffic} which is
not defined, causing build failures; add a manifestPlaceholders entry in the
Gradle config by updating android.defaultConfig to include manifestPlaceholders
= [usesCleartextTraffic: "false"] (or "true" as appropriate) so the
AndroidManifest.xml placeholder is resolved; modify the module build.gradle
(inside android.defaultConfig) to declare the usesCleartextTraffic manifest
placeholder.

---

Nitpick comments:
In @.github/workflows/ios-build.yml:
- Line 63: The workflow pins ruby-version: 2.7.2 which is EOL; update the
ruby-version key in the GitHub Actions workflow
(.github/workflows/ios-build.yml) to a supported release like "3.2.x" or "3.1.x"
(or a specific patch such as "3.2.2"), then run CI to confirm compatibility and
adjust any Ruby-dependent steps or Gemfile/RubyGems versions if tests or bundler
fail; search for the ruby-version entry to locate where to change it.

In `@example/ios/NitroInAppBrowserExample.xcodeproj/project.pbxproj`:
- Line 395: Add a brief inline comment near the SWIFT_ENABLE_EXPLICIT_MODULES =
NO setting explaining it’s required for Xcode 26 compatibility with React Native
(explicit Swift modules can cause module resolution failures), and ensure the
comment notes that RN >=0.83 may handle this automatically and that the setting
should be applied to all build targets interacting with React Native (update the
project.pbxproj entry containing SWIFT_ENABLE_EXPLICIT_MODULES and any target
build settings references).

In `@example/package.json`:
- Line 34: The package.json engines field currently pins "node": ">= 22.11.0",
which is a large, potentially breaking bump; either relax or justify it: update
the engines entry (engines.node) to a less strict range (e.g., ">=18" or ">=18
<25") if no 22.11-only feature is required, or keep the 22.11.0 requirement but
add a short explanation in the README and a CI note describing which Node
feature/bugfix necessitates 22.11.0 and instructions for developers to upgrade
their environments; reference the package.json engines.node field when making
the change and ensure CI configs (e.g., .github/workflows) are updated to match.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 5f48d313-4676-4acb-b4d0-cae9b30004c3

📥 Commits

Reviewing files that changed from the base of the PR and between c7d391e and b488e55.

⛔ Files ignored due to path filters (3)
  • bun.lock is excluded by !**/*.lock
  • example/android/gradle/wrapper/gradle-wrapper.jar is excluded by !**/*.jar
  • example/ios/Podfile.lock is excluded by !**/*.lock
📒 Files selected for processing (14)
  • .github/workflows/android-build.yml
  • .github/workflows/ios-build.yml
  • README.md
  • example/android/app/src/debug/AndroidManifest.xml
  • example/android/app/src/main/AndroidManifest.xml
  • example/android/app/src/main/java/com/nitroinappbrowserexample/MainApplication.kt
  • example/android/gradle/wrapper/gradle-wrapper.properties
  • example/android/gradlew
  • example/ios/NitroInAppBrowserExample.xcodeproj/project.pbxproj
  • example/ios/NitroInAppBrowserExample/Info.plist
  • example/package.json
  • example/tsconfig.json
  • package.json
  • src/specs/nitro-in-app-browser.nitro.ts
💤 Files with no reviewable changes (1)
  • example/android/app/src/debug/AndroidManifest.xml

Comment thread example/android/app/src/main/AndroidManifest.xml
@patrickkabwe patrickkabwe force-pushed the chore/bump-up-rn-version branch from b84643c to 809ef4c Compare March 19, 2026 11:53
@patrickkabwe patrickkabwe force-pushed the chore/bump-up-rn-version branch from 809ef4c to 9c203aa Compare March 19, 2026 11:57
@patrickkabwe patrickkabwe merged commit b1a92e7 into main Mar 19, 2026
3 checks passed
@github-actions
Copy link
Copy Markdown

🎉 This PR is included in version 2.0.2 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant