HeadlinesBriefing favicon HeadlinesBriefing.com

ImpactGate:基于变更影响的代码审查工具

Hacker News •
×

Officefloor 发布了 ImpactGate,这是一个衡量并控制代码变更引入的结构性衰退的工具。结构性衰退是指复杂度累积到现有结构中,例如一个上帝类又增加了一个方法。ImpactGate 使用一个对预变更状态中的复杂度进行加权的公式,根据基准对变更进行评分,使繁重的修改代价高昂,而新导入的代价低廉。

它可以作为独立的 CLI、 git pre-commit 钩子,或作为 GitHub、Git Lab 和 Jenkins CI 中的插件运行。通过 pip 安装或使用发布的 Docker 镜像,无需安装即可使用。当影响超过阈值时,根据执行设置,它会发出警告或阻止构建。

报告按影响份额对文件进行排名,突出显示衰退集中的位置。它会跳过超过 max_diff_lines 的文件,以避免生成的转储造成失真。Pre-commit 钩子可以在本地阻止提交,而 CI 可以根据项目历史构建的百分位曲线或来自 20-repo 开源语料库的种子先验进行控制。

关键实体:公司:Officefloor、GitHub、Git Lab、Jenkins CI