问题标签 [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.
setuptools - 阅读文档和 setuptools scm 版本错误
我有一个我刚刚更新以使用 setuptools_scm 的软件包,并在 readthedocs 中发现版本号错误。
http://sshuttle.readthedocs.org/en/v0.77/显示:
但是由于版本 083293e 有 0.77 标签,版本字符串应该只是 0.77
看起来 readthedocs 可能会在构建之前对我的源代码进行更改。
我查看了 readthedocs 构建日志,它似乎在某个阶段(0.77)具有正确的版本,但是这是在它构建文档之前。
构建文档时构建日志未提及版本。
有可能解决这个问题吗?
谢谢
python - pytest-xdist: LookupError: setuptools-scm 无法检测到版本
安装时pytest-xdist
,我收到此错误:
我之前能够成功安装 pytest-xdist,但我不确定发生了什么变化:(
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
. 如何处理?
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/
问题仍然存在:是否有一种规范的方法来做这样的事情?
python - ReadTheDocs + Sphinx + setuptools_scm:怎么做?
我有一个项目,我通过git
标签管理版本。然后,我用来setuptools_scm
在我的文件中获取这些信息,setup.py
并生成一个文件 ( _version.py
),该文件在为pip
.
此文件未被跟踪,git
因为:
- 它具有相同的信息,可以通过以下方式收集
git
- 它将创建一个循环情况,其中构建轮子将修改更改源的版本并生成新版本
现在,当我构建文档时,从中获取这个版本变得很自然,_version.py
这一切都在本地运行良好。
但是,当我尝试在 ReadTheDocs 中执行此操作时,文档的构建失败,因为_version.py
没有被跟踪git
,因此 ReadTheDocs 在从存储库中获取源时找不到它。
编辑:我尝试使用副本中提出的方法,这与文档中指示的方法相同setuptools_scm
,即使用 in docs/conf.py
:
但我得到:
pkg_resources.DistributionNotFound:未找到“数字”分布,应用程序需要它
(同样,在本地构建文档可以正常工作。)
如果不在两个地方维护版本号,我怎么能解决这个问题?
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.0
and setuptools_scm 4.1.2
,我配置了以下内容:
setup.py
(省略元数据字段)
setup.cfg
pyproject.toml
我想在这里指出,安装工作正常,pip install -e .
应用程序按预期运行。
我尝试在调用时更新root
and参数,并更新以使用配置字典无济于事。我在 github 中查看了官方问题,但我无法解决这个问题。在这一点上,我确信我误解了它并且可能错误地配置了它。relative_to
get_version
use_scm_version
setuptools_scm
python - setuptools_scm 引发 AssertionError:不支持自己的开发号
我在 setup.py 中使用这两个参数已经有一段时间了,没有任何问题。
尽管我没有对 进行任何更改,但setup.py
今天我开始在下面遇到此异常。
它发生在我打电话时python setup.py
。我怀疑这是由于 setuptools 的维护者最近做出的改变。
完整的错误如下:
我试着setup.py
用这个改变
仍然引发异常。这里可能有什么问题?
提前致谢!
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
python - 如何在 setuptools_scm 中使用 PEP440 beta 标签?
有没有办法使用 PEP440 样式的 beta 版本标签,例如v0.1.3b0
setuptools_scm?
它目前给出了一个错误invalid literal for int() with base 10: '3b0'
。
这是 setuptools_scm 的 5.0.1 版本,它是迄今为止最新的版本。
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) .
我输入:
- git 克隆https://github.com/richpsharp/ipbes-analysis.git
- cd ipbes-分析\ipbes-ndr
- python setup.py 安装
但是,我得到了错误:
setup.py的内容是:
我不确定如何解决此错误...任何帮助将不胜感激。谢谢!!
玉琪