Repolode
dlint-py

dlint-py/dlint

基于 flake8 的 Python 插件,用于检测不安全和不良的编码写法。

Star
178
Fork
18
未关闭 Issue
23
最近提交
18天前

这是什么?

Dlint 是一款面向 Python 的代码检查工具,用于发现容易引发安全问题或 bug 的不安全写法和不良编码习惯。它以 flake8 插件的形式运行,沿用 flake8 的命令行参数和配置方式。每条规则都有以 DUO 开头的编号,报告中会给出文件、行号和简短说明,例如标记 exec 的使用。

项目通过 pip 从 PyPI 安装,使用 `flake8 --select=DUO` 即可只运行 Dlint 的规则。编辑器集成复用 flake8 现有的插件,支持 Vim、Emacs、Sublime Text、PyCharm、Atom 和 VS Code 等。开发者还可以按照命名约定,将模块名以 `dlint_plugin_` 开头来编写自定义规则。

核心功能

  • 01检测 exec 等不安全的 Python 写法,规则以 DUO 编号标识。
  • 02基于 flake8 构建,沿用其命令行参数和配置。
  • 03可在命令行中检查单个文件或整个目录。
  • 04兼容主流编辑器的 flake8 集成,可在编辑器中直接显示结果。
  • 05支持通过命名约定加载自定义规则插件。

适用场景

  • 在 Python 项目的 CI 流水线中加入安全相关的代码检查。
  • 审查遗留 Python 代码中 exec 等有风险的写法。
  • 通过自定义插件落实团队自有的安全编码规范。

快速上手

  1. 1

    从 PyPI 安装 Dlint

    python -m pip install dlint
  2. 2

    通过 flake8 对文件或目录运行 Dlint 规则

    python -m flake8 --select=DUO /path/to/code

使用前须知

  • Dlint 以 flake8 插件的形式运行,因此需要先安装 flake8 和 Python。

收录于专题

标签

常见问题

dlint 是什么?
基于 flake8 的 Python 插件,用于检测不安全和不良的编码写法。 Dlint 是一款面向 Python 的代码检查工具,用于发现容易引发安全问题或 bug 的不安全写法和不良编码习惯。它以 flake8 插件的形式运行,沿用 flake8 的命令行参数和配置方式。每条规则都有以 DUO 开头的编号,报告中会给出文件、行号和简短说明,例如标记 exec 的使用。
dlint 可以免费使用吗?用的什么许可证?
dlint 以 BSD-3-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
dlint 还在维护吗?
活跃维护中。dlint 最近一次提交是在 2026年10月20日。
dlint 适合用来做什么?
在 Python 项目的 CI 流水线中加入安全相关的代码检查。 审查遗留 Python 代码中 exec 等有风险的写法。 通过自定义插件落实团队自有的安全编码规范。
dlint 怎么安装和运行?
从 PyPI 安装 Dlint: python -m pip install dlint 通过 flake8 对文件或目录运行 Dlint 规则: python -m flake8 --select=DUO /path/to/code
在哪里获取 dlint?
源代码和安装说明在 GitHub 上:https://github.com/dlint-py/dlint

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

相关项目