gpt4 book ai didi

python - Python 包是否可以依赖于另一个 Python 包的特定版本控制修订版?

转载 作者:太空狗 更新时间:2023-10-29 18:22:36 24 4
gpt4 key购买 nike

一些有用的 Python 包在 pypi 上被破坏了,唯一可接受的版本是版本控制系统中的特定版本。可以在 setup.py 中表达吗?例如

requires = 'svn://example.org/useful.package/trunk@1234' ?

最佳答案

你需要做两件事。首先,需要您想要的确切版本,例如:

install_requires = "useful.package==1.9dev-r1234"

然后包含一个 dependency_links 设置指定在哪里找到它:

dependency_links = ["svn://example.org/useful.package/trunk@1234#egg=useful.package-1.9dev-r1234"]

请注意 dependency_links URL 的版本 #egg= 部分必须完全匹配您在 install_requires;这就是将两个部分联系在一起的原因。

发生的事情是 setuptools 看到链接上的 #egg 标记并将该 URL 保存为该包的精确版本的可用下载 URL。然后,当它稍后尝试解决该需求时,它应该下载那个精确的 SVN URL。

(但是请注意,要使其真正工作,目标 SVN 修订版必须实际构建一个具有该名称和版本的蛋。否则,您的依赖项将在运行时失败!所以,这仅当您所依赖的包在其默认构建版本号中使用 SVN 修订标签时才有效。)

关于python - Python 包是否可以依赖于另一个 Python 包的特定版本控制修订版?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2087492/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com