pypi 的yank 是什么意思?
PyPI 的yank是官方提供的一个包版本撤回功能,核心作用是将已上传的特定版本包标记为不可安装,避免用户误下载存在严重缺陷的版本。
核心规则说明
- 仅标记不可安装:执行 yank 操作后,该版本包不会从 PyPI 服务器物理删除,只是在
pip install安装时无法直接指定该版本号进行安装。 - 不影响已下载用户:已经安装过该版本包的用户不会受到任何影响,本地缓存的包文件依然可以正常使用。
- 不可逆操作:yank 标记一旦生效,无法再将该版本恢复为可安装状态,操作前需要确认版本确实存在必须撤回的严重问题。
- 适用场景:仅用于处理包含严重安全漏洞、打包错误、恶意代码等极端问题的版本,普通版本迭代不建议使用该功能。
- 命令示例:通过
twine yank your-package==1.0.0即可完成指定版本的撤回操作。
也就是说把一个版本屏蔽掉,但是又不影响已经安装了这个版本的人!