C/C++代码静态测试工具Perforce QAC 2025.3的新特性

描述

Perforce QAC 2025.3 通过更新结果存储处理提供了性能改进,可以显著减少总分析时间,具体取决于项目结构和分析所使用的硬件设备。此版本还增强了对 QNX 8.0 编译器的支持,以及对 Perforce Validate 中 QAC 项目的相对/根路径的支持。C++ 分析也得到了增强,增加了用于检测 C++ 并发问题的新检查,并改进了实体名称和实例化顺序的建模。对 Validate 的更新包括减少了具有多流项目的数据库存储空间,以及改进了 Validate 合规性报告的一致性和可读性。

 

结果存储性能改进

底层的结果存储技术已更新,根据项目和分析所用的硬件设备的不同,这些改进可以在分析期间带来显著的性能提升,特别是对于具有大量线程的硬件。 对于总诊断数量非常多的项目,报告生成持续时间与旧版本相比可能有所变化,但 2025.3 版本的完整分析和报告生成的总时间预计将低于旧版本。

 

Validate 集成改进

在将项目结果上传到 Validate 时,路径格式先前仅限于绝对路径。在 2025.3 中,可以指定不同的路径格式,即绝对路径、相对路径或根路径,这与桌面工具中项目路径的可用选项保持一致。

 

增强的 C++ 并发分析

2025.3 版本包括针对 C++ 并发多线程的新分析,包括以下新检查:

  • 检测一组互斥锁锁定对象声明。
  • 检测使用std::lock锁定的互斥锁何时不受互斥锁对象管理。

 

语言特性支持

此版本增强了对 C++ 语言特性和结构的支持,包括:

  • 修复了constexpr支持,以确保正确处理委托和继承构造函数,并识别不抛出的构造函数。
  • 改进了实体名称的建模,以便在构建参数名称时使用消息上下文中模板参数。
  • 改进了模板参数匹配。
  • 在检查类型完整性时,更好地建模了显式实例化类的成员和函数参数的实例化顺序。

 

Validate平台改进和功能

合规性报告改进

Validate 合规性报告已更新,以提高可读性和完整性,通用报告中的规则摘要部分现在显示所有规则类别,包括那些没有映射检查器的类别,以便您可以对照完整标准检查合规性。MISRA 合规性报告包含两个新的合规级别:“未强制执行(未应用)”和“未强制执行(已禁用)”,以识别映射到某个规则的所有检查器都已被禁用的实例。

 

安全性改进

MariaDB 服务器版本已升级,以确保包含最新的安全更新,并且改进了与客户端工具处理 TLS/SSL 证书的方式。

 

易用性增强

改进的编译器支持

  • QNX
  • Clang
  • IAR
  • Renesas
  • GNU

 

GUI和CLI改进

  • 允许上传到 Validate 时指定不同的路径格式。
  • 创建项目时根据项目语言自动选择 CCT。
  • 增加了自动生成预处理源代码的选项。

 

IDE插件

  • 解决了合规性模块规则帮助链接的问题。
  • 通过使用更新的技术检索结果,提高了 Visual Studio 和 Eclipse 插件的稳健性。
  • 支持 Eclipse 2025-06。

 

Perforce QAC 2025.3 中的重要变更

2025.3 中对 CMA 解决方案处理的变更

从 2025.3 开始,从 Eclipse 和 Visual Studio 插件中配置和启动 CMA 解决方案分析的功能已被移除,目前必须使用 GUI/CLI(命令行) 来处理 CMA 解决方案。此外,CMA 解决方案图标将从 QAC GUI 工具栏中移除。该功能仍将在 GUI 菜单中可用。

 

2025.2 中产品名称更改为 Perforce QAC

从 2025.2 开始,产品体现了名称从 Helix QAC 更改为 Perforce QAC 以及新logo。安装程序和用户界面已更新为引用 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++ CCTs 已被弃用,并分别替换为QAC_Generic_C和 QAC_Generic_C++ CCTs。

 

许可证管理变更

从 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导出选定结果记录的方法。

 

欢迎联系北汇信息,获取最新Perforce QAC 2025.3最新版软件试用。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分