Python setup.py setuptools_scm use_scm_version/get_version() 错误
Python setup.py setuptools_scm use_scm_version/get_version() error
亲爱的 interent 我的 docker 构建 (RUN python3 setup.py install
) 继续失败并出现以下错误:LookupError: setuptools-scm was unable to detect version for '/src'.
我知道有很多关于这个的帖子,但我仍然无法排序出来。
这是我的回购协议:
.
├── Dockerfile
├── VERSION # a one-line file: 1.5.0
├── package
│ ├── __init__.py
│ ├── module.py
├── setup.py
└── .git
这是我的 setup.py
文件:
from setuptools import setup
setup_requirements = [
'setuptools_scm==3.5.0',
"Cython==0.29.24",
]
setup(
...
use_scm_version=True,
setup_requires=setup_requirements,
...
)
几个注意事项:
- 如果我 运行
git describe
我得到我希望 use_scm_version
找到的版本: 1.5.0-rc.1
- 如果我注释掉
use_scm_version=True
并改为使用 version=1.5.0
,它会完美运行
非常感谢您提供的所有帮助,我被困住了。干杯:)
您尝试构建的包中是否有 git 和 .git 目录(元数据)? setuptools-scm 依赖于 git(以及实际的 git 签出) 或 在 sdist 档案中找到的一些元数据。当两者都不可用时,它会像上面那样抱怨。如果您在构建环境中没有任何元数据(例如使用 GNU Guix 构建包时),您可以通过将 SETUPTOOLS_SCM_PRETEND_VERSION
导出到您选择的版本字符串来安抚 setuptools-scm,它会用那个。
我刚刚在我维护的 CI 管道上遇到了一个非常相似的问题(并为此浪费了几个小时...)。
这是由于 setuptools_scm
默默地忽略了与 , see https://github.com/pypa/setuptools_scm/issues/707
相关的 git 错误
Here 是一份 (similar/duplicate) 问题报告,其中还显示了如何诊断问题。
亲爱的 interent 我的 docker 构建 (RUN python3 setup.py install
) 继续失败并出现以下错误:LookupError: setuptools-scm was unable to detect version for '/src'.
我知道有很多关于这个的帖子,但我仍然无法排序出来。
这是我的回购协议:
.
├── Dockerfile
├── VERSION # a one-line file: 1.5.0
├── package
│ ├── __init__.py
│ ├── module.py
├── setup.py
└── .git
这是我的 setup.py
文件:
from setuptools import setup
setup_requirements = [
'setuptools_scm==3.5.0',
"Cython==0.29.24",
]
setup(
...
use_scm_version=True,
setup_requires=setup_requirements,
...
)
几个注意事项:
- 如果我 运行
git describe
我得到我希望use_scm_version
找到的版本:1.5.0-rc.1
- 如果我注释掉
use_scm_version=True
并改为使用version=1.5.0
,它会完美运行
非常感谢您提供的所有帮助,我被困住了。干杯:)
您尝试构建的包中是否有 git 和 .git 目录(元数据)? setuptools-scm 依赖于 git(以及实际的 git 签出) 或 在 sdist 档案中找到的一些元数据。当两者都不可用时,它会像上面那样抱怨。如果您在构建环境中没有任何元数据(例如使用 GNU Guix 构建包时),您可以通过将 SETUPTOOLS_SCM_PRETEND_VERSION
导出到您选择的版本字符串来安抚 setuptools-scm,它会用那个。
我刚刚在我维护的 CI 管道上遇到了一个非常相似的问题(并为此浪费了几个小时...)。
这是由于 setuptools_scm
默默地忽略了与
Here 是一份 (similar/duplicate) 问题报告,其中还显示了如何诊断问题。