Skip to content

Attempt to fix kotlin 2.2 issue #4603

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions .github/workflows/system-tests-backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,15 +54,12 @@ jobs:
- sample: "sentry-samples-console"
agent: "false"
agent-auto-init: "true"
- sample: "sentry-samples-spring-boot-jakarta"
agent: "false"
agent-auto-init: "true"
- sample: "sentry-samples-spring-boot-4-webflux"
agent: "false"
agent-auto-init: "true"
- sample: "sentry-samples-spring-boot-4-opentelemetry-noagent"
agent: "false"
agent-auto-init: "true"
# - sample: "sentry-samples-spring-boot-4-opentelemetry-noagent"
# agent: "false"
# agent-auto-init: "true"
- sample: "sentry-samples-spring-boot-4-opentelemetry"
agent: "true"
agent-auto-init: "true"
Expand Down
5 changes: 4 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,14 @@ plugins {
alias(libs.plugins.kover) apply false
alias(libs.plugins.vanniktech.maven.publish) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.multiplatform) apply false
alias(libs.plugins.kotlin.jvm) apply false
alias(libs.plugins.kotlin.spring) apply false
alias(libs.plugins.buildconfig) apply false
// dokka is required by gradle-maven-publish-plugin.
alias(libs.plugins.dokka) apply false
alias(libs.plugins.dokka.javadoc) apply false
alias(libs.plugins.compose.compiler) apply false
alias(libs.plugins.kotlin.compose) apply false
alias(libs.plugins.errorprone) apply false
alias(libs.plugins.gradle.versions) apply false
alias(libs.plugins.spring.dependency.management) apply false
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ repositories {
}

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions.jvmTarget = JavaVersion.VERSION_17.toString()
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17
}
1 change: 1 addition & 0 deletions buildSrc/src/main/java/Config.kt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import java.math.BigDecimal
object Config {
val AGP = System.getenv("VERSION_AGP") ?: "8.6.0"
val kotlinStdLib = "stdlib-jdk8"
val kotlinTestJunit = "test-junit"

object BuildPlugins {
val androidGradle = "com.android.tools.build:gradle:$AGP"
Expand Down
10 changes: 7 additions & 3 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ feign = "11.6"
jacoco = "0.8.7"
jackson = "2.18.3"
jetbrainsCompose = "1.6.11"
kotlin = "1.9.24"
kotlin = "2.2.0"
kotlinSpring7 = "2.2.0"
kotlin-compatible-version = "1.6"
kotlin-compatible-version = "1.9"
ktorClient = "3.0.0"
logback = "1.2.9"
log4j2 = "2.20.0"
Expand Down Expand Up @@ -41,11 +41,15 @@ spotless = "7.0.4"
[plugins]
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-spring = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlin" }
kotlin-spring7 = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlinSpring7" }
kotlin-jvm-spring7 = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlinSpring7" }
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
buildconfig = { id = "com.github.gmazzo.buildconfig", version = "5.6.5" }
dokka = { id = "org.jetbrains.dokka", version = "2.0.0" }
dokka-javadoc = { id = "org.jetbrains.dokka-javadoc", version = "2.0.0" }
binary-compatibility-validator = { id = "org.jetbrains.kotlinx.binary-compatibility-validator", version = "0.13.0" }
compose-compiler = { id = "org.jetbrains.compose", version.ref = "jetbrainsCompose" }
errorprone = { id = "net.ltgt.errorprone", version = "3.0.1" }
gradle-versions = { id = "com.github.ben-manes.versions", version = "0.42.0" }
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
Expand Down
4 changes: 2 additions & 2 deletions sentry-android-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import org.jetbrains.kotlin.config.KotlinCompilerVersion

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.errorprone)
Expand Down Expand Up @@ -34,7 +34,7 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin { compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 }

testOptions {
animationsDisabled = true
Expand Down
8 changes: 6 additions & 2 deletions sentry-android-fragment/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import io.gitlab.arturbosch.detekt.Detekt

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand All @@ -25,7 +25,11 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin {
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

testOptions {
animationsDisabled = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import net.ltgt.gradle.errorprone.errorprone

plugins {
id("com.android.application")
kotlin("android")
alias(libs.plugins.kotlin.android)
alias(libs.plugins.errorprone)
alias(libs.plugins.gradle.versions)
alias(libs.plugins.detekt)
Expand Down Expand Up @@ -76,7 +76,7 @@ android {
}
}

kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin { compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 }

lint {
warningsAsErrors = true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ import io.gitlab.arturbosch.detekt.Detekt

plugins {
id("com.android.application")
kotlin("android")
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
}

android {
Expand Down Expand Up @@ -30,7 +31,7 @@ android {
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
}
}
kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin { compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 }
buildFeatures { compose = true }
composeOptions { kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() }
androidComponents.beforeVariants {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@ import net.ltgt.gradle.errorprone.errorprone

plugins {
id("com.android.application")
kotlin("android")
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
alias(libs.plugins.errorprone)
alias(libs.plugins.gradle.versions)
alias(libs.plugins.detekt)
Expand Down Expand Up @@ -68,7 +69,7 @@ android {
}
}

kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin { compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 }

lint {
warningsAsErrors = true
Expand Down
9 changes: 5 additions & 4 deletions sentry-android-navigation/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import io.gitlab.arturbosch.detekt.Detekt

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand All @@ -25,9 +25,10 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
kotlin {
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

testOptions {
Expand Down
4 changes: 2 additions & 2 deletions sentry-android-ndk/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import org.jetbrains.kotlin.config.KotlinCompilerVersion

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand All @@ -28,7 +28,7 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() }
kotlin { compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8 }

testOptions {
animationsDisabled = true
Expand Down
10 changes: 6 additions & 4 deletions sentry-android-replay/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand Down Expand Up @@ -37,9 +38,10 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
kotlin {
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

testOptions {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,18 +124,21 @@ internal class RootViewsSpy private constructor() : Closeable {

private val delegatingViewList: ArrayList<View> =
object : ArrayList<View>() {
@Suppress("NewApi")
override fun addAll(elements: Collection<View>): Boolean {
listeners.forEach { listener ->
elements.forEach { element -> listener.onRootViewsChanged(element, true) }
}
return super.addAll(elements)
}

@Suppress("NewApi")
override fun add(element: View): Boolean {
listeners.forEach { it.onRootViewsChanged(element, true) }
return super.add(element)
}

@Suppress("NewApi")
override fun removeAt(index: Int): View {
val removedView = super.removeAt(index)
listeners.forEach { it.onRootViewsChanged(removedView, false) }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@ internal interface CaptureStrategy {
)
}

@Suppress("NewApi")
private fun buildReplay(
options: SentryOptions,
video: File,
Expand Down Expand Up @@ -256,6 +257,7 @@ internal interface CaptureStrategy {
scopes?.captureReplay(replay, hint.apply { replayRecording = recording })
}

@Suppress("NewApi")
fun setSegmentId(segmentId: Int) {
replay.segmentId = segmentId
recording.payload?.forEach {
Expand Down
9 changes: 5 additions & 4 deletions sentry-android-sqlite/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import org.jetbrains.kotlin.config.KotlinCompilerVersion

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand All @@ -26,9 +26,10 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
kotlin {
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

testOptions {
Expand Down
9 changes: 5 additions & 4 deletions sentry-android-timber/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import org.jetbrains.kotlin.config.KotlinCompilerVersion

plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
jacoco
alias(libs.plugins.jacoco.android)
alias(libs.plugins.gradle.versions)
Expand Down Expand Up @@ -33,9 +33,10 @@ android {
getByName("release") { consumerProguardFiles("proguard-rules.pro") }
}

kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
kotlin {
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

testOptions {
Expand Down
2 changes: 1 addition & 1 deletion sentry-android/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
plugins {
id("com.android.library")
kotlin("android")
alias(libs.plugins.kotlin.android)
alias(libs.plugins.gradle.versions)
}

Expand Down
7 changes: 4 additions & 3 deletions sentry-apache-http-client-5/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,16 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
`java-library`
id("io.sentry.javadoc")
kotlin("jvm")
alias(libs.plugins.kotlin.jvm)
jacoco
alias(libs.plugins.errorprone)
alias(libs.plugins.gradle.versions)
}

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions.jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

dependencies {
Expand Down
7 changes: 4 additions & 3 deletions sentry-apollo-3/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,17 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
`java-library`
id("io.sentry.javadoc")
kotlin("jvm")
alias(libs.plugins.kotlin.jvm)
jacoco
alias(libs.plugins.errorprone)
alias(libs.plugins.gradle.versions)
alias(libs.plugins.buildconfig)
}

tasks.withType<KotlinCompile>().configureEach {
kotlinOptions.jvmTarget = JavaVersion.VERSION_1_8.toString()
kotlinOptions.languageVersion = libs.versions.kotlin.compatible.version.get()
compilerOptions.jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_1_8
compilerOptions.languageVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
compilerOptions.apiVersion = org.jetbrains.kotlin.gradle.dsl.KotlinVersion.KOTLIN_1_9
}

dependencies {
Expand Down
1 change: 1 addition & 0 deletions sentry-apollo-4/api/sentry-apollo-4.api
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ public final class io/sentry/apollo4/SentryApollo4HttpInterceptor : com/apollogr
public fun <init> (Lio/sentry/IScopes;Lio/sentry/apollo4/SentryApollo4HttpInterceptor$BeforeSpanCallback;Z)V
public fun <init> (Lio/sentry/IScopes;Lio/sentry/apollo4/SentryApollo4HttpInterceptor$BeforeSpanCallback;ZLjava/util/List;)V
public synthetic fun <init> (Lio/sentry/IScopes;Lio/sentry/apollo4/SentryApollo4HttpInterceptor$BeforeSpanCallback;ZLjava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun dispose ()V
public fun intercept (Lcom/apollographql/apollo/api/http/HttpRequest;Lcom/apollographql/apollo/network/http/HttpInterceptorChain;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
}

Expand Down
Loading
Loading