定义包安装后运行的命令( 通过 uv pip 安装)
页:1
哈罗
首先,非常感谢你所做的令人惊奇的工作 和发送的更新数量。 这是伟大的!
我们是一个小型的动画工作室 最近采用了uv作为软件包管理器 大部分处理我们自己的定制的 Python库。 我们把它们储存在自己的服务器上,并生成包含上述库的虚拟envs,以便在访问我们的软件包的同时执行软件.
在域中,有一个相当受欢迎的软件包管理器Rez提供了在软件包的设置中定义一或数个命令的可能性. py(他们仍在使用这个惯例). 当这些命令被安装到虚拟环境中时,Rez会自动执行.
例如,如果您想要在安装时将您的软件包自动添加到您的 PYTHONPATH 中, 这样做特别实用。
因此,这个功能请求的想法是: 执行,通过软件包。 pyproject.toml,一个定义命令的地方,由uv在"uv pip s安装包"上执行.
我们没有与Rez合作,因为v似乎更快,并以更优雅的方式与PEP公约相匹配;) 但雷兹提供的一些功能如果能用UV实现,可能会非常有趣.
以下是关于命令的REZ页面链接 : https://rez.readthedocs.io/en/3.2.1/basic concepts.html#package-commands (中文(简体) ).
事先多谢了
示例
让我们想象一个包裹 我的图书馆 在图书馆的pyproject.
[项目] 名="我的图书馆" 版本 = "0.1.0" 。 依赖=[ "PySide2", (英语). "海关图书馆 0.1.0" "另一个CustomLibrary 0.1.0", [ . ] 需要- Python = “>=3.10” 作者 = [ {name="Zorro",电子邮件="[email protected]"}, [ . ] 维护者 = [ {name="Zorro",电子邮件="[email protected]"}, [ . ] 描述="一个神奇的自定义图书馆 在MagicStudio的房子里制作" [uv.commands.] (英语). sys.path.append ("") #安装时自动执行此部分. 在此将软件包根附加到 sys 路径
在使用 " uv pip " 安装 " myLibrary " 时,uv将自动执行 " uv.commands " 部分项目。 Toml 文件 .
内容来源: astral-sh/uv