|
2 | 2 |
|
3 | 3 | ## Unreleased |
4 | 4 |
|
| 5 | +### Dependencies |
| 6 | + |
| 7 | +- Bump Native SDK from v0.11.2 to v0.11.3 ([#4810](https://github.com/getsentry/sentry-java/pull/4810)) |
| 8 | + - [changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#0113) |
| 9 | + - [diff](https://github.com/getsentry/sentry-native/compare/0.11.2...0.11.3) |
| 10 | + |
| 11 | +## 8.24.0 |
| 12 | + |
5 | 13 | ### Features |
6 | 14 |
|
7 | 15 | - Attach MDC properties to logs as attributes ([#4786](https://github.com/getsentry/sentry-java/pull/4786)) |
|
13 | 21 | - Note that keys containing spaces are not supported. |
14 | 22 | - Add experimental Sentry Android Distribution module for integrating with Sentry Build Distribution to check for and install updates ([#4804](https://github.com/getsentry/sentry-java/pull/4804)) |
15 | 23 | - Allow passing a different `Handler` to `SystemEventsBreadcrumbsIntegration` and `AndroidConnectionStatusProvider` so their callbacks are deliver to that handler ([#4808](https://github.com/getsentry/sentry-java/pull/4808)) |
| 24 | +- Session Replay: Add new _experimental_ Canvas Capture Strategy ([#4777](https://github.com/getsentry/sentry-java/pull/4777)) |
| 25 | + - A new screenshot capture strategy that uses Android's Canvas API for more accurate and reliable text and image masking |
| 26 | + - Any `.drawText()` or `.drawBitmap()` calls are replaced by rectangles, ensuring no text or images are present in the resulting output |
| 27 | + - Note: If this strategy is used, all text and images will be masked, regardless of any masking configuration |
| 28 | + - To enable this feature, set the `screenshotStrategy`, either via code: |
| 29 | + ```kotlin |
| 30 | + SentryAndroid.init(context) { options -> |
| 31 | + options.sessionReplay.screenshotStrategy = ScreenshotStrategyType.CANVAS |
| 32 | + } |
| 33 | + ``` |
| 34 | + or AndroidManifest.xml: |
| 35 | + ```xml |
| 36 | + <application> |
| 37 | + <meta-data android:name="io.sentry.session-replay.screenshot-strategy" android:value="canvas" /> |
| 38 | + </application> |
| 39 | + ``` |
16 | 40 |
|
17 | 41 | ### Fixes |
18 | 42 |
|
|
22 | 46 | - Session Replay: Avoid deadlock when pausing replay if no connection ([#4788](https://github.com/getsentry/sentry-java/pull/4788)) |
23 | 47 | - Session Replay: Fix capturing roots with no windows ([#4805](https://github.com/getsentry/sentry-java/pull/4805)) |
24 | 48 | - Session Replay: Fix `java.lang.IllegalArgumentException: width and height must be > 0` ([#4805](https://github.com/getsentry/sentry-java/pull/4805)) |
| 49 | +- Handle `NoOpScopes` in `Context` when starting a span through OpenTelemetry ([#4823](https://github.com/getsentry/sentry-java/pull/4823)) |
| 50 | + - This fixes "java.lang.IllegalArgumentException: The DSN is required" when combining WebFlux and OpenTelemetry |
| 51 | +- Session Replay: Do not use recycled screenshots for masking ([#4790](https://github.com/getsentry/sentry-java/pull/4790)) |
| 52 | + - This fixes native crashes seen in `Canvas.<init>`/`ScreenshotRecorder.capture` |
| 53 | +- Session Replay: Ensure bitmaps are recycled properly ([#4820](https://github.com/getsentry/sentry-java/pull/4820)) |
25 | 54 |
|
26 | 55 | ### Miscellaneous |
27 | 56 |
|
|
0 commit comments