gpt4 book ai didi

python - zc.buildout 版本

转载 作者:太空狗 更新时间:2023-10-30 03:05:37 25 4
gpt4 key购买 nike

我对 python egg 版本有疑问。在我的开发机器上,我有 python-ldap 版本 2.3.13,而大学在他们的机器上有版本 2.3.10。两个 python-ldap 库都安装在操作系统级别。

是否可以告诉 buildout 不要寻找最新的 python-ldap 版本?

我正在寻找这样的东西:

# using buildout-versions extension
[versions]
python-ldap = any
or
python-ldap => 2.1

我不想使用 buildout -N,因为我想获得其他 egg 的最新版本。

最佳答案

Buildout 仅允许您使用 versions 部分固定(精确)版本:

[buildout]
versions = myversions

[versions]
python-ldap = 2.3.13

[buildout] 部分中的 versions 键指定了一个用于引脚的部分(大多数只是将该部分称为 [versions] 以及)。

如果您需要将其固定到不同机器的版本,则必须使用基于外部参数生成版本的配方。

在下面的示例中,我使用了 mr.scripty recipe运行一些 python 来为我获取版本 pin:

[buildout]
versions = versions

[versions]
python-ldap = ${dynamic:python-ldap}

[dynamic]
recipe = mr.scripty
python-ldap =
... import subprocess
... return subprocess.check_output(
... 'dpkg-query', '-W', '-f', '${Version}', 'python-ldap').rsplit('-')[0]

上面的示例使用dpkg-query 实用程序来确定 Debian 或 Ubuntu 上的 python-ldap 包的版本;根据您自己的平台需要进行调整。

关于python - zc.buildout 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11503886/

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