9个版本 (5个破坏性更新)
0.7.0 | 2024年6月17日 |
---|---|
0.6.0 | 2024年3月22日 |
0.5.0 | 2024年3月21日 |
0.4.0 | 2024年3月17日 |
0.2.1 | 2024年3月15日 |
503 在 网络编程
每月32次下载
17KB
321 行
什么是Spyn?
Spyn是一个用于创建按需、临时的Python应用程序虚拟环境的小工具。
Spyn深受fades的启发,但试图改进同样的概念
- Spyn是用Rust编写的,作为二进制可执行文件提供,这意味着您不需要通过脚本包装器安装它,也不会污染本地的Python安装。它也不会在系统Python版本升级或重新安装时损坏。由于这个原因,Spyn的运行速度也更快
- Spyn使用
uv
来创建和管理虚拟环境。这使得它可以在几秒钟内创建虚拟环境,并且不太可能遇到pip
中断和故障。它还支持离线模式运行,这意味着它只使用其缓存,并通过uv
避免访问网络。
安装
spyn
需要uv
才能正确运行。请确保按照官方文档中描述的方式安装它。
如果您在macOS上,最方便的方式是使用homebrew
,或者运行以下命令
$ curl -LsSf https://astral.sh/uv/install.sh | sh
您可以使用 cargo install
来安装 spyn
$ cargo install spyn
使用方法
您可以使用spyn
运行Python脚本,并指定它需要的依赖项
$ spyn -d requests ./my_script.py
您还可以在脚本中标记要由spyn安装的依赖项
$ cat my_script.py
import os
import requests # spyn
print("Hello, World!")
$ spyn ./my_script.py
spyn
甚至接受标记有fades
的行,以提供与fades的向后兼容性!
如果您想要一个具有自定义依赖项的交互式会话,spyn
支持--ipython
标志,将您放入一个带有您指定的依赖项的IPython外壳中
$ spyn --ipython -d requests
Using Python 3.11.2 interpreter at: /Users/rotemy/src/oss/spyn/.venv/bin/python3
Creating virtualenv at: /var/folders/bs/wqjbrbn948j78gb4303rjdcc0000gn/T/spyn.FDlEhIQvFyXR
Activate with: source /var/folders/bs/wqjbrbn948j78gb4303rjdcc0000gn/T/spyn.FDlEhIQvFyXR/bin/activate
Resolved 21 packages in 451ms
Installed 21 packages in 82ms
...
In [1]: import requests
In [2]:
依赖项
~10–39MB
~609K SLoC