Release v0.13.3
UI 重构 - 自定义 Spinner 渲染循环 + 流式输出代码围栏清理
使用 console crate 替换基于 indicatif 的 spinner,实现终端宽度感知的自定义渲染循环。同时修复流式输出中的代码围栏残留和周统计条形图对齐问题。
变更
Spinner 重写
- 用自定义异步渲染循环(
tokio::spawn)替换indicatifspinner - 通过
console::truncate_str()实现终端宽度感知的消息截断 - 正确计算 reflow 场景(终端调整大小)下的物理行数
- 基于 ANSI 转义序列的 finish/drop 清理,消除残留输出
- 新增依赖:
console0.16
发布流程
- 重新排列 CI 发布任务顺序:Homebrew tap 更新现在等待
publish-release完成后再执行,确保资源可用
修复
流式输出代码围栏清理
- LLM 生成的代码围栏(
```)在流式输出期间被打印后,现在会在生成完成时被擦除并替换为清理后的消息 - 新增
StreamingOutput::redisplay_if_cleaned()使用 ANSI 转义序列擦除原始输出并重新显示干净版本 - 新增 6 个单元测试覆盖行擦除计算和重新显示行为
周统计条形图对齐
- 修复
stats周视图中条形图未对齐的问题:通过显式 padding 计算实现条形和数字的正确对齐
升级
bash
# Homebrew
brew upgrade gcop-rs
# Cargo
cargo install gcop-rs
# pip
pip install --upgrade gcop-rs