fix(deps): update dependency io.sentry:sentry to v8.39.1#877
fix(deps): update dependency io.sentry:sentry to v8.39.1#877renovate[bot] wants to merge 1 commit intomasterfrom
Conversation
8742897 to
e4e5a94
Compare
e4e5a94 to
886d46c
Compare
886d46c to
1350f03
Compare
1350f03 to
20e4324
Compare
20e4324 to
1351086
Compare
1351086 to
e1a9e9c
Compare
e1a9e9c to
7336560
Compare
7336560 to
7b19008
Compare
7b19008 to
6b2d26b
Compare
6b2d26b to
c63999a
Compare
c63999a to
c41a617
Compare
c41a617 to
af82269
Compare
af82269 to
17e1da9
Compare
17e1da9 to
fe9c6d5
Compare
fe9c6d5 to
a6aa20d
Compare
a6aa20d to
1baef82
Compare
1baef82 to
8c0cefa
Compare
8c0cefa to
2b6ed28
Compare
2b6ed28 to
97a5cb6
Compare
97a5cb6 to
8fdb8bf
Compare
8fdb8bf to
45c50b1
Compare
45c50b1 to
86df54b
Compare
📝 WalkthroughWalkthroughThe Sentry dependency in Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
86df54b to
0a2a8aa
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@build.gradle`:
- Line 44: Update the Sentry dependency version from 8.38.0 to 8.37.1 in the
implementation declaration (the line containing "io.sentry:sentry") so Gradle
can resolve the published SDK; also verify any other Sentry artifacts (e.g.,
sentry-android, sentry-okhttp) use 8.37.1 to avoid binary mismatches and, if
your code references SpotlightIntegration, add the separate "sentry-spotlight"
module at 8.37.1.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
| implementation 'com.squareup.okhttp3:okhttp' | ||
| implementation 'com.squareup.okhttp3:okhttp-brotli' | ||
| implementation 'io.sentry:sentry:8.19.1' | ||
| implementation 'io.sentry:sentry:8.38.0' |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
io.sentry:sentry 8.38.0 release notes Java SDK breaking changes compatibility with 8.19.1
💡 Result:
As of April 8, 2026, there is no io.sentry:sentry (Sentry Java SDK) release 8.38.0. The Sentry Java SDK GitHub releases show 8.37.1 (released Mar 26, 2026) as the newest 8.x release at that time. [1]
What this means for “8.38.0 vs 8.19.1” compatibility
- If you try to upgrade from
8.19.1→8.38.0, it likely won’t resolve because8.38.0isn’t a Java SDK version (it’s commonly seen in other Sentry SDKs, e.g., JavaScript). - If your real target is
8.37.1(or another existing 8.x), then it’s a same-major (8.x → 8.x) upgrade, but there are noteworthy breaking/behavior changes across that range.
Notable breaking/behavior changes between 8.19.1 and newer 8.x
- 8.32.0 breaking change (Spotlight):
SpotlightIntegrationwas extracted into a separate module; if you use Spotlight you must addio.sentry:sentry-spotlightexplicitly. [2] - 8.35.0 behavioral change (ANR grouping):
enableAnrFingerprintingwas introduced and is enabled by default, changing how some ANRs get grouped. [3] - 8.34.0 API addition (attributes): new scope-level attribute APIs:
Sentry.setAttribute,Sentry.setAttributes,Sentry.removeAttribute. (Not breaking, but may affect integrations/custom wrappers.) [4]
Important note about dependency alignment (common “incompatibility” cause)
If you use multiple Sentry artifacts (e.g., sentry, sentry-android, sentry-okhttp, etc.), they must all be on the same version; mismatches can cause runtime NoSuchMethodError / binary incompatibilities. [5]
Extra: 8.19.1 has a specific Android warning
The 8.19.1 release itself notes it’s incompatible with Android API levels below 26 and recommends upgrading (e.g., 8.20.0+). [6]
If you tell me which Sentry artifacts you use (plain JVM vs Android vs Spring Boot, plus your Gradle/Maven dependency list), I can point out the specific upgrade hazards from 8.19.1 to your intended target version.
References:
[1] https://github.com/getsentry/sentry-java/releases/tag/8.37.1
[2] https://github.com/getsentry/sentry-java/releases/tag/8.32.0
[3] https://github.com/getsentry/sentry-java/releases/tag/8.35.0
[4] https://github.com/getsentry/sentry-java/releases/tag/8.34.0
[5] https://sentry.zendesk.com/hc/en-us/articles/33646017632027--Android-Application-crashes-with-error-No-static-method-addIntegrationToSdkVersion
[6] https://github.com/getsentry/sentry-java/releases/tag/8.19.1
🌐 Web query:
Sentry Java SDK 8.38.0 API docs Sentry.init captureException startTransaction setExtra
💡 Result:
Sentry Java SDK “8.38.0” docs?
For the Java artifact io.sentry:sentry, 8.38.0 isn’t published on javadoc.io; the current line there goes up to 8.37.1. (javadoc.io) (The 8.38.0 number you’re seeing is commonly a JavaScript SDK version.)
Java SDK Javadocs (pick the version you actually use):
https://javadoc.io/doc/io.sentry/sentry
https://javadoc.io/doc/io.sentry/sentry/8.37.1
API references (Java) for the methods you listed
Sentry.init(...)
Javadoc (example version 8.8.0):
https://javadoc.io/static/io.sentry/sentry/8.8.0/io/sentry/Sentry.html
Overloads include:
Sentry.init()/Sentry.init(String dsn)Sentry.init(Sentry.OptionsConfiguration<SentryOptions> optionsConfiguration)
(javadoc.io)
Sentry docs page showing the typical Sentry.init(options -> { ... }) pattern:
(docs.sentry.dev)
Sentry.captureException(...)
Javadoc (8.8.0) shows overloads like:
Sentry.captureException(Throwable throwable)Sentry.captureException(Throwable throwable, Hint hint)
(javadoc.io)
Sentry.startTransaction(...)
Javadoc (8.8.0) shows overloads like:
Sentry.startTransaction(String name, String operation)Sentry.startTransaction(TransactionContext transactionContext, TransactionOptions transactionOptions)
(javadoc.io)
Sentry.setExtra(...)
Javadoc (8.8.0):
Sentry.setExtra(String key, String value)
(javadoc.io)
Citations:
- 1: https://javadoc.io/doc/io.sentry/sentry/latest/allclasses-index.html
- 2: https://javadoc.io/doc/io.sentry/sentry/latest/allclasses-index.html
- 3: https://javadoc.io/static/io.sentry/sentry/8.8.0/io/sentry/Sentry.html
- 4: https://docs.sentry.dev/platforms/java/guides/spring/configuration/options/?utm_source=openai
- 5: https://javadoc.io/static/io.sentry/sentry/8.8.0/io/sentry/Sentry.html
- 6: https://javadoc.io/static/io.sentry/sentry/8.8.0/io/sentry/Sentry.html
- 7: https://javadoc.io/static/io.sentry/sentry/8.8.0/io/sentry/Sentry.html
Change version 8.38.0 to 8.37.1—8.38.0 does not exist for the Sentry Java SDK.
The Sentry Java SDK has no published version 8.38.0; the latest 8.x release is 8.37.1 (Mar 26, 2026). Gradle will fail to resolve or silently pick an incorrect version. Align with the PR objective and update to 8.37.1.
When upgrading from 8.19.1 to 8.37.1, note these breaking/behavior changes:
- 8.32.0:
SpotlightIntegrationmoved to separatesentry-spotlightmodule; add explicitly if used. - 8.35.0:
enableAnrFingerprintingenabled by default, affecting ANR grouping. - Ensure all other Sentry artifacts (
sentry-android,sentry-okhttp, etc., if used) are also updated to8.37.1to avoid binary incompatibilities.
The methods you use (Sentry.init, captureException, setExtra, startTransaction) remain compatible in 8.37.1.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@build.gradle` at line 44, Update the Sentry dependency version from 8.38.0 to
8.37.1 in the implementation declaration (the line containing
"io.sentry:sentry") so Gradle can resolve the published SDK; also verify any
other Sentry artifacts (e.g., sentry-android, sentry-okhttp) use 8.37.1 to avoid
binary mismatches and, if your code references SpotlightIntegration, add the
separate "sentry-spotlight" module at 8.37.1.
0a2a8aa to
683f2cd
Compare
683f2cd to
ad12de0
Compare
This PR contains the following updates:
8.19.1→8.39.1Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
getsentry/sentry-java (io.sentry:sentry)
v8.39.1Compare Source
Fixes
JsonObjectReaderandMapObjectReaderhanging indefinitely when deserialization errors leave the reader in an inconsistent state (#5293)WARNINGlogsERRORlogsv8.39.0Compare Source
Fixes
GestureDetectorCompatHandler/MessageQueue lock contention inSentryWindowCallback(#5138)Internal
Dependencies
v8.38.0Compare Source
Features
o123.ingest.sentry.io) and compares it with thesentry-org_idvalue in incoming baggage headers. When the two differ, the SDK starts a fresh trace instead of continuing the foreign one. This guards against accidentally linking traces across organizations.enableStrictTraceContinuation(defaultfalse): when enabled, both the SDK's org ID and the incoming baggage org ID must be present and match for a trace to be continued. Traces with a missing org ID on either side are rejected. Configurable via code (setStrictTraceContinuation(true)),sentry.properties(enable-strict-trace-continuation=true), Android manifest (io.sentry.strict-trace-continuation.enabled), or Spring Boot (sentry.strict-trace-continuation=true).orgId: allows explicitly setting the organization ID for self-hosted and Relay setups where it cannot be extracted from the DSN. Configurable via code (setOrgId("123")),sentry.properties(org-id=123), Android manifest (io.sentry.org-id), or Spring Boot (sentry.org-id=123).Improvements
ActivityManagerif API < 35 on SDK init (#5275)v8.37.1Compare Source
Fixes
SentryContextStorage.root()with virtual threads and OpenTelemetry agent (#5234)v8.37.0Compare Source
Fixes
Features
CacheManagerandCachebeans to produce cache spanssentry.enable-cache-tracingtotrueto enable this featuresentry-jcachemodule (#5165)CachewithSentryJCacheWrapperto produce cache spansenableCacheTracingoption totrueto enable this featureIScopesStorageFactorytoSentryOptionsfor providing a customIScopesStorage, e.g. when the defaultThreadLocal-backed storage is incompatible with non-pinning thread models (#5199)beforeErrorSamplingcallback to Session Replay (#5214)onErrorSampleRateis checkedfalseskips replay capture entirely for that error; returningtrueproceeds with the normal sample rate checkDependencies
opentelemetryto1.60.1(was1.57.0)opentelemetry-instrumentationto2.26.0(was2.23.0)opentelemetry-instrumentation-alphato2.26.0-alpha(was2.23.0-alpha)opentelemetry-semconvto1.40.0(was1.37.0)opentelemetry-semconv-alphato1.40.0-alpha(was1.37.0-alpha)v8.36.0Compare Source
Features
options.getFeedbackOptions().setUseShakeGesture(true)or manifest meta-dataio.sentry.feedback.use-shake-gestureFixes
Dependencies
com.abovevacant:epitaphto0.1.1to avoid old D8/R8 dexing crashes in downstream Android builds on old AGP versions such as 7.4.x. (#5200)v8.35.0Compare Source
Fixes
Features
options.setAnrProfilingSampleRate(<sample-rate>)or AndroidManifest.xml:<meta-data android:name="io.sentry.anr.profiling.sample-rate" android:value="[0.0-1.0]" />Behavioral Changes
enableAnrFingerprintingoption which assigns static fingerprints to ANR events with system-only stacktracesjava.langorandroid.os) are grouped into a single issue instead of creating many separate issuesoptions.setEnableAnrFingerprinting(false)or AndroidManifest.xml:<meta-data android:name="io.sentry.anr.enable-fingerprinting" android:value="false" />v8.34.1Compare Source
Fixes
filterTouchesWhenObscuredto prevent Tapjacking on user feedback dialog (#5155)v8.34.0Compare Source
Features
sentry.properties:shutdown-timeout-millis,session-flush-timeout-millisSENTRY_SHUTDOWN_TIMEOUT_MILLIS,SENTRY_SESSION_FLUSH_TIMEOUT_MILLISapplication.properties:sentry.shutdownTimeoutMillis,sentry.sessionFlushTimeoutMillisSentry.setAttribute,Sentry.setAttributes,Sentry.removeAttributeSENTRY_SAMPLE_RATEenvironment variable /sample-rateproperty (#5112)sentry-opentelemetry-otlpandsentry-opentelemetry-otlp-springmodules for combining OpenTelemetry SDK OTLP export with Sentry SDK (#5100)OpenTelemetryOtlpEventProcessor) but will not send spans through OpenTelemetry nor use OpenTelemetryContextforScopespropagation.sentry-android-replaymodule to be present at runtime for masking to workAndroidManifest.xml:ManifestMetaDataReadernow read theDIST(#5107)Fixes
Long,Short,Byte,BigInteger,AtomicInteger, andAtomicLongbeing incorrectly inferred asdoubleinstead ofinteger(#5122)AndroidRuntimeManagerStrictMode relaxation to prevent ANRs during SDK init (#5127)SystemEventsBroadcastReceiverwith try-catch block. (#5106)peekDecorViewinstead ofgetDecorViewinSentryGestureListenerto avoid forcing view hierarchy construction (#5134)network_errortosend_errorURISyntaxExceptioncaused by trailing whitespace (#5113)Sentry.init(#5135)Dependencies
v8.33.0Compare Source
Features
installGroupsOverrideparameter to Build Distribution SDK for programmatic filtering, with support for configuration via properties file usingio.sentry.distribution.install-groups-override(#5066)Fixes
SentryExecutorServiceinSentryOptions(#5093)sendDefaultPii(#5099)androidx.camera.view.PreviewViewto defaultmaskedViewClassesto mask camera previews by default. (#5097)Dependencies
Internal
v8.32.0Compare Source
Features
installGroupsproperty to Build Distribution SDK (#5062)io.sentry.spotlight.enableandio.sentry.spotlight.url(#5064)BEGIN,COMMIT,ROLLBACK) (#5072)options.enableDatabaseTransactionTracingtotrueenable-database-transaction-tracing=truewhen usingsentry.propertiessentry.enable-database-transaction-tracing=trueinapplication.propertiesor inapplication.yml:ApplicationExitInfo.REASON_CRASH_NATIVEon Android 12+AndroidManifest.xmlusing:Fixes
SpotlightIntegrationto separatesentry-spotlightmodule to prevent insecure HTTP URLs from appearing in release APKs (#5064)io.sentry:sentry-spotlightdependency:dependencies { debugImplementation("io.sentry:sentry-spotlight:<version>") }Scopesforreactor-kafkaconsumer pollRunnable(#5080)reactor-kafka's poll event reschedules itself infinitely, and each invocation ofSentryScheduleHookcreated forked scopes with a parent reference, building an unbounded chain that couldn't be garbage collected.Internal
sentry-nativefromApplicationExitInfo. (#5052)writepermission forstatusesin the changelog preview GHA workflow. (#5053)Dependencies
v8.31.0Compare Source
Features
io.sentry.ndk.sdk-nameAndroid manifest option to configure the native SDK's name (#5027)sentry.trace.parent_span_idattribute withspanIdproperty onSentryLogEvent(#5040)Fixes
sendDefaultPiiis enabled (#5036)LoggerBatchProcessoris shutting down (#5041)Dependencies
v8.30.0Compare Source
Fixes
use
options.isCollectExternalStorageContext = trueor<meta-data android:name="io.sentry.external-storage-context" android:value="true" />NullPointerExceptionwhen reading ANR marker (#4979)log_byte(#4971)Improvements
MAX_EVENT_SIZE_BYTESconstant in SentryOptions (#4962)4xxand5xxresponse (#4950)Features
ApplicationExitInfo.REASON_CRASH_NATIVEon Android 12+. (#4933)Sentry.metrics()count: A metric that increments countsgauge: A metric that tracks a value that can go up or downdistribution: A metric that tracks the statistical distribution of valuesv8.29.0Compare Source
Fixes
Internal
metricenvelope item type (#4956)v8.28.0Compare Source
Features
SentryOkHttpInterceptorto intercept the request and extract request/response bodiesio.sentry.session-replay.network-detail-allow-urlsmetadata tag in AndroidManifest (code sample) - Or you can manually specify SentryReplayOptions viaSentryAndroid#init:(Make sure you disable the auto init via manifest meta-data: io.sentry.auto-init=false)
Kotlin
Java
Improvements
rootScopesfor Reactor if current thread hasNoOpScopes(#4793)Fixes
Internal
spanenvelope item type (#4935)Dependencies
v8.27.1Compare Source
Fixes
sentry.propertiesin rundir has not been found (#4929)v8.27.0Compare Source
Features
sentry-openfeaturedependency and register the the hook using:openFeatureApiInstance.addHooks(new SentryOpenFeatureHook());sentry-launchdarkly-androidas a dependency and register theSentryLaunchDarklyAndroidHooksentry-launchdarkly-serveras a dependency and register theSentryLaunchDarklyServerHookenableEventSizeLimitingtotrue(sentry.enable-event-size-limiting=truefor Spring Bootapplication.properties)onOversizedEventcallback to implement custom logic that is executed in case an oversized event is detectedImprovements
Dependencies
v8.26.0Compare Source
Features
Sentry.addFeatureFlag("my-feature-flag", true);) writes to scopes and the current span (if there is one)IScope,IScopes,ISpanandITransactiondirectlyFixes
DefaultReplayBreadcrumbConverterif replay is available (#4888)Improvements
timber.taglog attribute (#4845)Dependencies
v8.25.0Compare Source
Fixes
Improvements
sampled == null) won't be collecting any performance data anymore (CPU, RAM, slow/frozen frames).Dependencies
v8.24.0Compare Source
Features
mdc.<key>, where<key>is the original key in the MDC.contextTagsare sent as log attributes.options.setContextTagsif initalizing manually, or by specifying a comma-separated list of keys with acontext-tagsentry insentry.propertiesorsentry.context-tagsinapplication.properties.HandlertoSystemEventsBreadcrumbsIntegrationandAndroidConnectionStatusProviderso their callbacks are deliver to that handler (#4808).drawText()or.drawBitmap()calls are replaced by rectangles, ensuring no text or images are present in the resulting outputscreenshotStrategy, either via code:Fixes
java.lang.IllegalArgumentException: width and height must be > 0(#4805)NoOpScopesinContextwhen starting a span through OpenTelemetry (#4823)Canvas.<init>/ScreenshotRecorder.captureMiscellaneous
Dependencies
v8.23.0Compare Source
Features
sentry-async-profilerdependency to your project1.0to send all of them. You may useoptions.setProfileSessionSampleRate(1.0)in code orprofile-session-sample-rate=1.0insentry.propertiesoptions.setProfileLifecycle(ProfileLifecycle.TRACE)in code orprofile-lifecycle=TRACEinsentry.propertiesMANUAL, meaning you have to explicitly callSentry.startProfiler()andSentry.stopProfiler()TRACEwhich will create a profile for each transactionsentry.profile-session-sample-rate=1.0andsentry.profile-lifecycle=TRACEinapplication.propertiessentry.profile-session-sample-rate: 1.0andsentry.profile-lifecycle: TRACEinapplication.ymlFixes
SentryTraced(#4757)Improvements
RejectedExecutionExceptioneverywhere (#4747)SentryEnvelopeas not internal (#4748)v8.22.0Compare Source
Features
traceparentheader.Improvements
Fixes
NoSuchElementExceptioninBufferCaptureStrategy(#4717)Dependencies
v8.21.1Compare Source
Fixes
v8.21.0Compare Source
Fixes
Features
sentry-opentelemetry-agentless-springis not working yet for Spring Boot 4. Please usesentry-opentelemetry-agentuntil OpenTelemetry has support for Spring Boot 4.UUIDGeneratorimplementation with Apache licensed code (#4662)Randomimplementation with MIT licensed code (#4664)varsattribute inSentryStackFrame(#4686)varsattribute has been changed fromMap<String, String>toMap<String, Object>.v8.20.0Compare Source
Fixes
Features
Sentry.init:Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.