-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
Update Zinc used by the Scala plugin to 1.6.1 #19864
Conversation
...ala/src/integTest/groovy/org/gradle/scala/compile/UpToDateScalaCompileIntegrationTest.groovy
Show resolved
Hide resolved
885119e
to
d07d514
Compare
@ljacomet could you take a look at it? |
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.
Thanks!!!
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.
Thanks a lot for helping out Gradle Scala users!
See below for a couple comments on dependency verification.
Most important though is the compatibility conversation. I believe we had one already when Zinc 1.5 was released, but I cannot find it ...
...ala/src/integTest/groovy/org/gradle/scala/compile/UpToDateScalaCompileIntegrationTest.groovy
Show resolved
Hide resolved
a922737
to
7647598
Compare
@tgodzik Any updates on this? Thanks! |
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.
First of all, thanks for the contribution.
And sorry it took so long to get a decision for having this in a minor.
But the answer is now yes, so let's see about getting it in Gradle 7.5.
Would you be able to also do some documentation changes:
- Update the Zinc compatibility table
- Add an entry into the potential breaking changes of the upgrade guide - file
upgrading_version_7.adoc
Looks like running all tests on CI raises a number of problems. |
I will take a look as soon as possible, just got back from vacation so that might take a bit, but hopefully I should get it fixed by next week. |
aac8b4b
to
ca4f815
Compare
@ljacomet The tests should be fixed, I added a section for the Zinc compatibility table and added a section for potential breaking changes |
ca4f815
to
b1d0193
Compare
@ljacomet I haven't noticed that some of the tests were failing, but they should be fixed now, protobuf was dropped from zinc (shaded version exists). It is still in Scala 3, but that is most likely related to the fact that the bridge resides in the compiler itself instead of Zinc, |
@tgodzik Could you rebase this against the You will then need to change the target branch to |
Signed-off-by: Tomasz Godzik <tomek.godzik@gmail.com>
Signed-off-by: Tomasz Godzik <tgodzik@virtuslab.com>
Signed-off-by: Tomasz Godzik <tgodzik@virtuslab.com>
The issue is most likely related to sbt/zinc#799 Signed-off-by: Tomasz Godzik <tgodzik@virtuslab.com>
a4402a2
to
6c8dc28
Compare
I have done the rebase and change of base branch. |
@bot-gradle test this |
OK, I've already triggered the following builds for you: |
Thanks, sorry that I didn't get to it right away! |
No worry, my ability to help steer this was quite spotty 😉 |
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.
Green build!
Thanks @tgodzik for proposing this and following up even after time passed!
@bot-gradle test and merge |
OK, I've already triggered a build for you. |
if (!e.getKey().exists() || !e.getValue().equals(Stamper.forLastModified().apply(e.getKey()))) { | ||
for (Map.Entry<VirtualFileRef, Stamp> e : previousAnalysis.readStamps().getAllLibraryStamps().entrySet()) { | ||
File path = CONVERTER.toPath(e.getKey()).toFile(); | ||
if (!path.exists() || !e.getValue().equals(Stamper.forLastModifiedInRootPaths(CONVERTER).apply(e.getKey()))) { |
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.
Would like to raise attention to this line which I think is incorrect and seems to have caused #20101
e.getValue seems to be a FarmHash
, not a LastModified
.
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.
TBH I'm not even sure why Gradle provides the ExternalBinariesLookup
when it effectively could rely on zinc's change detection in the getOrElse case here: https://github.com/sbt/zinc/blob/develop/internal/zinc-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala#L407
Fixes #15491
Context
The currently used version of zinc is havily outdated and missing a lot of new fixes. It's also being depracated and will most likely stop working at some point with Scala 3
Contributor Checklist
<subproject>/src/integTest
) to verify changes from a user perspective<subproject>/src/test
) to verify logic./gradlew sanityCheck
./gradlew <changed-subproject>:quickTest
Gradle Core Team Checklist