Skip to content

Releases: DataDog/dd-sdk-android

2.17.0

02 Jan 16:02
39f41f1
Compare
Choose a tag to compare
  • [FEATURE] Implement the basic logic for time-to-network-settle view metric. See #2397
  • [FEATURE] Add a Jetpack Compose fine grained masking override API. See #2416
  • [FEATURE] Implement the basic logic for interaction-to-next-view-metric. See #2417
  • [FEATURE] Support is_main_process property in telemetry configuration. See #2422
  • [FEATURE] Introduce the setNetworkSettledInitialResourceIdentifier API. See #2424
  • [FEATURE] Introduce the setLastInteractionIdentifier public API. See #2428
  • [IMPROVEMENT] Refactor TextSemanticsNodeMapper to commonize the text wireframe logic. See #2401
  • [IMPROVEMENT] Add TextField semantics mapper for Session Replay Compose. See #2406
  • [IMPROVEMENT] Decouple Jetpack Compose reflection functions and report to Telemetry. See #2415
  • [IMPROVEMENT] Move ImageSemanticsMapper reflection functions into ReflectionUtils. See #2419
  • [IMPROVEMENT] Handle readOnly additionalProperties. See #2423
  • [IMPROVEMENT] Improve the log message when exception happen during upload. See #2411
  • [IMPROVEMENT] Apply global privacy level to semantics node mappers. See #2413
  • [IMPROVEMENT] Apply touch privacy override in RootSemanticsMapper. See #2421
  • [IMPROVEMENT] Get rid of Thread.sleep(SHORT_SLEEP_MS) in unit tests at DatadogEventListenerTest. See #2430
  • [IMPROVEMENT] Add backwards compatibility for Coil AsyncImage. See #2432
  • [IMPROVEMENT] Change the logApiUsage method signature - making event parameter computation lazy. See #2433
  • [IMPROVEMENT] Apply the hide view override on Semantics nodes. See #2434
  • [IMPROVEMENT] Correctly handle TTNS when a resource was stopped with an error. See #2444
  • [IMPROVEMENT] Add integration tests for the TTNS metric. See #2442
  • [IMPROVEMENT] Add integration tests for ITNV metric. See #2445
  • [IMPROVEMENT] Display captured text when the text has Ellipsis overflow. See #2446
  • [IMPROVEMENT] Support interop view from Jetpack Compose. See #2452
  • [IMPROVEMENT] Add an "effective sample rate" to telemetry events. See #2453
  • [IMPROVEMENT] Handle traces with coroutines. See #2457
  • [IMPROVEMENT] Add support for Jetpack Compose Checkbox. See #2414
  • [IMPROVEMENT] Replace joinToString when possible. See #2456
  • [MAINTENANCE] Fix flaky test in the Deterministic Sampler. See #2412
  • [MAINTENANCE] Fix TextFieldSemanticsNodeMapper flaky test. See #2410
  • [MAINTENANCE] Fix potential issues with subdomain host lookups. See #2436
  • [MAINTENANCE] Fix the way we are recording the last interaction for the ITNV metric. See #2431
  • [MAINTENANCE] Deprecate Datadog GlobalTracer class. See #2438
  • [MAINTENANCE] Correct the way we register the initial resources for the TTNS metric. See #2439
  • [MAINTENANCE] Explicit Fragment dependency. See #2443
  • [MAINTENANCE] Don't warn about missing views on PerformanceMetric events. See #2454

2.16.1

18 Dec 14:32
14b45a5
Compare
Choose a tag to compare

What's Changed

  • Patch version to allow support for React Native Session Replay by @jonathanmos in #2458

Full Changelog: 2.16.0...2.16.1

2.16.0

21 Nov 10:11
0ecf62e
Compare
Choose a tag to compare
  • [FEATURE] Session Replay: Create Session Replay Compose module.
    See #1879
  • [FEATURE] Session Replay: Add Tab and TabRow Composable groups mappers.
    See #2171
  • [FEATURE] Session Replay: Add Abstract and Text semantics mapper for Compose Session Replay.
    See #2292
  • [FEATURE] Session Replay: Add Semantics Mapper for Button role.
    See #2296
  • [FEATURE] Session Replay: Add ImageSemanticsNodeMapper to support image role for Session Replay.
    See #2322
  • [FEATURE] Session Replay: Add Tab semantics mapper.
    See #2378
  • [FEATURE] Session Replay: Add RadioButton Semantics Node Mapper.
    See #2381
  • [FEATURE] Session Replay: Add Material Chip mapper and improve CompoundButton telemetry.
    See #2364
  • [FEATURE] Session Replay: Add Compose Session Replay scenario for benchmark sample application.
    See #2379
  • [FEATURE] Session Replay: Add multiple extension support.
    See #2384
  • [FEATURE] Session Replay: Add Compose Session Replay selector sample screen.
    See #2394
  • [FEATURE] Session Replay: Add AndroidComposeViewMapper to support popup.
    See #2395
  • [FEATURE] Session Replay: Integrate benchmark profiler in Compose mapper.
    See #2397
  • [IMPROVEMENT] Add MethodCall telemetry for compose mapper.
    See #2123
  • [IMPROVEMENT] Apply privacy settings to TextCompositionGroupMapper for Compose.
    See #2121
  • [IMPROVEMENT] Use SurfaceCompositionGroupMapper to support container components in Session
    Replay.
    See #2182
  • [IMPROVEMENT] Fix padding and resizing issue for ImageView mapper.
    See #2372
  • [IMPROVEMENT] Add warning log when initializing the SDK outside of the main process.
    See #2376
  • [IMPROVEMENT] breaking API change: Allow typed Sampler.
    See #2385
  • [IMPROVEMENT] Create the DeterministicSampler.
    See #2387
  • [IMPROVEMENT] Use deterministic sampling by default when tracing.
    See #2388
  • [IMPROVEMENT] Align log levels for Session Replay already enabled.
    See #2399
  • [IMPROVEMENT] Adjust Webview Replay storage configuration limits.
    See #2400
  • [MAINTENANCE] Update Gradle to version 8.10.2.
    See #2359
  • [MAINTENANCE] Fix ButtonCompositionGroupMapper crash while calculating the corner radius.
    See #2173
  • [MAINTENANCE] Fix Image reflection issue and update ProGuard rules.
    See #2337
  • [MAINTENANCE] Fix CompoundButton mapper drawable clone issue.
    See #2365
  • [MAINTENANCE] Fix crash while using recycled bitmap in Session Replay.
    See #2396
  • [MAINTENANCE] Add experimental annotation for Session Replay for Compose.
    See #2377
  • [MAINTENANCE] Lazy RUM raw event creation in event generator methods.
    See #2363
  • [MAINTENANCE] Remove legacy code using Compose sourceInfo.
    See #2386

2.15.1

04 Nov 15:32
44f7dc2
Compare
Choose a tag to compare

What's Changed

  • [MAINTENANCE] Fix resolveResourceId not correctly calling job finished when drawable cloning
    failed #2367

Full Changelog: 2.15.0...2.15.1

2.15.0

30 Oct 14:27
2383221
Compare
Choose a tag to compare

Note that Session Replay has an issue in this version with replays not recording correctly. We will release a fix for this shortly.

What's Changed

  • [FEATURE] Add TimeBank in Session Replay recorder for dynamic optimisation See #2247
  • [FEATURE] Add Session Replay skipped frames count in session ended metrics. See #2256
  • [FEATURE] Add a touch privacy override. See #2334
  • [FEATURE] Add precheck conditions when registering the Session Replay feature. See #2264
  • [FEATURE] Add a privacy override for hidden views. See #2291
  • [FEATURE] Add image and textAndInput privacy overrides. See #2312
  • [IMPROVEMENT] Add a dynamic optimization configuration field in SessionReplayConfiguration. See #2259
  • [IMPROVEMENT] Use layout text to display TextView overflow correctly. See #2279
  • [IMPROVEMENT] Remove the Session Replay ButtonMapper border. See #2280
  • [IMPROVEMENT] Force single core for Session Replay. See #2324
  • [IMPROVEMENT] Add a ViewGroups Session Replay demo screen in sample app. See #2285
  • [IMPROVEMENT] Run integration tests on API 35 in the testing pyramid. See #2272
  • [IMPROVEMENT] Add MaterialCardView support in the Material Session Replay extension. See #2290
  • [IMPROVEMENT] Use an SDK source value in the Session Replay MobileSegment.source property. See #2293
  • [IMPROVEMENT] Update the Session Replay schema with a Kotlin Multiplatform source for Mobile segment. See #2297
  • [IMPROVEMENT] Improve test coverage of core unit tests. See #2294
  • [IMPROVEMENT] Improve unit test coverage for RUM, Logs and Trace features. See #2299
  • [IMPROVEMENT] Send retry information into RUM data upload requests. See #2298
  • [IMPROVEMENT] Make the DataOkHttpUploader state volatile. See #2305
  • [IMPROVEMENT] Read Session Replay system requirements synchronously with strict mode allowance. See #2307
  • [IMPROVEMENT] Override process importance for Session Replay integration tests. See #2304
  • [IMPROVEMENT] Detekt the api coverage in integration tests. See #2300
  • [IMPROVEMENT] Resolve PorterDuffColorFilter case in drawable to color mapper. See #2319
  • [IMPROVEMENT] Prevent obfuscation of Fine Grained Masking enums. See #2321
  • [IMPROVEMENT] Make sure ConsentAwareFileOrchestrator is thread safe. See #2313
  • [IMPROVEMENT] Improve RUM integration tests. See #2317
  • [IMPROVEMENT] Add a default sample rate for Session Replay. See #2323
  • [IMPROVEMENT] Remove batch metrics inner sampler to increase sample rate. See #2328
  • [IMPROVEMENT] Add missing integration test for Logs. See #2330
  • [IMPROVEMENT] Update Session Replay integration test payloads. See #2318
  • [MAINTENANCE] Update Datadog Agent to 1.41.0. See #2331
  • [MAINTENANCE] Fix the decompression in Session Replay instrumented tests for API 21. See #2341
  • [MAINTENANCE] Reactivate Session Replay instrumented test for API 21. See #2342
  • [MAINTENANCE] Fix some flaky tests. See #2281
  • [MAINTENANCE] Fix a StrictMode warning regarding I/O disk operation on the main thread. See #2284
  • [MAINTENANCE] Fix flaky feature context integration tests. See #2295
  • [MAINTENANCE] Fix SeekBarWireframeMapper flaky test. See #2308
  • [MAINTENANCE] Fix SpanEventSerializerTest flakiness. See #2311
  • [MAINTENANCE] Remove an unnecessary legacy privacy line from the sampleApplication. See #2314
  • [MAINTENANCE] Use Java 11 bytecode for public modules. See #2315
  • [MAINTENANCE] Fix RUM integration test verifyViewEventsOnSwipe. See #2326
  • [MAINTENANCE] Fix the regression for the TelemetryErrorEvent with throwable. See #2325
  • [MAINTENANCE] Fix the execution of legacy instrumentation tests in CI. See #2329

Full Changelog: 2.14.0...2.15.0

2.14.0

25 Sep 11:58
1f5ab6c
Compare
Choose a tag to compare

What's Changed

Note that this version contains a behavior change. Previously if no masking strategy was specified for Session Replay, user-input fields would be masked by default. With this release, if nothing is specified, everything will be masked - text, touches and images. In this version, Session Replay begins moving over to using fine grained masking, allowing masking levels to be set individually for text and input, images and touch, and deprecates the previous setPrivacy api.

  • [FEATURE] Add stop and start APIs for Session Replay. See #2169
  • [FEATURE] Add touch privacy fine grained masking API to Session Replay. See #2196
  • [FEATURE] Add text and input privacy fine grained masking API to Session Replay. See #2235
  • [FEATURE] Introduce the RumMonitor#addViewLoadingTime API. See #2243
  • [FEATURE] Introduce the API usage telemetry event and API. See #2258
  • [IMPROVEMENT] Enable Kotlin test fixtures support. See #2234
  • [IMPROVEMENT] Add isContainer attribute to session replay span. See #2244
  • [IMPROVEMENT] Update custom detekt CI Job. See #2118
  • [IMPROVEMENT] Randomize privacy levels to support Fine Grained Masking in E2E. See #2265
  • [IMPROVEMENT] Update AGP to 8.6.1. See #2269
  • [IMPROVEMENT] Add telemetry and logs related with RumMonitor#addViewLoadingTime API. See #2267
  • [IMPROVEMENT] Handle SSE requests. See #2270
  • [IMPROVEMENT] Do not use magic numbers in InternalLogger API. See #2271
  • [IMPROVEMENT] Optimize MD5 byte array to hex string conversion. See #2273
  • [IMPROVEMENT] CONTRIBUTING doc changes. See #2275
  • [IMPROVEMENT] Add env tag in benchmark metrics. See #2276
  • [MAINTENANCE] Make image privacy fine grained masking API public in Session Replay. See #2204
  • [MAINTENANCE] Update benchmark metrics memory reader probe interval. See #2228
  • [MAINTENANCE] Fix the flakiness in the KioskTrackingTest. See #2226
  • [MAINTENANCE] Fix placeholder dimensions. See #2248
  • [MAINTENANCE] Send fine grained masking instead of legacy privacy in config telemetry. See #2253
  • [MAINTENANCE] Ensure UploadWorker uses the SDK instance name. See #2257
  • [MAINTENANCE] Explicitly set antlr-runtime transitive dependency version. See #2261
  • [MAINTENANCE] Add the integration tests related with RumMonitor#addViewLoadingTime API. See #2268
  • [MAINTENANCE] Fix DatadogInterceptor flaky test. See #2274
  • [MAINTENANCE] Fix typos and links in Github issue templates. See #2277

Full Changelog: 2.13.1...2.14.0

2.13.1

09 Sep 07:39
8c60347
Compare
Choose a tag to compare

What's Changed

Full Changelog: 2.13.0...2.13.1

2.13.1-debug

06 Sep 08:59
b59b86c
Compare
Choose a tag to compare
2.13.1-debug Pre-release
Pre-release

A debug build with additional tools to perform introspection on the SDK's network usage.

2.13.0

04 Sep 06:21
eb6c153
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 2.12.1...2.13.0

2.13.0-debug

04 Sep 09:30
1f08228
Compare
Choose a tag to compare
2.13.0-debug Pre-release
Pre-release

A debug build with additional tools to perform introspection on the SDK's network usage.