Skip to content

Support scala 3 3rd attempt #227

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

Closed

Conversation

sake92
Copy link
Contributor

@sake92 sake92 commented Dec 2, 2021

An extension of #226

  1. 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

  2. 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

  3. explicit types (almost) everywhere.
    required for implicits, and sometimes the types are not precise when overriden, see jsdom/Tags.scala

  4. 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?

@sake92 sake92 closed this Dec 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants