Skip to content

Commit 04ce0dc

Browse files
authored
Merge branch 'main' into milanboers/public-request-resolver
2 parents f17822c + 468a479 commit 04ce0dc

File tree

104 files changed

+2222
-609
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

104 files changed

+2222
-609
lines changed

.github/ISSUE_TEMPLATE/bug_report_android.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: 🐞 Bug Report - Android
22
description: Tell us about something that's not working the way we (probably) intend.
3-
labels: ["Platform: Android", "Type: Bug"]
4-
type: Bug
3+
labels: ["Android", "Bug"]
54
body:
65
- type: dropdown
76
id: integration

.github/ISSUE_TEMPLATE/bug_report_java.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: 🐞 Bug Report - Java
22
description: Tell us about something that's not working the way we (probably) intend.
3-
labels: ["Platform: Java", "Type: Bug"]
4-
type: Bug
3+
labels: ["Java", "Bug"]
54
body:
65
- type: dropdown
76
id: integration

.github/ISSUE_TEMPLATE/feature_android.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: 💡 Feature Request - Android
22
description: Tell us about a problem our SDK could solve but doesn't.
3-
labels: ["Platform: Android", "Type: Feature Request"]
4-
type: Feature
3+
labels: ["Android", "Feature"]
54
body:
65
- type: textarea
76
id: problem

.github/ISSUE_TEMPLATE/feature_java.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: 💡 Feature Request - Java
22
description: Tell us about a problem our SDK could solve but doesn't.
3-
labels: ["Platform: Java", "Type: Feature Request"]
4-
type: Feature
3+
labels: ["Java", "Feature"]
54
body:
65
- type: textarea
76
id: problem

.github/ISSUE_TEMPLATE/maintainer-blank.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: Blank Issue
22
description: Blank Issue. Reserved for maintainers.
3-
labels: ["Platform: Java"]
3+
labels: ["Java"]
44
body:
55
- type: textarea
66
id: description

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
run: make preMerge
4747

4848
- name: Upload coverage to Codecov
49-
uses: codecov/codecov-action@0565863a31f2c772f9f0395002a31e3f06189574 # pin@v4
49+
uses: codecov/codecov-action@ad3126e916f78f00edff4ed0317cf185271ccc2d # pin@v4
5050
with:
5151
name: sentry-java
5252
fail_ci_if_error: false

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
4141

4242
- name: Initialize CodeQL
43-
uses: github/codeql-action/init@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # pin@v2
43+
uses: github/codeql-action/init@45775bd8235c68ba998cffa5171334d58593da47 # pin@v2
4444
with:
4545
languages: 'java'
4646

@@ -49,4 +49,4 @@ jobs:
4949
./gradlew buildForCodeQL
5050
5151
- name: Perform CodeQL Analysis
52-
uses: github/codeql-action/analyze@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # pin@v2
52+
uses: github/codeql-action/analyze@45775bd8235c68ba998cffa5171334d58593da47 # pin@v2

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
steps:
2020
- name: Get auth token
2121
id: token
22-
uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1.12.0
22+
uses: actions/create-github-app-token@3ff1caaa28b64c9cc276ce0a02e2ff584f3900c5 # v2.0.2
2323
with:
2424
app-id: ${{ vars.SENTRY_RELEASE_BOT_CLIENT_ID }}
2525
private-key: ${{ secrets.SENTRY_RELEASE_BOT_PRIVATE_KEY }}

CHANGELOG.md

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,121 @@
11
# Changelog
22

3+
## 8.10.0
4+
5+
### Features
6+
7+
- Wrap configured OpenTelemetry `ContextStorageProvider` if available ([#4359](https://github.com/getsentry/sentry-java/pull/4359))
8+
- This is only relevant if you see `java.lang.IllegalStateException: Found multiple ContextStorageProvider. Set the io.opentelemetry.context.ContextStorageProvider property to the fully qualified class name of the provider to use. Falling back to default ContextStorage. Found providers: ...`
9+
- Set `-Dio.opentelemetry.context.contextStorageProvider=io.sentry.opentelemetry.SentryContextStorageProvider` on your `java` command
10+
- Sentry will then wrap the other `ContextStorageProvider` that has been configured by loading it through SPI
11+
- If no other `ContextStorageProvider` is available or there are problems loading it, we fall back to using `SentryOtelThreadLocalStorage`
12+
13+
### Fixes
14+
15+
- Update profile chunk rate limit and client report ([#4353](https://github.com/getsentry/sentry-java/pull/4353))
16+
17+
### Dependencies
18+
19+
- Bump Native SDK from v0.8.3 to v0.8.4 ([#4343](https://github.com/getsentry/sentry-java/pull/4343))
20+
- [changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#084)
21+
- [diff](https://github.com/getsentry/sentry-native/compare/0.8.3...0.8.4)
22+
23+
## 8.9.0
24+
25+
### Features
26+
27+
- Add `SentryWrapper.wrapRunnable` to wrap `Runnable` for use with Sentry ([#4332](https://github.com/getsentry/sentry-java/pull/4332))
28+
29+
### Fixes
30+
31+
- Fix TTFD measurement when API called too early ([#4297](https://github.com/getsentry/sentry-java/pull/4297))
32+
- Tag sockets traffic originating from Sentry's HttpConnection ([#4340](https://github.com/getsentry/sentry-java/pull/4340))
33+
- This should suppress the StrictMode's `UntaggedSocketViolation`
34+
- Reduce debug logs verbosity ([#4341](https://github.com/getsentry/sentry-java/pull/4341))
35+
- Fix unregister `SystemEventsBroadcastReceiver` when entering background ([#4338](https://github.com/getsentry/sentry-java/pull/4338))
36+
- This should reduce ANRs seen with this class in the stack trace for Android 14 and above
37+
38+
### Improvements
39+
40+
- Make user interaction tracing faster and do fewer allocations ([#4347](https://github.com/getsentry/sentry-java/pull/4347))
41+
- Pre-load modules on a background thread upon SDK init ([#4348](https://github.com/getsentry/sentry-java/pull/4348))
42+
43+
## 8.8.0
44+
45+
### Features
46+
47+
- Add `CoroutineExceptionHandler` for reporting uncaught exceptions in coroutines to Sentry ([#4259](https://github.com/getsentry/sentry-java/pull/4259))
48+
- This is now part of `sentry-kotlin-extensions` and can be used together with `SentryContext` when launching a coroutine
49+
- Any exceptions thrown in a coroutine when using the handler will be captured (not rethrown!) and reported to Sentry
50+
- It's also possible to extend `CoroutineExceptionHandler` to implement custom behavior in addition to the one we provide by default
51+
52+
### Fixes
53+
54+
- Use thread context classloader when available ([#4320](https://github.com/getsentry/sentry-java/pull/4320))
55+
- This ensures correct resource loading in environments like Spring Boot where the thread context classloader is used for resource loading.
56+
- Improve low memory breadcrumb capturing ([#4325](https://github.com/getsentry/sentry-java/pull/4325))
57+
- Fix do not initialize SDK for Jetpack Compose Preview builds ([#4324](https://github.com/getsentry/sentry-java/pull/4324))
58+
- Fix Synchronize Baggage values ([#4327](https://github.com/getsentry/sentry-java/pull/4327))
59+
60+
### Improvements
61+
62+
- Make `SystemEventsBreadcrumbsIntegration` faster ([#4330](https://github.com/getsentry/sentry-java/pull/4330))
63+
64+
## 8.7.0
65+
66+
### Features
67+
68+
- UI Profiling GA
69+
70+
Continuous Profiling is now GA, named UI Profiling. To enable it you can use one of the following options. More info can be found at https://docs.sentry.io/platforms/android/profiling/.
71+
Note: Both `options.profilesSampler` and `options.profilesSampleRate` must **not** be set to enable UI Profiling.
72+
To keep the same transaction-based behaviour, without the 30 seconds limitation, you can use the `trace` lifecycle mode.
73+
74+
```xml
75+
<application>
76+
<!-- Enable UI profiling, adjust in production env. This is evaluated only once per session -->
77+
<meta-data android:name="io.sentry.traces.profiling.session-sample-rate" android:value="1.0" />
78+
<!-- Set profiling lifecycle, can be `manual` (controlled through `Sentry.startProfiler()` and `Sentry.stopProfiler()`) or `trace` (automatically starts and stop a profile whenever a sampled trace starts and finishes) -->
79+
<meta-data android:name="io.sentry.traces.profiling.lifecycle" android:value="trace" />
80+
<!-- Enable profiling on app start. The app start profile will be stopped automatically when the app start root span finishes -->
81+
<meta-data android:name="io.sentry.traces.profiling.start-on-app-start" android:value="true" />
82+
</application>
83+
```
84+
```java
85+
import io.sentry.ProfileLifecycle;
86+
import io.sentry.android.core.SentryAndroid;
87+
88+
SentryAndroid.init(context, options -> {
89+
// Enable UI profiling, adjust in production env. This is evaluated only once per session
90+
options.setProfileSessionSampleRate(1.0);
91+
// Set profiling lifecycle, can be `manual` (controlled through `Sentry.startProfiler()` and `Sentry.stopProfiler()`) or `trace` (automatically starts and stop a profile whenever a sampled trace starts and finishes)
92+
options.setProfileLifecycle(ProfileLifecycle.TRACE);
93+
// Enable profiling on app start. The app start profile will be stopped automatically when the app start root span finishes
94+
options.setStartProfilerOnAppStart(true);
95+
});
96+
```
97+
```kotlin
98+
import io.sentry.ProfileLifecycle
99+
import io.sentry.android.core.SentryAndroid
100+
101+
SentryAndroid.init(context, { options ->
102+
// Enable UI profiling, adjust in production env. This is evaluated only once per session
103+
options.profileSessionSampleRate = 1.0
104+
// Set profiling lifecycle, can be `manual` (controlled through `Sentry.startProfiler()` and `Sentry.stopProfiler()`) or `trace` (automatically starts and stop a profile whenever a sampled trace starts and finishes)
105+
options.profileLifecycle = ProfileLifecycle.TRACE
106+
// Enable profiling on app start. The app start profile will be stopped automatically when the app start root span finishes
107+
options.isStartProfilerOnAppStart = true
108+
})
109+
```
110+
111+
- Continuous Profiling - Stop when app goes in background ([#4311](https://github.com/getsentry/sentry-java/pull/4311))
112+
- Continuous Profiling - Add delayed stop ([#4293](https://github.com/getsentry/sentry-java/pull/4293))
113+
- Continuous Profiling - Out of Experimental ([#4310](https://github.com/getsentry/sentry-java/pull/4310))
114+
115+
### Fixes
116+
117+
- Compress Screenshots on a background thread ([#4295](https://github.com/getsentry/sentry-java/pull/4295))
118+
3119
## 8.6.0
4120

5121
### Behavioral Changes

buildSrc/src/main/java/Config.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,8 @@ object Config {
121121

122122
val coroutinesCore = "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1"
123123

124+
val coroutinesAndroid = "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1"
125+
124126
val fragment = "androidx.fragment:fragment-ktx:1.3.5"
125127

126128
val reactorCore = "io.projectreactor:reactor-core:3.5.3"
@@ -161,7 +163,7 @@ object Config {
161163
val apolloKotlin = "com.apollographql.apollo3:apollo-runtime:3.8.2"
162164
val apolloKotlin4 = "com.apollographql.apollo:apollo-runtime:4.1.1"
163165

164-
val sentryNativeNdk = "io.sentry:sentry-native-ndk:0.8.3"
166+
val sentryNativeNdk = "io.sentry:sentry-native-ndk:0.8.4"
165167

166168
object OpenTelemetry {
167169
val otelVersion = "1.44.1"
@@ -214,6 +216,7 @@ object Config {
214216
val leakCanaryInstrumentation = "com.squareup.leakcanary:leakcanary-android-instrumentation:2.14"
215217
val composeUiTestJunit4 = "androidx.compose.ui:ui-test-junit4:1.6.8"
216218
val okio = "com.squareup.okio:okio:1.13.0"
219+
val coroutinesTest = "org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.1"
217220
}
218221

219222
object QualityPlugins {

0 commit comments

Comments
 (0)