Sphinx、ReadTheDocs和软件包版本



我在readthedocs.org上维护了一个包,我使用Sphinx自动生成了该包的文档。对于Sphinx/readthedocs,我使用conf.py和正确定义的.readthedocs.yaml

conf.py内部,我使用版本:

import pybliometrics
version = pybliometrics.__version__
release = pybliometrics.__version__.replace("_", "")

版本在pybliometrics/__init__.py中生成。包本身也在代码中的某个地方使用自己的版本。

当我使用pbr(Python构建合理性)(如)进行版本控制时

from pbr.version import VersionInfo
_v = VersionInfo('pybliometrics').semantic_version()
__version__ = _v.release_string()

那么readthedocs上的构建过程可以毫无问题地工作(假设我让它安装pbr)。

然而,当它看起来像时

from importlib.metadata import version
__version__ = version("pybliometrics")

则构建过程使用CCD_ 7失败。与importlib_metadata相同。

那里发生了什么?我切换到importlib.metadata的原因是,我可以用setuptools_scm完成整个构建过程,并去掉setup.pysetup.cfg

您可能需要在RTDrequirements.txt构建文件中执行等效的pip install -e

请参阅此处的.readthedocs.yml示例,并参阅此处的requirements.txt。

相关内容

  • 没有找到相关文章

最新更新