Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
6dc2146
fix for 3307; windows launcher can run scripts with utf8 chars
philwalk Oct 25, 2025
9f7cfb5
fix for macos
philwalk Oct 25, 2025
28a1116
corrected SAVED_CODEPAGE
philwalk Oct 25, 2025
9773d17
add extensive logging to scala.cli.integration.RunTestsDefault.UTF-8
philwalk Nov 2, 2025
347b982
Merge branch 'main' into fix-for-3307
philwalk Nov 2, 2025
54e18b6
Merge branch 'VirtusLab:main' into fix-for-3307
philwalk Nov 8, 2025
9f34dcb
MacOS fixes in generate-native-image.sh; scalafmt; disable integratio…
philwalk Nov 10, 2025
8ff4cb0
native image tweaks for MacOS and Linux
philwalk Nov 10, 2025
1b6ceb4
RunTestDefinitions Linux/MacOS
philwalk Nov 11, 2025
64e066a
set utf8 registry for all windows workflows
philwalk Nov 13, 2025
88adcc7
fix format errors not caught by ./mill -i integration.test.fix
philwalk Nov 13, 2025
e396efa
add BOM to custom.reg file[skip ci]
philwalk Nov 13, 2025
8aecd4e
update windows-reg-import/action.yml
philwalk Nov 14, 2025
294c487
correct action.yml syntax error
philwalk Nov 14, 2025
8ed9dec
Merge branch 'main' into fix-for-3307
philwalk Nov 16, 2025
257ec27
revert .github/script/generate-native-image.sh
philwalk Nov 16, 2025
544240b
format with scalafmt instead of mill -i fix
philwalk Nov 16, 2025
0124e73
scalafmt build.mill.scala
philwalk Nov 16, 2025
0124dfa
simplify to minimum required changes
philwalk Nov 20, 2025
ea0e90d
Merge branch 'VirtusLab:main' into fix-for-3307
philwalk Nov 20, 2025
61ffbe4
resolve review feedback
philwalk Nov 21, 2025
61f27da
resolve review feedback[skip ci]
philwalk Nov 21, 2025
2a19322
remove unneeded code from UTF-8 integration test[skip ci]
philwalk Nov 21, 2025
a1ca9d2
update comment and run deferred ci tests
philwalk Nov 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/actions/windows-reg-import/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: windows-reg-import
description: Import a .reg file and verify those registry values (best-effort)
inputs:
reg-file:
description: "Path to the .reg file"
required: true
runs:
using: "composite"
steps:
- name: Attempt to import custom registry (best-effort)
shell: pwsh
run: |
try {
$regFile = Join-Path $env:GITHUB_WORKSPACE "${{ inputs.reg-file }}"
if (-not (Test-Path $regFile)) {
Write-Warning "Registry file not found (skipping): $regFile"
} else {
Write-Host "Importing registry from $regFile (attempting, non-fatal)"
reg import $regFile 2>&1 | ForEach-Object { Write-Host $_ }
}
} catch {
Write-Warning "Registry import failed (ignored): $_"
}

- name: Attempt to verify registry values (best-effort)
shell: pwsh
run: |
try {
$acp = (Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\CodePage' -Name ACP -ErrorAction Stop).ACP
Write-Host "ACP = $acp"
} catch {
Write-Warning "Failed to read ACP (ignored): $_"
}
try {
$eb = (Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Nls\MUILanguagePreferences' -Name EnableBetaUnicode -ErrorAction Stop).EnableBetaUnicode
Write-Host "EnableBetaUnicode = $eb"
} catch {
Write-Warning "Failed to read EnableBetaUnicode (ignored): $_"
}
Binary file added .github/ci/windows/custom.reg
Binary file not shown.
32 changes: 32 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -746,6 +746,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- uses: VirtusLab/scala-cli-setup@v1
with:
jvm: "temurin:17"
Expand Down Expand Up @@ -778,6 +782,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- name: Set up Python
uses: actions/setup-python@v6
with:
Expand Down Expand Up @@ -819,6 +827,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- name: Set up Python
uses: actions/setup-python@v6
with:
Expand Down Expand Up @@ -860,6 +872,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- name: Set up Python
uses: actions/setup-python@v6
with:
Expand Down Expand Up @@ -901,6 +917,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- name: Set up Python
uses: actions/setup-python@v6
with:
Expand Down Expand Up @@ -942,6 +962,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- name: Set up Python
uses: actions/setup-python@v6
with:
Expand Down Expand Up @@ -1518,6 +1542,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- uses: VirtusLab/scala-cli-setup@v1
with:
jvm: "temurin:17"
Expand Down Expand Up @@ -1824,6 +1852,10 @@ jobs:
with:
fetch-depth: 0
submodules: true
- name: Import custom registry and verify
uses: ./.github/actions/windows-reg-import
with:
reg-file: .github/ci/windows/custom.reg
- uses: VirtusLab/scala-cli-setup@v1
with:
jvm: "temurin:17"
Expand Down
3 changes: 2 additions & 1 deletion mill
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,8 @@ function to_bash_syntax {
if [[ $IS_WINDOWS ]]; then
# needed for coursier version < 2.1.8, harmless otherwise
IFS=$'\n'
eval "$(to_bash_syntax `"$cs" java --env --jvm temurin:17` || to_bash_syntax `"$cs" java --env --jvm openjdk:1.17.0`)"
# temurin:17 (build 17+35) doesn't support utf8 filenames, although some later 17 versions do
eval "$(to_bash_syntax `"$cs" java --env --jvm zulu:17` || to_bash_syntax `"$cs" java --env --jvm openjdk:1.17.0`)"
unset IFS
else
eval "$("$cs" java --env --jvm temurin:17 || "$cs" java --env --jvm openjdk:1.17.0)"
Expand Down
6 changes: 3 additions & 3 deletions modules/integration/src/test/scala/scala/cli/integration/RunTestDefinitions.scala
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -1077,11 +1077,11 @@ abstract class RunTestDefinitions
fileName
)
.call(cwd = root)
if (res.out.text(Codec.default).trim != message) {
pprint.err.log(res.out.text(Codec.default).trim)
if (res.out.text(Codec.UTF8).trim != message) {
pprint.err.log(res.out.text(Codec.UTF8).trim)
pprint.err.log(message)
}
expect(res.out.text(Codec.default).trim == message)
expect(res.out.text(Codec.UTF8).trim == message)
}
}

Expand Down
Loading