fix: 部署脚本输出缓冲导致日志不实时打印的问题

io.TextIOWrapper 默认使用块缓冲,子脚本长时间输出时被缓冲不显示。
添加 line_buffering=True 确保每行实时刷新到终端。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-21 22:18:11 +08:00
parent 623dd55696
commit 37fbd6671d
+2 -2
View File
@@ -29,8 +29,8 @@ from pathlib import Path
# 强制 stdout/stderr 使用 UTF-8 编码,避免 Windows GBK 编码错误
if hasattr(sys.stdout, 'buffer'):
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8', errors='replace')
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace', line_buffering=True)
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8', errors='replace', line_buffering=True)
# ============================================================================
# 配置