-
Notifications
You must be signed in to change notification settings - Fork 312
Upgrade gradle to v8.14.3 #8950
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
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 43 metrics, 10 unstable metrics. Startup time reports for petclinicgantt
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
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
Startup time reports for insecure-bankgantt
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
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
LoadParameters
See matching parameters
SummaryFound 2 performance improvements and 2 performance regressions! Performance is the same for 8 metrics, 12 unstable metrics.
Request duration reports for insecure-bankgantt
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,
Request duration reports for petclinicgantt
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,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
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,
Execution time for tomcatgantt
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,
|
telemetry/src/test/groovy/datadog/telemetry/metric/MetricPeriodicActionTest.groovy
Show resolved
Hide resolved
I believe the failure in 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. |
@@ -7,7 +7,7 @@ okhttp-legacy = "[3.0,3.12.12]" # 3.12.x is last version to support Java7 | |||
okio = "1.17.6" # Datadog fork | |||
|
|||
spock = "2.3-groovy-3.0" | |||
groovy = "3.0.17" | |||
groovy = "3.0.24" | |||
junit5 = "5.9.2" |
There was a problem hiding this comment.
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
@@ -27,7 +27,7 @@ final testTasks = scalaVersions.collect { scalaLibrary -> | |||
def (major, minor) = version.split('_').collect(Integer.&valueOf) |
There was a problem hiding this comment.
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
this.collector = collector | ||
} | ||
|
||
@Override | ||
@NonNull | ||
MetricCollector<Metric> collector() { | ||
MetricCollector<MetricCollector.Metric> collector() { | ||
return collector |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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
|
||
project.dependencies { | ||
"${testSuiteName}Implementation"(project(project.path)) | ||
} | ||
} |
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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.
@@ -164,7 +164,7 @@ project.afterEvaluate { | |||
def testJvmHomePath = getJavaHomePath(testJvmHome) | |||
// Only change test JVM if it's not the one we are running the gradle build with | |||
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 |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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
- In 8.8 : Introduce daemon JVM criteria gradle/gradle#28731 (
ObjectsFactory
arg was removed) - In 8.13 : Daemon auto-provisioning downloads toolchain from provided url gradle/gradle#29166 (
PropertyFactory
arg was added)
runUnderTrace("listen$i") {} | ||
} | ||
|
||
@Override | ||
void operationProgressed(Future<?> future, long progress, long total) throws Exception { | ||
void operationProgressed(ProgressiveFuture<?> future, long progress, long total) throws Exception { | ||
runUnderTrace("progress$i") {} | ||
} | ||
} |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -55,7 +55,7 @@ public void methodAdvice(MethodTransformer transformer) { | |||
public static class Construct { | |||
@Advice.OnMethodExit(suppress = Throwable.class) | |||
public static void afterConstructor( | |||
@Advice.This final BuildScopeServices buildScopeServices, | |||
@Advice.This final DefaultServiceRegistry buildScopeServices, | |||
@Advice.Argument(0) final ServiceRegistry parentServices) { | |||
CiVisibilityGradleListenerInjector_8_3.injectCiVisibilityGradleListener( | |||
buildScopeServices, parentServices); |
There was a problem hiding this comment.
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 🤔
@@ -1,10 +1,9 @@ | |||
|
|||
apply from: "$rootDir/gradle/java.gradle" | |||
|
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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!
You may want to merge latest master, there were fixes on the gradle daemon smoke tests, see #8955 Unsure about the muzzle ones. |
d8450d8
to
0bb8eab
Compare
@@ -60,7 +60,7 @@ class GradleLauncherSmokeTest extends AbstractGradleTest { | |||
]) | |||
String[] command = ["./gradlew", "--no-daemon", "--info"] | |||
if (gradleDaemonCmdLineParams) { | |||
command += "-Dorg.gradle.jvmargs=$gradleDaemonCmdLineParams" | |||
command += "-Dorg.gradle.jvmargs=$gradleDaemonCmdLineParams".toString() | |||
} |
There was a problem hiding this comment.
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…
581e03a
to
fa6c44c
Compare
@Override | ||
public String muzzleDirective() { | ||
return "skipMuzzle"; | ||
} | ||
} |
There was a problem hiding this comment.
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.
FYI 8.14.3 was just released |
testImplementation group: 'org.junit.platform', name: 'junit-platform-launcher', version: '1.13.1' | ||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.13.1' | ||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-params', version: '5.13.1' |
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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 😬
There was a problem hiding this comment.
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
dc12875
to
2f16060
Compare
2f16060
to
7e140f4
Compare
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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 !
testImplementation group: 'org.junit.platform', name: 'junit-platform-launcher', version: '1.13.1' | ||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.13.1' | ||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-params', version: '5.13.1' |
There was a problem hiding this comment.
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
@@ -1,10 +1,9 @@ | |||
|
|||
apply from: "$rootDir/gradle/java.gradle" | |||
|
There was a problem hiding this comment.
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
runUnderTrace("listen$i") {} | ||
} | ||
|
||
@Override | ||
void operationProgressed(Future<?> future, long progress, long total) throws Exception { | ||
void operationProgressed(ProgressiveFuture<?> future, long progress, long total) throws Exception { | ||
runUnderTrace("progress$i") {} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// 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' | ||
} | ||
} |
There was a problem hiding this comment.
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.
@@ -164,7 +164,7 @@ project.afterEvaluate { | |||
def testJvmHomePath = getJavaHomePath(testJvmHome) | |||
// Only change test JVM if it's not the one we are running the gradle build with | |||
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 |
There was a problem hiding this comment.
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
- In 8.8 : Introduce daemon JVM criteria gradle/gradle#28731 (
ObjectsFactory
arg was removed) - In 8.13 : Daemon auto-provisioning downloads toolchain from provided url gradle/gradle#29166 (
PropertyFactory
arg was added)
this.collector = collector | ||
} | ||
|
||
@Override | ||
@NonNull | ||
MetricCollector<Metric> collector() { | ||
MetricCollector<MetricCollector.Metric> collector() { | ||
return collector |
There was a problem hiding this comment.
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
|
||
project.dependencies { | ||
"${testSuiteName}Implementation"(project(project.path)) | ||
} | ||
} |
There was a problem hiding this comment.
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.
Co-authored-by: Brice Dutheil <[email protected]>
What Does This Do
Upgrade gradle to v8.14.3
Motivation
Upgrade to the latest version of gradle
Additional Notes
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: https://datadoghq.atlassian.net/browse/LANGPLAT-660