Perforce Klocwork 2025.2版本更新:默认启用现代分析引擎、支持 MISRA C:2025 新规、CI构建性能提升等

发布于:2025-09-11 ⋅ 阅读:(18) ⋅ 点赞:(0)

Perforce Klocwork 现已更新至2025.2版本!该版本增强了对 C/C++的分析能力,提升了现代 C++ 分析的准确性,并改进了对源文件编码的支持。该版本还为 MISRA® C:2025 标准引入了新的分类体系,并增强了 Visual Studio Code 插件的可用性。

在 2025.2 版本中,Perforce Validate 的更新为使用 CI 构建的项目提供了更高的性能和可扩展性,并减少了存储占用空间。其他改进还包括:新增问题详情的表格视图,作为现有问题列表的替代方案;改进合规性报告,使 MISRA 和通用报告格式之间保持更高的一致性。

Klocwork 2025.2 的增强功能

C/C++ 分析引擎

默认启用现代分析模式,支持更广泛的 C++ 分析:

现代模式现已成为 C/C++ 数据流分析的默认模式,提供更强的语言特性支持,能够更有效地分析现代 C++ 代码。

启用现代模式后,由于语言特性的覆盖更全面,可能会发现更多的新缺陷。在升级到 2025.2 版本时,建议您使用升级前最后一次分析所用的相同代码版本重新运行分析,以便隔离因升级带来的变更,然后仔细审查差异。

默认启用现代分析模式,支持更广泛的 C++ 分析:

现代模式现已成为 C/C++ 数据流分析的默认模式,提供更强的语言特性支持,能够更有效地分析现代 C++ 代码。

启用现代模式后,由于语言特性的覆盖更全面,可能会发现更多的新缺陷。在升级到 2025.2 版本时,建议您使用升级前最后一次分析所用的相同代码版本重新运行分析,以便隔离因升级带来的变更,然后仔细审查差异。

Perforce Validate 平台改进

数据库改进:

针对 CI 构建的数据库结构已更新,以减少存储占用和数据库在高负载下的频繁写入。这将提供更好的性能和可扩展性,尤其适用于 CI 活动频繁的项目。

更灵活地查看和管理问题:

在 Validate 的“问题”(Issues)标签页中,可选择使用现有的列表视图,或全新的表格视图来对问题进行排序、筛选、搜索和更新,并完全支持批量操作。

扩展了对规则引用查询的支持:

在 Validate 2025.2 中,现在可通过分类体系(taxonomy)和规则引用(rule reference)来搜索问题列表。在“问题”标签页和“问题详情”面板中,将显示与每个问题相关的所有分类和引用信息。此外,还支持使用 Web API 搜索操作来进行分类和引用查询。

改进构建保留策略的工作流程:

Validate 的自动构建删除功能可通过删除旧的构建来帮助管理存储空间。现在,您可以在 Validate门户、Web API 或命令行工具中更精细地配置项目或流级别的构建保留策略。

改进合规性报告:

Validate 合规性报告的内容和布局已更新,使 MISRA 报告与通用报告格式之间更加一致,并提供有关所选构建应用配置的更多信息,包括抑制配置文件(suppression configuration file)。在通用合规性报告中,“文件摘要”(File Summary)现在会显示每个文件的规则违规次数,以便更清晰地查看。此外,生成完整(非摘要)的合规性报告不再需要合规性许可证。

除了报告内容的变更外,Validate 门户和 Web API 还新增了操作功能,使删除合规性报告更加便捷。

编码标准

  • Klocwork 2025.2 新增了新的分类标准,适用于:MISRA C:2025;

  • 增强了对以下标准的覆盖:

    – CERT C++

    – MISRA C:2023、MISRA C:2012(含 Amendment 2)

  • 此外,还更新了多个分类标准的规则/类别文本格式,以支持在合规性报告中,将规则名称和描述分列显示。

优化使用体验

IDE插件:

  • 适用于VS Code的Perforce静态分析插件现已包含“规则引用”列,支持按规则名称和类别进行排序。

  • 在 VS Code 插件中新增对单个文件进行分析的功能。

分析工具:

为帮助诊断分析流程中的问题并修复权限缺失情况,kwcheck 和 kwciagent 命令现在会在遇到问题时返回非零退出代码。

Validate可用性改进:

在问题详情浏览器的文件树中,每个文件现在会单独显示代码行数指标。

编译器支持:

增强了对以下编译器的支持:

  • Clang

  • TI cl430

  • GNU iccarm

  • QNX

Klocwork 2025.2 的重要变更

2025.2 版本中删除 kwmatch 工具

自 Klocwork 2025 起,kwmatch 工具已被移除。如果您从旧版本升级,建议使用“流”(streams)管理项目分支,并使用 kwxsync 实现跨项目的问题同步。

如果您之前为特定项目使用 kwmatch 并创建了数据库,在将这些项目迁移到 2025.2 或更高版本后,该数据库将不再使用,建议您将其删除。

2025.2 版本中删除 dbvalidate 清理工具

从 2025.2 版本开始,您不能再直接运行 dbvalidate 清理工具。部分用于删除重复问题和注释的 dbvalidate 命令仍保留,但仅在 Perforce 支持团队明确建议时方可使用。

许可证管理变更

自 2025.1 版本起,引入以下许可证变更:

  • Klocwork 工具现在使用 Reprise License Management (RLM) v16.1BL1。升级后的许可证服务器已包含在 Validate 安装包中。若要与 Klocwork 2025.1 及以上版本兼容,所有旧版 RLM 服务器必须升级至该版本。

  • 2024 年的许可证不兼容 Klocwork 2025.1 或更高版本。如需使用最新产品版本,请通过customer@shdsd.com联系Klocwork代理商龙智,获取新许可证。


Perforce官方授权代理商龙智:

访问官网:www.shdsd.com  

业务咨询:400-666-7732

合作邮箱:marketing@shdsd.com


网站公告

今日签到

点亮在社区的每一天
去签到