-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Blockers
This issue is a overall issue to keep track of Dotty support. Different PRs are being worked on and merged to master as long as the changes are backward compatible.
- Dotty backend does not generate serialVersionUID Dotty backend does not generate serialVersionUID scala/scala3#7319
Fix was merged in 0.20.0-RC1
so we have serialization but the output is not the same.
- Investigate serialization difference. These seem to be caused by the inability to assign an
Enum
to a value running into the following Bad type operand on stack errors or the like.
Blocked on the following issues.
- This is the closest issue - Compiling code with Enums in without doing a clean compile causes runtime VerifyError scala/scala3#6664 which is part of this issue.
- Enum Improvements Epic Enum Improvements Epic scala/scala3#7501
- Maybe this is the issue? Singleton enum cases (marked
Serializable
) are incorrectly serialized scala/scala3#9179
Update: 9-2-2020 - Dotty 0.27.0-RC1 - One test fails - org.ekrich.config.impl.ValidationTest.validationFailedSerializable
Error: java.io.NotSerializableException: org.ekrich.config.impl.SimpleConfigOrigin
Ignored for now - needs investigating.
- Found the issue - Serialization fails when @transient val is passed to constructor scala/scala3#9881
This is currently not passing the tests due to a Callable[Config] that produces a value correctly but does not get assigned correctly. This call returns a config - https://github.com/ekrich/sconfig/blob/topic/dotty2/sconfig/shared/src/main/scala/org/ekrich/config/impl/ConfigImpl.scala#L54 when debugged from here - https://github.com/ekrich/sconfig/blob/topic/dotty2/sconfig/shared/src/main/scala/org/ekrich/config/impl/ConfigImpl.scala#L353-L365 - but then always falls through to this code - https://github.com/ekrich/sconfig/blob/topic/dotty2/sconfig/shared/src/main/scala/org/ekrich/config/impl/ConfigImpl.scala#L65-L66
The above has been reported and considered.
- Miscompilation: When a
try
expression mutating avar
is lifted, incorrect code is generated Miscompilation: When atry
expression mutating avar
is lifted, incorrect code is generated scala/scala3#7356
This code now has been modified to avoid this problem so the code will work and test. See 2ae7d88
Java Blockers
These are lower priority as Java can use the Java API but these keep all the functionality from working.
- Do not autoimport scala.* when parsing .java files Do not autoimport scala.* when parsing .java files scala/scala3#7312 Fixed as of
0.27.0-bin-20200810-74ba21c-NIGHTLY
-
@vararg
annotation when called from Java does not compile @vararg annotation when called from Java does not compile scala/scala3#7212