dsvoronin
09/07/2021, 10:24 PMAppending input value fingerprint for 'kotlinJavaToolchainProvider' to build cache key: 579ef60211f6a32e39cd244937049220
Appending input value fingerprint for 'kotlinJavaToolchainProvider' to build cache key: 7b38054c10085dfb665417dd82eb8269
why it could be different?
nested kotlinJavaToolchainProvider.javaVersion
are equal
Why it's even calculated as a part of compilation task cache if only javaVersion
property marked as @Input
?dsvoronin
09/07/2021, 10:25 PM/opt/jdk
- didn't helptapchicoma
09/08/2021, 8:04 AMdsvoronin
09/08/2021, 11:25 AMdsvoronin
09/08/2021, 11:25 AMtapchicoma
09/08/2021, 11:26 AMtapchicoma
09/08/2021, 11:26 AM1.5.30
version?dsvoronin
09/08/2021, 11:27 AMdsvoronin
09/08/2021, 11:28 AMdsvoronin
09/08/2021, 11:29 AMtapchicoma
09/08/2021, 11:30 AM1.5.2x
version has already some parts of toolchain support, but it should not affect remote build cache misses.
Also we have tests for toolchain cache relocation and they are green 🤔
Would be nice if you could provide some repro projectdsvoronin
09/08/2021, 11:31 AMdsvoronin
09/08/2021, 11:31 AMdsvoronin
09/08/2021, 11:35 AMjavaVersion
field
so if javaVersions are equals, kotlinJavaToolchainProvider should be too? right? it's nottapchicoma
09/08/2021, 11:37 AMjavaVersion
should be taken into consideration of this @Nested
inputdsvoronin
09/08/2021, 11:37 AMtapchicoma
09/08/2021, 11:38 AMdsvoronin
09/08/2021, 11:40 AMtapchicoma
09/08/2021, 11:43 AMdsvoronin
09/08/2021, 11:43 AMtapchicoma
09/08/2021, 11:58 AM@Nested
documentation:
The implementation of the nested bean is tracked as an input, too. This allows tracking behavior such as org.gradle.api.Actions as task inputs.
tapchicoma
09/08/2021, 11:59 AMdsvoronin
09/08/2021, 12:53 PMdsvoronin
09/08/2021, 12:54 PMtapchicoma
09/08/2021, 12:56 PMcurrentJvm
property causes difference in hashes. Though I need to also figure out how hash for nested object is calculateddsvoronin
09/08/2021, 12:58 PMdsvoronin
09/08/2021, 12:58 PMtapchicoma
09/08/2021, 12:58 PM@Internal
in both 1.5.20 and 1.5.30 releasestapchicoma
09/08/2021, 1:02 PMdsvoronin
09/08/2021, 1:03 PMno
09/08/2021, 1:51 PMtapchicoma
09/08/2021, 1:59 PMwolf
09/08/2021, 2:06 PMbuildSrc
or included builds for the plugins you use in your build? I’d expect that the classes compiled from build src are different on the different operating systems.wolf
09/08/2021, 2:07 PMtapchicoma
09/08/2021, 2:13 PMwolf
09/08/2021, 2:15 PMtapchicoma
09/08/2021, 2:42 PMdsvoronin
09/08/2021, 2:45 PMCan you print the value out for both builds?values are in first message? or i didn't understand you
dsvoronin
09/08/2021, 2:46 PMDo have haveyes, i'm using included builds like here https://github.com/avito-tech/avito-android projects are about identical in terms of structureor included builds for the plugins you use in your build? I’d expect that the classes compiled from build src are different on the different operating systembuildSrc
dsvoronin
09/08/2021, 2:46 PMcould you also try to downgrade Gradle to 7.1 version and check if it is still happenning?yep, let me try this one
dsvoronin
09/08/2021, 2:47 PMIt affects the version used to build things in buildSrc, if you don’t use toolchains in buildSrc. And there the classes could be different.is there any way to workaround this before kotlin 1.5.30 with proper toolchains support?
dsvoronin
09/08/2021, 2:51 PMdsvoronin
09/08/2021, 2:52 PMdsvoronin
09/08/2021, 2:53 PMAppending implementation to build cache key: org.jetbrains.kotlin.gradle.tasks.KotlinCompileWithWorkers_Decorated@76e72c2af8253c6fd36ebffa9b234b23
Appending additional implementation to build cache key: org.jetbrains.kotlin.gradle.tasks.KotlinCompileWithWorkers_Decorated@76e72c2af8253c6fd36ebffa9b234b23
Appending additional implementation to build cache key: org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompileTool$1@76e72c2af8253c6fd36ebffa9b234b23
different values on top of the files, but it's unclear if its affecting resulting hashwolf
09/08/2021, 2:53 PMorg.jetbrains.kotlin.gradle.tasks.KotlinCompileWithWorkers_Decorated@76e72c2af8253c6fd36ebffa9b234b23
org.jetbrains.kotlin.gradle.tasks.KotlinCompileWithWorkers_Decorated@ebd5c7dbc036652a668e7dbe1c302a9a
wolf
09/08/2021, 2:54 PMdsvoronin
09/08/2021, 2:54 PMkotlinJavaToolchainProvider
property?tapchicoma
09/08/2021, 2:55 PMdsvoronin
09/08/2021, 2:56 PMdsvoronin
09/08/2021, 2:57 PMwolf
09/08/2021, 2:58 PMdsvoronin
09/08/2021, 3:02 PMtapchicoma
09/08/2021, 3:03 PMdsvoronin
09/08/2021, 3:04 PMtapchicoma
09/08/2021, 3:04 PMtapchicoma
09/08/2021, 3:04 PMdsvoronin
09/08/2021, 3:04 PMdsvoronin
09/08/2021, 3:05 PMwolf
09/08/2021, 4:21 PMdsvoronin
09/08/2021, 4:27 PMno
09/08/2021, 4:33 PMbuildScan.value
lines with println
statementsdsvoronin
09/08/2021, 5:29 PMdsvoronin
09/08/2021, 10:00 PMwolf
09/09/2021, 7:30 AMFingerprints:
output in the diff. Does this mean they are the same?wolf
09/09/2021, 7:32 AMconventions.jar
first and then a parent classloader with only dependencies.jar
. Where do those two JARs come from?wolf
09/09/2021, 7:33 AMbuild-logic-settings:dependencies
and build-logic:conventions
?dsvoronin
09/09/2021, 10:46 AMIs thatyesandbuild-logic-settings:dependencies
?build-logic:conventions
dsvoronin
09/09/2021, 10:48 AMI don’t see theThat's strange, because i used snipper from gist; i'll double checkoutput in the diff. Does this mean they are the same?Fingerprints:
dsvoronin
09/09/2021, 11:01 AMdsvoronin
09/09/2021, 11:10 AMdsvoronin
09/12/2021, 10:07 PMsyncAllApps
, which is disabled locally to prevent synchronization of all apps in monorepo.
What i'm not expected is project dependency accessors in module compile kotlin classpath.
Why is that working that way? In my opinion it shouldn't affect module compilation at all
https://gist.github.com/dsvoronin/c26db48a1e56f530462f0335af4cb8dc#file-difference-mddsvoronin
09/12/2021, 10:12 PMno
09/13/2021, 7:34 AMsyncAllApps
does? I have a hard time understanding. Does it selectively add/remove projects in settings.gradle
?dsvoronin
09/13/2021, 3:13 PMdsvoronin
09/13/2021, 3:13 PMdsvoronin
09/13/2021, 3:14 PMno
09/13/2021, 3:50 PMapps
?
Without a consistent input to the dependency resulution strategy, the order of the classpath cannot be deterministic.dsvoronin
09/13/2021, 5:14 PMdsvoronin
09/13/2021, 5:23 PMno
09/14/2021, 12:40 PM