Skip to content

fix(android): Revert Android SDK bump to 8.61.1 - #6931

Merged
antonis merged 1 commit into
mainfrom
revert/android-8.61.1
Oct 22, 2026
Merged

antonis merged 1 commit into
mainfrom
revert/android-8.61.1

Conversation

@antonis

@antonis antonis commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

Reverts #6929, moving the bundled Android SDK back from 8.61.1 to 8.61.0.

💡 Motivation and Context

Since #6929 the Build RN 0.71.19 legacy hermes android E2E job fails on main (run). The release build fails in :app:mergeExtDexRelease because D8 can't dex sentry-8.61.1.jar and sentry-android-core-8.61.1:

D8: java.lang.NullPointerException: Cannot invoke "String.length()" because "<parameter1>" is null

The cause is upstream. Starting with 8.61.1, sentry-java compiles with a JDK 21 toolchain (getsentry/sentry-java#6242). Even without -parameters, javac 21 writes a MethodParameters attribute for methods with synthetic or mandated parameters, such as bridge methods (JDK-8292275), and leaves the parameter names out. The sentry 8.61.1 jar has 141 classes with these nameless entries; 8.61.0 has none. Older D8 versions crash on them.

I compiled a small class with javac 21 and ran it through the newest release of several D8 lines:

D8 AGP RN default Result
3.3.75 7.3 0.71 NPE
4.0.63 7.4 0.72 NPE
8.0.40 8.0 – NPE
8.1.72 8.1 0.73 OK
8.2.47 8.2 0.74 OK

This doesn't only break our CI. Apps on RN ≤ 0.72, or on AGP ≤ 8.0, would fail their release builds after upgrading to an SDK version that bundles 8.61.1. Our peer range (react-native >=0.65.0) includes them.

We can move to 8.61.1 or later again once sentry-java publishes jars without these entries.

💚 How did you test it?

📝 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.
  • Public API changes reviewed by another Mobile SDK team member or implemented according to the develop docs spec.
  • No breaking changes.

🔮 Next steps

  • Fix in sentry-java, then bump to the fixed release.
  • Don't merge the next automated update-android.sh bump to 8.61.1.
  • The Android masked error/feedback screenshots fix (needs ScreenshotUtils.takeMaskedScreenshot from 8.61.1) waits for the fixed release.

🤖 Generated with Claude Code

Reverts #6929. sentry-java 8.61.1 is compiled with JDK 21, whose javac
emits nameless MethodParameters entries that crash D8 from AGP <= 8.0
(RN <= 0.72) while dexing, failing the RN 0.71 E2E build on main.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@antonis antonis added the ready-to-merge Triggers the full CI test suite label Oct 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

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).


  • fix(android): Revert Android SDK bump to 8.61.1 by antonis in #6931
  • fix(profiling): Drive the native UI profiler from JS by alwx in #6916
  • chore(deps): update Android SDK to v8.61.1 by github-actions in #6929
  • ci: Pin Java 17 for the Android dependency updater by antonis in #6928
  • feat(tracing): Connect React Native traces with embedded WebViews by antonis in #6794
  • refactor(ios): Use internal Cocoa serialization by philprime in #6917
  • chore(deps): update CLI to v3.8.1 by github-actions in #6924
  • chore(deps): update Cocoa SDK to v9.31.0 by github-actions in #6925
  • fix(tracing): Respect enableHTTPTimings and stop leaking HTTP timing listeners by antonis in #6912
  • fix(core): Stop wrapping RNSentry in TurboModuleContext by default by alwx in #6921
  • chore(deps): bump launch-editor from 2.14.1 to 2.14.2 by dependabot in #6922
  • ci: Fix Linux jobs on Ubuntu 26.04 runners by antonis in #6920
  • fix(core): Match Sentry package paths with Windows separators in Metro resolvers by alwx in #6915
  • chore(e2e): Update Expo sample to SDK 58 by antonis in #6914
  • chore(e2e): Bump E2E tests to React Native 0.88.0 by antonis in #6899
  • fix(ios): Find .xcode.env in the debug symbols phase under SwiftPM by alwx in #6911
  • chore(deps): update React Native to v0.88.0 by github-actions in #6903
  • chore(deps): bump getsentry/craft from 2.34.1 to 2.35.0 by dependabot in #6906
  • chore(deps): bump actions/create-github-app-token from 3.2.0 to 3.3.0 by dependabot in #6908
  • chore(deps): bump getsentry/craft/.github/workflows/changelog-preview.yml from 2.33.1 to 2.35.0 by dependabot in #6907
  • chore(sample): Bump React Native sample to 0.88.0 by antonis in #6910
  • chore(deps): bump actions/setup-java from 6.0.1 to 6.1.0 by dependabot in #6909
  • chore(deps): bump the codeql-action group with 3 updates by dependabot in #6905
  • chore(deps): update Sentry Android Gradle Plugin to v6.24.0 by github-actions in #6902

Plus 2 more


🤖 This preview updates automatically when you update the PR.

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor
Warnings
⚠️

🤖 Replay Stubs Check

✅ No changes detected in replay-stubs.jar

All file contents are identical (verified by SHA-256 hash comparison).

Generated by 🚫 dangerJS against beaca75

@sentry

sentry Bot commented Oct 22, 2026

Copy link
Copy Markdown

📲 Install Builds

Android

🔗 App Name App ID Version Configuration
Sentry RN io.sentry.reactnative.sample 8.31.0 (111) Release

⚙️ sentry-react-native Build Distribution Settings

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 skip-changelog

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants