python-peps/pep-0361.txt

243 lines
6.8 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

PEP: 361
Title: Python 2.6 Release Schedule
Version: $Revision$
Last-Modified: $Date$
Author: Neal Norwitz
Status: Draft
Type: Informational
Created: 29-June-2006
Python-Version: 2.6
Post-History:
Abstract
This document describes the development and release schedule for
Python 2.6. The schedule primarily concerns itself with PEP-sized
items. Small features may be added up to and including the first
beta release. Bugs may be fixed until the final release.
There will be at least two alpha releases, two beta releases, and
one release candidate. The release date is planned to be in XXX 2008.
Release Manager and Crew
XXX volunteered to be Release Manager.
XXX is building the Windows installers,
XXX is building the Mac installers,
XXX the doc packages and
XXX the RPMs.
Release Schedule
Note that this schedule is completely tentative. The number of alphas,
betas and release candidates will be determined as the release process
unfolds. The minimal schedule is:
June 2007: (re)confirm the crew and start deciding on schedule.
The initial 2.6 target is for April 2008.
alpha 1: T - 16 weeks [planned]
alpha 2: T - 13 weeks [planned]
beta 1: T - 9 weeks [planned]
beta 2: T - 5 weeks [planned]
rc 1: T - 1 week [planned]
final: T [planned]
Completed features for 2.6
PEPs:
352: Raising a string exception now triggers a TypeError.
Attempting to catch a string exception raises DeprecationWarning.
BaseException.message has been deprecated.
New modules in the standard library:
None
Deprecated modules and functions in the standard library:
- buildtools
- commands.getstatus()
- macostools.touched()
- md5
- MimeWriter
- mimify
- popen2, os.popen[234]()
- posixfile
- sets
- sha
Modules removed from the standard library:
- gopherlib
- rgbimg
- macfs
Python 3.0 compatability:
- warnings were added for the following builtins
which no longer exist in 3.0:
apply, callable, coerce, dict.has_key, execfile, reduce, reload
Other major features:
- with/as will be keywords
- a __dir__() special method to control dir() was added [1]
Possible features for 2.6
New features *should* be implemented prior to alpha2, particularly
any C modifications or behavioral changes. New features *must* be
implemented prior to beta1 or will require Release Manager approval.
The following PEPs are being worked on for possible inclusion in 2.6:
- PEP 297: Support for System Upgrades [#pep297]
- PEP 358: The "bytes" Object [#pep358]
- PEP 367: New Super [#pep367]
- PEP 3112: Bytes literals in Python 3000 [#pep3112]
- PEP 3127: Integer Literal Support and Syntax [#pep3127]
Each non-trivial feature listed here that is not a PEP must be
discussed on python-dev. Other enhancements include:
- distutils replacement (requires a PEP)
- turtle.py replacement or enhancements
New modules in the standard library:
- winerror
http://python.org/sf/1505257
(Owner: MAL)
- JSON implementation
- setuptools
BDFL pronouncement for inclusion in 2.5:
http://mail.python.org/pipermail/python-dev/2006-April/063964.html
PJE's withdrawal from 2.5 for inclusion in 2.6:
http://mail.python.org/pipermail/python-dev/2006-April/064145.html
Modules to gain a DeprecationWarning (as specified for Python 2.6
or through negligence):
- rfc822
- mimetools
- multifile
- cfmfile
- compiler package
- warnings module implemented in C
* Convert Parser/*.c to use warnings module rather than printf
- Add warnings for Py3k features removed:
* backticks and <>
* __getslice__/__setslice__/__delslice__
* float args to PyArgs_ParseTuple
* float args to xrange
* coerce and all its friends
* comparing by default comparison
* __cmp__?
* other comparison changes?
* int division?
* {}.has_key()
* All PendingDeprecationWarnings (e.g. exceptions)
* using zip() result as a list
* the exec statement (use function syntax)
* file.xreadlines
* function attributes that start with func_* (should use __*__)
* softspace removal for print() function
* the L suffix for long literals
* removal of modules because of PEP 4/3100/3108
* renaming of __nonzero__ to __bool__
* multiple inheritance with classic classes? (MRO might change)
* properties and classic classes? (instance attrs shadow property)
- use __bool__ method if available and there's no __nonzero__
- Check the various bits of code in Demo/ and Tools/ all still work,
update or remove the ones that don't.
- All modules in Modules/ should be updated to be ssize_t clean.
- All of Python (including Modules/) should compile cleanly with g++
- Start removing deprecated features and generally moving towards Py3k
- Replace all old style tests (operate on import) with unittest or docttest
- Add tests for all untested modules
- Document undocumented modules/features
- bdist_deb in distutils package
http://mail.python.org/pipermail/python-dev/2006-February/060926.html
- bdist_egg in distutils package
- pure python pgen module
(Owner: Guido)
Deferral to 2.6:
http://mail.python.org/pipermail/python-dev/2006-April/064528.html
- Remove the fpectl module?
Deferred until 2.7
None
Open issues
How should import warnings be handled?
http://mail.python.org/pipermail/python-dev/2006-June/066345.html
http://python.org/sf/1515609
http://python.org/sf/1515361
How should -m (__main__ in general) work with relative imports? [#pep366]_
References
.. [1] Adding a __dir__() magic method
http://mail.python.org/pipermail/python-dev/2006-July/067139.html
.. [#pep358] PEP 358 (The "bytes" Object)
http://www.python.org/dev/peps/pep-0358
.. [#pep366] PEP 366 (Main module explicit relative imports)
http://www.python.org/dev/peps/pep-0366
.. [#pep367] PEP 367 (New Super)
http://www.python.org/dev/peps/pep-0367
.. [#pep3112] PEP 3112 (Bytes literals in Python 3000)
http://www.python.org/dev/peps/pep-03112
.. [#pep3127] PEP 3127 (Integer Literal Support and Syntax)
http://www.python.org/dev/peps/pep-03127
Copyright
This document has been placed in the public domain.
Local Variables:
mode: indented-text
indent-tabs-mode: nil
sentence-end-double-space: t
fill-column: 70
coding: utf-8
End: