-
Notifications
You must be signed in to change notification settings - Fork 594
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
Ongoing Scala 3 migration effort #4079
Conversation
… 3 easily pre213 macro is broken and cannot be repaired. Maybe we'll need a simple compiler plugin for Scala 3 to redo that functionality.
Up to c18fa929ebccf583f9d8d27a0c2588516ed75872
But at least make it compile for Scala 3
If all parser sources are enabled, Scala 3 still gets into an unlimited loop. A relatively simple (though, nested) Parser that shows this behavior is |
Hello, I started working on the "Enable |
Great, thanks! |
I started working on the parsers. At least for now I have found out that that there's no infinite loop but the compilation time grows very quickly when a rule gets just slightly more complicated |
I've been noodling around with akka-http-core and found that if there were more than two non-literal subrules in a parser chained with |
Hi @jrudolph, @raboof, @jchyb, @hughsimpson, Thank you for your contribution! We really value the time you've taken to put this together. We see that you have signed the Lightbend Contributors License Agreement before, however, the CLA has changed since you last signed it. |
Hi @jrudolph, @raboof, @jchyb, Thank you for your contribution! We really value the time you've taken to put this together. We see that you have signed the Lightbend Contributors License Agreement before, however, the CLA has changed since you last signed it. |
@jrudolph Any way of trying out akka-http snapshot artifacts for scala-3? |
Hi @jrudolph, @raboof, @jchyb, Thank you for your contribution! We really value the time you've taken to put this together. We see that you have signed the Lightbend Contributors License Agreement before, however, the CLA has changed since you last signed it. |
Not yet, for now you would have to build your own snapshot out of this branch. |
Manually verified that jchyb has signed the CLA (and obviously jrudolph and raboof had since they were on the team) The other failure is Fossa, ignoring that and merging. |
Is there any chance this gets backported to 10.2.x? |
No, we will only address critical security updates and critical bugs in the 10.2 series (as announced by Jonas here: https://discuss.lightbend.com/t/2-6-x-maintenance-proposal/9949/2 ) |
@johanandren I remember that there used to be a maven repository containing akka nightly build jars. Google is not helping me right now, but I have used that once in the past. |
Those are at https://oss.sonatype.org/content/repositories/snapshots/com/typesafe/akka/ (further documented at https://doc.akka.io/docs/akka-http/current/contributing.html#snapshots) |
thanks @raboof ! |
@mushtaq now out in a first milestone release on maven central 10.5.0-M1 |
Awesome, thank you! |
@johanandren I tried the milestone, but this single crashed the compiler! $ echo demo.sc
//> using scala "3.2.1"
//> using lib "com.typesafe.akka::akka-http:10.5.0-M1"
println(akka.http.scaladsl.model.HttpEntity)
$ scala-cli compile demo.sc
Compiling project (Scala 3.2.1, JVM)
exception occurred while compiling /Users/mushtaqahmed/projects/scala3/scripts/.scala-build/project_0676cca331-7fb9ff8688/src_generated/main/akka-http-compiler-crash.scala
Error compiling project (Scala 3.2.1, JVM)
Error: Unexpected error when compiling project_0676cca331-7fb9ff8688: 'assertion failed'
Compilation failed Should I open an issue? |
Please do, it's nothing we were aware of. |
Done #4194 |
Projects can already use Akka HTTP with Scala 3 by using CrossVersion.for3Use2_13, but for libraries that is not a good solution. This PR is about providing 'native' Scala 3 artifacts for Akka HTTP.
Commits are supposed to stay, so let's try to use reasonable commits. Changes can be PR'd against this branch.
Here are some guidelines about what we want to achieve:
Tasks:
scala-2
toscala
directory, fixing issues in the process scala3: compile akka-http-core and pass all its tests #4097@pre213
annotation (or wait until Scala 2.12 is dropped) Scala 3: edit sources on-the-fly in sbt to support@pre213
methods in shared source code #4113akka-http
module for Scala 3 (currently disabled in Scala 3) and make main code compile @jchyb3.0-migration
compiler option Scala 3: Remove 3.0-migration compiler option from all modules #4114main
(or whatever we call the 10.2.x branch) so we minimize the diff between 10.2.x and 10.3.x for easier backporting later onFor now start sbt with
sbt -Dakka.build.akkaVersion=2.6.18 ++3.1.1 shell