跳转到主要内容

Python的高性能类型检查器

项目描述

lint tests pyre License: MIT Gitter

Pyre 是一个符合 PEP 484 的 Python 性能类型检查器。Pyre 可以增量地分析包含数百万行代码的代码库 - 在开发人员编写代码时提供即时反馈。您可以在 Pyre 操场 中的示例中进行尝试。

Pyre 包含 Pysa,这是我们在 Pyre 上构建的一个以安全为重点的静态分析工具,它可以对 Python 应用程序中的数据流进行推理。有关如何开始我们的安全分析,请参阅我们的 文档

Pysa 还可在 GitHub 商店 作为 GitHub Action 使用。

要求

要开始,您需要在您的系统上安装 Python 3.8 或更高版本watchman。在 MacOS 上,您可以使用 homebrew 获取所有内容。

$ brew install python3 watchman

UbuntuMintDebian 上;使用 apt-gethomebrew

$ sudo apt-get install python3 python3-pip python3-venv
$ brew install watchman

我们在 Ubuntu 18.04.5 LTSCentOS 7 以及 OSX 10.11 及更高版本上测试了 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 调用将比第一次调用更快。

有关更详细的文档,请参阅 https://pyre-check.org

加入 Pyre 社区

有关如何帮助的更多信息,请参阅 CONTRIBUTING.md

许可

Pyre 采用 MIT 许可证。

项目详情


发行历史 发行通知 | RSS 源

下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

pyre-check-nightly-0.0.101728040313.tar.gz (22.7 MB 查看哈希值)

上传时间 源代码

构建分发

pyre_check_nightly-0.0.101728040313-py3-none-macosx_10_11_x86_64.whl (23.5 MB 查看哈希值)

上传时间: Python 3 macOS 10.11+ x86-64

支持者