在 pyproject.toml 的动态字段中使用 python 脚本生成的值

问题描述 投票:0回答:1

我正在尝试找到一种使用 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 文件并将随机值放入版本字段中。有没有更好的方法来做到这一点?

python setuptools setup.py python-packaging pyproject.toml
1个回答
0
投票

首先确保在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`
)
© www.soinside.com 2019 - 2024. All rights reserved.