Perforce QAC 2025.4 提供了一个新的最小化安装包,以简化 CI/CD 环境的部署,并包含分析改进,例如扩展了针对 Windows API 的动态内存分析。Visual Studio Code 扩展也已更新,为桌面用户提供了 AI 辅助的代码修复功能,利用 QAC 高质量的分析结果为建议的修复提供信息,从而提供更快速的查找和修复工作效率。
其他增强功能包括改进了在单个项目中处理多个合规性模块的能力,以及更好地解析 C++17 代码,特别是与类模板参数推导和重载决议相关的部分。Perforce Validate 的更新包括完成了 Web 门户的重塑品牌工作,在分析结果中移除了对 Helix QAC 的引用。
用于 CI/CD 部署的简化安装包
QAC 安装程序当前提供了一个精简脚本来移除包的某些部分并减小安装占用空间。为了进一步简化 QAC 在 CI/CD 环境中的部署,从 2025.4 版本开始,提供了一个新的独立安装程序归档文件,其中包含运行分析工具以及与 Validate 集成所需的最小组件集。
Visual Studio Code 中的 AI 辅助代码修复
QAC 2025.4 引入了一项新功能,将 Perforce Visual Studio Code 扩展与 VS Code IDE 中的 GitHub Copilot Chat 扩展集成。Perforce 扩展整理所需的输入数据,并利用 AI 为 QAC 分析发现的问题建议代码修复。此功能基于 QAC 的静态分析结果提供智能的代码修复建议,并提供一个交互式工作流,用于直接在 IDE 中审查和应用更改。
语言特性支持
此版本增强了对 C++ 语言特性和结构的支持,包括:
- 改进的类模板参数推导支持。
- 支持使用0o扩展指定八进制字面量。
- 不会被调用的转换运算符模板现在在特化之前就从重载集中排除。
- 现在推迟处理特化类作用域中的静态成员对象初始化器,直到访问该静态成员对象的值。
- 在值初始化上下文中创建并在常量表达式中求值时,通过隐式声明的默认构造函数构造的对象现在能正确地被值初始化。
针对 Windows API 的扩展动态内存分析
Dataflow 的动态内存分析已扩展至涵盖虚拟分配和堆分配 Windows API。除了检测内存泄漏、双重释放和释放后使用错误外,它还能识别混合 API 使用情况,例如将VirtualAllocEx与HeapFree结合使用。
Validate 平台改进和功能
针对 QAC 产品名称变更完成 Validate Web 门户的重塑品牌
自 2025.2 版本起,QAC 安装程序和用户界面已进行重塑品牌以反映新徽标和产品名称,并且通过更新 QAC 项目数据中消息标识符的处理方式,Validate 门户中剩余的 Helix QAC 引用已被移除。Validate 项目迁移过程也已更新,以确保旧版本 Validate 中的项目可以升级。
安全性改进
Tomcat 服务器版本已升级,以确保包含最新的安全更新。
将 Dashboard 项目数据迁移至 Validate 的初始能力
Perforce 现在可以提供专业服务,以支持将现有项目数据从 Dashboard 迁移到 Validate 的过程。该过程利用 2025.4 版本中的更新以及额外的实用程序来转换数据并将其上传到新的 Validate 项目。
易用性增强
改进的编译器支持
- Renesas
- GHS ccv850
GUI 和 CLI 改进
- 报告生成性能改进。
- 允许为日志文件设置自定义位置。
IDE 插件
- 支持 Eclipse 2025-09。
Validate 平台
- 改进了问题浏览器中列表视图和表格视图之间选择/导航的一致性。
- 提高了项目属性的可配置性,以应用于在 Validate 中创建的所有新项目。
Perforce QAC 2025.4 中的重要变更
2025.2 中产品名称更改为 Perforce QAC
从 2025.2 开始,产品反映了名称从 Helix QAC 更改为 Perforce QAC 以及新徽标。安装程序和用户界面已更新为引用 Perforce QAC,并且安装和用户数据的位置已更新如下:
- 默认安装位置已更改为:
- Linux:$HOME/Perforce/QAC-2025.2
- Windows:C:\Perforce\QAC-2025.2
- 默认 UDL 已更改为:
- Linux:$HOME/.config/Perforce/QAC-2025.2
- Windows:%LOCALAPPDATA%\Perforce\QAC-2025.2
- 查看当前 UDL 位置请参见 'qacli config udl --list --current'
Helix_Generic_C和Helix_Generic_C++CCT 已被弃用,并替换为QAC_Generic_C和QAC_Generic_C++CCT。
许可证管理变更
从 2025.1 开始引入了以下许可证变更:
- 新的 RLM v16.1BL1 服务器安装程序随 Perforce QAC 2025.1 版本一起提供。如果将 Perforce QAC 与 Validate 2025.1 一起使用,则必须升级到此服务器版本。旧版本的 Perforce QAC 也可以与新的 RLM 16.1BL1 服务器一起使用。
- 许可证特性现在基于年份,并将显示为 25.0 等版本号。
- 2024 年许可证与 Perforce QAC 2025.1 或更高版本不兼容,有必要通过联系 Perforce(revops-apptesting@perforce.com)请求新许可证。
- 由于许可证变更,无法将 2024.4 及更早版本的合规性模块与 Perforce QAC 2025.1 或更高版本一起使用,有必要升级到匹配版本的合规性模块。
生命周期终止公告
预公告
弃用 'qacli view' 的 DIAGLIST、ANNSRC 和 SARIF 输出类型
自 2025.1 起,'qacli view' 的 DIAGLIST、ANNSRC 和 SARIF 输出类型已被弃用,并将在 2026.1 版本(预计于 2026 年第一季度末发布)中移除。这些类型目前仅在使用相应许可证时才能访问。建议通过使用带有 Validate 的项目来集中管理分析结果,以准备应对此变更,它提供了一种使用 Validate Web API 导出选定结果记录的方法。
已弃用的命令将在 2026.1 中移除
所有先前已弃用并在手册第 14 章中列出的 qacli 命令计划在 2026.1 版本中移除。已弃用的命令列表显示了应使用的新命令(如果已被替换)。