Skip to content

Unexpected Type error when checking a Java type, currently only seen on CI #10250

Open
@radeusgd

Description

@radeusgd

I have been getting the following error on the CI: https://github.com/enso-org/enso/actions/runs/9464904329/job/26073226464?pr=10229#step:7:1085

An unexpected panic was thrown: Type error: expected the result of `to_java_charset` to be java.nio.charset.Charset, but got sun.nio.cs.UTF_8.

        at <enso> Encoding.to_java_charset(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Text/Encoding.enso:92-95)
        at <enso> Text.bytes<arg-2>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Text/Extensions.enso:745:44-67)
        at <enso> Text.bytes(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Text/Extensions.enso:745:14-67)
        at <enso> Text.write(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/System/File/Write_Extensions.enso:59:13-43)
        at <enso> Encoding_Spec.add_specs.Encoding_Spec.add_specs<arg-1>(/runner/_work/enso/enso/test/Base_Tests/src/Data/Text/Encoding_Spec.enso:172:17-94)
        at <enso> null(Internal)
        at <enso> case_branch.case <internal-1017>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Group.enso:28:61-64)
        at <enso> Helpers.execute_spec_code<arg-1>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:57:18-34)
        at <enso> Panic.catch(Internal)
        at <enso> Panic.type.recover.<internal-975>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Panic.enso:191-193)
        at <enso> Panic.catch(Internal)
        at <enso> Panic.type.recover(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Panic.enso:188-193)
        at <enso> Helpers.execute_spec_code(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:56-60)
        at <enso> case_branch<arg-3>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:48:37-63)
        at <enso> case_branch<arg-1>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:48:13-64)
        at <enso> Runtime.no_inline(Internal)
        at <enso> Duration.type.time_execution(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Time/Duration.enso:131:18-43)
        at <enso> case_branch(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:47-48)
        at <enso> Helpers.run_spec(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:46-49)
        at <enso> case_branch.test_results(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:27:24-36)
        at <enso> Array_Like_Helpers.map.Array_Like_Helpers.map(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Internal/Array_Like_Helpers.enso:249:45-66)
        at <enso> Array_Like_Helpers.vector_from_function.wrapped_function(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Internal/Array_Like_Helpers.enso:89:18-27)
        at <enso> Array_Like_Helpers.vector_from_function(Internal)
        at <enso> Array_Like_Helpers.vector_from_function(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Internal/Array_Like_Helpers.enso:104:15-68)
        at <enso> Array_Like_Helpers.map(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Internal/Array_Like_Helpers.enso:249:5-79)
        at <enso> Vector.map(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Vector.enso:703:9-56)
        at <enso> case_branch(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:24-30)
        at <enso> Helpers.run_specs_from_group(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Helpers.enso:21-36)
        at <enso> case_branch(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Suite.enso:97:35-92)
        at <enso> Suite.run_with_filter.junit_sb_builder(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Suite.enso:95-101)
        at <enso> Array_Like_Helpers.each.Array_Like_Helpers.each(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Internal/Array_Like_Helpers.enso:289:9-24)
        at <enso> Range.each.go<arg-1>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Range.enso:262:36-51)
        at <enso> Range.each.go<arg-2>(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Range.enso:262:21-52)
        at <enso> Range.each.go(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Base/2024.2.1-dev/src/Data/Range.enso:261-263)
        at <enso> Test_Reporter.wrap_junit_testsuites(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Test_Reporter.enso:26:14-19)
        at <enso> Suite.run_with_filter(/runner/_work/enso/enso/built-distribution/enso-engine-2024.2.1-dev-linux-amd64/enso-2024.2.1-dev/lib/Standard/Test/2024.2.1-dev/src/Suite.enso:91-101)
        at <enso> Main.main(/runner/_work/enso/enso/test/Base_Tests/src/Main.enso:182:5-32)

This is a Type error that says that sun.nio.cs.UTF_8 does not pass a -> Charset typecheck (checking for Java class java.nio.charset.Charset). Surely, sun.nio.cs.UTF_8 is a subclass of java.nio.charset.Charset. Moreover, in most cases (e.g. on my local computer) this typecheck does correctly pass without any errors. So I suspect the non-determinism may be caused by some specialization issue.

Currently I couldn't find any other repro than this CI run.

Metadata

Metadata

Labels

Type

No type

Projects

Status

📤 Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions