-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Actively remove Scala 2 pickles and emit synthetic TASTy attribute for copied stdlib .class files #24846
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
base: main
Are you sure you want to change the base?
Conversation
| def validRange: String = { | ||
| val min = TastyVersion(major, 0, 0) | ||
| val max = if (experimental == 0) this else TastyVersion(major, minor - 1, 0) | ||
| val extra = Option.when(experimental > 0)(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.
Why?
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.
Because it's compiled using Scala 2.12. For the sake of correctness we're adding tasty sources to unamanged sources of sbt build. See project/build.sbt changes
| var stamps = analysis.stamps | ||
|
|
||
| val classDir = (Compile / classDirectory).value | ||
| val sourceDir = (LocalProject("scala-library-nonbootstrapped") / sourceDirectory).value |
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.
Why does the plugin know about scala-library-nonbootstrapped? It shouldn't.
And even if it were to know about it, why doesn't it know about scala-library-bootstrapped too?
Fixes #24161
Based on and superseeds #24180
We're now actively removing Scala 2 pickle annotations and emit synthetic TASTY attributes (for primary classes). Both of validations are now checked at build time