PEP 356 – Python 2.5 发布日程
- 作者:
- Neal Norwitz, Guido van Rossum, Anthony Baxter
- 状态:
- 最终版
- 类型:
- 信息性
- 主题:
- 发布
- 创建日期:
- 2006年2月7日
- Python 版本:
- 2.5
- 发布历史:
摘要
本文档描述了 Python 2.5 的开发和发布日程。该日程主要关注 PEP 级别的事项。小型功能可在第一次 Beta 发布之前(含)添加。错误可在最终发布之前修复。
将至少发布两个 Alpha 版本、两个 Beta 版本和一个候选发布版本。发布日期计划为2006年9月12日。
发布经理
- Anthony Baxter 已自愿担任发布经理。
- Martin von Loewis 正在构建 Windows 安装程序,
- Ronald Oussoren 正在构建 Mac 安装程序,
- Fred Drake 负责文档包,
- Sean Reifschneider 负责 RPM 包。
发布时间表
- Alpha 1: 2006年4月5日 [已完成]
- Alpha 2: 2006年4月27日 [已完成]
- Beta 1: 2006年6月20日 [已完成]
- Beta 2: 2006年7月11日 [已完成]
- Beta 3: 2006年8月3日 [已完成]
- RC 1: 2006年8月17日 [已完成]
- RC 2: 2006年9月12日 [已完成]
- 最终版: 2006年9月19日 [已完成]
2.5 已完成的功能
- PEP 308: 条件表达式
- PEP 309: 部分函数应用
- PEP 314: Python 软件包元数据 v1.1
- PEP 328: 绝对/相对导入
- PEP 338: 将模块作为脚本执行
- PEP 341: 将 try-except/try-finally 统一为 try-except-finally
- PEP 342: 通过增强型生成器实现协程
- PEP 343: “with” 语句 (仍需更新 Doc/ref 和
contextlib模块) - PEP 352: 异常的必需超类
- PEP 353: 使用
ssize_t作为索引类型 - PEP 357: 允许任何对象用于切片
- ASCII 成为默认编码
- 基于 AST 的编译器
- 通过新的
_ast模块从 Python 访问 C AST any()/all()内置真值函数
新的标准库模块
cProfile– 适用于以最小开销分析长时间运行的应用程序ctypes– Windows 安装程序的可选组件ElementTree和cElementTree– 由 Fredrik Lundh 开发hashlib– 添加了对 SHA-224、-256、-384 和 -512 的支持(替换旧的md5和sha模块)msilib– 用于创建 MSI 文件和 distutils 中的bdist_msi。pysqliteuuidwsgiref
其他值得注意的功能
- 增加了对读取影子密码的支持 [1]
- 增加了对 Unicode 4.1 UCD 的支持
- 为以下模块添加了 PEP 302
zipfile/__loader__支持:warnings、linecache、inspect、traceback、site和doctest - 添加了
pybenchPython 基准测试套件 – 由 Marc-Andre Lemburg 开发 - 从 sandbox/mailbox 中的代码添加对邮箱写入的支持。(负责人:A.M. Kuchling。如果另一个人能审查新代码,那仍然是很好的。)
- 支持构建“胖”Mac 二进制文件(Intel 和 PPC)
- 为 Windows 添加带有新 Python 标志的新图标?
functools中新增实用程序,用于帮助编写支持朴素内省的包装函数(例如,让f.__name__返回原始函数名)。- 将
pyexpat升级到使用 expat 2.0。 - Python 核心现在可以与 g++ 干净地编译
2.5 可能包含的功能
以下每个功能都应在 Beta 1 之前实现,否则需要 BDFL 批准才能包含在 2.5 中。
- 考虑包含的模块
- 为 MacOS 和 Unix 添加带有新 Python 标志的新图标? (负责人: ???) MacOS: http://hcs.harvard.edu/~jrus/python/prettified-py-icons.png
- 检查
Demo/中的各种代码是否仍然有效,更新或删除那些无效的。(负责人:Anthony) Modules/中的所有模块都应更新为 ssize_t clean。(负责人:Neal)
推迟到 2.6
- distutils 包中的
bdist_deb[2] - distutils 包中的
bdist_egg - 纯 Python
pgen模块 (负责人: Guido) - 移除
fpectl模块? - 使
Modules/中的所有内容都能与 g++ 干净地编译
开放问题
- 发布前需要解决的错误,即阻止发布的错误
无
- 推迟到 2.5.1(或更高版本)的错误
- https://bugs.python.org/issue1544279 -
Socket模块不是线程安全的 - https://bugs.python.org/issue1541420 - Windows 中缺少工具和演示
- https://bugs.python.org/issue1542451 - 嵌套 try/finally 中的 continue 导致崩溃
- https://bugs.python.org/issue1475523 - gettext.py 错误 (负责人: Martin v. Loewis)
- https://bugs.python.org/issue1467929 - %-格式化和字典
- https://bugs.python.org/issue1446043 -
unicode()不引发LookupError
- https://bugs.python.org/issue1544279 -
- PEP 302 对 (至少)
pkgutil,runpy和pydoc的更改必须进行文档说明。 test_zipfile64对于大多数构建机器人来说耗时过长且占用过多磁盘空间。这应该如何处理?它目前已被禁用。- “未文档化模块”中列出的 C 模块也应该移除吗?“timing”(列为已过时)、“cl”(列为可能未更新)和“sv”(列为过时的硬件特定)。
参考资料
版权
本文档已置于公共领域。
来源: https://github.com/python/peps/blob/main/peps/pep-0356.rst
最后修改: 2025-02-01 08:59:27 GMT