Skip to content

Managing constant React Native upgrades driven by Google/Apple requirements (min SDK, Xcode/iOS SDK, 16KB page size) #359

Description

@akhan-design

Hey folks, looking for advice from teams running React Native in production at scale.

Over the last year we’ve been forced into multiple RN upgrades mainly because of platform policy/requirement changes:

Android minimum requirements pushed us to upgrade to RN 0.74.

Now we’re seeing Apple/Xcode iOS SDK minimums with an April 2026 deadline (forcing another upgrade cycle).

And recently Google introduced the 16KB memory / page size requirement, which from what I’m hearing effectively means RN 0.77+ (or at least newer toolchain + fixes), which becomes another upgrade shortly after the last one.

As Head of IT, the hard part isn’t the upgrade itself, it’s the constant unplanned upgrade cadence and resource churn: we upgrade, stabilize, then 3–4 months later we’re forced into the next one. It’s getting difficult to schedule and staff while still delivering product work.

**Questions

  1. How are you handling this operationally?**
    • Do you run a rolling RN upgrade program (e.g., quarterly) instead of ad-hoc upgrades?
    • Do you allocate a fixed “platform compliance” budget/squad?
    • Any strategies for minimizing regression risk (e2e coverage, upgrade playbooks, dependency policies)?

2. Why are these changes so aggressive lately?

  • Not looking for complaints, just trying to understand the underlying drivers (security, performance, architecture/toolchain changes, ecosystem shifts).

3. For the 16KB memory/page size requirement: is there any viable mitigation on RN 0.74?
Specifically:

  • Is there a patch/workaround to stay on 0.74 temporarily (toolchain flags, NDK changes, build config, selective backports)?
  • We have native dependencies like Realm and others, so an immediate RN major bump isn’t trivial.

If anyone has been through this recently, I’d really appreciate concrete guidance: what worked, what didn’t, and how you plan upgrades so they’re not constant fire drills.

Thanks!

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions