使用 `--pre` 选项时,pip 不匹配预发布版本

2024-05-07

假设您已经发布了两个预发行版:

 package 0.0.1.dev0
 package 0.0.2.dev0

My install_requires部分在setup.py states:

[
    'package>=0.0.2,<1.0.0'
]

现在,当我跑步时pip install . --upgrade --pre我收到错误:

错误:找不到满足要求的版本包=0.0.2(来自版本:0.0.1.dev0、0.0.2.dev0) 错误:找不到包 =0.0.2 的匹配发行版

我究竟做错了什么?难道不是--preflag 应该告诉 pip 匹配预发布版本吗?


Summary

The pip --pre选项指示 pip 包含潜在匹配的预发布版本和开发版本,但它不会更改版本匹配的语义。

自预发布以来0.0.2.dev0早于稳定版本0.0.2,pip 在搜索至少与稳定版本一样新的包时正确报告错误0.0.2.

解释

混乱的关键点在点周围--pre选项,记录为:

--pre
包括预发布版本和开发版本。默认情况下,pip 只查找稳定版本。

问题的前提是--pre选项应该更改包版本匹配语义,以便在与稳定版本匹配时忽略预发布版本后缀。

为了进一步澄清,请考虑兼容的发布运算符~=。 PEP 440 部分兼容版本 https://www.python.org/dev/peps/pep-0440/#compatible-release,部分指出:

对于给定的版本标识符V.N,兼容的释放子句大约相当于一对比较子句:

>= V.N, == V.*

...

如果预发布、后发布或开发版本在兼容发布条款中被命名为V.N.suffix,那么在确定所需的前缀匹配时会忽略后缀:

〜= 2.2.post3 = 2.2.post3, == 2.*

〜= 1.4.5a4 = 1.4.5a4, == 1.4.*

这个例子清楚地表明suffix被忽略。

以下要求不符合0.0.2.dev0:

install_requires=['package~=0.0.2']  # ERROR: ResolutionImpossible

而这个例子does匹配稳定版本0.0.2:

install_requires=['package~=0.0.2.dev0']  # OK - suffix ignored
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 `--pre` 选项时,pip 不匹配预发布版本 的相关文章

  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • 通过 Scrapy 抓取 Google Analytics

    我一直在尝试使用 Scrapy 从 Google Analytics 获取一些数据 尽管我是一个完全的 Python 新手 但我已经取得了一些进展 我现在可以通过 Scrapy 登录 Google Analytics 但我需要发出 AJAX
  • Django 管理员在模型编辑时间歇性返回 404

    我们使用 Django Admin 来维护导出到我们的一些站点的一些数据 有时 当单击标准更改列表视图来获取模型编辑表单而不是路由到正确的页面时 我们会得到 Django 404 页面 模板 它是偶尔发生的 我们可以通过重新加载三次来重现它
  • 使 django 服务器可以在 LAN 中访问

    我已经安装了Django服务器 可以如下访问 http localhost 8000 get sms http 127 0 0 1 8000 get sms 假设我的IP是x x x x 当我这样做时 从同一网络下的另一台电脑 my ip
  • 使用带有关键字参数的 map() 函数

    这是我尝试使用的循环map功能于 volume ids 1 2 3 4 5 ip 172 12 13 122 for volume id in volume ids my function volume id ip ip 我有办法做到这一点
  • 是否可以忽略一行的pyright检查?

    我需要忽略一行的pyright 检查 有什么特别的评论吗 def create slog group SLogGroup data Optional dict None SLog insert one SLog group group da
  • 测试 python Counter 是否包含在另一个 Counter 中

    如何测试是否是pythonCounter https docs python org 2 library collections html collections Counter is 包含在另一个中使用以下定义 柜台a包含在计数器中b当且
  • Spark KMeans 无法处理大数据吗?

    KMeans 有几个参数training http spark apache org docs latest api python pyspark mllib html highlight kmeans pyspark mllib clus
  • OpenCV 无法从 MacBook Pro iSight 捕获

    几天后 我无法再从 opencv 应用程序内部打开我的 iSight 相机 cap cv2 VideoCapture 0 返回 并且cap isOpened 回报true 然而 cap grab 刚刚返回false 有任何想法吗 示例代码
  • 如何使用 OpencV 从 Firebase 读取图像?

    有没有使用 OpenCV 从 Firebase 读取图像的想法 或者我必须先下载图片 然后从本地文件夹执行 cv imread 功能 有什么办法我可以使用cv imread link of picture from firebase 您可以
  • AWS EMR Spark Python 日志记录

    我正在 AWS EMR 上运行一个非常简单的 Spark 作业 但似乎无法从我的脚本中获取任何日志输出 我尝试过打印到 stderr from pyspark import SparkContext import sys if name m
  • Flask如何获取请求的HTTP_ORIGIN

    我想用我自己设置的 Access Control Allow Origin 标头做出响应 而弄清楚请求中的 HTTP ORIGIN 参数在哪里似乎很混乱 我在用着烧瓶 0 10 1 以及HTTP ORIGIN似乎是这个的特点之一object
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • 有没有办法检测正在运行的代码是否正在上下文管理器内执行?

    正如标题所述 有没有办法做到这样的事情 def call back if called inside context print running in context else print called outside context 这将
  • 有人用过 Dabo 做过中型项目吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们正处于一个新的 ERP 风格的客户端 服务器应用程序的开始阶段 该应用程序是作为 Python 富客户端开发的 我们目前正在评估 Dabo
  • 使用 Python 绘制 2D 核密度估计

    I would like to plot a 2D kernel density estimation I find the seaborn package very useful here However after searching
  • 如何计算 pandas 数据帧上的连续有序值

    我试图从给定的数据帧中获取连续 0 值的最大计数 其中包含来自 pandas 数据帧的 id date value 列 如下所示 id date value 354 2019 03 01 0 354 2019 03 02 0 354 201
  • 使用 Python 的 matplotlib 选择在屏幕上显示哪些图形以及将哪些图形保存到文件中

    我想用Python创建不同的图形matplotlib pyplot 然后 我想将其中一些保存到文件中 而另一些则应使用show 命令 然而 show 显示all创建的数字 我可以通过调用来避免这种情况close 创建我不想在屏幕上显示的绘图
  • 从列表指向字典变量

    假设你有一个清单 a 3 4 1 我想用这些信息来指向字典 b 3 4 1 现在 我需要的是一个常规 看到该值后 在 b 的位置内读写一个值 我不喜欢复制变量 我想直接改变变量b的内容 假设b是一个嵌套字典 你可以这样做 reduce di
  • Statsmodels.formula.api OLS不显示截距的统计值

    我正在运行以下源代码 import statsmodels formula api as sm Add one column of ones for the intercept term X np append arr np ones 50

随机推荐

  • 在 Javascript 中获取不带模 (%) 运算符的余数,占 -/+ 符号

    对于家庭作业 我需要返回 num1 除以 num2 后的余数 而不使用内置模 运算符 我可以使用以下代码让大多数测试通过 但我一直不知道如何解释给定数字的 符号 我需要保留 num1 上的任何一个符号 并且如果 num2 为负数 还返回一个
  • springdoc-openapi:如何添加POST请求的示例?

    Controller有以下方法 ApiResponses value ApiResponse responseCode 200 GetMapping value API URI PREFIX PRODUCTS URI produces Me
  • Linux:通过网络进行屏幕桌面视频捕获和 VNC 帧速率

    抱歉 文字墙很长 TL DR VNC 连接的帧速率是多少 以帧 秒为单位 或者更确切地说 由谁决定 客户端还是服务器 对于桌面屏幕捕获的任何其他建议 但 正确的时间编码 具有不抖动的帧速率 具有稳定的周期 并有可能将其作为未压缩 或无损 图
  • 从 PDF 等二进制文件中读取文本

    我在 C 中读取二进制文件时遇到问题 目前我的代码是这样的 FILE s fopen source rb fseek s 0 SEEK END size file size ftell s rewind s char sbuffer cha
  • 在 Codeigniter 中加载 javascript

    对于我们的 Code Igniter 应用程序 我们在结束 body 标记之前加载所有 javascript 所以在我们的控制器中我们有 this gt load gt view head this gt head this gt load
  • C#、DLL 导入 API 在 VS2012 .NET Framework 4.5 中无法正常工作

    我的 WinForms 项目有一个问题 该项目是在 VS2005 NET Framework 2 0 中创建的 我刚刚将其升级到 VS2012 NET Framework 4 5 在我的项目中 我使用了第三方DLLDllImport并使用它
  • 对 Windows 窗体控件进行线程安全调用

    MSDN 文章 如何 对 Windows 窗体控件进行线程安全调用 http msdn microsoft com en us library ms171728 aspx说我们应该使用异步委托来进行调用 但为什么异步委托可以使调用安全呢 W
  • 为什么 localhost:5000 在 Flask 中不起作用?

    我正在使用 Flask 应用程序工厂模式 并且有这个 run py 文件 from app import create app app create app if name main app run host localhost debug
  • iPhone:AVAudioPlayer 不支持的文件类型

    我的应用程序从我们的服务器下载 mp3 并将其播放给用户 该文件为 64 kbps 如果我理解正确的话 这完全在 iPhone 的可接受范围内 我在几十个网站上查找了如何执行此操作 他们都建议我这样做 NSData data NSData
  • 在 Dart 中查找和替换字符串

    我正在为这个应用程序使用 flutter 但我在应用程序的逻辑方面遇到了问题 任何帮助深表感谢 应用程序目标 通过以下方式将所有输入缩写解码 替换 为单词 用户通过文本框输入文本 应用程序查找任何缩写 几个 并仅用文本替换缩写 我能够使用一
  • 在 Objective-C (iPhone) 中从 Excel 文件读取数据 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在 google 中搜索过 但似乎没有找到从 Objective C 读取 Excel 文件的方法 我找到的唯一答案是首先转换为 CSV
  • Ifelse 只返回列表的第一个元素

    我有两个清单 list1 lt list x c 1 2 3 y c 4 5 6 list1 x 1 1 2 3 y 1 4 5 6 list2 lt list x c 1 2 3 y c 4 5 6 z c 7 8 9 list2 x 1
  • C++中字符串如何分配内存?

    我知道动态内存比设置固定大小的数组并使用其中的一部分具有优势 但在动态内存中 您必须输入要在数组中存储的数据量 使用字符串时 您可以输入任意数量的字母 您甚至可以使用字符串代替数字 然后使用函数来转换它们 这一事实让我认为字符数组的动态内存
  • string.Equals (c#) 的区域性参数何时真正产生影响的示例?

    我不完全理解 string Equals 的第二个参数 这是因为我找不到任何例子来说明它何时会真正产生影响 例如 无论第二个参数的值如何 除了 IgnoreCase 这里给出的示例都是相同的 http msdn microsoft com
  • 在 C 中打印指针

    我试图用指针来理解一些东西 所以我写了这段代码 include
  • 如何使用json传递opentracing数据

    我的 API 网关启动一个跟踪器和一个用于验证电子邮件的范围 然后它传递给user service用于验证 我想通过这个span详情至user service作为 json 对象并启动另一个span as a tracer start sp
  • 如何让 geom_vline 尊重facet_wrap?

    我四处搜寻 但无法找到答案 我想做一个加权 geom bar 图 上面覆盖有一条垂直线 显示每个方面的总体加权平均值 我无法让这件事发生 垂直线似乎是应用于所有方面的单一值 require ggplot2 require plyr data
  • main()函数在C++中调用自身,会发生什么? [复制]

    这个问题在这里已经有答案了 include
  • 如何通过pthreads管理两个或多个消费者?

    我有一个正在寻求解决的通用问题 即从标准输入或常规文件流发送到应用程序的二进制数据块 应用程序又将二进制数据转换为文本 使用线程 我想在将文本传输到下一个应用程序之前对其进行处理 该应用程序会进一步修改该文本 依此类推 作为一个简单的测试用
  • 使用 `--pre` 选项时,pip 不匹配预发布版本

    假设您已经发布了两个预发行版 package 0 0 1 dev0 package 0 0 2 dev0 My install requires部分在setup py states package gt 0 0 2 lt 1 0 0 现在