据 Python 软件基金会消息,Python Packaging Authority 和 pip 团队于北美时间11月30日宣布发布 pip 20.3版本,开发者可以通过运行python -m pip install --upgrade pip
进行升级安装。
由于改变了默认的依赖解析器,这个版本可能具有颠覆性。pip 项目已经发布了如何测试和迁移到新解析器的用户指南。除了新的解析器,其它变化包括 Python 3.5 将在 pip 21.0 中移除,不再建议使用;pip 21.0 将在 2021 年 1 月释出,这个版本也将停止支持 Python 2.7,不再支持 Python 2.x 系列。
这是一个重要且具有颠覆性的版本,视频中的开发者们解释了这个原因:
重点提要
https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-3-2020
pip freeze
命令将停止在pip freeze
结果输出中抽取pip
、 setuptools
、distribute
、wheel packages
。如果要保持之前的习惯操作,需要在命令中添加--exclude
选项。manylinux
平台。MacOS Big Sur
兼容性的支持默认情况下,新的解析器现在处于打开状态。当它接收到不兼容的指令时,它会变得更加严格且更加一致,并且会减少对某些约束文件的支持,因此某些解决方法和工作流程可能会中断。请参阅有关如何测试和迁移以及如何报告问题的指南。您可以使用已弃用的(旧)解析器,并使用--use-deprecated = legacy-resolver
标志,直到我们在2021年1月的 pip 21.0 版本中将其删除。您可以在变更日志中找到更多详细信息。
即将不再支持 Python 2.7版本
根据计划,pip 团队将在在2021年1月发布pip 21.0
。届时,pip 将停止支持 Python 2.7,并将完全停止支持 Python 2 版本系列。
更多信息请参阅
https://github.com/pypa/pip/projects/6
https://discuss.python.org/t/an-update-on-pip-and-dependency-resolution/1898
https://wiki.python.org/psf/PackagingWG#Dependency_resolver_and_user_experience_improvements_for_pip