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
fix: resolve Windows Unicode encoding errors in CI workflow verification scripts
**Unicode Encoding Fixes:**
- Replace Unicode emojis with ASCII alternatives in CI verification scripts to prevent Windows console encoding errors
- Add PYTHONIOENCODING=utf-8 environment variable to all Python steps for proper Unicode handling
- Fix UnicodeEncodeError: 'charmap' codec can't encode character '\u2705' on Windows Server
**Specific Changes:**
1. Build Python extension verification script:
- Replace (U+2705) with [OK] for success messages
- Replace (U+274C) with [ERROR] for error messages
- Replace (U+26A0) with [WARN] for warning messages
2. Fallback test verification:
- Replace with [OK] in success message
3. Environment variable additions:
- Add PYTHONIOENCODING=utf-8 to Build Python extension step
- Add PYTHONIOENCODING=utf-8 to Run Python tests step
- Add PYTHONIOENCODING=utf-8 to Test pure Python fallback step
- Add PYTHONIOENCODING=utf-8 to Run integration tests step
**Cross-Platform Compatibility:**
- ASCII alternatives work on all platforms (Ubuntu, Windows, macOS)
- UTF-8 encoding ensures Unicode characters in integration tests display correctly
- Maintains clear status reporting while preventing encoding errors
- Preserves all verification functionality
**Verification:**
- Local testing confirms ASCII alternatives work correctly on Windows
- UTF-8 encoding allows integration test script to run without Unicode errors
- All verification scripts maintain same functionality with improved compatibility
**Root Cause:** Windows console uses cp1252 encoding by default, which cannot display Unicode emoji characters ( U+2705, U+274C, U+26A0) used in verification scripts.
**Solution:** Dual approach - ASCII alternatives for inline scripts + UTF-8 encoding environment variable for external scripts that use Unicode characters.
0 commit comments