Skip to content

Scala 3 / Dotty Support #55

@ekrich

Description

@ekrich

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.

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.

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.

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.

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions