65 lines
1.7 KiB
Markdown
65 lines
1.7 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to this project will be documented in this file.
|
||
|
||
## [2.1.0] - 2025-11-03
|
||
|
||
### 🎉 主要新特性
|
||
|
||
#### 多版本 API 支持
|
||
- 支持解析多个 Swagger 文档 URL(v1/v2/v3...)
|
||
- API 文件按版本自动分目录(api/v1/、api/v2/)
|
||
- V1 版本类名保持简洁(不加后缀,如 `MobileManagerApi`)
|
||
- V2+ 版本类名添加版本号后缀(如 `MobileManagerApiV2`)
|
||
- ApiClient 提供清晰的版本化访问器
|
||
|
||
#### 模型智能分类
|
||
- 新增 `ModelUsageType` 枚举(request/response/common/unknown)
|
||
- 自动分析 Swagger paths 判定模型实际用途
|
||
- 精确区分请求参数和返回结果
|
||
|
||
#### 目录结构优化
|
||
- `api_models/enums/` - 枚举类型
|
||
- `api_models/request/` - 请求模型
|
||
- `api_models/result/` - 响应模型
|
||
- `api_models/parameters/` - 查询参数类
|
||
- 每个子目录自动生成 `index.dart` 便于导入
|
||
|
||
### ✨ 改进
|
||
|
||
#### 默认值处理
|
||
- 响应模型的 List 类型自动添加 `@JsonKey(defaultValue: [])`
|
||
- 请求模型不添加默认值,避免影响后端接收
|
||
- 更安全的 null 值处理
|
||
|
||
#### 导入策略
|
||
- API 文件统一使用 `import '../../api_models/index.dart'`
|
||
- 利用 Dart tree-shaking,不影响应用大小
|
||
- 简化导入管理,提高可维护性
|
||
|
||
### 🔧 配置变更
|
||
- `SwaggerConfig.swaggerJsonUrls` 现在支持多个 Swagger 文档 URL
|
||
- 移除了单独的 `swaggerJsonUrl` 配置项
|
||
|
||
### 📝 文档
|
||
- 新增 `CANCELTOKEN_USAGE_GUIDE.md` - CancelToken 使用指南
|
||
- 新增 `CHANGELOG_CANCELTOKEN.md` - CancelToken 功能变更日志
|
||
|
||
---
|
||
|
||
## [2.0.1] - 2025-10-XX
|
||
|
||
### 改进
|
||
- 性能优化和 bug 修复
|
||
- 代码质量提升
|
||
|
||
---
|
||
|
||
## [2.0.0] - 2025-09-XX
|
||
|
||
### 重大变更
|
||
- 项目重构
|
||
- 支持 Retrofit
|
||
- 优化代码生成逻辑
|
||
|