Repository navigation
ADFA-4931: Quick Build links the Gradle distribution's Kotlin compiler instead of bundling its own #2090
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
Open
fryanpan
wants to merge
22
commits into
stage
Choose a base branch
from
feature/ADFA-4931-unify-toolchain-restack
base: stage
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
ADFA-4931: Quick Build links the Gradle distribution's Kotlin compiler instead of bundling its own #2090
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
0772f4a
ADFA-4931: stop shipping a second Kotlin compiler
fryanpan bed2217
ADFA-4931: point the TestKit fixtures at the toolchain they now test
fryanpan 06728f6
ADFA-4931: cover the compiler link, and correct what the daemon deps say
fryanpan 8aa348c
ADFA-4931: stop shipping four more jars the distribution already has
fryanpan 524d9e6
ADFA-4931: follow the distribution's versions for the daemon's last t…
fryanpan 81f4d97
ADFA-4931: collapse jars the two on-device stores both extracted
fryanpan 1666b32
ADFA-4931: pin that staging runs the link, not just that the link works
fryanpan f4a3482
ADFA-4931: cover the dedup and link paths' remaining branches
fryanpan a8e0fb3
ADFA-4931: hash the jars the daemon loads, not the ones it was built …
fryanpan ff4e759
ADFA-4931: link the distribution's Kotlin jars instead of shipping a …
fryanpan a3f721f
ADFA-4931: document that the daemon loads the distribution's compiler
fryanpan 27032b4
ADFA-4931: stop a re-stage from truncating the distribution's own jars
fryanpan 214155b
ADFA-4931: run the distribution jar check after the asset downloads
fryanpan 939fe5e
ADFA-4931: take the linked jars' versions from the catalog
fryanpan c771276
ADFA-4931: re-stage when a linked jar no longer resolves
fryanpan d01addc
ADFA-4931: link kotlin-reflect from the distribution too
fryanpan 4fb244f
ADFA-4931: take the daemon's Kotlin at KOTLIN_VERSION and drop the ca…
fryanpan d7c8425
ADFA-4931: check the distribution release builds package, not only th…
fryanpan 9cc2621
ADFA-4931: correct the stager's class doc, which still said 62 MB
fryanpan fd5091c
ADFA-4931: cover the re-stage when the linked-jar list is unreadable
fryanpan 465f248
ADFA-4931: gate release variants on the distribution check, not task …
fryanpan ef3e5c4
ADFA-4931: gate every variant that bundles the distribution, not just…
fryanpan File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
NITPICK:
kotlin-reflectcould join this list, saving about 3 MB more.The distribution ships
kotlin-reflect-2.3.21.jarinlib/, but the daemon resolveskotlin-reflect:1.6.10, which the POM ofkotlin-compiler-embeddable:2.3.21pins (checked with:quickbuild:daemon:dependencies --configuration runtimeClasspathat this head). So the zip still carries its own copy, of an older version.Fix: pin
kotlin-reflecttoKOTLIN_VERSIONwith a constraint, as for coroutines, then link it. The daemon README says excluding it breaks compiles, so the:quickbuild:daemonsuite would need to pass on 2.3.21 first.Uh oh!
There was an error while loading. Please reload this page.
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.
Done in d01addc. A constraint pins kotlin-reflect to
KOTLIN_VERSION(quickbuild/daemon/build.gradle.kts:124), so it resolves1.6.10 -> 2.3.21, and it joins the linked list (app/build.gradle.kts:527). The full:quickbuild:daemonsuite passes on 2.3.21 (234 tests, 0 failures), and both distributions carrylib/kotlin-reflect-2.3.21.jar. The daemon zip drops from 4.4 MB to 1.7 MB. On the A56 it is linked like the other 8, and a Compose edit compiles and reloads through it.