Skip to content

Upgrade gradle to v8.14.3 - #8950

Merged
sarahchen6 merged 20 commits into
masterfrom
sarahchen6/upgrade-to-gradle-8.14
Jul 10, 2025
Merged

Upgrade gradle to v8.14.3#8950
sarahchen6 merged 20 commits into
masterfrom
sarahchen6/upgrade-to-gradle-8.14

Conversation

@sarahchen6

@sarahchen6sarahchen6 commented Jun 9, 2025

Copy link
Copy Markdown
Contributor

What Does This Do

Upgrade gradle to v8.14.3

Motivation

Upgrade to the latest version of gradle

Additional Notes

Contributor Checklist

Jira ticket: https://datadoghq.atlassian.net/browse/LANGPLAT-660

@sarahchen6sarahchen6 added type: feature Enhancements and improvements comp: tooling Build & Tooling labels Jun 9, 2025
@pr-commenter

pr-commenterBot commented Jun 9, 2025

Copy link
Copy Markdown

Benchmarks

Startup

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmastersarahchen6/upgrade-to-gradle-8.14
git_commit_date17520767881752071639
git_commit_sha54c18532c352f5
release_version1.52.0-SNAPSHOT~54c18537351.51.0-SNAPSHOT~2c352f5d98
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17520794731752079473
ci_job_id10207973181020797318
ci_pipeline_id7005481870054818
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-4-96utgg30 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-zfyrx7zua-project-304-concurrent-4-96utgg30 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
moduleAgentAgent
parentNoneNone

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 43 metrics, 10 unstable metrics.

Startup time reports for petclinic
gantt
title petclinic - global startup overhead: candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.001 s) : 0, 1001440
Total [baseline] (10.707 s) : 0, 10706619
Agent [candidate] (994.404 ms) : 0, 994404
Total [candidate] (10.58 s) : 0, 10580295
section appsec
Agent [baseline] (1.18 s) : 0, 1179569
Total [baseline] (10.847 s) : 0, 10846821
Agent [candidate] (1.182 s) : 0, 1181572
Total [candidate] (10.708 s) : 0, 10708200
section iast
Agent [baseline] (1.133 s) : 0, 1133441
Total [baseline] (10.792 s) : 0, 10791720
Agent [candidate] (1.132 s) : 0, 1131596
Total [candidate] (10.807 s) : 0, 10806992
section profiling
Agent [baseline] (1.241 s) : 0, 1240907
Total [baseline] (10.945 s) : 0, 10945259
Agent [candidate] (1.244 s) : 0, 1244005
Total [candidate] (10.941 s) : 0, 10941449
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing1.001 s-
Agentappsec1.18 s178.129 ms (17.8%)
Agentiast1.133 s132.0 ms (13.2%)
Agentprofiling1.241 s239.467 ms (23.9%)
Totaltracing10.707 s-
Totalappsec10.847 s140.201 ms (1.3%)
Totaliast10.792 s85.1 ms (0.8%)
Totalprofiling10.945 s238.639 ms (2.2%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing994.404 ms-
Agentappsec1.182 s187.168 ms (18.8%)
Agentiast1.132 s137.193 ms (13.8%)
Agentprofiling1.244 s249.602 ms (25.1%)
Totaltracing10.58 s-
Totalappsec10.708 s127.905 ms (1.2%)
Totaliast10.807 s226.697 ms (2.1%)
Totalprofiling10.941 s361.154 ms (3.4%)
gantt
title petclinic - break down per module: candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (691.17 ms) : 0, 691170
BytebuddyAgent [candidate] (686.752 ms) : 0, 686752
GlobalTracer [baseline] (244.271 ms) : 0, 244271
GlobalTracer [candidate] (241.642 ms) : 0, 241642
AppSec [baseline] (30.325 ms) : 0, 30325
AppSec [candidate] (30.29 ms) : 0, 30290
Debugger [baseline] (5.97 ms) : 0, 5970
Debugger [candidate] (6.049 ms) : 0, 6049
Remote Config [baseline] (680.369 µs) : 0, 680
Remote Config [candidate] (684.023 µs) : 0, 684
Telemetry [baseline] (8.265 ms) : 0, 8265
Telemetry [candidate] (8.197 ms) : 0, 8197
section appsec
BytebuddyAgent [baseline] (713.741 ms) : 0, 713741
BytebuddyAgent [candidate] (715.627 ms) : 0, 715627
GlobalTracer [baseline] (235.837 ms) : 0, 235837
GlobalTracer [candidate] (236.21 ms) : 0, 236210
IAST [baseline] (23.414 ms) : 0, 23414
IAST [candidate] (23.457 ms) : 0, 23457
AppSec [baseline] (171.362 ms) : 0, 171362
AppSec [candidate] (171.023 ms) : 0, 171023
Debugger [baseline] (5.699 ms) : 0, 5699
Debugger [candidate] (5.707 ms) : 0, 5707
Remote Config [baseline] (597.181 µs) : 0, 597
Remote Config [candidate] (594.841 µs) : 0, 595
Telemetry [baseline] (8.051 ms) : 0, 8051
Telemetry [candidate] (8.033 ms) : 0, 8033
section iast
BytebuddyAgent [baseline] (808.555 ms) : 0, 808555
BytebuddyAgent [candidate] (807.117 ms) : 0, 807117
GlobalTracer [baseline] (232.26 ms) : 0, 232260
GlobalTracer [candidate] (232.037 ms) : 0, 232037
IAST [baseline] (28.86 ms) : 0, 28860
IAST [candidate] (29.399 ms) : 0, 29399
AppSec [baseline] (28.829 ms) : 0, 28829
AppSec [candidate] (27.042 ms) : 0, 27042
Debugger [baseline] (5.743 ms) : 0, 5743
Debugger [candidate] (5.83 ms) : 0, 5830
Remote Config [baseline] (574.944 µs) : 0, 575
Remote Config [candidate] (585.86 µs) : 0, 586
Telemetry [baseline] (7.879 ms) : 0, 7879
Telemetry [candidate] (8.85 ms) : 0, 8850
section profiling
BytebuddyAgent [baseline] (676.205 ms) : 0, 676205
BytebuddyAgent [candidate] (678.216 ms) : 0, 678216
GlobalTracer [baseline] (360.225 ms) : 0, 360225
GlobalTracer [candidate] (360.798 ms) : 0, 360798
AppSec [baseline] (32.882 ms) : 0, 32882
AppSec [candidate] (33.062 ms) : 0, 33062
Debugger [baseline] (9.898 ms) : 0, 9898
Debugger [candidate] (11.252 ms) : 0, 11252
Remote Config [baseline] (665.773 µs) : 0, 666
Remote Config [candidate] (653.792 µs) : 0, 654
Telemetry [baseline] (9.485 ms) : 0, 9485
Telemetry [candidate] (7.99 ms) : 0, 7990
ProfilingAgent [baseline] (103.102 ms) : 0, 103102
ProfilingAgent [candidate] (103.573 ms) : 0, 103573
Profiling [baseline] (103.126 ms) : 0, 103126
Profiling [candidate] (103.597 ms) : 0, 103597
Loading
Startup time reports for insecure-bank
gantt
title insecure-bank - global startup overhead: candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (994.675 ms) : 0, 994675
Total [baseline] (8.547 s) : 0, 8547198
Agent [candidate] (1.004 s) : 0, 1003907
Total [candidate] (8.598 s) : 0, 8598469
section iast
Agent [baseline] (1.127 s) : 0, 1127250
Total [baseline] (9.247 s) : 0, 9246505
Agent [candidate] (1.141 s) : 0, 1141389
Total [candidate] (9.315 s) : 0, 9314974
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing994.675 ms-
Agentiast1.127 s132.574 ms (13.3%)
Totaltracing8.547 s-
Totaliast9.247 s699.306 ms (8.2%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing1.004 s-
Agentiast1.141 s137.482 ms (13.7%)
Totaltracing8.598 s-
Totaliast9.315 s716.505 ms (8.3%)
gantt
title insecure-bank - break down per module: candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (687.472 ms) : 0, 687472
BytebuddyAgent [candidate] (692.907 ms) : 0, 692907
GlobalTracer [baseline] (241.102 ms) : 0, 241102
GlobalTracer [candidate] (244.336 ms) : 0, 244336
AppSec [baseline] (30.283 ms) : 0, 30283
AppSec [candidate] (30.611 ms) : 0, 30611
Debugger [baseline] (6.003 ms) : 0, 6003
Debugger [candidate] (6.128 ms) : 0, 6128
Remote Config [baseline] (676.189 µs) : 0, 676
Remote Config [candidate] (680.21 µs) : 0, 680
Telemetry [baseline] (8.246 ms) : 0, 8246
Telemetry [candidate] (8.338 ms) : 0, 8338
section iast
BytebuddyAgent [baseline] (803.775 ms) : 0, 803775
BytebuddyAgent [candidate] (814.072 ms) : 0, 814072
GlobalTracer [baseline] (231.215 ms) : 0, 231215
GlobalTracer [candidate] (234.254 ms) : 0, 234254
AppSec [baseline] (30.507 ms) : 0, 30507
AppSec [candidate] (29.666 ms) : 0, 29666
Debugger [baseline] (6.593 ms) : 0, 6593
Debugger [candidate] (6.714 ms) : 0, 6714
Remote Config [baseline] (577.257 µs) : 0, 577
Remote Config [candidate] (595.731 µs) : 0, 596
Telemetry [baseline] (7.909 ms) : 0, 7909
Telemetry [candidate] (8.065 ms) : 0, 8065
IAST [baseline] (26.092 ms) : 0, 26092
IAST [candidate] (27.167 ms) : 0, 27167
Loading

Load

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmastersarahchen6/upgrade-to-gradle-8.14
git_commit_date17520767881752071639
git_commit_sha54c18532c352f5
release_version1.52.0-SNAPSHOT~54c18537351.51.0-SNAPSHOT~2c352f5d98
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17520791501752079150
ci_job_id10207973201020797320
ci_pipeline_id7005481870054818
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-5-3alees7e 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-zfyrx7zua-project-304-concurrent-5-3alees7e 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 2 performance improvements and 2 performance regressions! Performance is the same for 8 metrics, 12 unstable metrics.

scenarioΔ mean http_req_durationΔ mean throughputcandidate mean http_req_durationcandidate mean throughputbaseline mean http_req_durationbaseline mean throughput
scenario:load:insecure-bank:profiling:high_loadbetter
[-537.819µs; -203.979µs] or [-5.756%; -2.183%]
unstable
[-44.853op/s; +85.728op/s] or [-9.030%; +17.260%]
8.972ms517.125op/s9.343ms496.688op/s
scenario:load:petclinic:tracing:high_loadworse
[+0.924ms; +1.732ms] or [+2.126%; +3.985%]
unstable
[-11.124op/s; +4.674op/s] or [-10.334%; +4.342%]
44.792ms104.425op/s43.464ms107.650op/s
scenario:load:petclinic:no_agent:high_loadworse
[+0.902ms; +1.556ms] or [+2.469%; +4.258%]
unstable
[-14.409op/s; +2.821op/s] or [-11.124%; +2.178%]
37.777ms123.737op/s36.547ms129.532op/s
scenario:load:petclinic:profiling:high_loadbetter
[-2.312ms; -1.392ms] or [-4.730%; -2.848%]
unstable
[-4.525op/s; +9.677op/s] or [-4.668%; +9.984%]
47.025ms99.500op/s48.876ms96.924op/s
Request duration reports for insecure-bank
gantt
title insecure-bank - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section baseline
no_agent (4.403 ms) : 4354, 4453
. : milestone, 4403,
iast (9.59 ms) : 9432, 9749
. : milestone, 9590,
iast_FULL (13.394 ms) : 13135, 13653
. : milestone, 13394,
iast_GLOBAL (10.541 ms) : 10356, 10726
. : milestone, 10541,
profiling (9.343 ms) : 9173, 9513
. : milestone, 9343,
tracing (7.646 ms) : 7537, 7755
. : milestone, 7646,
section candidate
no_agent (4.49 ms) : 4438, 4541
. : milestone, 4490,
iast (9.773 ms) : 9598, 9948
. : milestone, 9773,
iast_FULL (13.827 ms) : 13546, 14109
. : milestone, 13827,
iast_GLOBAL (10.537 ms) : 10351, 10722
. : milestone, 10537,
profiling (8.972 ms) : 8834, 9111
. : milestone, 8972,
tracing (7.436 ms) : 7330, 7542
. : milestone, 7436,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent4.403 ms [4.354 ms, 4.453 ms]-
iast9.59 ms [9.432 ms, 9.749 ms]5.187 ms (117.8%)
iast_FULL13.394 ms [13.135 ms, 13.653 ms]8.991 ms (204.2%)
iast_GLOBAL10.541 ms [10.356 ms, 10.726 ms]6.138 ms (139.4%)
profiling9.343 ms [9.173 ms, 9.513 ms]4.94 ms (112.2%)
tracing7.646 ms [7.537 ms, 7.755 ms]3.242 ms (73.6%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent4.49 ms [4.438 ms, 4.541 ms]-
iast9.773 ms [9.598 ms, 9.948 ms]5.283 ms (117.7%)
iast_FULL13.827 ms [13.546 ms, 14.109 ms]9.338 ms (208.0%)
iast_GLOBAL10.537 ms [10.351 ms, 10.722 ms]6.047 ms (134.7%)
profiling8.972 ms [8.834 ms, 9.111 ms]4.483 ms (99.8%)
tracing7.436 ms [7.33 ms, 7.542 ms]2.947 ms (65.6%)
Request duration reports for petclinic
gantt
title petclinic - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section baseline
no_agent (36.547 ms) : 36249, 36846
. : milestone, 36547,
appsec (46.918 ms) : 46501, 47335
. : milestone, 46918,
code_origins (44.875 ms) : 44495, 45256
. : milestone, 44875,
iast (44.915 ms) : 44526, 45304
. : milestone, 44915,
profiling (48.876 ms) : 48442, 49311
. : milestone, 48876,
tracing (43.464 ms) : 43097, 43832
. : milestone, 43464,
section candidate
no_agent (37.777 ms) : 37468, 38086
. : milestone, 37777,
appsec (47.175 ms) : 46756, 47594
. : milestone, 47175,
code_origins (44.857 ms) : 44466, 45248
. : milestone, 44857,
iast (45.194 ms) : 44810, 45578
. : milestone, 45194,
profiling (47.025 ms) : 46604, 47445
. : milestone, 47025,
tracing (44.792 ms) : 44409, 45176
. : milestone, 44792,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent36.547 ms [36.249 ms, 36.846 ms]-
appsec46.918 ms [46.501 ms, 47.335 ms]10.37 ms (28.4%)
code_origins44.875 ms [44.495 ms, 45.256 ms]8.328 ms (22.8%)
iast44.915 ms [44.526 ms, 45.304 ms]8.367 ms (22.9%)
profiling48.876 ms [48.442 ms, 49.311 ms]12.329 ms (33.7%)
tracing43.464 ms [43.097 ms, 43.832 ms]6.917 ms (18.9%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent37.777 ms [37.468 ms, 38.086 ms]-
appsec47.175 ms [46.756 ms, 47.594 ms]9.398 ms (24.9%)
code_origins44.857 ms [44.466 ms, 45.248 ms]7.08 ms (18.7%)
iast45.194 ms [44.81 ms, 45.578 ms]7.418 ms (19.6%)
profiling47.025 ms [46.604 ms, 47.445 ms]9.248 ms (24.5%)
tracing44.792 ms [44.409 ms, 45.176 ms]7.016 ms (18.6%)

Dacapo

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmastersarahchen6/upgrade-to-gradle-8.14
git_commit_date17520767881752071639
git_commit_sha54c18532c352f5
release_version1.52.0-SNAPSHOT~54c18537351.51.0-SNAPSHOT~2c352f5d98
See matching parameters
BaselineCandidate
applicationbiojavabiojava
ci_job_date17520796511752079651
ci_job_id10207973221020797322
ci_pipeline_id7005481870054818
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-3-0x9qhvnx 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/LinuxLinux runner-zfyrx7zua-project-304-concurrent-3-0x9qhvnx 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics.

Execution time for biojava
gantt
title biojava - execution time [CI 0.99] : candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section baseline
no_agent (15.028 s) : 15028000, 15028000
. : milestone, 15028000,
appsec (14.859 s) : 14859000, 14859000
. : milestone, 14859000,
iast (18.561 s) : 18561000, 18561000
. : milestone, 18561000,
iast_GLOBAL (18.164 s) : 18164000, 18164000
. : milestone, 18164000,
profiling (15.304 s) : 15304000, 15304000
. : milestone, 15304000,
tracing (14.909 s) : 14909000, 14909000
. : milestone, 14909000,
section candidate
no_agent (15.351 s) : 15351000, 15351000
. : milestone, 15351000,
appsec (14.532 s) : 14532000, 14532000
. : milestone, 14532000,
iast (18.077 s) : 18077000, 18077000
. : milestone, 18077000,
iast_GLOBAL (17.863 s) : 17863000, 17863000
. : milestone, 17863000,
profiling (15.088 s) : 15088000, 15088000
. : milestone, 15088000,
tracing (15.004 s) : 15004000, 15004000
. : milestone, 15004000,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent15.028 s [15.028 s, 15.028 s]-
appsec14.859 s [14.859 s, 14.859 s]-169.0 ms (-1.1%)
iast18.561 s [18.561 s, 18.561 s]3.533 s (23.5%)
iast_GLOBAL18.164 s [18.164 s, 18.164 s]3.136 s (20.9%)
profiling15.304 s [15.304 s, 15.304 s]276.0 ms (1.8%)
tracing14.909 s [14.909 s, 14.909 s]-119.0 ms (-0.8%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent15.351 s [15.351 s, 15.351 s]-
appsec14.532 s [14.532 s, 14.532 s]-819.0 ms (-5.3%)
iast18.077 s [18.077 s, 18.077 s]2.726 s (17.8%)
iast_GLOBAL17.863 s [17.863 s, 17.863 s]2.512 s (16.4%)
profiling15.088 s [15.088 s, 15.088 s]-263.0 ms (-1.7%)
tracing15.004 s [15.004 s, 15.004 s]-347.0 ms (-2.3%)
Execution time for tomcat
gantt
title tomcat - execution time [CI 0.99] : candidate=1.51.0-SNAPSHOT~2c352f5d98, baseline=1.52.0-SNAPSHOT~54c1853735
dateFormat X
axisFormat %s
section baseline
no_agent (1.474 ms) : 1462, 1485
. : milestone, 1474,
appsec (2.42 ms) : 2370, 2470
. : milestone, 2420,
iast (2.187 ms) : 2124, 2249
. : milestone, 2187,
iast_GLOBAL (2.242 ms) : 2179, 2305
. : milestone, 2242,
profiling (2.036 ms) : 1986, 2086
. : milestone, 2036,
tracing (2.015 ms) : 1966, 2064
. : milestone, 2015,
section candidate
no_agent (1.478 ms) : 1466, 1490
. : milestone, 1478,
appsec (2.405 ms) : 2356, 2454
. : milestone, 2405,
iast (2.191 ms) : 2129, 2252
. : milestone, 2191,
iast_GLOBAL (2.238 ms) : 2176, 2300
. : milestone, 2238,
profiling (2.064 ms) : 2013, 2116
. : milestone, 2064,
tracing (2.021 ms) : 1973, 2070
. : milestone, 2021,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.474 ms [1.462 ms, 1.485 ms]-
appsec2.42 ms [2.37 ms, 2.47 ms]946.327 µs (64.2%)
iast2.187 ms [2.124 ms, 2.249 ms]713.14 µs (48.4%)
iast_GLOBAL2.242 ms [2.179 ms, 2.305 ms]767.933 µs (52.1%)
profiling2.036 ms [1.986 ms, 2.086 ms]562.408 µs (38.2%)
tracing2.015 ms [1.966 ms, 2.064 ms]541.276 µs (36.7%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.478 ms [1.466 ms, 1.49 ms]-
appsec2.405 ms [2.356 ms, 2.454 ms]927.256 µs (62.7%)
iast2.191 ms [2.129 ms, 2.252 ms]712.701 µs (48.2%)
iast_GLOBAL2.238 ms [2.176 ms, 2.3 ms]760.023 µs (51.4%)
profiling2.064 ms [2.013 ms, 2.116 ms]586.255 µs (39.7%)
tracing2.021 ms [1.973 ms, 2.07 ms]543.374 µs (36.8%)

Comment thread.gitlab-ci.yml Outdated
@sarahchen6sarahchen6 changed the title Upgrade gradle to v8.14Upgrade gradle to v8.14.2Jun 10, 2025
@bric3

bric3 commented Jun 10, 2025

Copy link
Copy Markdown
Contributor

I believe the failure in gradle/java_no_deps.gradle can be fixed via

 if (currentJavaHomePath != testJvmHomePath) {
- def jvmSpec = new SpecificInstallationToolchainSpec(project.getObjects(), file(testJvmHomePath))+ def jvmSpec = new SpecificInstallationToolchainSpec(project.services.get(org.gradle.api.internal.provider.PropertyFactory), file(testJvmHomePath))
// The provider always says that a value is present so we need to wrap it for proper error messages
Provider<JavaLauncher> launcher = providers.provider {

This object is internal and has to use this internal API, there's no other options at this time I think.

Comment threadgradle/libs.versions.toml Outdated

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When upgrading from Gradle <= 8.13, Groovy needs to be upgraded to 3.0.24: https://docs.gradle.org/current/userguide/upgrading_version_8.html#upgrade_to_groovy_3_0_24

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes in this file address aesthetic comments in the previous Gradle upgrade #8886

@sarahchen6sarahchen6Jun 10, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Received the error The type Metric is not a valid substitute for the bounded parameter <M extends datadog.trace.api.telemetry.MetricCollector$Metric>. To resolve this, we needed strict type resolution to distinguish MetricCollector.Metric and the imported datadog.telemetry.api.Metric class. This type strictness follows patterns to explicitly use MetricCollector.Metric throughout the file.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Much better without ambiguity ! TY

Comment threadgradle/test-suites.gradle Outdated

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Project dependencies was separated out due to the error The value for property 'dependencies.implementation' property 'dependencies' is final and cannot be changed any further. that prevented Gradle compilation. I think this is due to the deprecation of mutating configurations after observation that was introduced after 8.7: https://docs.gradle.org/current/userguide/upgrading_version_8.html#mutate_configuration_after_locking

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed this looks like it : gradle/gradle#28867

Maybe drop a comment there, to explain why the documented method did not work. I wasn't able to reliably reproduce this issue. So there might be something odd happending.

Comment threadgradle/java_no_deps.gradle Outdated

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change is needed due to the introduced error groovy.lang.GroovyRuntimeException: Could not find matching constructor for: org.gradle.jvm.toolchain.internal.SpecificInstallationToolchainSpec(org.gradle.api.internal.model.DefaultObjectFactory, File). I'm not sure exactly where this comes from, but since this is part of Gradle's internal implementation, breaking changes can be made unannounced.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This internal Gradle type has changed twice its constructor signature since 8.5

Comment threadgradle/java_no_deps.gradle Outdated

@sarahchen6sarahchen6Jun 10, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GenericProgressiveFutureListener argument extends ProgressiveFuture (ref), and with the Gradle upgrade, I get the error: The type Future is not a valid substitute for the bounded parameter <F extends io.netty.util.concurrent.ProgressiveFuture<?>>. Explicitly setting the type to ProgressiveFuture instead of Future resolved this.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For reference, there is a warning on master on this, suggesting to use ProgressiveFuture instead:
Image

@sarahchen6sarahchen6Jun 10, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When trying to ./gradlew clean assemble, I ran across the error incompatible types: org.gradle.internal.service.scopes.BuildScopeServices cannot be converted to org.gradle.internal.service.DefaultServiceRegistry. Explicitly setting the buildScopeServices type to DefaultServiceRegistry (which is what injectCiVisibilityGradleListener takes) resolves this.

I'm thinking that the Gradle upgrade has led to stricter type resolution as seen from other changes needed in this PR 🤔

@sarahchen6sarahchen6Jun 10, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The updates to the latest version of JUnit Jupiter and Platform address the error:

org.junit.platform.commons.JUnitException: TestEngine with ID 'junit-jupiter' failed to discover tests...
Caused by: org.junit.platform.commons.JUnitException: OutputDirectoryProvider not available; probably due to unaligned versions of the junit-platform-engine and junit-platform-launcher jars on the classpath/module path.

Not quite sure why the gradle upgrade initiated this, but others have faced the same problem (unplanned junit issue) and resolved it by updating versions.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to use the oldest possible version here, as we want to ensure JUnit 5 instrumentation is working for older releases. Could you please double-check which artifacts' version changes when Gradle version is bumped?
You can use commands like the one below:

./gradlew :dd-java-agent:instrumentation:junit-5.3:dependencyInsight --configuration testRuntimeClasspath --dependency org.junit

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nikita-tkachenko-datadog Maybe something you can do is to declare them as constraints in this case ?

https://docs.gradle.org/current/userguide/dependency_constraints.html

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good to know. From the command you shared, it looks like 1.12.0 and 5.12.0 are the oldest versions we can pull in (e.g. org.junit.platform:junit-platform-suite-api:1.12.0 and org.junit.jupiter:junit-jupiter-api:5.12.0 get pulled in). I can change that now!

@bric3

Copy link
Copy Markdown
Contributor

You may want to merge latest master, there were fixes on the gradle daemon smoke tests, see #8955

Unsure about the muzzle ones.

@sarahchen6
sarahchen6force-pushed the sarahchen6/upgrade-to-gradle-8.14 branch from d8450d8 to 0bb8eabCompareJune 11, 2025 13:27
if (gradleDaemonCmdLineParams) {
command += "-Dorg.gradle.jvmargs=$gradleDaemonCmdLineParams"
command += "-Dorg.gradle.jvmargs=$gradleDaemonCmdLineParams".toString()
}

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This resolves errors I was getting with assigning GStringImpl to String[] (others' experiences: apache issue, stackoverflow issue). Seems like this should be resolved with groovy 3.0.7+, but I guess not…

@sarahchen6
sarahchen6force-pushed the sarahchen6/upgrade-to-gradle-8.14 branch from 581e03a to fa6c44cCompareJune 25, 2025 20:41

@sarahchen6sarahchen6Jul 2, 2025

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The muzzle check for this instrumentation fails on a classloader mismatch when running on Gradle 8.14.3, but since this instrumentation targets Gradle 8.3, skip muzzle like what is done for 8_10_Instrumentation.

@bric3

bric3 commented Jul 4, 2025

Copy link
Copy Markdown
Contributor

FYI 8.14.3 was just released

@sarahchen6
sarahchen6 requested review from a team as code ownersJuly 7, 2025 18:22
@sarahchen6
sarahchen6 requested review from AlexeyKuznetsov-DD, bric3, nikita-tkachenko-datadog, pawelchcki and ygree and removed request for a teamJuly 7, 2025 18:22
Comment threadgradle/wrapper/gradle-wrapper.properties Outdated
Comment on lines 35 to 37

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shall we also update grdale.lock for this and similar places?

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will leave this to the github bot 😬

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Today I learned where it came from

@sarahchen6
sarahchen6force-pushed the sarahchen6/upgrade-to-gradle-8.14 branch from dc12875 to 2f16060CompareJuly 7, 2025 19:53
@sarahchen6
sarahchen6force-pushed the sarahchen6/upgrade-to-gradle-8.14 branch from 2f16060 to 7e140f4CompareJuly 7, 2025 20:45

@PerfectSlayerPerfectSlayer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not much feedback to give on this part 😓 I feel @bric3 to be way more knowledgeable on that part than me.

But mainly, I would make sure to get approval from CI Visibility before merging as changing their instrumentations.

@bric3bric3 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall it looks good ! Thank you for the upgrade !

Comment on lines 35 to 37

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Today I learned where it came from

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nikita-tkachenko-datadog Maybe something you can do is to declare them as constraints in this case ?

https://docs.gradle.org/current/userguide/dependency_constraints.html

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For reference, there is a warning on master on this, suggesting to use ProgressiveFuture instead:
Image

Comment on lines -10 to -17
// 3.0.24 added support for JDK 24 via ASM 9.7.1
// https://groovy-lang.org/changelogs/changelog-3.0.24.html
// https://asm.ow2.io/versions.html#9.7.1
configurations.all {
resolutionStrategy {
force 'org.codehaus.groovy:groovy-all:3.0.24'
}
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: We may have to resurrect this code for JDK 25.

Comment threadgradle/java_no_deps.gradle Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This internal Gradle type has changed twice its constructor signature since 8.5

Comment threadgradle/wrapper/gradle-wrapper.properties Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Much better without ambiguity ! TY

Comment threadgradle/test-suites.gradle Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed this looks like it : gradle/gradle#28867

Maybe drop a comment there, to explain why the documented method did not work. I wasn't able to reliably reproduce this issue. So there might be something odd happending.

sarahchen6and others added 3 commits July 9, 2025 10:15
Co-authored-by: Brice Dutheil <brice.dutheil@gmail.com>
@sarahchen6
sarahchen6 merged commit 9519752 into masterJul 10, 2025
507 checks passed
@sarahchen6
sarahchen6 deleted the sarahchen6/upgrade-to-gradle-8.14 branch July 10, 2025 12:55
@github-actionsgithub-actionsBot added this to the 1.52.0 milestone Jul 10, 2025
@mccullsmcculls added the tag: no release notes Changes to exclude from release notes label Aug 4, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: toolingBuild & Toolingtag: no release notesChanges to exclude from release notestype: featureEnhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@sarahchen6@bric3@PerfectSlayer@nikita-tkachenko-datadog@AlexeyKuznetsov-DD@mcculls