59 lines
3.0 KiB
Markdown
59 lines
3.0 KiB
Markdown
# CHANGELOG
|
|
|
|
## v1.0.9 (2026-05-09)
|
|
- **基础设施对齐**:
|
|
- 升级 `apigo.cc/go/log` 至 `v1.1.13`。
|
|
- 确保与 `log` 包最新的“绝对索引”和“强制 Reset 契约”兼容。`http` 包不涉及自定义日志类型,故无代码变更。
|
|
|
|
## v1.0.8 (2026-05-08)
|
|
- **性能优化 (Memory Efficiency)**:
|
|
- 重构 `Multipart` 处理逻辑,采用 `io.Pipe` 实现流式上传,彻底解决大文件上传时的内存撑爆问题。
|
|
- 引入 `writeMultipartPart` 与 `writeMultipartFile` 辅助函数,优化分块写入逻辑。
|
|
- **功能增强 (Unified Type Handling)**:
|
|
- 统一 `do` 方法内部逻辑,通过类型分组消除冗余代码。
|
|
- 将 `map[string][]any` 提升为 `Multipart` 处理,确保复杂/混合数据类型的正确流式发送。
|
|
- 完善对 `url.Values`, `map[string][]string`, `Form` 的统一表单编码支持。
|
|
- 优化 `Multipart` 对多值字段的支持,允许在 `Multipart` 映射中使用 `[]string` 或 `[]any` 发送同名多参数。
|
|
- **基础设施对齐**:
|
|
- 更新 `go/encoding` 至 v1.0.6。
|
|
- 移除 `bufferPool` 在 `Multipart` 中的使用,转向更高效的流式 IO。
|
|
|
|
## v1.0.6 (2026-05-07)
|
|
- 内部版本,优化 Header 自动透传逻辑。
|
|
|
|
## v1.0.5 (2026-05-06)
|
|
- 内部版本,增强对 H2C 场景下的连接池管理。
|
|
|
|
## v1.0.4 (2026-05-05)
|
|
- **基础设施对齐**:
|
|
- 更新 `go/file` 至 v1.0.5, `go/log` 至 v1.1.1, `go/config` 至 v1.0.5。
|
|
- `PostMultipart` 现在通过 `go/file` API 透明支持物理文件与内存文件系统的读取。
|
|
- **鲁棒性增强**:
|
|
- 优化 `doByRequest` 中对 `X-Forwarded-For` 的处理,增强 `RemoteAddr` 解析的健壮性。
|
|
- **代码规范**:
|
|
- 统一变量命名规范,重命名冗余的单字母变量,提升代码可读性。
|
|
|
|
## v1.0.3 (2026-05-03)
|
|
- **API 变更**: 将泛型解析函数 `Bind[T]` 重命名为 `To[T]`,以保持与全局 API 风格一致。
|
|
- **文档优化**: 移除冗余的 `AI.md`,更新 `README.md` 中的 API 示例。
|
|
|
|
## v1.0.2 (2026-05-03)
|
|
- **Breaking Changes & API Renames**:
|
|
- `ToT` 重命名为 `Bind` (泛型解析)。
|
|
- `Result.Arr` 重命名为 `Result.Slice`。
|
|
- `MPost` 重命名为 `PostMultipart`。
|
|
- `GlobalHeaders` 字段私有化,改为通过 `SetGlobalHeader` / `GetGlobalHeader` 进行线程安全操作。
|
|
- **New Features**:
|
|
- **并行下载**: `Download` 方法现在支持并行分段下载,可通过 `client.MaxConnsPerHost` 控制并发度。
|
|
- **性能优化**: 引入 `sync.Pool` 复用 `bytes.Buffer`,降低高并发下的内存分配开销。
|
|
- **Improvements**:
|
|
- 优化 `PostMultipart` 实现,支持更清晰的错误处理。
|
|
- 统一内部 Header 透传逻辑,采用更高效的 slice 追加方式。
|
|
|
|
## v1.0.1 (2026-05-03)
|
|
- 重构 `Download` 逻辑,使用 `offsetWriter` 解决重试场景下的数据偏移风险。
|
|
- 迁移测试至 `http_test` 独立包。
|
|
|
|
## v1.0.0 (2026-05-02)
|
|
- 从 `github.com/ssgo/httpclient` 迁移完成。
|