Repolode
openstack

openstack/hacking

一组 flake8 插件,用于按照 OpenStack 代码风格指南检查 Python 代码。

Star
243
Fork
67
未关闭 Issue
0
最近提交
2个月前

这是什么?

Hacking 是一组 flake8 插件,用于检查 Python 代码是否符合 OpenStack 风格指南。它把原本需要评审人员手动检查的内容自动化,例如导入顺序、文档字符串规范,以及 OpenStack 社区认为有风险的写法,如遮蔽内置名称等。

检查项以 H 开头编号,可通过 PyPI 安装,并自动带上 flake8、pep8、mccabe 和 pyflakes 等依赖。依赖版本是固定的,上游发布新版本时不会悄悄加入导致现有门禁失败的规则。版本号遵循 major.minor.maintenance,维护版本不新增检查项,项目可以安全地锁定次版本号。

部分检查默认关闭,例如断言风格和 eventlet 导入相关的规则,可在 tox.ini 的 flake8 配置段中开启。项目也可以在 tox.ini 中注册本地自定义检查,并用 flake8 的扩展装饰器实现。

核心功能

  • 01通过 flake8 插件执行 OpenStack Python 风格指南检查。
  • 02可从 PyPI 安装,依赖版本固定,保证 CI 门禁稳定。
  • 03维护版本不新增检查项,锁定次版本号即可安全升级。
  • 04部分检查默认关闭,可在 tox.ini 中按需开启。
  • 05支持在 tox.ini 中注册项目自定义的本地检查。

适用场景

  • 在 OpenStack 项目的代码门禁中自动拦截风格问题,减少评审中的琐碎讨论。
  • 在由多人维护的大型 Python 代码库中统一代码风格。
  • 在标准 OpenStack 检查之外,添加项目专属的 lint 规则。

快速上手

  1. 1

    从 PyPI 安装 hacking

    pip install hacking

使用前须知

  • hacking 固定了依赖版本,可能与环境中较新版本的 flake8 或插件产生冲突。
  • 许多检查项是 OpenStack 专用的,且对其他项目默认关闭。

收录于专题

标签

常见问题

hacking 是什么?
一组 flake8 插件,用于按照 OpenStack 代码风格指南检查 Python 代码。 Hacking 是一组 flake8 插件,用于检查 Python 代码是否符合 OpenStack 风格指南。它把原本需要评审人员手动检查的内容自动化,例如导入顺序、文档字符串规范,以及 OpenStack 社区认为有风险的写法,如遮蔽内置名称等。
hacking 可以免费使用吗?用的什么许可证?
hacking 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
hacking 还在维护吗?
半年内有更新。hacking 最近一次提交是在 2026年9月14日。
hacking 适合用来做什么?
在 OpenStack 项目的代码门禁中自动拦截风格问题,减少评审中的琐碎讨论。 在由多人维护的大型 Python 代码库中统一代码风格。 在标准 OpenStack 检查之外,添加项目专属的 lint 规则。
hacking 怎么安装和运行?
从 PyPI 安装 hacking: pip install hacking
在哪里获取 hacking?
源代码和安装说明在 GitHub 上:https://github.com/openstack/hacking

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目