我正在尝试找到一种使用 pyproject.toml 中的 python 脚本生成的值的方法。例如,假设我们有一个函数
random_version
。我正在使用 setuptools 进行包构建。
import random
def random_version():
rand_ver = random.randint(1,10)
return rand_ver
现在pyproject.toml文件中有一个
version
字段,使用random_version
函数的输出。现在我的想法是编写一个脚本来编辑 pyproject.toml 文件并将随机值放入版本字段中。有没有更好的方法来做到这一点?
首先确保在version
文件中将
dynamic
设置为pyproject.toml
:
pyproject.toml
[project]
name = "MyProject"
# ...
# version field should not be set here, but listed as dynamic
dynamic = [ "version" ]
然后你需要一个
setup.py
脚本只用于version
:
setup.py
import setuptools
import random
def random_version():
rand_ver = random.randint(1,10)
return rand_ver
setuptools.setup(
version=random_version(),
# everything else is in `pyproject.toml`
)