跳转到主要内容

Python的高效类型检查器

项目描述

lint tests pyre License: MIT Gitter

Pyre是一个符合PEP 484的Python类型检查器。Pyre可以增量分析数百万行代码的代码库,在开发者编写代码时提供即时反馈。您可以在Pyre游乐场中的示例中尝试它。

Pyre附带了Pysa,这是我们基于Pyre构建的一个以安全为重点的静态分析工具,它对Python应用程序中的数据流进行推理。请参阅我们的文档以开始使用我们的安全分析。

Pysa也作为GitHub Marketplace上的GitHub Action提供。

要求

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

$ brew install python3 watchman

在Ubuntu、Mint或Debian上;使用apt-gethomebrew

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

我们在Ubuntu 18.04.5 LTS、CentOS 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-0.9.22.tar.gz (22.4 MB 查看散列)

上传时间

构建分发

pyre_check-0.9.22-py3-none-manylinux1_x86_64.whl (45.0 MB 查看散列)

上传时间 Python 3

pyre_check-0.9.22-py3-none-macosx_10_11_x86_64.whl (23.2 MB 查看哈希值)

上传于 Python 3 macOS 10.11+ x86-64

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面