Skip to content

Commit e6b468d

Browse files
Merge branch 'master' into sezen.leblay/apm-metrics-tag
2 parents c4bff6f + a56894b commit e6b468d

File tree

877 files changed

+7960
-3939
lines changed

Some content is hidden

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

877 files changed

+7960
-3939
lines changed

.github/CODEOWNERS

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646

4747
# @DataDog/asm-java (AppSec/IAST)
4848
/buildSrc/call-site-instrumentation-plugin/ @DataDog/asm-java
49+
/dd-java-agent/agent-aiguard/ @DataDog/asm-java
4950
/dd-java-agent/agent-iast/ @DataDog/asm-java
5051
/dd-java-agent/appsec/appsec-test-fixtures/ @DataDog/asm-java
5152
/dd-java-agent/instrumentation/*iast* @DataDog/asm-java
@@ -58,6 +59,7 @@
5859
/dd-smoke-tests/spring-security/ @DataDog/asm-java
5960
/dd-java-agent/instrumentation/commons-fileupload/ @DataDog/asm-java
6061
/dd-java-agent/instrumentation/spring/spring-security/ @DataDog/asm-java
62+
/dd-trace-api/src/main/java/datadog/trace/api/aiguard/ @DataDog/asm-java
6163
/dd-trace-api/src/main/java/datadog/trace/api/EventTracker.java @DataDog/asm-java
6264
/internal-api/src/main/java/datadog/trace/api/gateway/ @DataDog/asm-java
6365
**/appsec/ @DataDog/asm-java
@@ -117,7 +119,7 @@
117119
/dd-java-agent/agent-profiling/ @DataDog/profiling-java
118120
/dd-java-agent/agent-crashtracking/ @DataDog/profiling-java
119121
/dd-java-agent/instrumentation/exception-profiling/ @DataDog/profiling-java
120-
/dd-java-agent/instrumentation/java-directbytebuffer/ @DataDog/profiling-java
122+
/dd-java-agent/instrumentation/java/java-nio-1.8/ @DataDog/profiling-java
121123
/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
122124
/dd-java-agent/agent-bootstrap/src/main/java11/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
123125
/dd-trace-api/src/main/java/datadog/trace/api/profiling @DataDog/profiling-java

.github/workflows/add-release-to-cloudfoundry.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
run: |
4444
echo "${{ steps.get-release-version.outputs.VERSION }}: ${{ steps.get-release-url.outputs.URL }}" >> index.yml
4545
- name: Commit and push changes
46-
uses: planetscale/ghcommit-action@322be9669498a4be9ce66efc1169f8f43f6bd883 # v0.2.17
46+
uses: planetscale/ghcommit-action@f24050e41f8694750427d111b52f4ef9ca81a32d # v0.2.18
4747
with:
4848
commit_message: "chore: Add version ${{ steps.get-release-version.outputs.VERSION }} to Cloud Foundry"
4949
repo: ${{ github.repository }}

.github/workflows/analyze-changes.yaml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,8 @@ jobs:
2323
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
2424
with:
2525
submodules: 'recursive'
26-
2726
- name: Cache Gradle dependencies
28-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
27+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
2928
with:
3029
path: |
3130
~/.gradle/caches
@@ -35,12 +34,14 @@ jobs:
3534
${{ runner.os }}-gradle-
3635
3736
- name: Initialize CodeQL
38-
uses: github/codeql-action/init@192325c86100d080feab897ff886c34abd4c83a3 # v3.29.5
37+
uses: github/codeql-action/init@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.29.5
3938
with:
4039
languages: 'java'
4140
build-mode: 'manual'
4241

4342
- name: Build dd-trace-java for creating the CodeQL database
43+
env:
44+
ORG_GRADLE_PROJECT_akkaRepositoryToken: ${{ secrets.AKKA_REPO_TOKEN }}
4445
run: |
4546
GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx3G -Xms2G'" \
4647
JAVA_HOME=$JAVA_HOME_8_X64 \
@@ -52,7 +53,7 @@ jobs:
5253
--build-cache --parallel --stacktrace --no-daemon --max-workers=4
5354
5455
- name: Perform CodeQL Analysis and upload results to GitHub Security tab
55-
uses: github/codeql-action/analyze@192325c86100d080feab897ff886c34abd4c83a3 # v3.29.5
56+
uses: github/codeql-action/analyze@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.29.5
5657

5758
trivy:
5859
name: Analyze changes with Trivy
@@ -69,7 +70,7 @@ jobs:
6970
submodules: 'recursive'
7071

7172
- name: Cache Gradle dependencies
72-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
73+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
7374
with:
7475
path: |
7576
~/.gradle/caches
@@ -85,6 +86,8 @@ jobs:
8586
rm -rf "${MVN_LOCAL_REPO}/com/datadoghq"
8687
8788
- name: Build and publish artifacts locally
89+
env:
90+
ORG_GRADLE_PROJECT_akkaRepositoryToken: ${{ secrets.AKKA_REPO_TOKEN }}
8891
run: |
8992
GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx3G -Xms2G'" \
9093
JAVA_HOME=$JAVA_HOME_8_X64 \
@@ -115,7 +118,7 @@ jobs:
115118
TRIVY_JAVA_DB_REPOSITORY: ghcr.io/aquasecurity/trivy-java-db,public.ecr.aws/aquasecurity/trivy-java-db
116119

117120
- name: Upload Trivy scan results to GitHub Security tab
118-
uses: github/codeql-action/upload-sarif@192325c86100d080feab897ff886c34abd4c83a3 # v3.29.5
121+
uses: github/codeql-action/upload-sarif@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.29.5
119122
if: always()
120123
with:
121124
sarif_file: 'trivy-results.sarif'

.github/workflows/prune-old-pull-requests.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
pull-requests: write
1414
steps:
1515
- name: Prune old pull requests
16-
uses: actions/stale@3a9db7e6a41a89f618792c92c0e97cc736e1b13f # v10.0.0
16+
uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
1717
with:
1818
days-before-stale: -1 # Disable general stale bot
1919
days-before-pr-stale: 90 # Only enable stale bot for PRs with no activity for 90 days

.github/workflows/run-system-tests.yaml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
fetch-depth: 0
3030

3131
- name: Cache Gradle dependencies
32-
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
32+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
3333
with:
3434
path: |
3535
~/.gradle/caches
@@ -39,6 +39,8 @@ jobs:
3939
${{ runner.os }}-gradle-
4040
4141
- name: Build dd-trace-java
42+
env:
43+
ORG_GRADLE_PROJECT_akkaRepositoryToken: ${{ secrets.AKKA_REPO_TOKEN }}
4244
run: |
4345
GRADLE_OPTS="-Xms2g -Xmx4g -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParallelGC" \
4446
JAVA_HOME=$JAVA_HOME_8_X64 \
@@ -76,7 +78,7 @@ jobs:
7678
check:
7779
name: Check system tests success
7880
runs-on: ubuntu-latest
79-
needs:
80-
- main
81+
if: ${{ always() }}
82+
needs: [build, main]
8183
steps:
8284
- run: exit 0

.github/workflows/update-gradle-dependencies.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ jobs:
3434
git push -u origin $BRANCH_NAME --force
3535
- name: Update Gradle dependencies
3636
env:
37-
AKKA_REPO_TOKEN: ${{ secrets.AKKA_REPO_TOKEN }}
37+
ORG_GRADLE_PROJECT_akkaRepositoryToken: ${{ secrets.AKKA_REPO_TOKEN }}
3838
run: |
39-
GRADLE_OPTS="-DakkaRepositoryToken=$AKKA_REPO_TOKEN -Dorg.gradle.jvmargs='-Xmx3G -Xms2G'" \
39+
GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx3G -Xms2G'" \
4040
JAVA_HOME=$JAVA_HOME_8_X64 \
4141
JAVA_8_HOME=$JAVA_HOME_8_X64 \
4242
JAVA_11_HOME=$JAVA_HOME_11_X64 \

.gitlab-ci.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,7 @@ build:
256256
DEPENDENCY_CACHE_POLICY: pull
257257
script:
258258
- if [ $CI_PIPELINE_SOURCE == "schedule" ] ; then ./gradlew resolveAndLockAll --write-locks $GRADLE_ARGS; fi
259+
- ./gradlew --version
259260
- ./gradlew clean :dd-java-agent:shadowJar :dd-trace-api:jar :dd-trace-ot:shadowJar -PskipTests $GRADLE_ARGS
260261
- echo UPSTREAM_TRACER_VERSION=$(java -jar workspace/dd-java-agent/build/libs/*.jar) >> upstream.env
261262
- echo "BUILD_JOB_NAME=$CI_JOB_NAME" >> build.env
@@ -296,6 +297,7 @@ build_tests:
296297

297298
script:
298299
- *gitlab_base_ref_params
300+
- ./gradlew --version
299301
- ./gradlew clean $GRADLE_TARGET $GRADLE_PARAMS -PskipTests $GRADLE_ARGS
300302

301303
populate_dep_cache:
@@ -362,7 +364,7 @@ spotless:
362364
stage: tests
363365
needs: []
364366
script:
365-
- export JAVA_HOME=$JAVA_11_HOME
367+
- ./gradlew --version
366368
- ./gradlew spotlessCheck $GRADLE_ARGS
367369

368370
test_published_artifacts:
@@ -381,6 +383,7 @@ test_published_artifacts:
381383
- ./gradlew publishToMavenLocal $GRADLE_ARGS
382384
- cd test-published-dependencies
383385
- export GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx1G -Xms1G -XX:ErrorFile=/tmp/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp'"
386+
- ./gradlew --version
384387
- ./gradlew check --info $GRADLE_ARGS
385388
after_script:
386389
- *cgroup_info
@@ -401,6 +404,7 @@ test_published_artifacts:
401404
CACHE_TYPE: lib
402405
script:
403406
- *gitlab_base_ref_params
407+
- ./gradlew --version
404408
- ./gradlew $GRADLE_TARGET $GRADLE_PARAMS -PskipTests -PrunBuildSrcTests -PskipSpotless -PtaskPartitionCount=$NORMALIZED_NODE_TOTAL -PtaskPartition=$NORMALIZED_NODE_INDEX $GRADLE_ARGS
405409
after_script:
406410
- *cgroup_info
@@ -461,6 +465,7 @@ muzzle:
461465
CACHE_TYPE: inst
462466
script:
463467
- export SKIP_BUILDSCAN="true"
468+
- ./gradlew --version
464469
- ./gradlew :runMuzzle -PtaskPartitionCount=$NORMALIZED_NODE_TOTAL -PtaskPartition=$NORMALIZED_NODE_INDEX $GRADLE_ARGS
465470
after_script:
466471
- *cgroup_info
@@ -482,6 +487,7 @@ muzzle-dep-report:
482487
CACHE_TYPE: inst
483488
script:
484489
- export SKIP_BUILDSCAN="true"
490+
- ./gradlew --version
485491
- ./gradlew generateMuzzleReport muzzleInstrumentationReport $GRADLE_ARGS
486492
after_script:
487493
- *cgroup_info
@@ -541,6 +547,7 @@ muzzle-dep-report:
541547
fi
542548
- *prepare_test_env
543549
- export GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xms$GRADLE_MEM -Xmx$GRADLE_MEM $PROFILER_COMMAND -XX:ErrorFile=/tmp/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp' -Ddatadog.forkedMaxHeapSize=1024M -Ddatadog.forkedMinHeapSize=128M"
550+
- ./gradlew --version
544551
- ./gradlew $GRADLE_TARGET $GRADLE_PARAMS -PtestJvm=$testJvm -PtaskPartitionCount=$NORMALIZED_NODE_TOTAL -PtaskPartition=$NORMALIZED_NODE_INDEX $GRADLE_ARGS --continue || $CONTINUE_ON_FAILURE
545552
after_script:
546553
- *restore_pretest_env

buildSrc/build.gradle.kts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ dependencies {
5353
implementation(gradleApi())
5454
implementation(localGroovy())
5555

56-
implementation("net.bytebuddy", "byte-buddy-gradle-plugin", "1.17.5")
56+
implementation("net.bytebuddy", "byte-buddy-gradle-plugin", "1.17.7")
5757

5858
implementation("org.eclipse.aether", "aether-connector-basic", "1.1.0")
5959
implementation("org.eclipse.aether", "aether-transport-http", "1.1.0")
@@ -62,8 +62,8 @@ dependencies {
6262
implementation("com.github.zafarkhaja:java-semver:0.10.2")
6363

6464
implementation("com.google.guava", "guava", "20.0")
65-
implementation("org.ow2.asm", "asm", "9.8")
66-
implementation("org.ow2.asm", "asm-tree", "9.8")
65+
implementation(libs.asm)
66+
implementation(libs.asm.tree)
6767

6868
implementation(platform("com.fasterxml.jackson:jackson-bom:2.17.2"))
6969
implementation("com.fasterxml.jackson.core:jackson-databind")

buildSrc/call-site-instrumentation-plugin/build.gradle.kts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ dependencies {
3232
compileOnly("com.google.code.findbugs", "jsr305", "3.0.2")
3333

3434
implementation("org.freemarker", "freemarker", "2.3.30")
35-
implementation("org.ow2.asm", "asm", "9.8")
36-
implementation("org.ow2.asm", "asm-tree", "9.8")
35+
implementation(libs.asm)
36+
implementation(libs.asm.tree)
3737
implementation("com.github.javaparser", "javaparser-symbol-solver-core", "3.24.4")
3838

39-
testImplementation("net.bytebuddy", "byte-buddy", "1.17.5")
39+
testImplementation(libs.bytebuddy)
4040
testImplementation(libs.spock.core)
4141
testImplementation("org.objenesis", "objenesis", "3.0.1")
4242
testImplementation(libs.groovy)

buildSrc/call-site-instrumentation-plugin/src/test/groovy/datadog/trace/plugin/csi/impl/assertion/AssertBuilder.groovy

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,10 @@ class AssertBuilder<C extends CallSiteAssert> {
5959
return [null, null]
6060
}
6161
final isEnabled = type.getMethodsByName('isEnabled').first()
62-
final returnStatement = isEnabled.body.get().statements.first.get().asReturnStmt()
62+
// JavaParser's NodeList has method getFirst() returning an Optional, however with Java 21's
63+
// SequencedCollection, Groovy picks the getFirst() that returns the object itself.
64+
// Using `first()` rather than `first` picks the groovy method instead, fixing the situation.
65+
final returnStatement = isEnabled.body.get().statements.first().asReturnStmt()
6366
final enabledMethodCall = returnStatement.expression.get().asMethodCallExpr()
6467
final enabled = resolveMethod(enabledMethodCall)
6568
final enabledArgs = enabledMethodCall.getArguments().collect { it.asStringLiteralExpr().asString() }.toSet()

0 commit comments

Comments
 (0)