Immortal 1.42.1 — Windows provisioning fix
A provisioning-only hotfix. The app is unchanged from 1.42 (same APK, same versionCode) — there is nothing to update on already-provisioned Portals. This only matters if you are setting up a Portal from Windows.
Fixed
Provision-Portal.batcrashed on Windows withMissing closing '}' in statement blockatfunction Grant-Perms. Three em dashes (—) had slipped intoprovision.ps1in the 1.42 provisioning hardening. Windows PowerShell 5.1 (what the.batruns) reads the file as ANSI and mis-decodes one of them inside a string into a phantom quote, which breaks parsing. macOS/Linux (provision.sh) were never affected. The script is now pure ASCII and parses identically on Windows PowerShell 5.1 and PowerShell 7.
Won't happen again
- CI now parses
provision.ps1under real Windows PowerShell 5.1 on a Windows runner (the previous check only ran PowerShell 7, which reads UTF-8 correctly and never saw the bug), plus a guard that rejects any non-ASCII byte in the Windows-executed scripts.
Getting the fix
- Download
immortal-provisioning-1.42.1.zipbelow, or re-pull theprovisioning/folder from the repo. - Already on Windows and mid-setup? Run this once in the Provisioning folder, then re-run
Provision-Portal.bat:$p="$PWD\provision.ps1";$t=[IO.File]::ReadAllText($p,[Text.Encoding]::UTF8);[IO.File]::WriteAllText($p,($t -replace [char]0x2014,'-'),[Text.ASCIIEncoding]::new())
immortal-1.42.apk is included unchanged for convenience.