Python 2.7的终止支持时间为2020年,现在已经是2015年了,然而Debian中仍然有大量软件包是基于Python 2的实现。Debian的维护者开始认真讨论淘汰Python 2。开发者Paul Tagliamonte提出计划以尽快的将Python 2项目移植到Python 3,宣称“Python 2已死,Python 3万岁”。

直击现场

《HTML开发MacOSApp教程》  http://pan.baidu.com/s/1jG1Q58M

Aloha, Developers!

Many of our projects in Debian are written in Python -- yay, Python!

However, a large chunk are implemented in Python 2 -- Booo, Python 2!

Background
========== Python 2 is scheduled to be EOL'd upstream officially and for good in 2020.
We're in 2015 now (wow, that went quickly), and keeping our release cadence up
(3 years a pop) puts Stretch up in 2018, and Buster in 2021. Short of a brilliant Stretch cycle, this should be basically rightish. after Python 2 is EOL -- that's right, EOL! Nuts, right? A bunch of us at PyCon had a gathering of the shadowy Debian Python cabal
(notes from that meeting can be found at
<20150414220155.GA2589@cassiel.pault.ag>), and this fact hit us. We've been
talking more seriously about Python 2's deprecation, and what we do as the
maintainers of so much of the ecosystem / cpython / pypy maintainers. The idea is to basically stop uploading new Python 2 only libraries, port
things on the critical path, and swap leaf packages to Python 3. Details on
this can be found in the notes. Exact plans and policies are being resolved,
but that's the general idea. Given that I'm such a radical Python 3 proponent, I've decided to start the
effort for our infra. I seem to have a thing for flame threads, I guess. The first step is to evaluate things within our control -- Infrastructure. Tasks
===== So, what can we do about it? Great question! Since the DPMT and PAPT will soon be taking a more aggressive
approach on the ecosystem (porting as hard as we can to Python 2), you can help
by doing some of the following: - If *you* maintain or work on a Python 2 project that's used in Debian
Development (buildd, release tools, QA tools, ftpteam tools), please
email me a link to the project. An accurate census will help hugely. If
it works on Python 2, Python 2 and Python 3 or just Python 3, you should
include those details as well. - Identify what Debian Infra or Meta-Debian projects require Python 2 due
to unported or unbuilt Python 3 packages. Feel free to just scan your
top-level direct dependencies, we can play with the tree of deps. + Consider filing a bug on packages which are supported on Python 3
upstream but do not currently build Python 3 packages. + Consider filing a bug on packages which do *not* have upstream
support, and look into modern implementations of libraries you need. + If you have to do either of the above, consider patching it!
Remember: Teamwork makes the dream work! ( Note: the usertag on the above has not been decided yet, check in
for that later ) - Port the project to a hybrid Python 2/3 codebase (it's easy most of the
time, I promise!) but stay on Python 2, which will let you preform an
incremental upgrade. Consider test cases! Testing is great! I suggest
`tox` to let you continue to run the test suite for multiple versions
of Python. - Deploy or upload the tool to the archive or our infra using pure Python
3. This is the best if you have some test cases you can rely on (Python
has some wonderful stuff you should totally be using!) Plans
===== I plan on creating a Python 3 porting team. It'll have a fancy buzzword name,
but I'm a bit too tired to think of one now. Such a porting team would consist
of folks who are here to help port things important to us (Debian) to Python 3
so that we can get off of Python 2 for Buster. If you're interested in this effort, please email me. This is a really good new
contributor task, so if anyone's asked you how they could get involved with
Debian, you should send them to us! We'll be nice, I promise! I'll be making a Mailing List for this on Alioth sometime soon. Takeaways
========= The future is now! It's time to port as much as we can to Python 3 in the next
two cycles as we can, so we don't have to rely on an old, deprecated and broken
Python 2. As the kids say -- 'Sorry not sorry' When you see Python 2 - treat it as legacy! Please encourage porting! We can all soon look forward to the day where we no longer have to play Unicode
whack-a-mole and have a language getting new features again! I've been using
Python 3 for all new work code, and personal stuff, it's pretty great! If you are interested, or know anyone who might be interested, I'll be putting
together a Python 2 => Python 3 task force. Please email me privately if you're
interested, I'll keep a list of names for the soon to not be created list. Python [2] is dead! Long live Python [3]!
Paul --
.''`. Paul Tagliamonte <paultag@debian.org> | Proud Debian Developer
: :' : 4096R / 8F04 9AD8 2C92 066C 7352 D28A 7B58 5B30 807C 2A87
`. `'` http://people.debian.org/~paultag
`- http://people.debian.org/~paultag/conduct-statement.txt

Attachment: signature.asc
Description: Digital signature

Python 2, Python 3, Stretch & Buster的更多相关文章

  1. 1 python学习——python环境配置

    1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...

  2. CentOS使用virtualenv搭建独立的Python环境-python虚拟环境

    CentOS使用virtualenv搭建独立的Python环境-python虚拟环境 virtualenv可以搭建虚拟且独立的python环境,可以使每个项目环境与其他项目独立开来,保持环境的干净,解 ...

  3. Embeding Python & Extending Python with FFPython

    Introduction ffpython is a C++ lib, which is to simplify tasks that embed Python and extend Python. ...

  4. python 运行python manege.py runserver时报错:“no module named djangorestframework” 的解决方案

    python 运行python manege.py runserver时报错:“no module named djangorestframework” 的解决方案 importerror:no mo ...

  5. 翻译文章“AST 模块:用 Python 修改 Python 代码”---!!注意ironpathyon未实现此功能

    https://github.com/upsuper/blog/commit/0214fdd084c4adf2de2ed9912d644fb59ce13a1c +Title: [翻译] AST 模块: ...

  6. Python学习(二) 运行Python,编译Python

    无论windos还是Linux只要安装了python,配置好了环境变量,则在命令行输入python这个命令的时候就会进入交互模式.在这个模式下可以进行一些简单的python代码编写.退出可以使用exi ...

  7. Python:Python学习总结

    Python:Python学习总结 背景 PHP的$和->让人输入的手疼(PHP确实非常简洁和强大,适合WEB编程),Ruby的#.@.@@也好不到哪里(OO人员最该学习的一门语言). Pyth ...

  8. Python 正则表达式 (python网络爬虫)

    昨天 2018 年 01 月 31 日,农历腊月十五日.20:00 左右,152 年一遇的月全食.血月.蓝月将今晚呈现空中,虽然没有看到蓝月亮,血月.月全食也是勉强可以了,还是可以想像一下一瓶蓝月亮洗 ...

  9. Python和Python解释器

    目录 Python介绍(了解) Python解释器发展史(了解) Python解释器(了解) CPython IPython PyPy Jython IronPython 安装Python解释器(掌握 ...

随机推荐

  1. 学习鸟哥的Linux私房菜笔记(16)——Ubuntu中建立ftp服务

    1.安装vsftpd,如下图所示:sudo apt-get install vsftpd 2.查看本机是否可以连接ftp 如上图所示,发现login failed了,怎么办呢?我们来看看vsftpd的 ...

  2. NOIP模拟 - 树

    题目描述 给出一张n个点,m条边的无向图,摧毁每条边都需要一定的体力,并且花费的体力值各不相同,给定图中两个点x,y(x≠y),每当(x,y)之间存在路径,就需要不断摧毁当前图中花费体力最少的一条边, ...

  3. [GeekBand] C++ 内存分布—— new和delete重载的实现及分析

    本文参考文献:GeekBand课堂内容,授课老师:侯捷 :深度探索C++对象模型(侯捷译) :网络资料: http://www.leavesite.com/geekband-cpp-5.html ht ...

  4. Swift学习——Swift解释具体的基础(六)

    Optionals    可选 可选(它似乎并不如此翻译)它适用于那些值这种情况可能是空的,有两种情况一个可选:存在值并等于x,要么值不存在. 选配的概念在OC和C里面并没有.在OC中最接近的概念就是 ...

  5. 网络编程C#

    C#网络程序设计(1)网络编程常识与C#常用特性     网络程序设计能够帮我们了解联网应用的底层通信原理!     (1)网络编程常识: 1)什么是网络编程 只有主要实现进程(线程)相互通信和基本的 ...

  6. node lesson4--eventproxy不懂

    var express = require('express'); var superagent = require('superagent'); var cheerio = require('che ...

  7. 王立平--GC

    Gabage Collection:垃圾回收 是.net中对内存管理的一种功能. 垃圾回收器跟踪并回收托管内存中分配的对象,定期运行垃圾回收以回收分配给没有有效引用的对象的内存. 当使用可用内存不能满 ...

  8. 从 XML 到 XPath

    XPath是 W3C(World Wide Website Consortium) 的一个标准.它最主要的目的是为了在 XML1.0 或 XML1.1 文档节点树中定位节点所设计. XPath 即为 ...

  9. sqlplus 上下工具

    http://yunpan.cn/QNXXpjP9aBy6v 訪问password 420b 想在Unix.Linux环境下使用sqlplus,像在win以下一样,实现上下翻页. 怎么办呢? 首先要确 ...

  10. vi学习(1)

    今天下午看了vi频繁使用的操作,现在记录,为了方便日后查询. 按vi模式.进入命令3部分. (一) 一般模式下 字符操作:上下左右箭头(或kjhl)能够实现光标上下左右移动一位. 假设想要进行多次移动 ...