有多少Python包的版本是正确的?

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

作者研究了Python包的版本字符串,发现许多不符合PEP 440标准。他在虚拟环境中编写脚本,通过PyPI API收集了545,018个包的6,057,703个版本字符串。验证后发现0.09%的版本字符串有问题。大多数符合标准,但有些使用非标准后缀或提交哈希。pepver和parver库在某些情况下存在分歧,作者认为parver更准确。总体来说,Python包的版本管理状况良好。

🎯

关键要点

  • 作者研究了Python包的版本字符串,发现许多不符合PEP 440标准。

  • 通过PyPI API收集了545,018个包的6,057,703个版本字符串。

  • 验证后发现0.09%的版本字符串有问题,整体状况良好。

  • 大多数版本字符串符合标准,但有些使用非标准后缀或提交哈希。

  • pepver和parver库在某些情况下存在分歧,作者认为parver更准确。

  • pepver对某些版本字符串的验证不如parver准确,尤其是关于后缀的使用。

  • 尽管存在非标准版本,通常仍能较容易地识别版本顺序。

🔎

延伸解读

Python版本管理的健康状况

尽管在545,018个包中仅有0.09%的版本字符串存在问题,但这表明Python生态系统的版本管理整体上是健康的。大多数包遵循PEP 440标准,开发者在使用版本字符串时应继续遵循这一标准,以确保兼容性和可维护性。

pepver与parver的比较

在验证版本字符串时,pepver和parver库的结果存在差异。parver在处理后缀时更为准确,而pepver则对某些非标准字符串的接受度较高。开发者在选择库时应考虑这些差异,以确保版本解析的准确性。

非标准版本的识别

虽然存在一些非标准的版本字符串,但通常仍能较容易地识别版本顺序。开发者在处理这些版本时应保持警惕,了解非标准用法可能带来的潜在问题,尤其是在依赖管理和版本比较时。

延伸问答

Python包的版本字符串为什么会不符合PEP 440标准?

一些版本字符串使用了非标准后缀或提交哈希,导致不符合PEP 440标准。

作者是如何收集Python包的版本字符串的?

作者通过PyPI API查询了545,018个包的6,057,703个版本字符串,并存储在SQLite数据库中。

在作者的研究中,有多少版本字符串被发现有问题?

在6,057,703个版本字符串中,0.09%被发现有问题。

pepver和parver库在版本字符串验证上有什么不同?

pepver对某些版本字符串的验证不如parver准确,尤其是关于后缀的使用。

Python包的版本管理状况如何?

总体来说,Python包的版本管理状况良好,大多数版本字符串符合标准。

如何识别非标准的Python版本字符串?

尽管存在非标准版本,通常仍能较容易地识别版本顺序,因为偏差较小。

🏷️

标签

➡️

继续阅读