[Python-checkins] python/nondist/peps pep-291.txt,NONE,1.1 pep-0000.txt,1.184,1.185
nnorwitz@users.sourceforge.net
nnorwitz@users.sourceforge.net
Thu, 06 Jun 2002 12:25:34 -0700
Update of /cvsroot/python/python/nondist/peps
In directory usw-pr-cvs1:/tmp/cvs-serv21267
Modified Files:
pep-0000.txt
Added Files:
pep-291.txt
Log Message:
Add PEP 291 for backward compatibility
--- NEW FILE: pep-291.txt ---
PEP: 291
Title: Backward Compatibility for Standard Library
Version: $Revision: 1.1 $
Last-Modified: $Date: 2002/06/06 19:25:31 $
Author: neal@metaslash.com (Neal Norwitz)
Status: Active
Type: Informational
Created: 06-Jun-2002
Post-History:
Python-Version: 2.3
Abstract
This PEP describes the packages and modules in the standard
library which should remain backward compatible with previous
versions of Python.
Rationale
Authors have various reasons why packages and modules should
continue to work with previous versions of Python. In order to
maintain backward compatibility for these modules while moving the
rest of the standard library forward, it is necessary to know
which modules can be modified and which should use old and
possibly deprecated features.
Generally, authors should attempt to keep changes backward
compatible with the previous released version of Python in order
to make bug fixes easier to backport.
Features to Avoid
The following list contains common features to avoid in order
to maintain backward compatibility with each version of Python.
This list is not complete! It is only meant as a general guide.
Note the features to avoid were implemented in the following
version. For example, features listed next to 1.5.2 were
implemented in 2.0.
Version Features
------- --------
1.5.2 string methods, Unicode, list comprehensions,
augmented assignment (eg, +=), zip(), import x as y,
dict.setdefault(), print >> f, calling f(*args, **kw),
plus 2.0 features
2.0 nested scopes, rich comparisons, function attributes,
plus 2.1 features
2.1 use of object or new-style classes, iterators,
using generators, nested scopes, or //
without from __future__ import ... statement,
plus 2.2 features
2.2 bool, True, False, basestring, enumerate(), {}.pop(),
PendingDeprecationWarning, Universal Newlines,
plus 2.3 features
Backward Compatible Packages, Modules, and Tools
Package/Module Maintainer(s) Python Version
-------------- ------------- --------------
compiler Jeremy Hylton 2.1
distutils Andrew Kuchling 1.5.2
email Barry Warsaw 2.1
sre Fredrik Lundh 1.5.2
xml (PyXML) Martin v. Loewis 2.0
xmlrpclib Fredrik Lundh 1.5.2
Tool Maintainer(s) Python Version
---- ------------- --------------
scripts/freeze/modulefinder Thomas Heller 1.5.2
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
End:
Index: pep-0000.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0000.txt,v
retrieving revision 1.184
retrieving revision 1.185
diff -C2 -d -r1.184 -r1.185
*** pep-0000.txt 29 May 2002 21:17:42 -0000 1.184
--- pep-0000.txt 6 Jun 2002 19:25:31 -0000 1.185
***************
*** 94,97 ****
--- 94,98 ----
S 286 Enhanced Argument Tuples von Loewis
S 287 reStructuredText Standard Docstring Format Goodger
+ I 291 Backward Compatibility for Standard Library Norwitz
Finished PEPs (done, implemented in CVS)
***************
*** 268,271 ****
--- 269,273 ----
SD 288 Generators Attributes and Exceptions Hettinger
SR 289 Generator Comprehensions Hettinger
+ I 291 Backward Compatibility for Standard Library Norwitz
SR 666 Reject Foolish Indentation Creighton
***************
*** 315,318 ****
--- 317,321 ----
Montanaro, Skip skip@pobox.com
Moore, Paul gustav@morpheus.demon.co.uk
+ Norwitz, Neal neal@metaslash.com
Oliphant, Travis oliphant@ee.byu.edu
Pelletier, Michel michel@digicool.com