Releases: DataDog/dd-sdk-android
2.14.0
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
2.13.1-debug
A debug build with additional tools to perform introspection on the SDK's network usage.
2.13.0
What's Changed
- RUM-5553: Create Benchmark module to collect performance metrics by @ambushwork in #2141
- RUM-5553: Implement MetricHttpClient and RequestBodyBuilder by @ambushwork in #2142
- RUM-5550: Create benchmark sample application module by @ambushwork in #2143
- RUM-5553: Add DatadogMeter to read vital data for benchmark by @ambushwork in #2144
- Bump develop to 2.13.0 by @mariusc83 in #2152
- RUM-5550: Setup Benchmark sample app synthetics gitlab configuration by @ambushwork in #2150
- RUM-5550: Add session replay benchmark fragments by @ambushwork in #2151
- [RUM-5566] Added setSyntheticsAttribute in RumInternalProxy by @marco-saia-datadog in #2133
- RUM-5550: Add datadog config and enable SR in benchmark sample app by @ambushwork in #2156
- RUM-483 use macos runner by @xgouchet in #2154
- Remove obsolete nightly test references by @xgouchet in #2157
- Json schema update by @xgouchet in #2160
- RUM-5525 Add the integration tests for the SdkCore APIs by @mariusc83 in #2145
- Add scenario attribute in benchmark metrics by @ambushwork in #2162
- [#2163] Update link to troubleshooting documentation by @mateo-villa in #2164
- RUM-5550: Parse synthetics variables to control benchmark test scenario by @ambushwork in #2166
- Merge README external fix to develop by @mariusc83 in #2165
- Fix Benchmark baseline run bug and add unit test by @ambushwork in #2168
- Add README for benchmark module and benchmark sample application by @ambushwork in #2167
- Feature/metric benchmark by @ambushwork in #2172
- Reset developerMode status when Datadog stop by @mariusc83 in #2174
- Extract logic to pull publishing credentials into a dedicated snippet by @0xnm in #2176
- Add changelog for 2.12.0 release by @0xnm in #2179
- RUM-5750 Use NO_EXPORT_FLAG for BroadcastReceiver on API above 26 by @mariusc83 in #2170
- Remove redundant build configuration in new reliability modules by @0xnm in #2178
- Remove image property from macOS-based jobs by @0xnm in #2181
- Update OkHttp to 4.12.0 by @0xnm in #1975
- Speed up
IdGenerationStrategy
test by @0xnm in #2187 - Clean up benchmark tool and application code by @ambushwork in #2184
- RUM-5527 Add integration tests for internal sdk core by @mariusc83 in #2177
- Merge release
2.12.1
intodevelop
branch by @0xnm in #2190 - Update Gradle to 8.9 and AGP to 8.5.2 by @0xnm in #2192
- RUM-5831: Speed up generated files/licenses checks by @0xnm in #2188
- Use adb install
-g
flag only for Android API above 23 by @0xnm in #2193 - Fix integration tests pipeline for API 21 by @mariusc83 in #2197
- Update JSON schema by @jonathanmos in #2198
- Create internal module by @ambushwork in #2199
- Speed up Send sampled Spans test by @0xnm in #2201
- RUM-5526 Add the integration tests for FeatureSdkCore public API by @mariusc83 in #2200
- RUM-673: Log Timber tag by @0xnm in #2202
- Make sure user properties are immutable when setUserInfo by @mariusc83 in #2203
- Remove redundant generated models by @0xnm in #2207
- RUM-5877 run core-it integration tests in Gitlab by @mariusc83 in #2205
- Merge develop to feature/profiling by @ambushwork in #2211
- Add Datadog span event schema in benchmark module by @ambushwork in #2210
- Update PackageNameVisibility rule to exclude internal module package by @ambushwork in #2212
- Migrate NoOpImplementation from core to internal module by @ambushwork in #2213
- Add SpanEvent serializer in benchmark module by @ambushwork in #2214
- RUM-5878 Add the integration tests for FeatureScope public API by @mariusc83 in #2209
- Fix UserInfoProvider flaky test by @ambushwork in #2215
- Add SpanEvent request build and upload process in benchmark module by @ambushwork in #2217
- RUM-5754: Add profiling interface to internal module by @ambushwork in #2194
- RUM-5970 Add the remaining InternalProxy and Datadog API integration tests by @mariusc83 in #2218
- Fix Benchmark Span request issue by @ambushwork in #2219
- Add implementations of benchmark profiling api by @ambushwork in #2220
- RUM-5977 include optional exception in Upload Status by @xgouchet in #2221
- RUM-5977 create UploadSchedulerStrategy interface and default implementation by @xgouchet in #2222
- Integrate benchmark span measurements in session replay by @ambushwork in #2223
- Feature/profiling by @ambushwork in #2225
- Update
kotlinx.ast
dependency by @0xnm in #2231 - RUM-5977 add configuration to set uploadSchedulerStrategy by @xgouchet in #2224
- Fix benchmarking metrics data upload request issue by @ambushwork in #2227
- Publish benchmark module to sonatype by @ambushwork in #2230
- Prepare release 2.13.0 by @xgouchet in #2236
New Contributors
- @marco-saia-datadog made their first contribution in #2133
- @mateo-villa made their first contribution in #2164
Full Changelog: 2.12.1...2.13.0
2.13.0-debug
A debug build with additional tools to perform introspection on the SDK's network usage.
2.12.1
2.12.0
- [FEATURE] Trace: Add the
SessionEndedMetric
into sdk core. See #2090 - [FEATURE] SessionReplay: Use the datastore for Session Replay resources. See #2041
- [FEATURE] Trace: Provide 128 bits support for the trace ids in the Tracing sdk. See #2089
- [FEATURE] SessionReplay: Add api to clear all datastore data. See #2096
- [FEATURE] SessionReplay: Add
CompoundButton
mapper. See #2120 - [FEATURE] SessionReplay: Add API to configure the Image Privacy. See #2125
- [FEATURE] Trace: Introduce the
TraceContextInjection
to handle sampling in distributed traces. See #2111 - [IMPROVEMENT] Trace: Improve unit tests in Session metrics. See #2095
- [IMPROVEMENT] SessionReplay: Fix flaky test in
SeekBarWireframeMapperTest
. See #2099 - [IMPROVEMENT] Trace: Fix the Okhttp Otel parent span feature when not using RUM. See #2100
- [IMPROVEMENT] SessionReplay: Fix units for dropped nodes. See #2107
- [IMPROVEMENT] SessionReplay: Add TLVFormat DataStore persistence. See #2038
- [IMPROVEMENT] InternalMetrics: Add sampling rate to internal metrics. See #2108
- [IMPROVEMENT] SessionReplay: Fix
RumSessionEnded
metric flaky test. See #2114 - [IMPROVEMENT] SessionReplay: Use
BackpressureExecutor
for SessionReplay event processing. See #2116 - [IMPROVEMENT] SessionReplay: Improve CheckableTextViewMapper. See #2115
- [IMPROVEMENT] SessionReplay:
SwitchCompat
mapper improvement. See #2117 - [IMPROVEMENT] RUM: Fix the racing condition in the
RotatingDnsResolver
logic. See #2127 - [IMPROVEMENT] RUM: Add request id in okhttp request. See #2126
- [IMPROVEMENT] Trace: Make sure network local spans have
kind:client
tag. See #2136 - [IMPROVEMENT] Core: Increase retry delay on DNS error. See #2135
2.11.0-debug
A debug build with additional tools to perform introspection on the SDK's network usage.
2.11.0
- [FEATURE] Trace: Bundle
dd-trace-core
code into thedd-sdk-android-trace
module. See #1907 - [FEATURE] Trace: Provide the correct sampling priority for our Span events based on APM new rules. See #1913
- [FEATURE] Trace: Add the
CoreTracer
tests. See #1924 - [FEATURE] Trace: Provide core tracer logger implementation. See #1953
- [FEATURE] Trace: Provide the
bundleWithRum
capability forOtelTracer
. See #1960 - [FEATURE] Trace: Provide the
DatadogContextStorage
for OpenTelemetry. See #1970 - [FEATURE] Trace: Provide Otel bundle with logs feature. See #1979
- [FEATURE] Trace: Setup the trace end tests environment for Otel API. See #1983
- [FEATURE] Trace: Add the
SpanLink
support for Otel API implementation. See #1993 - [FEATURE] Trace: Add the Otel API feature integration tests. See #1995
- [FEATURE] Trace: Report OpenTelemetry data in the configuration telemetry. See #2006
- [FEATURE] Trace: Extract OpenTelemetry support SDK into a dedicated module. See #2021
- [FEATURE] Trace: Setup the CI and Gradle tests for the new
dd-sdk-android-trace-otel
module. See #2035 - [FEATURE] Trace: Enable desugaring for sample and single-fit apps. See #2036
- [FEATURE] Session Replay: Add support for progress bars. See #2047
- [FEATURE] Trace: Add OpenTelemetry use case into the Wear sample app. See #2068
- [FEATURE] Trace: Add OpenTelemetry use case into the
vendor-lib
sample. See #2069 - [FEATURE] Trace: Add the OkHttp Otel extensions module. See #2073
- [FEATURE] Trace:
OtelTraceProvider.Builder
: introduce the trace rate limit property. See #2086 - [BUGFIX] Session Replay: Fix time drift in
RecordedDataQueueHandler
. See #2075 - [IMPROVEMENT] Trace: Remove some unused IAST/CI Visibility classes. See #2000
- [IMPROVEMENT] Trace: Remove
moshi
dependency from trace module. See #2003 - [IMPROVEMENT] Fix some detekt issues. See #2043
- [IMPROVEMENT] Session Replay: Delegate
Drawable
copy to background thread. See #2048 - [IMPROVEMENT] Trace: Make
CoreTracer
code Java 7 compatible. See #2051 - [IMPROVEMENT] Session Replay: Improve telemetry from
RecordedDataQueueHandler
. See #2053 - [IMPROVEMENT] Global: Fix thread safety warnings. See #2056
- [IMPROVEMENT] Trace: Remove the
dd-sketches
dependency and related logic. See #2062 - [IMPROVEMENT] Trace: Fix the
jctools
Proguard rules. See #2063 - [IMPROVEMENT] Add ProGuard rules to sample app. See #2067
- [IMPROVEMENT] Session Replay: Improve
ButtonMapper
. See #2070 - [IMPROVEMENT] Trace: Remove some unused code from tracing module. See #2079
- [IMPROVEMENT] Trace: Add OpenTelemetry Proguard rules for compile-only annotations. See #2080
- [IMPROVEMENT] Trace: Fix the
CoreTracer
flaky tests. See #2081 - [IMPROVEMENT] Trace: Remove System and Environment config source in the
CoreTracer
. See #2084 - [IMPROVEMENT] Remove duplicated Proguard configuration in the sample app. See #2088
- [IMPROVEMENT] Session Replay: Granular telemetry sampling for mappers. See #2087
- [MAINTENANCE] Merge develop branch. See #1948
- [MAINTENANCE] Merge
develop
branch intofeature/otel-support
branch. See #1998 - [MAINTENANCE] Next dev iteration 2.11.0. See #2050
- [MAINTENANCE] Merge
release/2.10.0
branch intodevelop
branch. See #2054 - [MAINTENANCE] Merge
develop
branch intofeature/otel-support
branch. See #2058 - [MAINTENANCE] Merge release
2.10.1
intodevelop
branch. See #2065 - [MAINTENANCE] Merge develop branch. See #2076
- [MAINTENANCE] Merge Otel feature branch. See #2077