• 高效代码静态测试工具Klocwork 2022.3版本快讯


    Klocwork 2022.3 中的新增功能

    随着 2022.3 的发布,Klocwork 对 C#、Java、JavaScript、Kotlin和Python的语言覆盖范围进行了更新和改进。

    微软 Visual Studio IDE 插件已得到改进,可支持 C# 的多线程和增量分析,从而将选定项目和解决方案的分析时间缩短多达 200%*。此外,2022.3 还包括对可配置缺陷抑制功能的增强、扩展的 Android 构建规范生成 CLI 选项以及更广泛的编码标准覆盖范围。

    (*基于内部基准的开放源码软件项目)

    C# 分析引擎

    改进了对 C# 7.2 语言规范的支持。新的语言功能包括:
    • stackalloc 数组上的初始值设定项。
    • 将 fixed 语句与支持模式的任何类型一起使用。
    • 无需固定即可访问固定字段。
    • 重新分配ref 局部变量。
    • 声明 readonly struct 类型,表示结构是不可变的,应该作为参数传给其成员方法。
    • 在参数上添加 in 修饰符,以指定参数通过引用传递,但不由被调用的方法修改。
    • 在方法返回上使用ref readonly修饰符,表示一个方法通过引用返回其值,但不允许对该对象进行写入。
    • 声明ref struct类型,以表明结构类型直接访问管理的内存,并且必须始终是堆栈分配的。
    • 使用其他泛型约束。
    • 非尾随命名参数。
      ○ 命名参数后可以跟位置参数。
    • 数字文字中的前导下划线。
      ○ 数字文字现在可以在任何打印数字之前具有前导下划线。
    • “专用受保护访问”修饰符。
      ○ private protected 访问修饰符允许访问同一程序集中的派生类。
    • 条件 引用 表达式。
    • 条件表达式 ( ?: ) 的结果现在可以是引用。

    Java 分析引擎

    完全支持 Java 13 语言规范。新功能包括:
    • 改进了 Java 13 的构建过程监控,并减少了解析错误和警告。
    • 升级了 Java 知识库,以提供更高的准确性和对 Java 13 API 的支持。

    JavaScript, Kotlin, Python分析引擎

    对 JavaScript、Kotlin和Python分析引擎和检查器的常规升级和改进:

    JavaScript

    • 支持高达 ECMA 脚本 2022 (ES13) 的脚本版本。
    • 新增了 722 个代码复杂性、质量、性能、最佳编码实践等检查的集合。

    Kotlin

    • 支持高达 1.6.21 的 Kotlin 版本。
    • 新增了 251 项代码复杂性、质量、性能、最佳编码实践等检查的集合。

    Python

    • 支持Python 3版本,最高可达3.10。
    • 新增了 335 项代码复杂性、质量、性能、最佳编码实践等检查的集合。

    C/C++分析引擎

    增强了可配置的缺陷抑制功能。

    • 使用缺陷抑制功能来专注于重要的问题。过滤掉代码中的噪音缺陷或你不负责的问题,如库、头文件和第三方代码。

      ○ 引入了在禁止显示文件或目录时允许分析优化的功能。

      ○ 提供项目拆分的替代方法。

    Microsoft Visual Studio IDE Plugin

    使用 Visual Studio 桌面分析插件可以快速轻松地检测问题,然后在签入之前修复问题。

    • Microsoft Visual Studio IDE 扩展已得到改进,以支持 C# 的多线程和增量分析。

    此更改可将选定项目和解决方案的分析时间缩短多达 200%*。

    (*基于内部基准的开放源码软件项目)

    用于安卓项目分析的扩展配置选项

    使用 kwandroid 为 Android 分析生成构建规范的命令行选项已被扩展,以匹配其他构建监控工具。

    编码标准

    Klocwork 2022.3 的新增和扩展的标准覆盖范围和分类法:
    • AUTOSAR – C++
    • CERT – C and C++
    • CWE – C, C++, and Java
    • DISA STIG v5 – C and C++
    • HKMC v4.1 – C and C++
    • ISO/IEC TS 17961 – C
    • JSF AV – C++
    • MISRA – C:2004 and C:2012
    • OWASP Top10 2021 – C#

    新的漏洞检查器

    2022.3 添加并改进了 Klocwork 支持的语言中的几个检查器:C 和 C++。新的检查器可发现以下各项的缺陷:
    • 过程内数值溢出和环绕检测。
    • 在循环中除以零。

    有关新增功能的更多详细信息,请参阅发行说明。

    Klocwork 2022.3 中的重要更改

    许可证管理更改

    自 2022.2 起,Klocwork 现在支持重用许可证管理器 (RLM)。
    • FLEXlm/FlexNet 发布服务器支持已弃用,但将继续工作,直到 Klocwork 2023.1 发布。
    • 在 2023.1 之前,您可以继续使用现有的 FLEX 许可证文件。如果您需要生成新的许可证文件,请联系 license@perforce.com 。
    • 将为 Reprise 生成新的产品许可证文件,如果您需要较旧的 Klocwork 版本的 FLEX 许可证文件,我们可以为您提供此文件。

    预告

    Path API 版本升级 – Klocwork 2022.4

    在 Klocwork 2022.4 发布后,需要审查自定义 C/C++ PATH 检查器的多线程兼容性。我们建议您查看自定义检查器以了解潜在的竞争条件,并使用 2022.4 Klocwork Path API 头文件和库重新编译。未重新编译的自定义检查器将继续工作,但将无法使用即将推出的并行化功能。请参阅我们的发行说明以了解更多信息。

    生命周期终结公告 – Klocwork 2023.1

    从 Klocwork 2023.1 开始,将不支持以下操作系统和安装程序:
    • 苹果操作系统

    ➡️ 立即体验最新版Klocwork,发送邮件至info@polelink.com

  • 相关阅读:
    Docker的数据管理(数据卷、容器互联)
    docker基础命令 docker镜像和docker容器的操作基础命令的思维导图
    Mysql基本命令操作
    暑假总结
    CentOS 6.5安装配置LNMP服务器(Nginx+PHP+MySQL)
    微服务下怎么做权限管理
    Javascript----原型链
    CSS基础(二)
    Qt 5.15.11 源码windows编译
    5)自适应滤波(二)[RLS算法]
  • 原文地址:https://blog.csdn.net/weixin_51954443/article/details/127412190