Skip to content

chore(ci): Upgrade performance test apps to React Native 0.85.1#6088

Open
antonis wants to merge 3 commits intomainfrom
antonis/upgrade-perf-test-apps-rn-0.85.1
Open

chore(ci): Upgrade performance test apps to React Native 0.85.1#6088
antonis wants to merge 3 commits intomainfrom
antonis/upgrade-perf-test-apps-rn-0.85.1

Conversation

@antonis
Copy link
Copy Markdown
Contributor

@antonis antonis commented May 5, 2026

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

Upgrades the performance test apps (TestAppPlain/TestAppSentry) from React Native 0.80.2 to 0.85.1, aligning them with the RN version used in the e2e test matrix.

Changes across both apps:

Component Before After
react-native 0.80.2 0.85.1
react 19.1.0 19.2.3
@react-native-community/cli* 19.1.x 20.1.0
@react-native/{babel-preset,metro-config,typescript-config} 0.80.2 0.85.1
Android buildToolsVersion 35.0.0 36.0.0
Android compileSdkVersion/targetSdkVersion 35 36
Gradle 8.14.1 9.3.1

Additional changes:

  • Added edgeToEdgeEnabled=false to gradle.properties (new RN 0.85 template property)
  • Added nkf gem to Gemfiles (Ruby 3.4 compatibility, per RN 0.85 template)
  • Set REACT_NATIVE_NODE_MODULES_DIR for perf test iOS builds to fix podspec RN version detection in the yarn workspace (the podspec was resolving packages/core/node_modules/react-native at 0.80.1 instead of the test app's 0.85.1, causing the old Hermes profiling API to be compiled)
  • Bumped iOS binary size threshold from 1470 to 1550 KiB to accommodate the increased Sentry-vs-plain diff after the RN upgrade

Notes:

  • newArchEnabled is intentionally kept as false (default). CI toggles it for the new-arch matrix variant.

💡 Motivation and Context

Closes #4426

This is a followup on #4414 which bumped the apps from RN 0.70.6 to 0.70.15 as a minimal fix. Upgrading to 0.85.1 brings the perf test apps in line with the e2e test matrix and modern Android/iOS tooling.

💚 How did you test it?

CI — monitoring the metrics job for binary size and startup time regressions.

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

Closes #4426

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 5, 2026

Semver Impact of This PR

None (no version bump detected)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


This PR will not appear in the changelog.


🤖 This preview updates automatically when you update the PR.

@antonis antonis added the ready-to-merge Triggers the full CI test suite label May 5, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 5, 2026

Android (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 444.69 ms 462.52 ms 17.83 ms
Size 48.30 MiB 53.46 MiB 5.15 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
5fe1c6c+dirty 401.62 ms 445.28 ms 43.66 ms
2c735cc+dirty 414.09 ms 438.47 ms 24.38 ms
3d377b5+dirty 406.18 ms 453.52 ms 47.34 ms
4b87b12+dirty 421.82 ms 413.60 ms -8.22 ms
04207c4+dirty 459.19 ms 518.54 ms 59.35 ms
7ac3378+dirty 404.78 ms 439.84 ms 35.06 ms
3ce5254+dirty 410.57 ms 448.48 ms 37.91 ms
5c1e987+dirty 423.52 ms 471.64 ms 48.12 ms
3817909+dirty 406.67 ms 416.58 ms 9.91 ms
a50b33d+dirty 500.81 ms 532.11 ms 31.30 ms

App size

Revision Plain With Sentry Diff
5fe1c6c+dirty 43.75 MiB 48.14 MiB 4.39 MiB
2c735cc+dirty 43.75 MiB 48.08 MiB 4.33 MiB
3d377b5+dirty 43.75 MiB 48.14 MiB 4.39 MiB
4b87b12+dirty 43.75 MiB 48.14 MiB 4.39 MiB
04207c4+dirty 43.75 MiB 48.12 MiB 4.37 MiB
7ac3378+dirty 43.75 MiB 48.13 MiB 4.37 MiB
3ce5254+dirty 43.75 MiB 48.12 MiB 4.37 MiB
5c1e987+dirty 43.75 MiB 48.08 MiB 4.33 MiB
3817909+dirty 43.75 MiB 48.08 MiB 4.33 MiB
a50b33d+dirty 43.75 MiB 48.08 MiB 4.33 MiB

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 5, 2026

Android (new) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 404.17 ms 439.86 ms 35.69 ms
Size 48.30 MiB 53.46 MiB 5.15 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
5fe1c6c+dirty 365.84 ms 408.62 ms 42.78 ms
2c735cc+dirty 435.20 ms 459.48 ms 24.28 ms
3d377b5+dirty 425.38 ms 440.67 ms 15.30 ms
4b87b12+dirty 356.23 ms 399.86 ms 43.63 ms
04207c4+dirty 395.40 ms 456.55 ms 61.15 ms
7ac3378+dirty 410.67 ms 442.60 ms 31.92 ms
3ce5254+dirty 373.90 ms 427.84 ms 53.94 ms
5c1e987+dirty 444.71 ms 475.13 ms 30.42 ms
3817909+dirty 357.52 ms 391.52 ms 34.00 ms
a50b33d+dirty 353.21 ms 398.48 ms 45.27 ms

App size

Revision Plain With Sentry Diff
5fe1c6c+dirty 43.94 MiB 49.00 MiB 5.06 MiB
2c735cc+dirty 43.94 MiB 48.94 MiB 5.00 MiB
3d377b5+dirty 43.94 MiB 49.00 MiB 5.06 MiB
4b87b12+dirty 43.94 MiB 49.00 MiB 5.06 MiB
04207c4+dirty 43.94 MiB 48.98 MiB 5.04 MiB
7ac3378+dirty 43.94 MiB 48.99 MiB 5.05 MiB
3ce5254+dirty 43.94 MiB 48.98 MiB 5.04 MiB
5c1e987+dirty 43.94 MiB 48.94 MiB 5.00 MiB
3817909+dirty 43.94 MiB 48.94 MiB 5.00 MiB
a50b33d+dirty 43.94 MiB 48.94 MiB 5.00 MiB

antonis and others added 2 commits May 5, 2026 11:03
The podspec's node resolution finds packages/core/node_modules/react-native
(0.80.1) instead of the perf test app's (0.85.1) due to yarn workspace
symlink resolution. This causes NEW_HERMES_RUNTIME to not be defined,
and the old Hermes static profiling API (removed in RN 0.85) to be compiled.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The RN 0.80 to 0.85 upgrade increased the Sentry-vs-plain iOS binary
size diff from ~1.44 MiB to ~1.51 MiB.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@antonis
Copy link
Copy Markdown
Contributor Author

antonis commented May 5, 2026

@sentry review

@antonis
Copy link
Copy Markdown
Contributor Author

antonis commented May 5, 2026

@cursor review

Comment thread performance-tests/TestAppSentry/package.json
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit fbd7702. Configure here.

@antonis antonis marked this pull request as ready for review May 5, 2026 09:56
Copy link
Copy Markdown
Collaborator

@lucas-zimerman lucas-zimerman left a comment

Choose a reason for hiding this comment

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

LGTM!

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

Labels

ready-to-merge Triggers the full CI test suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade performance test apps on the latest RN version

2 participants