Support scala 3 3rd attempt #227
Closed
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.
An extension of #226
dropped 2.11
quite old now, doesn't support overriding apply/unapply from case classes:
https://stackoverflow.com/questions/5827510/how-to-override-apply-in-a-case-class-companion
explicitly written unnaplies
case classes now have a different signature for unapply:
https://docs.scala-lang.org/scala3/guides/migration/incompat-other-changes.html#explicit-call-to-unapply
explicit types (almost) everywhere.
required for implicits, and sometimes the types are not precise when overriden, see jsdom/Tags.scala
separate macros for scala2 and scala3
Notes:
The
implicit ev: A => Frag
functions are no longer considered as implicit conversions in scala3.That's why we invoke them directly.
@lolgab can you please expand on Mima addition?