You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After I got my hands on a windows machine, I found out that the Frege Repl is stuck in an endless loop if started with gradle:
No Endless Loop without Gradle but Unicode Problems
However, if you start it directly with java, the Frege Repl works but unicode does not (e.g. German umlaute like �äöü are displayed as question marks):
First Hypothesis: Unicode Problem leads to Endless Loop
Short summary:
On macOS and Linux the default Charset is UTF-8 and Java will choose the default charset depending on the locale. On Windows however, the default charset is windows-1252 and Java will choose the default charset dependent on the active codepage.
This leads to the wrong encoding of äöü as ? on windows. Unfortunately this was not the root cause for the endless loop.
Second Hypothesis and Lesson Learned: Always Search First if Issue Already Exists
The text was updated successfully, but these errors were encountered:
tricktron
changed the title
Functional Test fail on Windows Only
Functional Test fail on Windows Only (Unicode on Java is a Mess)
Dec 4, 2021
tricktron
changed the title
Functional Test fail on Windows Only (Unicode on Java is a Mess)
Functional Test fail on Windows Only (Unicode on Java with Gradle is a Mess)
Dec 4, 2021
Unicode on Java with Gradle is a mess but let's start from the beginning:
Problem
The functionalTest task times out on windows only:
I have started to debug this on a
new branch: #7:
It seems that the new
replFrege
task introduced the bug because running its single test:https://github.com/tricktron/frege-gradle-plugin/blob/8fed7811e535d3f8892ea16f7587e461ef1ee98e/src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java#L366-L375
already fails.
For the changed files see: https://github.com/tricktron/frege-gradle-plugin/pull/6/files
Windows Endless Loop With Gradle, Unicode works
After I got my hands on a windows machine, I found out that the Frege Repl is stuck in an endless loop if started with gradle:
No Endless Loop without Gradle but Unicode Problems
However, if you start it directly with java, the Frege Repl works but unicode does not (e.g. German umlaute like �äöü are displayed as question marks):
First Hypothesis: Unicode Problem leads to Endless Loop
See gradle/gradle#19235.
Short summary:
On macOS and Linux the default Charset is UTF-8 and Java will choose the default charset depending on the locale. On Windows however, the default charset is windows-1252 and Java will choose the default charset dependent on the active codepage.
This leads to the wrong encoding of äöü as ? on windows. Unfortunately this was not the root cause for the endless loop.
Second Hypothesis and Lesson Learned: Always Search First if Issue Already Exists
See jline/jline2#245
Short summary:
The terminal started with
replFrege --console plain
is not correctly recognised by jline2.Setting the
jline.terminal
property tonone
should work as a workaround. See https://github.com/jline/jline2/wiki/Terminal-Factory-Configuration.The text was updated successfully, but these errors were encountered: