Skip to main content

pyright 的命令行包装器

项目描述

Python 的 Pyright

下载 派皮 支持的python版本

此项目不以任何方式、形式或形式与 Microsoft 有关联

Pyright for Python 是 pyright 的 Python 命令行包装器,pyright是 Python的静态类型检查器。

安装

使用包管理器pip安装 pyright。

pip install pyright

用法

可以使用两种不同的方法调用 Pyright

pyright --help

或者

python3 -m pyright --help

Pyright for Python 应该与 pyright 完全相同,请参阅pyright 文档了解如何使用 pyright 的详细信息。

预提交

您还可以通过设置预提交.pre-commit-config.yaml并在文件中注册 pyright来设置 pyright 在每次提交之前自动运行

repos:
  - repo: https://github.com/RobertCraigie/pyright-python
    rev: v1.1.237
    hooks:
    - id: pyright

Pre-commit 将在其自己的虚拟环境中安装 pyright-python,这可能导致 pyright 无法检测到您安装的依赖项。

要解决此问题,您可以告诉 pre-commit也安装这些依赖项,或者通过更新pyright 配置文件明确告诉 pyright 要使用哪个虚拟环境:

[tool.pyright]
# ...
venvPath = "."
venv = ".venv"

动机

Pyright是用 TypeScript 编写的,需要安装 node,一般用 npm 安装。这可能是一些 Python 开发人员的入门障碍,因为他们的机器上可能没有安装 node 或 npm;我想让 pyright 像任何普通的 Python 包一样易于安装。

Pyright for Python 的工作原理

该项目首先检查节点是否在PATH. 如果不是,那么我们在运行时使用nodeenv下载节点,然后使用npx.

我们还会在每次运行时自动将 pyright npm 包升级到其最新版本,请参阅下文了解如何更改此行为。

自动更新 pyright

默认情况下,Pyright for Python 设置为针对特定的 pyright 版本,每当发布新的 pyright 版本时,都会自动创建新版本。强烈建议使用自动依赖更新工具,例如dependabot

如果您不想在每次创建新的 pyright 版本时都更新您的安装,那么您可以通过将环境变量设置PYRIGHT_PYTHON_FORCE_VERSIONlatest.

配置

您可以使用环境变量为 Python 配置 Pyright。

调试

设置PYRIGHT_PYTHON_DEBUG为任何值。

修改 Pyright 版本

设置PYRIGHT_PYTHON_FORCE_VERSION为所需的版本,例如1.1.156latest

显示 NPM 日志

默认情况下,Pyright for Python 禁用 npm 错误消息,如果要显示 npm 错误消息,则设置PYRIGHT_PYTHON_VERBOSE为任何真实值。

强制节点环境

设置PYRIGHT_PYTHON_GLOBAL_NODE为任何非真实值,即除 1、t、on 或 true 之外的任何值。例如off

修改节点环境位置

设置PYRIGHT_PYTHON_ENV_DIR为有效的nodeenv目录。例如~/.cache/nodeenv

忽略警告

设置PYRIGHT_PYTHON_IGNORE_WARNINGS为真值,例如 1、t、on 或 true。

Pyright for Python 将为以下情况打印警告

  • 在没有 bash的情况下使用nodeenv

禁用 NPX 版本检查

默认情况下,Pyright for Python 检查已解析npx二进制文件的版本,在某些情况下,这可能会导致错误

如果您遇到这种情况,那么您可以通过将环境变量设置PYRIGHT_PYTHON_IGNORE_NPX_CHECK为任何真实值(例如 1、t、on 或 true)来禁用版本检查。

贡献

欢迎所有拉取请求。

执照

麻省理工学院

项目详情


发布历史 发布通知| RSS订阅