Skip to content

Add Scala 3 support#202

Draft
plokhotnyuk wants to merge 3 commits intojvican:masterfrom
plokhotnyuk:scala-3
Draft

Add Scala 3 support#202
plokhotnyuk wants to merge 3 commits intojvican:masterfrom
plokhotnyuk:scala-3

Conversation

@plokhotnyuk
Copy link
Copy Markdown
Collaborator

@plokhotnyuk plokhotnyuk commented Apr 5, 2021

While you can use Scala 2 artifacts of dijon with Scala 3 (see CrossVersion.for3Use2_13), it could be great to have Scala 3 version that uses union types or new enums for AST representation.

@plokhotnyuk plokhotnyuk force-pushed the scala-3 branch 9 times, most recently from 489d06d to a56fd99 Compare April 12, 2021 09:25
@plokhotnyuk plokhotnyuk force-pushed the scala-3 branch 2 times, most recently from 5875bb7 to 153bdaf Compare May 1, 2021 15:58
@plokhotnyuk plokhotnyuk force-pushed the scala-3 branch 3 times, most recently from a3fb8ae to 65dd342 Compare May 14, 2021 13:03
Copy link
Copy Markdown
Owner

@jvican jvican left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM overall 👍 I wish we could reuse more code in the Scala 3 version but it might be more troubling than just copy pasting the bulk of the implementation. Feel free to merge when the CI is green.

@jvican
Copy link
Copy Markdown
Owner

jvican commented Nov 1, 2021

Are you going to finish this one @plokhotnyuk ?

@jvican
Copy link
Copy Markdown
Owner

jvican commented Nov 2, 2021

FYI @plokhotnyuk I made 0.6.0 release with the latest changes in master

@jvican
Copy link
Copy Markdown
Owner

jvican commented Feb 10, 2022

@plokhotnyuk ping

@plokhotnyuk plokhotnyuk force-pushed the scala-3 branch 2 times, most recently from 0469ebd to cacd4c7 Compare February 11, 2022 10:02
@plokhotnyuk
Copy link
Copy Markdown
Collaborator Author

Tests for Scala 3 are failing on dynamic call still... https://github.com/jvican/dijon/runs/5154360494?check_suite_focus=true

@jvican
Copy link
Copy Markdown
Owner

jvican commented Mar 8, 2022

Will take a look

@ScalaWilliam
Copy link
Copy Markdown

Would be really cool to see this library work on Scala 3 @plokhotnyuk :-)

@baldram
Copy link
Copy Markdown

baldram commented Mar 4, 2024

Hey @jvican and @plokhotnyuk . Has the situation changed over time enough that there are no barriers for Dijon to work with Scala 3 LTS?

@plokhotnyuk
Copy link
Copy Markdown
Collaborator Author

plokhotnyuk commented Mar 5, 2024

@ScalaWilliam @baldram @jvican I have no idea how Scala 3 support could be done in a source compatible way with Scala 2 yet.

More over, proposed here workaround with a pattern match on types to overcome missing support of recursive union types is not compilable with Scala 3.4.x anymore scala/scala3#18257

But the main problem is that dynamic call cannot be supported with implicit class conversions.

/cc @lbialy

@baldram
Copy link
Copy Markdown

baldram commented Mar 5, 2024

no idea how Scala 3 support could be done in a source compatible way with Scala 2 yet.

I'm wondering if a cross-build is really necessary here? Isn't it a waste of effort? Perhaps it's better to just park this repo, in its current state, under the tag "Dijon for Scala2 / Deprecated" and continue development for Scala 3 only? After all, when new libraries are created today, no one looks back at history.

@lbialy
Copy link
Copy Markdown

lbialy commented Mar 7, 2024

Can you point me towards a piece of code that poses a problem here?

@baldram
Copy link
Copy Markdown

baldram commented May 8, 2025

Can you point me towards a piece of code that poses a problem here?

Hey @plokhotnyuk in this comment #202 (comment) you've mentioned the compatibility issue. And Łukasz has asked as quoted above. And here the discussion stopped. Does this mean the library is reaching its end of life if we can’t solve this? Maybe there is still a hope, as I guess Łukasz could talk to Compiler Team if we clarify the issue in more details. (PS: I would still opt for dropping Scala 2 support here).

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.

5 participants