Skip to content

chore: upgrade example app to React Native 0.86.0#122

Merged
riteshshukla04 merged 2 commits into
margelo:mainfrom
riteshshukla04:chore/upgrade-react-native-0.86
Jun 14, 2026
Merged

chore: upgrade example app to React Native 0.86.0#122
riteshshukla04 merged 2 commits into
margelo:mainfrom
riteshshukla04:chore/upgrade-react-native-0.86

Conversation

@riteshshukla04

Copy link
Copy Markdown
Collaborator

Summary

Upgrades the example app to React Native 0.86.0 (from 0.85.0-rc.0).

The dependency changes match the official React Native Upgrade Helper 0.85 → 0.86 template exactly — that template diff is purely package.json version bumps, with no native iOS/Android template changes.

Changes

  • react-native and @react-native/* (babel-preset, metro-config, typescript-config, eslint-config) → 0.86.0 across the example app, the monorepo root, and all three packages/* (so the bun workspace resolves a single RN version).
  • react-native-worklets ^0.8.0 → ^0.9.0 — required, since worklets 0.8.x declares react-native: "0.81 - 0.85" and excludes 0.86; 0.9.x supports 0.83 - 0.86.
  • react stays 19.2.3 (already what 0.86 requires).
  • Regenerated bun.lock and iOS Podfile.lock / pod-install artifacts (project.pbxproj, PrivacyInfo.xcprivacy).

react-native-screens, react-native-safe-area-context, and react-native-nitro-modules already resolve to 0.86-compatible versions via their existing caret ranges.

Note for reviewers — iOS prebuilt cache

The large Podfile.lock churn includes a fix worth calling out: after the bump, the React-Core-prebuilt xcframework stayed pinned to 0.85.0-rc.0 via the CocoaPods cache, which caused a JSI ABI launch crash (jsi::Array::createWithElements(Runtime&) in the stale prebuilt vs IRuntime& in the 0.86 hermes). Clearing the CocoaPods External/React-Core-prebuilt cache + Podfile.lock and re-running pod install re-resolved React-Core-prebuilt (0.86.0). Anyone upgrading locally needs the same cache clear.

Verification

Built, installed, and ran the full harness E2E suite on both platforms:

  • iOS (iPhone 17 simulator, iOS 26.5): 7 suites / 203 tests pass
  • Android (Pixel_8_API_35 emulator, arm64): 7 suites / 203 tests pass

Test plan

  • bun install
  • iOS: cd example && bundle exec pod install --project-directory=ios then build/run
  • Android: cd example/android && ./gradlew :app:assembleDebug
  • bun run test:harness on both runners

🤖 Generated with Claude Code

Bump react-native and @react-native/* to 0.86.0 across the example app,
monorepo root, and packages/* so the bun workspace resolves a single RN
version. Bump react-native-worklets to ^0.9.0 (0.8.x peer-dep excludes RN
0.86). Regenerated bun.lock and iOS Podfile.lock / pod-install artifacts.

Matches the React Native Upgrade Helper 0.85->0.86 template exactly.
Verified: iOS + Android harness suites both pass 203/203.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 14, 2026

Copy link
Copy Markdown

@riteshshukla04 is attempting to deploy a commit to the Margelo Team on Vercel.

A member of the Team first needs to authorize it.

The prefix restore-keys fall back to a cache from a different Podfile.lock.
On a dependency bump the restored Pods/Local Podspecs (e.g. ReactNativeDependencies)
conflict with the new Podfile.lock and abort 'pod install'; restored DerivedData
can also carry stale React.framework/JSI objects that crash at launch. Use
exact-key caching so dependency changes get a clean install/build (ccache still
accelerates native rebuilds).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@riteshshukla04 riteshshukla04 force-pushed the chore/upgrade-react-native-0.86 branch from 5803062 to 4e23edf Compare June 14, 2026 16:21
@riteshshukla04 riteshshukla04 merged commit ade36aa into margelo:main Jun 14, 2026
7 of 8 checks passed
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