You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+14Lines changed: 14 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,17 @@
1
+
# 2.0.0-beta3 / 2023-07-26
2
+
3
+
This is a beta release of SDK v2. Compared to SDK v1 it contains breaking changes related to the SDK setup and APIs. See the [migration guide](https://github.com/DataDog/dd-sdk-android/blob/5c9feb900856a6d7b3623820dade1eaead1498b9/CHANGELOG.md) for details.
4
+
5
+
Changes in comparison with `2.0.0-beta2`:
6
+
7
+
*[IMPROVEMENT] RUM: Remove tracking of view loading time and fix unit tests. See [#1545](https://github.com/DataDog/dd-sdk-android/pull/1545)
8
+
*[IMPROVEMENT] Don't report OkHttp throwables to telemetry. See [#1548](https://github.com/DataDog/dd-sdk-android/pull/1548)
9
+
*[IMPROVEMENT] Use `implementation` dependency for features in integrations modules. See [#1552](https://github.com/DataDog/dd-sdk-android/pull/1552)
10
+
*[IMPROVEMENT] Remove `dd-sdk-android-ktx` module. See [#1555](https://github.com/DataDog/dd-sdk-android/pull/1555)
11
+
*[BUGFIX] RUM: Fix memory leak in `JankStats` usage. See [#1553](https://github.com/DataDog/dd-sdk-android/pull/1553)
12
+
*[DOCS] Remove redundant docs. See [#1540](https://github.com/DataDog/dd-sdk-android/pull/1540)
13
+
*[DOCS] Update documentation for SDK v2. See [#1549](https://github.com/DataDog/dd-sdk-android/pull/1549)
14
+
1
15
# 2.0.0-beta2 / 2023-07-17
2
16
3
17
This is a beta release of SDK v2. Compared to SDK v1 it contains breaking changes related to the SDK setup and APIs. See the [migration guide](https://github.com/DataDog/dd-sdk-android/blob/8d1f9abb101039abcd44ffed2823655c33e5129f/MIGRATION.MD) for details.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+23-16Lines changed: 23 additions & 16 deletions
Original file line number
Diff line number
Diff line change
@@ -21,16 +21,25 @@ In addition, to be able to run the static analysis tools locally, you should run
21
21
22
22
This project hosts the following modules:
23
23
24
-
-`dd-sdk-android`: the main library implementing all Datadog features (Logs, Traces, RUM, Crash reports);
25
-
-`dd-sdk-android-ktx`: a set of Kotlin extensions to make the `dd-sdk-android` library more Kotlin friendly;
26
-
-`dd-sdk-android-ndk`: a Plugin to allow tracking NDK information;
27
-
-`dd-sdk-android-glide`: a lightweight library providing a bridge integration between `dd-sdk-android` and [Glide](https://bumptech.github.io/glide/);
28
-
-`dd-sdk-android-timber`: a lightweight library providing a bridge integration between `dd-sdk-android` and [Timber](https://github.com/JakeWharton/timber);
24
+
-`dd-sdk-android-core`: the main library implementing the core functionality of SDK (storage and upload of data, core APIs);
25
+
-`features/***`: a set of libraries implementing Datadog products: Logs, RUM, Traces, etc.
26
+
-`integrations/dd-sdk-android-coil`: a lightweight library providing a bridge integration between Datadog SDK and [Coil](https://coil-kt.github.io/coil/);
27
+
-`integrations/dd-sdk-android-compose`: a lightweight library providing a bridge integration between Datadog SDK and [Jetpack Compose](https://developer.android.com/jetpack/compose);
28
+
-`integrations/dd-sdk-android-fresco`: a lightweight library providing a bridge integration between Datadog SDK and [Fresco](https://frescolib.org/);
29
+
-`integrations/dd-sdk-android-okhttp`: a lightweight library providing an instrumentation for [OkHttp](https://square.github.io/okhttp/);
30
+
-`integrations/dd-sdk-android-rx`: a lightweight library providing a bridge integration between Datadog SDK and [RxJava](https://github.com/ReactiveX/RxJava);
31
+
-`integrations/dd-sdk-android-sqldelight`: a lightweight library providing a bridge integration between Datadog SDK and [SQLDelight](https://cashapp.github.io/sqldelight/);
32
+
-`integrations/dd-sdk-android-tv`: a lightweight library providing extensions for [Android TV](https://www.android.com/tv/)
33
+
-`integrations/dd-sdk-android-ktx`: a set of Kotlin extensions to make the Datadog SDK more Kotlin friendly;
34
+
-`integrations/dd-sdk-android-glide`: a lightweight library providing a bridge integration between Datadog SDK and [Glide](https://bumptech.github.io/glide/);
35
+
-`integrations/dd-sdk-android-timber`: a lightweight library providing a bridge integration between Datadog SDK and [Timber](https://github.com/JakeWharton/timber);
29
36
-`instrumented/integration`: a test module with integration tests using Espresso;
37
+
-`instrumented/nightly-tests`: a test module with E2E tests using Espresso;
30
38
-`tools/detekt`: a few custom [Detekt](https://github.com/arturbosch/detekt) static analysis rules;
39
+
-`tools/lint`: a custom [Lint](https://developer.android.com/studio/write/lint) static analysis rule;
31
40
-`tools/noopfactory`: an annotation processor generating no-op implementation of interfaces;
32
41
-`tools/unit`: a utility library with code to help writing unit tests;
33
-
-`sample/***`: a few sample application showcasing how to use the library features in production code;
42
+
-`sample/***`: a few sample applications showcasing how to use the library features in production code;
34
43
35
44
### Building the SDK
36
45
@@ -106,7 +115,7 @@ the bug are best.
106
115
## Have a patch?
107
116
108
117
We welcome code contributions to the library, which you can
109
-
[submit as a pull request](https://github.com/DataDog/dd-sdk-android/pull/new/master).
118
+
[submit as a pull request](https://github.com/DataDog/dd-sdk-android/pull/new/develop).
110
119
Before you submit a PR, make sure that you first create an Issue to explain the
111
120
bug or the feature your patch covers, and make sure another Issue or PR doesn't
112
121
already exist.
@@ -116,10 +125,8 @@ To create a pull request:
116
125
1.**Fork the repository** from https://github.com/DataDog/dd-sdk-android ;
117
126
2.**Make any changes** for your patch;
118
127
3.**Write tests** that demonstrate how the feature works or how the bug is fixed;
119
-
4.**Update any documentation** such as `docs/GettingStarted.md`, especially for
120
-
new features;
121
-
5.**Submit the pull request** from your fork back to this
4.**Update any documentation**, especially for new features. It can be found either in the `docs` folder of this repository, or in [documentation repository](https://github.com/DataDog/documentation);
129
+
5.**Submit the pull request** from your fork back to this [repository](https://github.com/DataDog/dd-sdk-android).
123
130
124
131
125
132
The pull request will be run through our CI pipeline, and a project member will
@@ -143,7 +150,7 @@ any change you introduce are still compatible with Java. If you want to add
143
150
Kotlin specific features (DSL, lambdas, …), make sure there is a way to get the
144
151
same feature from a Java source code.
145
152
146
-
### Code qualituy
153
+
### Code quality
147
154
148
155
Our code uses [Detekt](https://detekt.dev/) static analysis with a shared configuration, slightly
149
156
stricter than the default one. A Detekt check is ran on every on every PR to ensure that all new code
@@ -191,7 +198,7 @@ class Foo : Observable(), Runnable {
191
198
```
192
199
193
200
There is also a command that you can use to automatically format the code following the
194
-
required styling rules (require ktlint installed on your machine):
201
+
required styling rules (require `ktlint` installed on your machine):
Copy file name to clipboardExpand all lines: MIGRATION.MD
+22Lines changed: 22 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -228,6 +228,28 @@ OkHttp instrumentation now supports the case when Datadog SDK is initialized aft
228
228
Also, both `com.datadog.android.okhttp.DatadogInterceptor` and `com.datadog.android.okhttp.trace.TracingInterceptor` improve the integration with remote configuration, allowing you to control sampling dynamically.
229
229
In order to do that, you need to provide your own implementation of the `com.datadog.android.core.sampling.Sampler` interface in the `com.datadog.android.okhttp.DatadogInterceptor`/`com.datadog.android.okhttp.trace.TracingInterceptor` constructor. It is queried for each request to make the sampling decision.
230
230
231
+
### `dd-sdk-android-ktx` module removal
232
+
233
+
In order to provide the better granularity for the Datadog SDK libraries used, `dd-sdk-android-ktx` module which was containing extension methods for both RUM and Trace features is removed and the code was re-arranged between the other modules:
Previously, the Datadog SDK implemented a singleton and only one SDK instance could exist in the application process. This created obstacles for use-cases like the usage of the SDK by 3rd party libraries.
0 commit comments