Skip to content

GraphViz v1.2.0

Choose a tag to compare

@SiriLee SiriLee released this 17 Jun 09:47
· 43 commits to main since this release

GraphViz v1.2.0 发行说明

发布日期: 2026-06-17
版本: v1.2.0
仓库: https://github.com/SiriLee/GraphViz
下载: https://github.com/SiriLee/GraphViz/releases/tag/v1.2.0


v1.2.0 变更日志

新增功能

帮助菜单

新增"帮助(&H)"菜单,包含三项功能:

  • 检查更新:异步查询 GitHub Releases API,比较本地版本与最新 Release。启动后自动检查(延迟 2s,非阻塞),菜单项支持手动触发。发现新版本时状态栏持久提示;已是最新或网络异常时 5s 后自动消失。
  • 打开下载页:调用系统默认浏览器打开 GitHub Releases 页面。
  • 关于:显示版本号、项目简介、Qt 运行时版本、GitHub 链接和 MIT 许可证。

更新检查器 (UpdateChecker)

  • 独立的 QObject 子类,封装 QNetworkAccessManager 异步 HTTP 请求
  • 语义化版本比较:去除 v 前缀,按 major.minor.patch 字典序比较,解析失败 fail-closed
  • 支持系统代理:调用 QNetworkProxyFactory::setUseSystemConfiguration(true),VPN 智能/全局模式均可正常访问 GitHub API

工程修复

  • main.cpp 硬编码版本号 "1.1.0" 改为 GRAPHVIZ_VERSION 宏,与 CMake 版本自动同步

测试方案

功能 操作 预期
启动自动检查 启动应用,等待 2s 状态栏:"正在检查更新..." → "已是最新版本" → 5s 后恢复
手动检查 帮助 → 检查更新 同上
发现新版本 创建更高版本 Release 后启动 状态栏持久显示"发现新版本 vX.Y.Z — ..."
打开下载页 帮助 → 打开下载页 默认浏览器打开 GitHub Releases
关于对话框 帮助 → 关于 显示版本号、Qt 版本、GitHub、MIT License
智能代理 VPN 智能模式 + 检查更新 正常获取更新(系统代理生效)
断网 断网 + 检查更新 "检查更新失败: ..." → 5s 后恢复
窗口标题 启动 显示 GraphViz v1.2.0 — 图可视化工具

修改文件

CMakeLists.txt              # 版本 1.2.0 + Qt6::Network
README.md                   # 新增 v1.2.0 帮助菜单文档
src/main.cpp                # 系统代理 + 版本号修复
src/gui/MainWindow.h/cpp    # 帮助菜单 + UpdateChecker 集成
src/gui/UpdateChecker.h     # 新增 — 更新检查器头文件
src/gui/UpdateChecker.cpp   # 新增 — GitHub API + 版本比较实现

系统要求

  • Windows 10/11 (64-bit)
  • 无需安装 Qt — Portable 版解压即用

技术栈

C++17 · Qt 6 (Widgets + Network) · CMake · MinGW-w64 · GitHub Releases API