mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-04-30 17:48:27 -05:00
fix: set UTF-8 encoding in Windows Docker containers
Add PYTHONIOENCODING=utf-8 env var to all Windows Docker run commands, and set console/output encoding to UTF-8 in the build script. Fixes UnicodeEncodeError for characters like ≈ (\u2248) that the default Windows code page (cp1252) cannot encode.
This commit is contained in:
7
.github/workflows/book-build-container.yml
vendored
7
.github/workflows/book-build-container.yml
vendored
@@ -543,6 +543,7 @@ jobs:
|
|||||||
|
|
||||||
docker run --rm `
|
docker run --rm `
|
||||||
-e PYTHONPATH=C:\workspace `
|
-e PYTHONPATH=C:\workspace `
|
||||||
|
-e PYTHONIOENCODING=utf-8 `
|
||||||
-v "$($PWD.Path):C:\workspace" `
|
-v "$($PWD.Path):C:\workspace" `
|
||||||
-w "C:\workspace\book\quarto" `
|
-w "C:\workspace\book\quarto" `
|
||||||
${{ env.CONTAINER_IMAGE }} `
|
${{ env.CONTAINER_IMAGE }} `
|
||||||
@@ -576,6 +577,9 @@ jobs:
|
|||||||
# Write build script to a file to avoid pipe/stdin issues
|
# Write build script to a file to avoid pipe/stdin issues
|
||||||
$scriptContent = @'
|
$scriptContent = @'
|
||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
||||||
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
||||||
|
chcp 65001 | Out-Null
|
||||||
Write-Host "📋 Working directory: $(Get-Location)"
|
Write-Host "📋 Working directory: $(Get-Location)"
|
||||||
Write-Host "📋 Listing config files:"
|
Write-Host "📋 Listing config files:"
|
||||||
Get-ChildItem config\_quarto-*.yml | ForEach-Object { Write-Host " $_" }
|
Get-ChildItem config\_quarto-*.yml | ForEach-Object { Write-Host " $_" }
|
||||||
@@ -607,6 +611,7 @@ jobs:
|
|||||||
|
|
||||||
docker run --rm `
|
docker run --rm `
|
||||||
-e PYTHONPATH=C:\workspace `
|
-e PYTHONPATH=C:\workspace `
|
||||||
|
-e PYTHONIOENCODING=utf-8 `
|
||||||
-v "$($PWD.Path):C:\workspace" `
|
-v "$($PWD.Path):C:\workspace" `
|
||||||
-w "C:\workspace\book\quarto" `
|
-w "C:\workspace\book\quarto" `
|
||||||
${{ env.CONTAINER_IMAGE }} `
|
${{ env.CONTAINER_IMAGE }} `
|
||||||
@@ -692,6 +697,7 @@ jobs:
|
|||||||
|
|
||||||
docker run --rm `
|
docker run --rm `
|
||||||
-e PYTHONPATH=C:\workspace `
|
-e PYTHONPATH=C:\workspace `
|
||||||
|
-e PYTHONIOENCODING=utf-8 `
|
||||||
-v "$($PWD.Path):C:\workspace" `
|
-v "$($PWD.Path):C:\workspace" `
|
||||||
-w "C:\workspace\book\quarto\${{ matrix.output_dir }}" `
|
-w "C:\workspace\book\quarto\${{ matrix.output_dir }}" `
|
||||||
${{ env.CONTAINER_IMAGE }} `
|
${{ env.CONTAINER_IMAGE }} `
|
||||||
@@ -788,6 +794,7 @@ jobs:
|
|||||||
|
|
||||||
docker run --rm `
|
docker run --rm `
|
||||||
-e PYTHONPATH=C:\workspace `
|
-e PYTHONPATH=C:\workspace `
|
||||||
|
-e PYTHONIOENCODING=utf-8 `
|
||||||
-v "$($PWD.Path):C:\workspace" `
|
-v "$($PWD.Path):C:\workspace" `
|
||||||
-w "C:\workspace\book\quarto\${{ matrix.output_dir }}" `
|
-w "C:\workspace\book\quarto\${{ matrix.output_dir }}" `
|
||||||
${{ env.CONTAINER_IMAGE }} `
|
${{ env.CONTAINER_IMAGE }} `
|
||||||
|
|||||||
Reference in New Issue
Block a user