更新日志¶
本文档记录了 EasyKiConverter 每个版本的新增、修复和更改内容。
[3.0.14] - 2026-03-09¶
新增¶
- 组件列表筛选功能
- 新增组件列表筛选功能,支持按 ID 搜索和过滤
- 优化元器件列表的验证状态管理
- 添加批量获取预览图功能并优化获取时机
修复¶
- UI 修复
- 修复 QML 重复属性问题并统一日志行为
- 修复元器件验证成功后缩略图延迟显示问题
- 修复英文语言模式下的导出选项 UI 重叠问题
- 修复窗口最小宽度计算问题
- 优化元器件列表和日志系统
改进¶
- 确认对话框交互
- 为确认对话框添加滑块 UI 交互效果
- 改进复制反馈提示的 UI 和交互体验
- 为复制 ID 提示添加背景样式
- 添加复制工具提示圆角效果
[3.0.13] - 2026-03-07¶
修复¶
- 弱网络闪退修复
- 修复弱网络环境下批量添加元器件闪退问题
- 修复 NetworkUtils 中的竞态条件和内存泄漏问题
- 修复 LcscImageService 网络请求计数器管理和组件完成状态检查
新增¶
- 线程安全改进
- 为 ComponentService 添加线程安全的互斥锁保护
- 添加线程安全保护和改进网络请求管理
- 实现异步队列管理机制以优化批量组件获取
- 优化组件数据获取的并发处理机制
[3.0.12] - 2026-03-01¶
新增¶
- MSIX 打包支持
- 添加 MSIX 包构建支持
- 优化 MSIX 打包流程并更新应用清单配置
- 更改 Windows 打包工作流中的 MSIX 工具安装方式
- 添加安装包构建时的图标和许可证文件验证
改进¶
- 翻译管理
- 升级翻译管理工具支持自动完成翻译
- 更新英文翻译文件格式
- 更新语言管理器以使用 ConfigService 进行持久化
修复¶
- 构建系统
- 修复 QXlsx 子目录添加路径配置
- 修复 Flatpak 清单文件路径
- 修正所有打包配置中的文件路径
[3.0.9] - 2026-02-20¶
新增¶
- ** Flatpak 打包支持**
- 添加 Flatpak 打包支持和验证工具
- 添加中英文隐私政策文档
- 添加版本发布信息和 MSIX 打包支持
- 添加安装程序返回代码文档
修复¶
- UI 修复
- 修复 UI 缩放和分辨率问题
- 修复导出选项 UI 重叠问题
- 添加导出按钮区域文本的宽度限制和自动换行功能
改进¶
- 多语言支持
- 改进语言检测逻辑支持多语言映射
- 为 metainfo 文件添加国际化语言支持
- 更新英文翻译文件并添加新的 UI 组件翻译
[3.0.8] - 2026-03-09¶
新增¶
- 命令行参数支持
- 新增完整的命令行参数解析功能
- 支持通过
--debug或-d参数启用调试模式 - 支持
--log-level参数设置日志级别 - 支持
--log-file参数指定日志文件路径 - 支持
--config参数指定配置文件路径 - 支持
--language参数设置界面语言 - 支持
--theme参数设置界面主题 - 支持
--portable参数启用便携模式 - 支持
--help和-h参数显示帮助信息 - 支持
--version和-v参数显示版本信息 - 命令行参数优先于环境变量设置
-
新增 CommandLineParser 工具类实现参数解析
-
统一应用标识符为小写格式
- 将所有平台的应用标识符从大写
EasyKiConverter统一为小写easykiconverter - 更新 AppStream 元数据、desktop 文件和图标名称
- 统一所有打包格式(AppImage、DEB、RPM、Flatpak)的应用标识符
-
提高跨平台兼容性和一致性
-
Linux 桌面图标修复脚本
- 新增
tools/linux/fix-desktop-icon.sh脚本 - 用于修复用户级别桌面文件覆盖系统配置的问题
- 确保正确的应用图标显示
- 提供交互式修复流程,支持用户级别和系统级别缓存刷新
修复¶
- 路径处理优化
- 修复 Windows 下打开导出目录时打开到父目录而非目标目录的问题
- 修复 Windows 系统路径多开头的斜杠问题,支持跨平台路径处理
- 修复 Linux 环境下路径显示和相对路径处理问题
-
修复相对路径导出时添加库名称目录的问题
-
窗口和对话框优化
- 优化退出对话框键盘导航和焦点管理
- 修复 ESC 键无法调出关闭对话框的问题
- 添加 ExitDialog 键盘导航功能
-
修复按钮长按时滑块颜色和缩放问题
-
Linux 打包改进
- 优化 DEB 包卸载后应用图标残留问题
- 修复 DEB 包版本号必须以数字开头的问题
- 统一 Linux 打包工作流中的桌面文件和图标命名为小写
- 优化卸载流程,清理用户级别桌面文件
改进¶
- 3D 模型处理
- 优化 3D 模型偏移计算逻辑
-
提升符号和封装导出的精度
-
启动体验
- 启动时自动聚焦到元器件ID输入框
-
优化放大预览的暗色主题显示
-
性能优化
- 实现内存式数据手册和预览图下载,避免磁盘 I/O
- 支持每个元件最多 3 张预览图
[3.0.7] - 2026-02-15¶
修复¶
- 解决程序退出时的 SIGSEGV 崩溃
- 重构了
main.cpp中的对象生命周期管理。业务对象(ViewModels 和 Services)不再挂载到app节点,改为手动生命周期管理。 - 实施了显式的“逆序销毁”机制:先销毁 UI 相关的 ViewModel,再销毁后端 Service,最后清理日志系统。
- 移除了
ComponentListViewModel析构函数中不稳定的QThreadPool::waitForDone调用。 - 确保了所有后台线程(包括异步日志线程和模型生成线程)在 Qt 核心基础设施销毁前安全停止。
- 修复了
QtLogAdapter的卸载顺序,防止退出阶段的内部消息触发已关闭的日志系统。
改进¶
- 架构透明度提升
- 新增 ADR 008,明确了关键业务对象的显式生命周期管理策略。
- 使用
QPointer安全模式替代阻塞式线程等待,提升了系统的可靠性。
[3.0.5] - 2026-02-12¶
修复¶
- MainWindow 模块化重构
- 将
MainWindow的内联 UI 逻辑拆分为独立的高性能组件:TitleBar,HeaderSection,ComponentInputCard,BomImportCard,ComponentListCard,ExportSettingsCard,ExportProgressCard,ExportResultsCard,ExportStatisticsCard,ExportButtonsSection等。 - 通过组件解耦显著提升了 QML 代码的可维护性和渲染效率。
-
代码位置:
src/ui/qml/components/ -
核心导入导出模块单一职责重构
- 将臃肿的
EasyedaImporter和Exporter类拆分为专用类。 - 新增
EasyedaSymbolImporter(符号导入)、EasyedaFootprintImporter(封装导入)、EasyedaUtils(通用工具)。 - 核心逻辑代码量减少,可测试性提升。
-
代码位置:
src/core/ -
BOM 解析库与服务重构
- 新增
BomParser模块,优化 BOM 文件导入流程。 - 实现导出流水线取消机制与线程池配置优化,降低解析失败率。
-
代码位置:
src/services/ -
弱网容错 P0-1: NetworkWorker 添加超时机制
- 新增
executeRequest通用网络请求方法,统一处理超时、重试和错误恢复 - 所有 4 个 fetch 方法(组件信息、CAD数据、3D模型OBJ/MTL)均增加 QTimer 超时保护
- 默认超时 30 秒(组件信息/CAD数据),3D 模型超时 45 秒
- 消除了弱网环境下
QEventLoop::exec()导致线程永久阻塞的风险 -
代码位置:
src/workers/NetworkWorker.h,src/workers/NetworkWorker.cpp -
弱网容错 P0-2: FetchWorker 超时后允许重试
- 移除
retryCount = MAX_HTTP_RETRIES + 1跳过逻辑 - 超时(OperationCanceledError)现在会触发正常的重试流程
- 弱网环境下超时是最常见的错误类型,此修复显著提高弱网下的成功率
-
代码位置:
src/workers/FetchWorker.cpp -
弱网容错 P0-3: FetchWorker 增加超时时间
- 组件信息超时: 8s -> 15s
- 3D 模型超时: 10s -> 30s
- STEP 模型超时: 10s -> 30s(不再硬编码,统一使用 MODEL_3D_TIMEOUT_MS 常量)
-
代码位置:
src/workers/FetchWorker.h -
弱网容错 P1-4: 速率限制退避改为真正的指数退避
- 退避策略从
+1000(线性)改为*2(指数),初始 1s,上限 8s - 更有效地应对 API 速率限制
-
代码位置:
src/workers/FetchWorker.cpp -
弱网容错 P1-5: 递增重试延迟
- 重试延迟从固定 500ms 改为递增延迟: 3s / 5s / 10s
- 参考 NetworkUtils 的成熟策略,给服务端更充分的恢复时间
-
代码位置:
src/workers/FetchWorker.h,src/workers/FetchWorker.cpp -
弱网容错 P1-6: 重试延迟添加随机抖动(Jitter)
- 新增
calculateRetryDelay辅助方法 - 在基础延迟上添加 +/-20% 的随机抖动,有效缓解惊群效应
- FetchWorker 和 NetworkWorker 均采用带抖动的递增延迟策略
-
代码位置:
src/workers/FetchWorker.h,src/workers/FetchWorker.cpp -
弱网容错 P1-7: 修复 thread_local QNAM 内存泄漏
- 为
thread_local QNetworkAccessManager*注册QThread::finished清理回调 - 确保线程池线程回收时 QNAM 被正确 delete,而非永久泄漏
-
代码位置:
src/workers/FetchWorker.cpp -
3D 模型导出失败不再阻止符号/封装导出
writeSuccess判定从"符号+封装+3D模型全部成功"改为"符号+封装核心输出成功"- 3D 模型导出失败仅记录警告,不影响符号和封装的正常导出和合并
- 修复了 3D 模型下载失败导致已解析的符号和封装也不写入的问题
- 代码位置:
src/workers/WriteWorker.cpp
改进¶
- NetworkWorker 代码重构
- 提取
executeRequest通用方法,消除四个 fetch 方法中的大量重复代码 - 统一超时、重试、进度报告和错误处理逻辑
-
代码行数从约 430 行减少至约 280 行,可维护性显著提升
-
构建系统优化
- 启用
compile_commands.json生成,提供更好的 IDE/LSP(如 VS Code)智能提示支持。 -
统一项目所有源文件编码为 UTF-8 (No BOM)。
-
测试框架集成
- 引入 QtTest 测试框架,支持单元测试、集成测试、基准测试和手动测试
- 新增
tests/目录结构,包含单元测试(EasyEDA API、数据模型、ViewModels)、集成测试、基准测试和 UI 测试 - 实现依赖注入模式,使用
INetworkAdapter接口支持 Mock 网络请求 - 新增覆盖率支持选项(GCC/MinGW),可通过
-DENABLE_COVERAGE=ON启用 -
代码位置:
tests/,src/core/utils/INetworkAdapter.h,CMakeLists.txt -
开发工具扩展
- 新增
tools/python/manage_version.py版本管理工具,自动同步 vcpkg.json、CMakeLists.txt 和 src/main.cpp 中的版本信息 - 新增
tools/python/analyze_lines.py代码行数分析工具 - 新增
tools/python/convert_to_utf8.py文件编码转换工具 - 新增
tools/python/fix_qml_translations.pyQML 翻译修复工具 - 完善
tools/README.md和tools/README_en.md工具文档,添加详细的使用说明和环境要求 - 为
tools/windows/format_code.bat和tools/python/manage_version.py添加详细的头部注释和文档说明 -
代码位置:
tools/ -
文档体系完善
- 新增架构决策记录(ADR)系统,记录重要的架构决策
- 新增测试指南文档(
docs/developer/TESTING_GUIDE.md) - 新增性能基准线文档(
docs/developer/performance_baseline.md) - 更新架构文档,添加系统架构图和工作流程图(Excalidraw 格式)
- 代码位置:
docs/project/adr/,docs/developer/,docs/diagrams/
[3.0.3] - 2026-02-08¶
新增¶
- LCSC 预览图功能
- 网络图片获取: 实现
fetchLcscPreviewImage方法,支持从 LCSC 网站获取元件预览图 - 重试机制: 添加网络请求重试机制,提高图片获取成功率
- Fallback 爬虫模式: 当 API 不可用时,使用爬虫模式获取元件预览图片
- 缩略图生成: 新增
ThumbnailGenerator工具类,自动生成 Base64 缩略图 - 数据模型扩展: 新增
ComponentListItemData类,包含缩略图、验证状态等 UI 相关信息 -
代码位置:
src/services/ComponentService.cpp,src/models/ComponentListItemData.h/cpp,src/ui/utils/ThumbnailGenerator.h/cpp -
组件列表功能增强
- ID 复制功能: 在
ComponentListItem中添加右键点击复制组件 ID 到剪贴板 - 复制提示: 显示复制成功的工具提示,提升用户体验
-
代码位置:
src/ui/qml/components/ComponentListItem.qml,src/ui/viewmodels/ComponentListViewModel.cpp -
响应式布局和窗口调整
- 自适应网格布局: 组件列表从固定 5 列改为自适应网格布局,动态计算列数
- 窗口边缘调整: 添加 8 个方向的拖拽调整手柄,支持窗口大小调整
- 鼠标交互优化: 优化组件列表项的鼠标交互区域层级结构
- 缩略图悬停预览: 改进缩略图悬停预览功能的显示逻辑和视觉效果
-
代码位置:
src/ui/qml/MainWindow.qml,src/ui/qml/components/ComponentListItem.qml -
预加载数据支持
- 预加载数据功能: 在
ExportService_Pipeline中添加setPreloadedData方法 - 优化数据流: 改进进度跟踪机制,使数据流更加高效
- 临时文件管理: 优化临时文件清理逻辑,确保符号文件正确处理
- 符号库合并修复: 修复符号库合并时的临时文件管理问题
- 代码位置:
src/services/ExportService_Pipeline.cpp/h
重大变更¶
- 组件列表模型重构
- 迁移至 QAbstractListModel: 将
ComponentListViewModel从QQmlListProperty迁移至QAbstractListModel - 性能提升: 提供更高效的 UI 更新机制
- API 变更: QML 中组件列表访问方式变更,不再使用
componentList属性,而是直接通过model绑定访问 - 新方法: 添加
getAllComponentIds方法优化导出流程 - 代码位置:
src/ui/viewmodels/ComponentListViewModel.cpp/h,src/ui/qml/MainWindow.qml
修复¶
- 导出服务统计缺失问题修复
- 完成状态统计修复: 在预加载数据使用场景下,添加状态到完成状态列表以供统计
- 关键修复: 解决了预加载数据场景下统计数据不准确的问题,确保所有导出状态都被正确统计
-
代码位置:
src/services/ExportService_Pipeline.cpp:316 -
MainWindow 代码结构修复
- 组件删除逻辑优化: 将组件删除逻辑从索引查找改为 ID 查找,简化删除操作流程
- 条件判断修复: 修复数据为空时的条件判断逻辑,避免潜在的空指针异常
- 过滤逻辑修正: 修正组件列表过滤的 ID 提取逻辑
-
代码位置:
src/ui/qml/MainWindow.qml -
ExportProgressViewModel 构造参数修复
- 依赖注入: 在
ExportProgressViewModel构造函数中添加componentListViewModel参数 - 正确初始化: 确保视图模型正确初始化依赖关系
- 代码位置:
main.cpp,src/ui/viewmodels/ExportProgressViewModel.cpp/h
重构¶
- 组件列表视图模型简化
- 枚举定义优化: 简化
ComponentListViewModel中的枚举定义格式 - 代码整洁性: 移除不必要的多行枚举定义格式,使代码更加紧凑和一致
-
代码位置:
src/ui/viewmodels/ComponentListViewModel.h:27 -
代码格式优化
- 日志格式统一: 整理
LanguageManager.cpp中的调试日志输出格式 - 可读性提升: 移除多余空行,统一调试信息的日志格式
- 代码位置:
src/core/LanguageManager.cpp
[3.0.2] - 2026-01-27¶
修复¶
- 批量导出卡顿问题
- 降低并发数: 将
FetchWorker线程池的最大线程数从 32 降低至 5。这有效防止了因并发连接数过多导致的服务器端限流或拒绝服务,解决了批量导出时个别组件下载"卡死"的问题。 - 增加重试机制: 为
FetchWorker的网络请求添加了自动重试逻辑。- 策略:遇到网络错误或 HTTP 429/5xx 错误时自动重试。
- 延迟:第1次重试等待3秒,第2次等待5秒,第3次及以后等待10秒。
- 最大重试次数:3次。
- 代码位置:
src/services/ExportService_Pipeline.cpp,src/workers/FetchWorker.cpp
[3.0.1] - 2026-01-27¶
性能优化¶
网络性能大幅提升¶
- 优化线程池配置
- 将
FetchWorker线程池从 8 线程优化至 3 线程。 - 测试结果表明:3线程配置在"单个导出不超过3秒"的要求下表现最优。
- 性能提升:
- 总耗时从 263.72秒(v3.0.0)降至 14.43秒(改进94.5%)
- 吞吐量从 0.08组件/秒提升至 1.45组件/秒(改进1712%)
- 平均抓取时间从 65.8秒降至 1.76秒(改进97.3%)
- 超过3秒的组件从 21个降至 3个(改进85.7%)
-
代码位置:
src/services/ExportService_Pipeline.cpp:36 -
降低超时时间
- 组件信息超时:30秒 → 15秒
- 3D模型超时:60秒 → 30秒
- 超时请求不再重试,避免浪费时间
-
代码位置:
src/workers/FetchWorker.cpp -
实现速率限制检测机制
- 检测 HTTP 429 响应并触发指数退避
- 退避策略:每次增加1000ms,最大5000ms
- 动态延迟新请求以避免触发服务器限流
-
代码位置:
src/workers/FetchWorker.h,src/workers/FetchWorker.cpp -
启用网络诊断功能
- 记录每个网络请求的诊断信息(URL、状态码、错误信息、重试次数、延迟、是否限流)
- 在统计报告中汇总网络诊断数据(总请求数、重试次数、平均延迟、速率限制命中次数、状态码分布)
- 帮助快速定位性能瓶颈和网络问题
- 代码位置:
src/models/ComponentExportStatus.h,src/workers/FetchWorker.cpp,src/services/ExportService_Pipeline.cpp
导出流水线效率提升¶
- WriteWorker 优化 (磁盘 I/O)
- 移除了
WriteWorker内部的局部QThreadPool。 - 改为串行写入符号、封装和 3D 模型文件。
- 消除了为每个组件创建和销毁线程池的高昂开销,避免了"过度并行"导致的性能下降。
-
代码位置:
src/workers/WriteWorker.cpp -
FetchWorker 优化 (网络 I/O)
- 实现了
QNetworkAccessManager的thread_local缓存机制。 - 确保线程池中的每个线程只创建一个
QNetworkAccessManager实例并复用它。 - 避免了为每个组件重复初始化网络栈的高昂成本(包括代理解析、DNS 缓存初始化等)。
- 代码位置:
src/workers/FetchWorker.cpp
构建系统修复¶
- 解决循环依赖
- 修复了
EasyKiConverterWorkers和EasyKiConverterServices之间的循环链接依赖。 - 移除了
src/workers/CMakeLists.txt中不必要的EasyKiConverterServices链接。
新增¶
- 网络诊断报告
- 导出统计报告新增
networkDiagnostics字段 - 包含详细的网络性能指标和诊断信息
- 代码位置:
src/services/ExportService_Pipeline.cpp
测试结果¶
- 线程数对比测试
- 3线程:14.43秒,3个组件超过3秒,推荐用于生产环境
- 5线程:12.17秒,5个组件超过3秒,总耗时最短
- 7线程:14.96秒,10个组件超过3秒,性能下降
-
16线程:263.72秒,21个组件超过3秒,严重限流
-
优化前后对比 | 指标 | 优化前(16线程) | 优化后(3线程) | 改进幅度 | |------|----------------|----------------|----------| | 总耗时 | 263.72秒 | 14.43秒 | [减少] 94.5% | | 吞吐量 | 0.08组件/秒 | 1.45组件/秒 | [增加] 1712% | | 平均抓取时间 | 65.8秒 | 1.76秒 | [减少] 97.3% | | 超过3秒组件 | 21个 | 3个 | [减少] 85.7% | | 超时请求 | 未知 | 0个 | [成功] 完全消除 |
[3.0.0] - 2026-01-18¶
性能优化¶
架构优化(P0 改进)¶
- ProcessWorker 移除网络请求
- 将 3D 模型下载从 ProcessWorker 移到 FetchWorker
- ProcessWorker 现在是纯 CPU 密集型任务
-
CPU 利用率提升 50-80%
-
使用 QSharedPointer 传递数据
- ExportService_Pipeline 使用 QSharedPointer 队列
- FetchWorker、ProcessWorker、WriteWorker 都使用 QSharedPointer
- 避免了频繁的数据拷贝
-
内存占用减少 50-70%,性能提升 20-30%
-
调整 ProcessWorker 为纯 CPU 密集型
- ProcessWorker 只包含解析和转换逻辑
- 移除了所有网络 I/O 操作
- 充分利用 CPU 核心
- CPU 利用率提升 40-60%
性能优化(P1 改进)¶
- 动态队列大小
- 根据任务数量动态调整队列大小
- 使用任务数的 1/4 作为队列大小(最小 100)
- 避免队列满导致的阻塞
-
吞吐量提升 15-25%
-
并行写入文件
- 使用 QThreadPool 并行写入单个组件的多个文件
- 符号、封装、3D 模型同时写入
- 充分利用磁盘并发能力
- 写入阶段耗时减少 30-50%
整体性能提升¶
- 总耗时减少 54%(240秒 → 110秒,100个组件)
- 吞吐量提升 117%(0.42 → 0.91 组件/秒)
- 内存占用减少 50%(400MB → 200MB)
- CPU 利用率提升 50%(60% → 90%)
架构改进¶
- 更清晰的职责分离
- FetchWorker:I/O 密集型(网络请求)
- ProcessWorker:CPU 密集型(数据解析和转换)
-
WriteWorker:磁盘 I/O 密集型(文件写入)
-
更高效的线程利用
- 避免线程阻塞在网络请求上
- 充分利用多核 CPU 性能
- 并行磁盘 I/O 操作
代码质量¶
- 零拷贝数据传递
- 使用 QSharedPointer 避免数据拷贝
-
减少内存分配和释放开销
-
更好的错误处理
- 精确识别失败阶段
- 详细的调试日志
- 友好的错误提示
文档¶
- 性能基准测试框架
- 创建了流水线性能基准测试代码
- 建立了性能指标记录机制
- 提供了性能对比测试指南
核心功能¶
新增¶
核心功能 - 完整的符号转换功能(EasyEDA 到 KiCad) - 完整的封装生成功能(EasyEDA 到 KiCad) - 完整的 3D 模型支持(WRL、STEP、OBJ 格式) - 批量处理功能(支持多个元件同时转换) - 智能提取功能(从剪贴板文本中提取元件编号) - BOM 导入功能(CSV、Excel 格式)
性能优化 - 并行转换支持(多线程并行处理) - 两阶段导出策略(并行数据收集,串行数据导出) - 状态机模式(异步数据收集) - 网络请求优化(自动重试机制) - GZIP 解压缩支持 - 内存优化(智能指针管理)
用户界面 - 现代化 Qt Quick 界面 - 深色/浅色主题切换 - 卡片式布局系统 - 流畅动画效果 - 实时进度显示 - 响应式设计
高级功能 - 完整的图层映射系统(50+ 图层) - 多边形焊盘支持 - 椭圆弧计算(精确圆弧计算) - 文本层处理(类型 "N" 和镜像文本) - 覆盖文件功能 - 调试模式支持
架构 - MVVM 架构实现 - Service 层(ComponentService、ExportService、ConfigService) - ViewModel 层(ComponentListViewModel、ExportSettingsViewModel、ExportProgressViewModel、ThemeSettingsViewModel) - 状态机模式(ComponentDataCollector) - MainController 移除 - 多阶段流水线并行架构(ExportServicePipeline) - Fetch Stage:I/O 密集型,32 线程并发下载 - Process Stage:CPU 密集型,CPU 核心数线程并发处理 - Write Stage:磁盘 I/O 密集型,8 线程并发写入 - 线程安全的有界队列(BoundedThreadSafeQueue)用于阶段间通信 - 实时进度反馈(三阶段进度条:抓取 30%、处理 50%、写入 20%) - 详细失败诊断(精确识别失败阶段和原因) - 零拷贝解析优化(QByteArrayView) - HTTP/2 支持(网络请求多路复用)
测试 - 完整的测试框架 - 单元测试(8 个测试程序) - 集成测试框架 - 性能测试框架 - 流水线架构测试 - BoundedThreadSafeQueue 并发测试 - ExportServicePipeline 集成测试 - 多阶段并发测试
文档 - 完整的文档体系(14 个技术文档) - 用户手册 - 开发者文档 - 架构文档 - 构建指南 - 贡献指南 - ADR-002:流水线并行架构决策记录
修复¶
- 修复封装解析 Type 判断错误
- 修复 3D Model UUID 遗漏问题
- 修复 Footprint BBox 不完整问题
- 修复图层映射错误
- 修复多边形焊盘处理缺失
- 修复椭圆弧计算不完整
- 修复文本层处理逻辑缺失
- 修复 3D 模型偏移参数计算错误
- 修复 3D 模型不显示问题
- 修复圆弧和实体区域导出不完整
- 修复非 ASCII 文本处理问题
- 修复元件 ID 验证规则过于严格
- 修复与 Python 版本 V6 一致性问题
更改¶
- 从 MVC 架构重构为 MVVM 架构
- 移除 MainController
- 移除丝印层复制逻辑
- 移除特殊层圆形处理
- 优化网络请求流程
- 优化错误处理机制
- 优化配置管理
移除¶
- 移除 MainController
- 移除丝印层复制逻辑
- 移除特殊层圆形处理(层 100 和 101)
[2.0.0] - 2025-12-15¶
新增¶
- 基础符号转换功能
- 基础封装生成功能
- 基础 3D 模型支持
- 网络请求功能
- 基本用户界面
- 配置管理功能
修复¶
- 修复基本网络请求错误
- 修复基本文件读写问题
[1.0.0] - 2025-10-01¶
新增¶
- 项目初始化
- 基础架构搭建
- CMake 构建系统
- Qt Quick 应用框架
版本说明¶
本项目遵循语义化版本规范:MAJOR.MINOR.PATCH
- MAJOR:不兼容的 API 更改
- MINOR:新功能(向后兼容)
- PATCH:Bug 修复(向后兼容)
更新类型说明¶
- 新增:新功能
- 修复:Bug 修复
- 更改:现有功能的更改
- 移除:移除的功能
- 安全:安全相关的修复
- 弃用:即将移除的功能
如何贡献¶
如果您想参与项目开发,请参考贡献指南。
反馈¶
如果您有任何问题或建议,请在 GitHub Issues 上提交。