开发安全、高质量代码的 5 款顶级 Python 工具( 二 )


App.py文件如下:
?复制代码
from flask import Flaskapp = Flask(__name__)@app.route('/<name>') def hello_world(name: str) -> str:return hello_name(name)def hello_name(name: str) -> int: return f"hello, {name}" if __name__ == '__main__':app.run(debug=True)Pipfile如下:
?复制代码
[[source]]name = "pypi"url = "https://pypi.org/simple"verify_ssl = true[dev-packages]bandit = "*"v = {editable = true,version = "*"}black = "*"mypy = "*"ochrona = "*"[packages]flask = "==0.12.2"[requires]python_version = "3.7"最后在根目录下创建一个.travis.yml文件,内容如下:
?复制代码
language: pythonpython:  - 3.7install:  - pip install -U pip  - pip install pipenv  - pipenv install --devscript:  - bandit ./*  - black --check .  - ochrona  - mypy .如果查看这里的构建,你会发现每个工具都标出错误或指出需修改的地方 。那么,我们来做一些修正,如这个 PR 所示,构建就可以通过 。

开发安全、高质量代码的 5 款顶级 Python 工具

文章插图
 
将 Flask 升级到一个没有已知漏洞的版本
开发安全、高质量代码的 5 款顶级 Python 工具

文章插图
 
修复类型注释,禁用调试模式,规范格式
虽然这个例子只涉及一个 CI 平台,但其实和集成到其他大多数平台的方法都很相似 。
下面是一个总的评分表:
开发安全、高质量代码的 5 款顶级 Python 工具

文章插图
 
 
 



推荐阅读