Python的高效类型检查器
项目描述
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-get
和homebrew。
$ 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 许可下授权。
项目详情
关闭
pyre-check-0.9.22.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e082f926dff71661959535c3936fca5ad40a44858b5fd3e99009a616a1b57083 |
|
MD5 | df10642e03f1e266f269e8c3f29c270f |
|
BLAKE2b-256 | fd94bbbb7b51310bc17fd80453f17c72fdf5079dbfe97558c511295be50a4880 |
关闭
pyre_check-0.9.22-py3-none-manylinux1_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d331e2687e194fa22505e0724b1536e61bf06fddc5416d7b83d542d2270c91ce |
|
MD5 | 50c158e563455950a8747bd823eab342 |
|
BLAKE2b-256 | 0c1a655ddae10ad37b4cdb33205aed45ba26f568e9de5ab9cb14776e95bddcb4 |
关闭
pyre_check-0.9.22-py3-none-macosx_10_11_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4bbd61dad5669dfef00e875bf8a573866595ecbd8240f595339a9781e8a1e22e |
|
MD5 | c357f0ad387ca494d980ef57236ce60c |
|
BLAKE2b-256 | bab142668886e6ed9f65e009dcd215ee184dac78b1e645b7ddca1f9492a67aae |