zubanls/zuban
GitHub: zubanls/zuban
高性能 Python 语言服务器与类型检查器,兼容 Mypy 并通过 Rust 实现极速低耗的静态分析。
Stars: 977 | Forks: 30
# Zuban
Zuban 是一个高性能的 Python 语言服务器和类型检查器,由 [Jedi](https://github.com/davidhalter/jedi) 的作者使用 Rust 实现。
Zuban 的速度比 Mypy 快 20–200 倍,同时内存和 CPU 使用量大约仅为 Ty 和 Pyrefly 的一半。它提供类似 PyRight 的模式和与 Mypy 兼容的模式,行为与 Mypy 一致;支持相同的配置文件、命令行标志和错误信息。
大多数重要的 LSP 功能均已支持。功能包括诊断、补全、跳转、引用、重命名、悬停和文档高亮。
Zuban 通过了超过 95% 的 Mypy 相关测试套件,并提供对 Python [类型系统](https://htmlpreview.github.io/?https://github.com/python/typing/blob/main/conformance/results/results.html) 的全面支持。
- [文档](https://docs.zubanls.com)
- [网站](https://zubanls.com)
- [发布版本](https://pypi.org/project/zuban/)
## 安装 / 使用
```
pip install zuban # Installation
zuban check # PyRight-like checking
zuban mypy # Mypy compatibility mode
zmypy # An alias for zuban mypy
zuban server # An LSP server
```
如果你希望 Zuban 能识别你的依赖,请先激活虚拟环境。
### 本地安装
你可以通过运行以下命令来**本地安装** Zuban:
```
pip install maturin
git clone --recursive https://github.com/zubanls/zuban
bash scripts/install-locally.sh
```
注意:如果未克隆子模块,构建将无法正常工作。
## 许可证
本项目采用双重授权:
- **开源许可证**:[GNU Affero General Public License v3.0](LICENSE) (AGPL-3.0)。
你可以在 AGPL-3.0 条款下使用、修改和分发本项目。
- **商业许可证**:适用于不愿遵守 AGPL 的组织。
请联系 (at) zubanls.com 获取商业授权选项。
标签:AGPL, LSP, Mypy, pip安装, PyRight, Python, Python开发, Python类型系统, Rust, SOC Prime, 云安全监控, 代码导航, 代码补全, 依赖管理, 发布包, 可视化界面, 商业许可, 开发工具, 开源, 引用, 悬停, 文档网站, 文档高亮, 无后门, 类型检查, 类型检查器, 编辑器工具, 网络流量审计, 虚拟环境, 诊断, 语言服务器, 跳转, 逆向工具, 通知系统, 重命名, 重构支持, 静态分析