问题标签 [setuptools-scm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1595 浏览

setuptools - 阅读文档和 setuptools scm 版本错误

我有一个我刚刚更新以使用 setuptools_scm 的软件包,并在 readthedocs 中发现版本号错误。

http://sshuttle.readthedocs.org/en/v0.77/显示:

但是由于版本 083293e 有 0.77 标签,版本字符串应该只是 0.77

看起来 readthedocs 可能会在构建之前对我的源代码进行更改。

我查看了 readthedocs 构建日志,它似乎在某个阶段(0.77)具有正确的版本,但是这是在它构建文档之前。

构建文档时构建日志未提及版本。

有可能解决这个问题吗?

谢谢

0 投票
1 回答
2854 浏览

python - pytest-xdist: LookupError: setuptools-scm 无法检测到版本

安装时pytest-xdist,我收到此错误:

我之前能够成功安装 pytest-xdist,但我不确定发生了什么变化:(

0 投票
2 回答
4413 浏览

python - setuptools-scm:当前版本而不是下一个版本

我想用来setuptools-scm控制我的包版本。我的setup.py

目前我的v0.2仓库中有标签。我创建了新分支并添加了一些提交。当我运行python setup.py --version创建my-package/version.py文件时,我得到下一个标签v0.3而不是当前标签v0.2

我认为这是错误的方式,因为我正在做的更改是针对当前版本标签v0.2的,但setuptools_scm说它们属于v0.3. 如何处理?

0 投票
1 回答
2065 浏览

python - setuptools_scm 可用时是否需要bumpversion(或bump2version)?

TLDR;

问题正如标题所说。

撞还是不撞?

我开始使用bump2version,然后发现了setuptools_scm(对于开发成熟的python程序来说相当新),现在我很困惑。

https://setuptools.readthedocs.io/en/latest/history.html#v20-6-0(古老的,我知道,我使用v40-xx)提到了bumpversion的集成,但是,没有提到过在后续的变更日志中放弃对凹凸版本的支持。

同时,setuptools 文档的 1.4 Extending and Reusing Setuptools 部分提到了 setuptools_scm(和 setuptools_svn)用于与 git、Hg 和 svn 集成。

BLAB(底线在底)

所以,问题是:bumpversion 是否已弃用/过时?


附录

为了进一步澄清,我将尝试更多地解释我的用例

我有一个包含多个子项目的超级项目。

super 是一个主 git,每个子项目作为一个子模块(有自己的子模块),当然,每个子项目都维护自己的发布版本(这很容易)

该项目的发布由与其他所有内容相互兼容的已签署模块组成。

我目前的做法

我目前正在使用一个名为version的子模块,它维护一个requirements.txt+pyproject.toml并将整个东西拉到一个可分发的包中。遵循 https://github.com/pypa/pipfile/issues/27 中的指南https://caremad.io/posts/2013/07/setup-vs-requirement/

问题仍然存在:是否有一种规范的方法来做这样的事情?

0 投票
1 回答
503 浏览

python - ReadTheDocs + Sphinx + setuptools_scm:怎么做?

我有一个项目,我通过git标签管理版本。然后,我用来setuptools_scm在我的文件中获取这些信息,setup.py并生成一个文件 ( _version.py),该文件在为pip.

此文件未被跟踪,git因为:

  1. 它具有相同的信息,可以通过以下方式收集git
  2. 它将创建一个循环情况,其中构建轮子将修改更改源的版本并生成新版本

现在,当我构建文档时,从中获取这个版本变得很自然,_version.py这一切都在本地运行良好。

但是,当我尝试在 ReadTheDocs 中执行此操作时,文档的构建失败,因为_version.py没有被跟踪git,因此 ReadTheDocs 在从存储库中获取源时找不到它。


编辑:我尝试使用副本中提出的方法,这与文档中指示的方法相同setuptools_scm,即使用 in docs/conf.py

但我得到:

pkg_resources.DistributionNotFound:未找到“数字”分布,应用程序需要它

(同样,在本地构建文档可以正常工作。)


如果不在两个地方维护版本号,我怎么能解决这个问题?

0 投票
1 回答
688 浏览

python-3.x - 运行使用 setuptools_scm 从 bdist_wheel 包安装的应用程序失败并出现版本查找错误

TL;博士

我正在尝试为使用setuptools-scm. 我生成了轮包运行python setup.py sdist bdist_wheel。我可以.whl使用pip install .... 但是当我尝试运行程序时,它会抛出以下错误:

这是目录树的简单视图(不展开.git\

这里mymodule/version.py不跟踪。回购是干净的和标记的。使用setuptools 49.1.0and setuptools_scm 4.1.2,我配置了以下内容:

setup.py(省略元数据字段)

setup.cfg

pyproject.toml

我想在这里指出,安装工作正常,pip install -e .应用程序按预期运行。

我尝试在调用时更新rootand参数,并更新以使用配置字典无济于事。我在 github 中查看了官方问题,但我无法解决这个问题。在这一点上,我确信我误解了它并且可能错误地配置了它。relative_toget_versionuse_scm_versionsetuptools_scm

0 投票
1 回答
217 浏览

python - setuptools_scm 引发 AssertionError:不支持自己的开发号

我在 setup.py 中使用这两个参数已经有一段时间了,没有任何问题。

尽管我没有对 进行任何更改,但setup.py今天我开始在下面遇到此异常。

它发生在我打电话时python setup.py。我怀疑这是由于 setuptools 的维护者最近做出的改变。

完整的错误如下:

我试着setup.py用这个改变

仍然引发异常。这里可能有什么问题?
提前致谢!

0 投票
1 回答
1206 浏览

python - setuptools_scm 不能使用 `pip install .` 如果父文件夹中有 .git

我在一个版本化文件夹中有两个或多个 Python 包:

./api 和 pkg python 包都运行pip install -e .良好,但pip install .给我回溯:

我的config.py::

什么可能是临时解决方法?

我看到有一个与此相关的未解决问题:https ://github.com/pypa/setuptools_scm/issues/357

0 投票
0 回答
71 浏览

python - 如何在 setuptools_scm 中使用 PEP440 beta 标签?

有没有办法使用 PEP440 样式的 beta 版本标签,例如v0.1.3b0setuptools_scm?

它目前给出了一个错误invalid literal for int() with base 10: '3b0'

这是 setuptools_scm 的 5.0.1 版本,它是迄今为止最新的版本。

0 投票
0 回答
2036 浏览

python - LookupError: setuptools-scm 无法检测版本(使用 python setup.py install 时)

我正在尝试在python虚拟环境3.7(名为“py37”)中安装setup.py(来自网站:https ://github.com/richpsharp/ipbes-analysis/tree/1.1.0/ipbes-ndr) .

我输入:

  1. git 克隆https://github.com/richpsharp/ipbes-analysis.git
  2. cd ipbes-分析\ipbes-ndr
  3. python setup.py 安装

但是,我得到了错误:

setup.py的内容是:

我不确定如何解决此错误...任何帮助将不胜感激。谢谢!!

玉琪