Skip to content
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

Tasty Reader support 3.0.0 final #9617

Merged
merged 12 commits into from May 14, 2021

Conversation

bishabosha
Copy link
Member

@bishabosha bishabosha commented May 6, 2021

Interesting points:

  • Addition of SCALA3X flag to src/reflect/scala/reflect/internal/Flags.scala
  • addition of scala 3 erasure modes (needed for new rules for erasure of intersection types and arrays in Scala 3)
  • sandbox classloader for invoking scala 3 compiler in tests.

@scala-jenkins scala-jenkins added this to the 2.13.6 milestone May 6, 2021
@SethTisue SethTisue added the prio:blocker release blocker (used only by core team, only near release time) label May 6, 2021
@SethTisue
Copy link
Member

SethTisue commented May 6, 2021

this will support 3.0.0 final as well...? or will there be one more PR for that?

@dwijnand
Copy link
Member

dwijnand commented May 7, 2021

Hey, @bishabosha. Could you look to removing the [ci: last-only] please? Ideally with passing atomic commits.

@bishabosha
Copy link
Member Author

bishabosha commented May 7, 2021

@SethTisue There would be another PR after this to support 3.0.0 final, which will break the tasty version

@sjrd
Copy link
Member

sjrd commented May 7, 2021

@SethTisue There would be another PR after this to support 3.0.0 final, which will break the tasty version

Couldn't we already allow the current code to accept the final tasty version? It's a pretty safe bet at this point that the format won't change anymore. That would allow 2.13.6 to work with Scala 3.0.0 as soon as it is released. Otherwise, there will be a very awkward period after the release of Scala 3.0.0 where no Scala 2.13 version can actually work with it.

@bishabosha bishabosha changed the title Tasty Reader support 3.0.0-RC3 [ci: last-only] Tasty Reader support 3.0.0-RC3 May 7, 2021
@bishabosha bishabosha force-pushed the tasty/support-3.0.0-RC3 branch 2 times, most recently from 20ae390 to e7142bb Compare May 7, 2021 15:43
@bishabosha
Copy link
Member Author

@sjrd @SethTisue I have added an escape hatch for the tasty version that will ship with Scala 3.0.0

- load Scala 3 compiler in sandboxed classloader.
  This change was added due to a conflict in
  reading the file compiler.properties.
- Add new erasure mode for Scala 3 intersection
  types
- Test erasure for constructors and SAM types
- Implement erasure for Arrays and test it
- enable scala 3 erasure for Type#erasure
- test intersection erasure with enums
- optimise dotty enum singleton erasure
- optimise dotty trait param checks
- It can be possible for a private local value
  to overload its field getter, so only select
  non-private local values
- also some refactorings
-also generate fresh wildcard name for wildcards
also document constructor
type params
it was a no-op in dotty
project/DottySupport.scala Outdated Show resolved Hide resolved
@lrytz
Copy link
Member

lrytz commented May 12, 2021

LGTM once my comments are addressed! I only reviewed the parts in detail that touch other areas of the compiler.

@bishabosha bishabosha changed the title Tasty Reader support 3.0.0-RC3 Tasty Reader support 3.0.0 May 14, 2021
@bishabosha bishabosha changed the title Tasty Reader support 3.0.0 Tasty Reader support 3.0.0 final May 14, 2021
@bishabosha bishabosha requested a review from lrytz May 14, 2021 10:44
@lrytz lrytz merged commit 4fa6da5 into scala:2.13.x May 14, 2021
@SethTisue SethTisue added release-notes worth highlighting in next release notes and removed prio:blocker release blocker (used only by core team, only near release time) labels May 14, 2021
@bishabosha bishabosha deleted the tasty/support-3.0.0-RC3 branch May 17, 2021 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-notes worth highlighting in next release notes tastyreader
Projects
None yet
6 participants