据 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
  • 弃用项:抛弃对 Python 3.5 的支持(将在 pip 21.0 中移除)。
  • 弃用项:在将来的版本中, pip freeze 命令将停止在 pip freeze 结果输出中抽取 pipsetuptoolsdistributewheel packages 。如果要保持之前的习惯操作,需要在命令中添加 --exclude 选项。
  • 新解析程序在性能,输出和报错消息方面进行了重大改进,避免了无限循环,并支持约束文件。
  • 支持 PEP 600:为支持多版本 Linux 发行版,兼容 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 版本系列。
更多信息请参阅

  • GitHub issues :https://github.com/pypa/pip/projects/6

  • pip 新版本官方讨论区: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


六大云端 Jupyter Notebook 平台测评

2019-06-24

如何卸载 python setup.py install 安装的包?

2020-05-15

为什么 Biopython 的在线 BLAST 这么慢?

2019-11-17

生物信息学 Python 入门之源码安装

2019-09-29

Python 日期和时间函数使用指南

2019-09-21

Python 文件与目录操作方法总结

2019-02-17


点赞鼓励一下

本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

pip 20.3 新版本发布!即将抛弃 Python 2.x的更多相关文章

  1. [转帖]2018年的新闻: 国内首家!腾讯主导Apache Hadoop新版本发布

    国内首家!腾讯主导Apache Hadoop新版本发布   https://blog.csdn.net/weixin_34194317/article/details/88811258 腾讯也挖了很多 ...

  2. 如何发布自己用python写的py模块

    Python——怎么发布你的Python模块 我们在学习Python的时候,除了用pip安装一些模块之外,有时候会从网站下载安装包下来安装,我也想要把我自己编写的模块做成这样的安装包,该怎么办,如何发 ...

  3. 20.23. xmlrpclib — XML-RPC client access — Python v2.7.5 documentation

    20.23. xmlrpclib — XML-RPC client access — Python v2.7.5 documentation 20.23. xmlrpclib — XML-RPC cl ...

  4. TarsGo新版本发布,支持protobuf,zipkin和自定义插件

    本文作者:陈明杰(sandyskies) Tars是腾讯从2008年到今天一直在使用的后台逻辑层的统一应用框架,目前支持C++,Java,PHP,Nodejs,Golang语言.该框架为用户提供了涉及 ...

  5. 第7.20节 案例详解:Python抽象类之真实子类

    第7.20节 案例详解:Python抽象类之真实子类 上节介绍了Python抽象基类相关概念,并介绍了抽象基类实现真实子类的步骤和语法,本节结合一个案例进一步详细介绍. 一.    案例说明 本节定义 ...

  6. 我的第一个python web开发框架(20)——产品发布(部署到服务器)

    首先按上一章节所讲述的,将服务器环境安装好以后,接下来就是按步骤将网站部署到服务器上了. 我们的站点是前后端分离的,所以需要部署两个站点.首先来发布前端站点. 部署前端站点 输入命令进入svn管理文件 ...

  7. 在Pypi上发布自己的Python包

    使用Python编程的都知道,Python的包安装非常的方便,一般都是可以pip来安装搞定: sudo pip install <package name> pip的安装请移步:https ...

  8. k3s新版本发布!支持Helm3!还有其他重要更新Highlight!

    前 言 两个月前,业界应用最为广泛的Kubernetes管理平台创建者Rancher Labs(以下简称Rancher)在KubeCon2019北美峰会上宣布,Rancher打造的轻量级Kuberne ...

  9. 如何打包发布加密的 Python 源代码

    这里介绍一种使用 PyInstaller 和 PyArmor 来发布加密 Python 源代码的方式,能够达到以下目的 把所有 Python 源代码打包成为可执行文件,客户不需要 Python 就可以 ...

  10. Pyston v2.0 发布,解决 Python 慢速的救星

    Pyston 自从 2017 年发布 0.6.1 版本后,已经淡出了人们的视线三年多了,导致现在新人都很少听过它的大名. 前两天(2020年10月28日)Pyston 在官方博客上(https://b ...

随机推荐

  1. 从pcap文件中提取pcma音频

    操作系统 :Windows10_x64 .CentOS 7.6.1810_x64 wireshark版本:3.6.12 Python 版本  :  3.9.12 一.背景描述 工作中有时候会遇到需要从 ...

  2. 前端ffmpeg实现视频剪切

    利用ffmpeg实现纯前端视频剪切 注意:在新版本Chrome浏览器中由于安全性问题,只能在https或localhost当中才能正常使用 1. 下载ffmpeg npm install @ffmpe ...

  3. 计网学习笔记七 IP protocol basic

    在这一节讲了IP协议的基本内容:包括IPv4提供的操作.数据报在IPv4下是怎么样的结构.数据报是怎样切片发送的.IPv4的编址方式有什么--IPv6在下一节讲网络层协议簇时细讲. IPv4协议的具体 ...

  4. 二进制安装Kubernetes,一键安装脚本

    背景,最近几天闲着研究Kubernetes,发现使用手动二进制安装会有些繁琐.经过突发奇想,就出现这个脚本. 声明,该脚本不及互联网上其他大佬的一件脚本,该脚本仅仅是突发奇想编写的,希望大佬不喜勿喷. ...

  5. Mybatis的整体理解

    I有关于我的对ybatis的设想: 简单总结-下有关于我对wybat is的架构理解: 总体分为三个层面: 1.对外接口API 2.MapStatement数据处理 3.执行及其数据存储 两个主要的对 ...

  6. Notion AI:门槛更低的ChatGPT Plus

    [2023年3月27日]由于接口成本的问题,如今的大部分应用应该都只会建立在GPT-3/ChatGPT接口的基础上,所以想要体验GPT-4,还是得尊贵的ChatGPT Plus. 前段日子体验了Not ...

  7. 单元测试、文档测试、读写文件、StringIO和BytesIO

    1.单元测试就是为了测试程序执行的正确性 2.编写单元测试时,需要编写一个单元测试类,继承unittest TestCase类 3.单元测试最常用的断言是assert,断言期望抛出指定的异常 4.运行 ...

  8. 五月十四号java基础知识点

    class Person{ private String name; private int age; public Person(String name,int age){ this.name = ...

  9. 执行计划display_cursor函数

    问题描述:关于oracle查看真实的执行计划,使用select * from table(dbms_xplan.display_cursor(null,null));的方式来获取执行计划 参考文档:h ...

  10. Nvidia GPU池化-远程GPU

    1 背景 Nvidia GPU得益于在深度学习领域强大的计算能力,使其在数据中心常年处于绝对的统治地位.尽管借助GPU虚拟化实现多任务混布,提高了GPU的利用率,缓解了长尾效应,但是GPU利用率的绝对 ...