分享

pyre check-用于符合PEP 484的Python的高性能类型检查器

 CNStudent 2020-12-17

Pyre是用于符合PEP 484的Python的高性能类型检查器。Pyre可以逐步分析具有数百万行代码的代码库-在开发人员编写代码时向他们提供即时反馈。

  Pyre随附了Pysa,Pysa是我们在Pyre之上构建的,专注于安全性的静态分析工具,其原因在于Python应用程序中的数据流。请参考我们的文档以开始我们的安全分析。

特点

快速:从头开始构建,以支持渐进式打字并提供响应性增量检查。在具有数百万行Python的大型代码库上具有高性能。

集成:通过在终端中或在您喜欢的编辑器中交互式标记类型错误来帮助提高代码质量和开发速度。

功能齐全:遵循介绍打字标准执行点484,526,612,并正在积极开发并不断完善。

为安全而生:Pyre附带了Pysa,Pysa是我们专注于安全性的静态分析工具,旨在对Python应用程序中的数据流进行大规模推理。

开始使用

您可以通过运行pip命令通过获得Pyre:pip install pyre-check,您也可以通过网盘下载Pyre的源代码。

建立一个项目

我们首先创建一个空的项目目录并设置一个虚拟环境:

$ mkdir my_project && cd my_project
$ python3 -m venv ~/.venvs/venv
$ source ~/.venvs/venv/bin/activate
(venv) $ pip install pyre-check

接下来,我们向Pyre教授我们的新项目:

(venv) $ pyre init

此命令将在项目目录中为Pyre(.pyre_configuration)和watchman()设置配置.watchmanconfig。现在接受默认值–以后可以根据需要更改它们。

运行Pyre

现在,我们可以运行Pyre了:

(venv) $ echo "i: int = 'string'" > test.py
(venv) $ pyre
 ƛ Found 1 type error!test.py:1:0 Incompatible variable type [9]: i is declared to have type `int` but is used as type `str`.

首次调用将启动守护程序,以监听文件系统的更改–在对代码进行编辑时,逐步检查项目。您会注意到,后续的调用pyre将比第一个更快。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多