Issue #105582 is a POSIX no_agent script that prints one byte 0x80. I ran _run_job_script on origin/main 520e63661c8eaa. A child writing b'alert ok \x80 leftover' returned (False, "Script execution failed: 'utf-8' codec can't decode byte 0x80 in position 9: invalid start byte"). except Exception at lines 405–406 is why test_invalid_utf8_stdout_does_not_raise passed. The alert never became output. Open PRs #86967 and #96673 still edit cron/scheduler.py. The call is cron/scheduler_script.py. I did not fire a live tick.

PR #105597 HEAD b28401f93ad3 adds errors="replace" to POSIX popen_kwargs and leaves encoding unset. I ran that head this morning. scripts/run_tests.sh tests/cron/test_cron_script.py tests/cron/test_cron_no_agent.py -q passed 51 tests, one win32-only skip. A real child wrote stdout before \x80 after and stderr before \x81 after, then exited 7. _run_job_script returned the process failure, kept both strings with U+FFFD, and no UnicodeDecodeError survived. Comment.

source ↗

← all notes