Skip to content

Commit 0b78c36

Browse files
adinauermaciejwalkowiaklbloder
authored
Support newer versions of Spring and Spring Boot (#2289)
Co-authored-by: Maciej Walkowiak <[email protected]> Co-authored-by: Lukas Bloder <[email protected]>
1 parent 4e0ea93 commit 0b78c36

File tree

300 files changed

+8612
-719
lines changed

Some content is hidden

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

300 files changed

+8612
-719
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
# TODO: windows-latest
1818
os: [ubuntu-latest, macos-latest]
1919
# Zulu Community distribution of OpenJDK
20-
java: ['11']
20+
java: ['17']
2121

2222
steps:
2323
- name: Git checkout
@@ -27,7 +27,7 @@ jobs:
2727
uses: actions/setup-java@v2
2828
with:
2929
java-version: ${{ matrix.java }}
30-
distribution: 'adopt'
30+
distribution: 'temurin'
3131

3232
- name: Cache Gradle packages
3333
uses: actions/cache@v2

.github/workflows/format-code.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ jobs:
1010
- name: Checkout
1111
uses: actions/checkout@v2
1212

13-
- name: set up JDK 11
13+
- name: set up JDK 17
1414
uses: actions/setup-java@v2
1515
with:
16-
distribution: 'adopt'
17-
java-version: '11'
16+
distribution: 'temurin'
17+
java-version: '17'
1818

1919
- name: Cache Gradle packages
2020
uses: actions/cache@v2

.github/workflows/generate-javadocs.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ jobs:
1010
steps:
1111
- name: Checkout 🛎️
1212
uses: actions/checkout@v2
13-
- name: set up JDK 11
13+
- name: set up JDK 17
1414
uses: actions/setup-java@v2
1515
with:
16-
distribution: 'adopt'
17-
java-version: '11'
16+
distribution: 'temurin'
17+
java-version: '17'
1818

1919
- name: Cache Gradle packages
2020
uses: actions/cache@v2

.github/workflows/integration-tests-benchmarks.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ jobs:
2020
- name: Git checkout
2121
uses: actions/checkout@v2
2222

23-
- name: 'Set up Java: 11'
23+
- name: 'Set up Java: 17'
2424
uses: actions/setup-java@v2
2525
with:
26-
java-version: '11'
27-
distribution: 'adopt'
26+
java-version: '17'
27+
distribution: 'temurin'
2828

2929
# Clean, build and release a test apk
3030
- name: Make assembleBenchmarks
@@ -57,11 +57,11 @@ jobs:
5757
- name: Git checkout
5858
uses: actions/checkout@v2
5959

60-
- name: 'Set up Java: 11'
60+
- name: 'Set up Java: 17'
6161
uses: actions/setup-java@v2
6262
with:
63-
java-version: '11'
64-
distribution: 'adopt'
63+
java-version: '17'
64+
distribution: 'temurin'
6565

6666
- uses: actions/cache@v3
6767
id: app-plain-cache

.github/workflows/integration-tests-ui.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ jobs:
1515
- name: Git checkout
1616
uses: actions/checkout@v2
1717

18-
- name: 'Set up Java: 11'
18+
- name: 'Set up Java: 17'
1919
uses: actions/setup-java@v2
2020
with:
21-
java-version: '11'
22-
distribution: 'adopt'
21+
java-version: '17'
22+
distribution: 'temurin'
2323

2424
# Clean, build and release a test apk
2525
- name: Make assembleUiTests

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,5 @@ bin/
1717
distributions/
1818
/Sentry/A1F16C4F5D23B2A1D281EE471D6F836BDEA23CB4/
1919
*.vscode/
20+
sentry-spring-boot-starter-jakarta/src/main/resources/META-INF/spring.factories
21+
sentry-samples/sentry-samples-spring-boot-jakarta/spy.log

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
- Add support for using Encoder with logback.SentryAppender ([#2246](https://github.com/getsentry/sentry-java/pull/2246))
1414
- Add captureProfile method to hub and client ([#2290](https://github.com/getsentry/sentry-java/pull/2290))
15+
- Support Spring 6 and Spring Boot 3 ([#2289](https://github.com/getsentry/sentry-java/pull/2289))
1516

1617
## 6.5.0
1718

build.gradle.kts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,13 +55,17 @@ apiValidation {
5555
"sentry-samples-openfeign",
5656
"sentry-samples-servlet",
5757
"sentry-samples-spring",
58+
"sentry-samples-spring-jakarta",
59+
"sentry-spring-jakarta",
60+
"sentry-spring-boot-starter-jakarta",
5861
"sentry-samples-spring-boot",
62+
"sentry-samples-spring-boot-jakarta",
5963
"sentry-samples-spring-boot-webflux",
6064
"sentry-samples-netflix-dgs",
6165
"sentry-uitest-android",
6266
"sentry-uitest-android-benchmark",
6367
"test-app-plain",
64-
"test-app-sentry",
68+
"test-app-sentry"
6569
)
6670
)
6771
}
@@ -155,12 +159,13 @@ spotless {
155159
target("**/*.java")
156160
removeUnusedImports()
157161
googleJavaFormat()
158-
targetExclude("**/generated/**", "**/vendor/**")
162+
targetExclude("**/generated/**", "**/vendor/**", "sentry-spring-jakarta/**", "sentry-spring-boot-starter-jakarta/**")
159163
}
160164

161165
kotlin {
162166
target("**/*.kt")
163167
ktlint()
168+
targetExclude("sentry-spring-jakarta/**", "sentry-spring-boot-starter-jakarta/**")
164169
}
165170
kotlinGradle {
166171
target("**/*.kts")

buildSrc/src/main/java/Config.kt

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ object Config {
55
val kotlinStdLib = "stdlib-jdk8"
66

77
val springBootVersion = "2.7.4"
8+
val springBoot3Version = "3.0.0-M5"
89
val kotlinCompatibleLanguageVersion = "1.4"
910

1011
val composeVersion = "1.1.1"
@@ -74,6 +75,14 @@ object Config {
7475
val springBootStarterSecurity = "org.springframework.boot:spring-boot-starter-security:$springBootVersion"
7576
val springBootStarterJdbc = "org.springframework.boot:spring-boot-starter-jdbc:$springBootVersion"
7677

78+
val springBoot3Starter = "org.springframework.boot:spring-boot-starter:$springBoot3Version"
79+
val springBoot3StarterTest = "org.springframework.boot:spring-boot-starter-test:$springBoot3Version"
80+
val springBoot3StarterWeb = "org.springframework.boot:spring-boot-starter-web:$springBoot3Version"
81+
val springBoot3StarterWebflux = "org.springframework.boot:spring-boot-starter-webflux:$springBoot3Version"
82+
val springBoot3StarterAop = "org.springframework.boot:spring-boot-starter-aop:$springBoot3Version"
83+
val springBoot3StarterSecurity = "org.springframework.boot:spring-boot-starter-security:$springBoot3Version"
84+
val springBoot3StarterJdbc = "org.springframework.boot:spring-boot-starter-jdbc:$springBoot3Version"
85+
7786
val springWeb = "org.springframework:spring-webmvc"
7887
val springWebflux = "org.springframework:spring-webflux"
7988
val springSecurityWeb = "org.springframework.security:spring-security-web"
@@ -113,6 +122,7 @@ object Config {
113122

114123
private val navigationVersion = "2.4.2"
115124
val navigationRuntime = "androidx.navigation:navigation-runtime:$navigationVersion"
125+
116126
// compose deps
117127
val composeNavigation = "androidx.navigation:navigation-compose:$navigationVersion"
118128
val composeActivity = "androidx.activity:activity-compose:1.4.0"
@@ -130,6 +140,7 @@ object Config {
130140

131141
object TestLibs {
132142
private val androidxTestVersion = "1.4.0"
143+
133144
// todo This beta version is needed to run ui tests on Android 13.
134145
// It will be replaced by androidxTestVersion when 1.5.0 will be out.
135146
private val androidxTestVersionBeta = "1.5.0-beta01"
@@ -147,8 +158,8 @@ object Config {
147158
val androidxJunit = "androidx.test.ext:junit:1.1.3"
148159
val androidxCoreKtx = "androidx.core:core-ktx:1.7.0"
149160
val robolectric = "org.robolectric:robolectric:4.7.3"
150-
val mockitoKotlin = "com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0"
151-
val mockitoInline = "org.mockito:mockito-inline:4.3.1"
161+
val mockitoKotlin = "org.mockito.kotlin:mockito-kotlin:4.0.0"
162+
val mockitoInline = "org.mockito:mockito-inline:4.8.0"
152163
val awaitility = "org.awaitility:awaitility-kotlin:4.1.1"
153164
val mockWebserver = "com.squareup.okhttp3:mockwebserver:${Libs.okHttpVersion}"
154165
val mockWebserver4 = "com.squareup.okhttp3:mockwebserver:4.9.3"
@@ -163,9 +174,9 @@ object Config {
163174
val minimumCoverage = BigDecimal.valueOf(0.6)
164175
}
165176
val spotless = "com.diffplug.spotless"
166-
val spotlessVersion = "6.2.1"
177+
val spotlessVersion = "6.11.0"
167178
val errorProne = "net.ltgt.errorprone"
168-
val errorpronePlugin = "net.ltgt.gradle:gradle-errorprone-plugin:2.0.1"
179+
val errorpronePlugin = "net.ltgt.gradle:gradle-errorprone-plugin:3.0.1"
169180
val gradleVersionsPlugin = "com.github.ben-manes:gradle-versions-plugin:0.42.0"
170181
val gradleVersions = "com.github.ben-manes.versions"
171182
val detekt = "io.gitlab.arturbosch.detekt"
@@ -185,6 +196,7 @@ object Config {
185196
val SENTRY_LOG4J2_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.log4j2"
186197
val SENTRY_SPRING_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.spring"
187198
val SENTRY_SPRING_BOOT_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.spring-boot"
199+
val SENTRY_SPRING_BOOT_JAKARTA_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.spring-boot.jakarta"
188200
val group = "io.sentry"
189201
val description = "SDK for sentry.io"
190202
val versionNameProp = "versionName"

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Daemon’s heap size
2-
org.gradle.jvmargs=-Xmx4g -XX:MaxPermSize=512m -XX:MaxMetaspaceSize=1536m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:+UseParallelGC
2+
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1536m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:+UseParallelGC
33

44
org.gradle.parallel=true
55

0 commit comments

Comments
 (0)