新增:
- zstd 后端自动选择: 3.14+ 用标准库 compression.zstd, 更早版本回落 zstandard
- ZipFile 四个数据路径(extractall/extract/write/writestr)均按未压缩字节计进度
- file_entar 透传压缩参数; 新增 read_mode_for / ZSTD_SUFFIXES
- 新增 benchmarks/zstd_vs_xz.py, 文档里的压缩数字可复现
修复:
- TarFile.add 多次调用时进度条 total 不累加, 进度会冲过 100%
- 读取 zstd 归档改走显式 r:zst, 避免 r:* 吞掉可执行的报错提示
- allfile 补齐 .taz/.tbz/.tbz2/.tb2 后缀
- ConcurrentWriteFile.write 把阻塞入队移出状态锁 (283ms → 51ms),
并用在途计数保证 close() 不丢已受理的写入
变更:
- 更正「zst 比 xz 大 5%」的说法, 改为按语料分类: +9% / +22% / +41%
- ReadFileWrapper 与 FileWrapper 合并为 utils.progress.ProgressReader
- CI 补齐 3.11/3.13/3.14 与无可选依赖的 job, 并纳入 mypy
废弃:
- ConcurrentWriteFile 的 timeout 参数
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>