Skip to content

chore(deps): Update Android SDK to v8.60.0 - #4077

Merged
buenaflor merged 2 commits into
mainfrom
deps/packages/flutter/scripts/update-android.sh
Oct 12, 2026
Merged

buenaflor merged 2 commits into
mainfrom
deps/packages/flutter/scripts/update-android.sh

Conversation

@github-actions

@github-actions github-actions Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Updates Sentry Android from 8.56.0 to 8.60.0 and regenerates the JNI bindings.

Binding generation previously used Flutter 3.44.0 while the analysis job used latest stable, producing incompatible formatting. A committed .fvmrc now pins Flutter 3.47.0 / Dart 3.13.0 for both generators, formatting and analysis CI, and local hooks. The hooks reject mismatched SDKs and resolve affected dependencies before formatting. Minimum-version and stable/beta compatibility tests keep their existing SDK matrix.

Contributors should run fvm install and melos bootstrap to use the pinned toolchain. Formatting and analysis passed across the monorepo; local script checks covered SDK mismatch rejection, configured download selection, and dependency-resolution failures.

Auto-generated by a dependency updater.

Changelog

8.60.0

Features

  • Add support for Android Navigation 3 through the new sentry-android-navigation3 library (#6233)
    • Use SentryNavEffect to record navigation transactions, breadcrumbs, screen names, and additional context as your nav back stack changes.
    • See the Navigation for Android docs for additional details.
  • Report the cellular network technology generation in device.connection_effective_type, for example 4g or 5g (#6146)

Dependencies

8.59.0

Breaking Changes

  • Capture direct Sentry.logger() and Sentry.metrics() calls regardless of options.getLogs().isEnabled() and options.getMetrics().isEnabled() (#6184)
    • Automatic logging integrations still only capture logs when options.getLogs().isEnabled() is true. options.getMetrics().setEnabled(...) currently has no effect because there are no automatic Metrics integrations. Both enable options will be removed in the upcoming major release, and each logging integration will then have a separate opt-in flag.
    • Use options.getLogs().setBeforeSend(...) and options.getMetrics().setBeforeSend(...) to filter manually emitted telemetry. Return null from either callback to drop it.

Fixes

  • Keep the videos of already captured session replay segments when the replay stops, so segments that are still queued are no longer sent without their video (#6177)

Features

  • Deprecate sendDefaultPii in favor of dataCollection ahead of its removal in 9.0 (#6158)
  • Make the tombstone merge time threshold configurable via SentryAndroidOptions.setTombstoneMergeTimeThresholdMillis and the io.sentry.tombstone.merge-time-threshold-millis manifest option (#6154)
  • Add sentry-apollo-5 integration for Apollo Kotlin 5, providing HTTP tracing and failed GraphQL request reporting (#6074)
  • Add OkHttp autoconfiguration for Spring Boot (#5797)

Fixes

  • Prevent infinite loops when capturing exceptions with cyclic cause chains (#6073)

Improvements

  • Recover Android 17 MemoryLimiter app exits recorded as ApplicationExitInfo.REASON_MEMORY_LIMITER (#6174)

Dependencies

8.58.0

Features

  • Add LocalSentrySpan to sentry-compose so apps can provide a parent ISpan to a composable subtree and have nested SentryTraced spans attach to it ([#6112]feat(compose): Introduce LocalSentrySpan sentry-java#6112)
  • Add dataCollection, a fine-grained replacement for sendDefaultPii, for controlling data collected automatically by SDK integrations. See the Data Collection documentation for Android, Java, and Spring Boot (#5759)

Warning

sendDefaultPii will be removed in the next major SDK version. Migrate to dataCollection before upgrading.

Fixes

  • Disable URL caching when reading META-INF/MANIFEST.MF files during version detection so that the SDK no longer keeps jar file handles open for the life of the process (#6124
  • Keep the EventListener wrapped by SentryOkHttpEventListener per Call (#6003)

8.57.0

Behavioral Changes

  • Measure HTTP rate-limit backoff on a monotonic clock instead of the wall clock, so that a device time change no longer lifts or extends an active rate limit (#6030)

Features

  • Add Android SDK support for reporting MemoryLimiter app exits recovered from ApplicationExitInfo (#6111).
  • Sentry can now configure Log4j2 automatically for Spring Boot 4 when sentry-log4j2 is on the classpath and Log4j2 Core is the active logging backend (#5403)
    • Enable automatic appender registration with:
      sentry.logging.enabled=true
      Automatic registration is disabled by default for now and will be enabled by default in the next major release.
    • The appender is attached to the root logger by default. To attach it to specific loggers instead, configure one or more non-overlapping logger names:
      sentry.logging.loggers[0]=com.example
      sentry.logging.loggers[1]=org.example
    • Configure the minimum level for creating breadcrumbs. The default is INFO:
      sentry.logging.minimum-breadcrumb-level=INFO
    • Configure the minimum level for creating Sentry error events. The default is ERROR:
      sentry.logging.minimum-event-level=ERROR
    • Configure the minimum level for sending Sentry structured logs. The default is INFO:
      sentry.logging.minimum-level=INFO
      Structured logs must also be enabled:
      sentry.logs.enabled=true
  • Sentry can now configure Log4j2 automatically for Spring Boot 3 when sentry-log4j2 is on the classpath and Log4j2 Core is the active logging backend (#6072)
    • Disabled by default for now; enable it and configure levels the same way as described in the Spring Boot 4 entry above (sentry.logging.enabled=true)

Fixes

  • Support ws and wss URL parsing for WebSocket instrumentation (#6064)
  • Keep resolving the server name after Sentry.close() or a re-init. Closing the SDK shut down the shared hostname cache for the life of the process, so server_name silently froze at the value it had last resolved (#6119)
  • Order breadcrumbs by the timestamp they carry rather than by when they were created in the current process, so breadcrumbs restored from disk or handed over by a hybrid SDK no longer sort as if they had just happened (#6097)

Internal

  • Deprecate RateLimiter(ICurrentDateProvider, SentryOptions) in favor of RateLimiter(SentryOptions), whose backoff is measured on a monotonic ticker (#6030)

  • Deprecate AndroidCurrentDateProvider.getInstance() in favor of MonotonicTicker, which counts time spent in deep sleep and cannot be confused with the epoch-based CurrentDateProvider (#6103)

  • Clear the persisted replay id on SDK init, so a replay id from a previous process is no longer attached to ANR events from the current one (#6033)

@bruno-garcia
bruno-garcia force-pushed the deps/packages/flutter/scripts/update-android.sh branch from 2627912 to 30fd750 Compare October 12, 2026 11:48
@github-actions

github-actions Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor Author

Semver Impact of This PR

🟡 Minor (new features)

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

@codecov

codecov Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.88%. Comparing base (cc4ad48) to head (c2f7189).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4077      +/-   ##
==========================================
+ Coverage   88.76%   92.88%   +4.12%     
==========================================
  Files         348      114     -234     
  Lines       12563     4570    -7993     
==========================================
- Hits        11151     4245    -6906     
+ Misses       1412      325    -1087     
Flag Coverage Δ
sentry ?
sentry_dio ?
sentry_drift ?
sentry_file ?
sentry_firebase_remote_config 100.00% <ø> (ø)
sentry_flutter 92.60% <ø> (ø)
sentry_grpc ?
sentry_hive ?
sentry_isar ?
sentry_link ?
sentry_logging ?
sentry_sqflite ?
sentry_supabase 97.48% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

Use the shared Flutter pin for generation, analysis, formatting,
and local hooks. Resolve dependencies before formatting and reject
mismatched SDKs to prevent generated binding style changes.

Co-Authored-By: Codex <noreply@openai.com>
@buenaflor buenaflor changed the title chore(deps): update Android SDK to v8.60.0 chore(deps): Update Android SDK to v8.60.0 Oct 12, 2026
@buenaflor
buenaflor merged commit c7d9639 into main Oct 12, 2026
97 of 100 checks passed
@buenaflor
buenaflor deleted the deps/packages/flutter/scripts/update-android.sh branch October 12, 2026 13:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants