Skip to content

Commit a77d8bd

Browse files
committed
Rework Kotlin coroutines instrumentation around coroutine context
As an added benefit, this approach does not require field injection
1 parent 13eba48 commit a77d8bd

File tree

21 files changed

+269
-954
lines changed

21 files changed

+269
-954
lines changed

dd-java-agent/instrumentation/kotlin-coroutines/build.gradle

+37
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,42 @@ plugins {
22
id 'java-test-fixtures'
33
}
44

5+
muzzle {
6+
pass {
7+
group = 'org.jetbrains.kotlin'
8+
module = 'kotlin-stdlib'
9+
versions = "[1.3.0,)"
10+
extraDependency "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.0"
11+
}
12+
pass {
13+
group = 'org.jetbrains.kotlinx'
14+
module = 'kotlinx-coroutines-core'
15+
versions = "[1.3.0,)"
16+
}
17+
pass {
18+
group = 'org.jetbrains.kotlinx'
19+
module = 'kotlinx-coroutines-core-jvm'
20+
versions = "[1.5.0,)"
21+
}
22+
}
23+
524
apply from: "$rootDir/gradle/java.gradle"
625
apply from: "$rootDir/gradle/test-with-kotlin.gradle"
726

27+
addTestSuite('latestDepTest')
28+
829
tasks.named("compileTestFixturesGroovy").configure {
930
classpath += files(compileTestFixturesKotlin.destinationDirectory)
1031
}
1132

33+
tasks.named("compileTestGroovy").configure {
34+
classpath += files(compileTestKotlin.destinationDirectory)
35+
}
36+
37+
tasks.named("compileLatestDepTestGroovy").configure {
38+
classpath += files(compileLatestDepTestKotlin.destinationDirectory)
39+
}
40+
1241
dependencies {
1342
api project(':dd-java-agent:instrumentation:java-concurrent')
1443
compileOnly libs.kotlin
@@ -20,4 +49,12 @@ dependencies {
2049
testFixturesApi project(':dd-java-agent:instrumentation:trace-annotation')
2150
testFixturesApi project(':dd-java-agent:testing')
2251
testFixturesApi 'com.github.spotbugs:spotbugs-annotations:4.2.0'
52+
53+
testImplementation libs.kotlin
54+
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.0"
55+
testImplementation testFixtures(project(':dd-java-agent:instrumentation:kotlin-coroutines'))
56+
57+
latestDepTestImplementation libs.kotlin
58+
latestDepTestImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.+"
59+
latestDepTestImplementation testFixtures(project(':dd-java-agent:instrumentation:kotlin-coroutines'))
2360
}

dd-java-agent/instrumentation/kotlin-coroutines/coroutines-1.3/build.gradle

-40
This file was deleted.

dd-java-agent/instrumentation/kotlin-coroutines/coroutines-1.3/gradle.lockfile

-178
This file was deleted.

dd-java-agent/instrumentation/kotlin-coroutines/coroutines-1.3/src/main/java/datadog/trace/instrumentation/kotlin/coroutines/KotlinCoroutines13Instrumentation.java

-63
This file was deleted.

dd-java-agent/instrumentation/kotlin-coroutines/coroutines-1.5/build.gradle

-40
This file was deleted.

0 commit comments

Comments
 (0)