【问题标题】:How can I use pbr version from source?如何从源代码使用 pbr 版本?
【发布时间】:2019-09-19 04:15:11
【问题描述】:

我的目标:

我想在我的 GIT 存储库、我在 pypi 存储库上的分发以及使用 的源代码中保持一致的versions __version__ 变量。


详情:

我尝试使用pbr,它从git标签生成distro版本,所以这两个版本会是连贯的。但是,我不知道如何在我的源代码中保持__version__ 变量与它们一致。 (有several ways从源码获取版本,但是怎么连接到git/distro?)

是否可以生成版本文件(解析表单源)或直接修改__version__变量?

【问题讨论】:

    标签: python git versioning setuptools python-pbr


    【解决方案1】:

    由于Python 3.8 直接在标准库中有一个解决方案:__version__ = importlib.metadata.version('Example')。见Using importlib.metadata

    【讨论】:

      【解决方案2】:

      终于在this的帖子里找到了解决办法。

      import pkg_resources  # part of setuptools
      version = pkg_resources.require("MyProject")[0].version
      

      更新

      This 帖子展示了另一个更强大的解决方案:

      from pbr.version import VersionInfo
      
      package_name='MyProject'
      info = VersionInfo(package_name)
      
      version = info.version_string()
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-26
        • 2018-06-29
        • 2016-04-25
        相关资源
        最近更新 更多