mirror of
https://github.com/python/cpython.git
synced 2024-11-29 21:05:33 +08:00
ReST-ification of the NEWS file. While the total number of changes are
fairly large, most are caused by reformatting section and subsection headings. The changes fall into the following categories: * reformatted section and subsection headers. * escaped isolated asterisks which would be interpreted as starting bold or italic text (e.g. "void (*)(PyObject \*)"). * quoted stuff that looks like internal references but isn't (e.g. ``PyCmp_``). * changed visually balanced quotes to just use apostrophes (e.g. "'string'" instead of "`string'"). * introduced and indenting multiline chunks of code. * created one table (search for "New codecs").
This commit is contained in:
parent
f0cfdf7314
commit
e5d7f7f3af
220
Misc/NEWS
220
Misc/NEWS
@ -1,8 +1,14 @@
|
||||
+++++++++++
|
||||
Python News
|
||||
+++++++++++
|
||||
|
||||
What's New in Python 2.3 alpha 1?
|
||||
XXX Release date: DD-MMM-2002 XXX
|
||||
=================================
|
||||
|
||||
*XXX Release date: DD-MMM-2002 XXX*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- Assignment to __class__ is disallowed if either the old and the new
|
||||
class is a statically allocated type object (such as defined by an
|
||||
@ -56,6 +62,7 @@ Type/class unification and new-style classes
|
||||
state of the slots would be lost.)
|
||||
|
||||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- Codec error handling callbacks (PEP 293) are implemented.
|
||||
Error handling in unicode.encode or str.decode can now be customized.
|
||||
@ -161,7 +168,7 @@ Core and builtins
|
||||
precedes B in the list at the start, A precedes B after the sort too),
|
||||
although the language definition does not guarantee stability. A
|
||||
potential drawback is that list.sort() may require temp space of
|
||||
len(list)*2 bytes (*4 on a 64-bit machine). It's therefore possible
|
||||
len(list)*2 bytes (\*4 on a 64-bit machine). It's therefore possible
|
||||
for list.sort() to raise MemoryError now, even if a comparison function
|
||||
does not. See <http://www.python.org/sf/587076> for full details.
|
||||
|
||||
@ -273,6 +280,7 @@ Core and builtins
|
||||
An exception will now be raised if more than one argument is used.
|
||||
|
||||
Extension modules
|
||||
-----------------
|
||||
|
||||
- cPickle.BadPickleGet is now a class.
|
||||
|
||||
@ -324,6 +332,7 @@ Extension modules
|
||||
interpreter was compiled.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- mimetypes has two new functions: guess_all_extensions() which
|
||||
returns a list of all known extensions for a mime type, and
|
||||
@ -469,6 +478,7 @@ Library
|
||||
honored.
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
||||
- The SGI demos (Demo/sgi) have been removed. Nobody thought they
|
||||
were interesting any more. (The SGI library modules and extensions
|
||||
@ -485,6 +495,7 @@ Tools/Demos
|
||||
the generated binary.
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- The public Python C API will generally be declared using PyAPI_FUNC
|
||||
and PyAPI_DATA macros, while Python extension module init functions
|
||||
@ -550,6 +561,7 @@ Build
|
||||
modules in the README file for details.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- The string object's layout has changed: the pointer member
|
||||
ob_sinterned has been replaced by an int member ob_sstate. On some
|
||||
@ -593,8 +605,8 @@ C API
|
||||
coercion if both arguments have the same type but this type has the
|
||||
CHECKTYPES flag set. This is to better support proxies.
|
||||
|
||||
- The type of tp_free has been changed from "void (*)(PyObject *)" to
|
||||
"void (*)(void *)".
|
||||
- The type of tp_free has been changed from "void (*)(PyObject \*)" to
|
||||
"void (*)(void \*)".
|
||||
|
||||
- PyObject_Del, PyObject_GC_Del are now functions instead of macros.
|
||||
|
||||
@ -610,7 +622,7 @@ C API
|
||||
- The "u#" parser marker will now pass through Unicode objects as-is
|
||||
without going through the buffer API.
|
||||
|
||||
- The enumerators of cmp_op have been renamed to use the prefix PyCmp_.
|
||||
- The enumerators of cmp_op have been renamed to use the prefix ``PyCmp_``.
|
||||
|
||||
- An old #define of ANY as void has been removed from pyport.h. This
|
||||
hasn't been used since Python's pre-ANSI days, and the #define has
|
||||
@ -624,6 +636,7 @@ C API
|
||||
scheme to a new one. See Python/import.c for details.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
- AtheOS is now supported.
|
||||
|
||||
@ -632,8 +645,12 @@ New platforms
|
||||
- GNU/Hurd is now supported.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
Yet to be written.
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- Sometimes the uninstall executable (UNWISE.EXE) vanishes. One cause
|
||||
of that has been fixed in the installer (disabled Wise's "delete in-
|
||||
@ -681,23 +698,30 @@ Windows
|
||||
specified with O_CREAT too).
|
||||
|
||||
Mac
|
||||
----
|
||||
|
||||
Yet to be written.
|
||||
|
||||
|
||||
What's New in Python 2.2 final?
|
||||
Release date: 21-Dec-2001
|
||||
===============================
|
||||
|
||||
*Release date: 21-Dec-2001*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- pickle.py, cPickle: allow pickling instances of new-style classes
|
||||
with a custom metaclass.
|
||||
|
||||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- weakref proxy object: when comparing, unwrap both arguments if both
|
||||
are proxies.
|
||||
|
||||
Extension modules
|
||||
-----------------
|
||||
|
||||
- binascii.b2a_base64(): fix a potential buffer overrun when encoding
|
||||
very short strings.
|
||||
@ -709,6 +733,7 @@ Extension modules
|
||||
when compiling cPickle.c (or in pyconfig.h).
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- dumbdbm.py: fixed a dumb old bug (the file didn't get synched at
|
||||
close or delete time).
|
||||
@ -722,16 +747,22 @@ Library
|
||||
when run from the standard regression test.
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- distutils package: fixed broken Windows installers (bdist_wininst).
|
||||
|
||||
@ -745,6 +776,7 @@ Windows
|
||||
in backslash.
|
||||
|
||||
Mac
|
||||
----
|
||||
|
||||
- The Carbon toolbox modules have been upgraded to Universal Headers
|
||||
3.4, and experimental CoreGraphics and CarbonEvents modules have
|
||||
@ -752,10 +784,12 @@ Mac
|
||||
|
||||
|
||||
What's New in Python 2.2c1?
|
||||
Release date: 14-Dec-2001
|
||||
===========================
|
||||
|
||||
*Release date: 14-Dec-2001*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- Guido's tutorial introduction to the new type/class features has
|
||||
been extensively updated. See
|
||||
@ -798,6 +832,7 @@ Type/class unification and new-style classes
|
||||
dictionary, but saves space if the object is not used further.
|
||||
|
||||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- -Qnew now works as documented in PEP 238: when -Qnew is passed on
|
||||
the command line, all occurrences of "/" use true division instead
|
||||
@ -815,10 +850,12 @@ Core and builtins
|
||||
or if the second arg is specified when the first is a string.
|
||||
|
||||
Extension modules
|
||||
-----------------
|
||||
|
||||
- gc.get_referents was renamed to gc.get_referrers.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- Functions in the os.spawn() family now release the global interpreter
|
||||
lock around calling the platform spawn. They should always have done
|
||||
@ -840,11 +877,13 @@ Library
|
||||
- The pulldom and minidom modules were synchronized to PyXML.
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
||||
- A new script called Tools/scripts/google.py was added, which fires
|
||||
off a search on Google.
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- Note that release builds of Python should arrange to define the
|
||||
preprocessor symbol NDEBUG on the command line (or equivalent).
|
||||
@ -859,6 +898,7 @@ Build
|
||||
directory an extension is used, but not in the installed python.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- New function PyDict_MergeFromSeq2() exposes the builtin dict
|
||||
constructor's logic for updating a dictionary from an iterable object
|
||||
@ -872,12 +912,16 @@ C API
|
||||
previously went unchallenged.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
Mac
|
||||
----
|
||||
|
||||
- In unix-Python on Mac OS X (and darwin) sys.platform is now "darwin",
|
||||
without any trailing digits.
|
||||
@ -889,10 +933,12 @@ Mac
|
||||
|
||||
|
||||
What's New in Python 2.2b2?
|
||||
Release date: 16-Nov-2001
|
||||
===========================
|
||||
|
||||
*Release date: 16-Nov-2001*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- Multiple inheritance mixing new-style and classic classes in the
|
||||
list of base classes is now allowed, so this works now:
|
||||
@ -926,6 +972,7 @@ Type/class unification and new-style classes
|
||||
- The socket function has been converted to a type; see below.
|
||||
|
||||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- Assignment to __debug__ raises SyntaxError at compile-time. This
|
||||
was promised when 2.1c1 was released as "What's New in Python 2.1c1"
|
||||
@ -935,6 +982,7 @@ Core and builtins
|
||||
(like 1 + '').
|
||||
|
||||
Extension modules
|
||||
-----------------
|
||||
|
||||
- mmap has a new keyword argument, "access", allowing a uniform way for
|
||||
both Windows and Unix users to create read-only, write-through and
|
||||
@ -961,6 +1009,7 @@ Extension modules
|
||||
bytes on its input.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- tkFileDialog exposes a Directory class and askdirectory
|
||||
convenience function.
|
||||
@ -991,7 +1040,7 @@ Library
|
||||
|
||||
- mimetypes.py has optional support for non-standard, but commonly
|
||||
found types. guess_type() and guess_extension() now accept an
|
||||
optional `strict' flag, defaulting to true, which controls whether
|
||||
optional 'strict' flag, defaulting to true, which controls whether
|
||||
recognize non-standard types or not. A few non-standard types we
|
||||
know about have been added. Also, when run as a script, there are
|
||||
new -l and -e options.
|
||||
@ -1000,7 +1049,7 @@ Library
|
||||
|
||||
- email.Utils.formatdate() now produces the preferred RFC 2822 style
|
||||
dates with numeric timezones (it used to produce obsolete dates
|
||||
hard coded to "GMT" timezone). An optional `localtime' flag is
|
||||
hard coded to "GMT" timezone). An optional 'localtime' flag is
|
||||
added to produce dates in the local timezone, with daylight savings
|
||||
time properly taken into account.
|
||||
|
||||
@ -1010,8 +1059,10 @@ Library
|
||||
in pickle, as it already was supported in cPickle.
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- The dbm module is built using libdb1 if available. The bsddb module
|
||||
is built with libdb3 if available.
|
||||
@ -1019,6 +1070,7 @@ Build
|
||||
- Misc/Makefile.pre.in has been removed by BDFL pronouncement.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- New function PySequence_Fast_GET_SIZE() returns the size of a non-
|
||||
NULL result from PySequence_Fast(), more quickly than calling
|
||||
@ -1037,6 +1089,7 @@ C API
|
||||
argument supports the single-segment readable buffer interface.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
- We've finally confirmed that this release builds on HP-UX 11.00,
|
||||
*with* threads, and passes the test suite.
|
||||
@ -1047,13 +1100,16 @@ New platforms
|
||||
- Updated RISCOS port by Dietmar Schwertberger.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
- Added a test script for the curses module. It isn't run automatically;
|
||||
regrtest.py must be run with '-u curses' to enable it.
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
Mac
|
||||
----
|
||||
|
||||
- PythonScript has been moved to unsupported and is slated to be
|
||||
removed completely in the next release.
|
||||
@ -1068,10 +1124,12 @@ Mac
|
||||
|
||||
|
||||
What's New in Python 2.2b1?
|
||||
Release date: 19-Oct-2001
|
||||
===========================
|
||||
|
||||
*Release date: 19-Oct-2001*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- New-style classes are now always dynamic (except for built-in and
|
||||
extension types). There is no longer a performance penalty, and I
|
||||
@ -1090,6 +1148,7 @@ Type/class unification and new-style classes
|
||||
class methods, static methods, and properties.
|
||||
|
||||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- A very subtle syntactical pitfall in list comprehensions was fixed.
|
||||
For example: [a+b for a in 'abc', for b in 'def']. The comma in
|
||||
@ -1127,6 +1186,7 @@ Core and builtins
|
||||
returns true if x is an instance of A or B.
|
||||
|
||||
Extension modules
|
||||
-----------------
|
||||
|
||||
- thread.start_new_thread() now returns the thread ID (previously None).
|
||||
|
||||
@ -1161,6 +1221,7 @@ Extension modules
|
||||
exports O_LARGEFILE, O_DIRECT, O_DIRECTORY, and O_NOFOLLOW.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- doctest now excludes functions and classes not defined by the module
|
||||
being tested, thanks to Tim Hochberg.
|
||||
@ -1204,7 +1265,7 @@ Library
|
||||
- The SocketServer.ThreadingMixIn class now closes the request after
|
||||
finish_request() returns. (Not when it errors out though.)
|
||||
|
||||
- The nntplib module's NNTP.body() method has grown a `file' argument
|
||||
- The nntplib module's NNTP.body() method has grown a 'file' argument
|
||||
to allow saving the message body to a file.
|
||||
|
||||
- The email package has added a class email.Parser.HeaderParser which
|
||||
@ -1221,6 +1282,7 @@ Library
|
||||
and item() method as required by the DOM specifications.
|
||||
|
||||
Tools/Demos
|
||||
-----------
|
||||
|
||||
- Demo/dns was removed. It no longer serves any purpose; a package
|
||||
derived from it is now maintained by Anthony Baxter, see
|
||||
@ -1230,11 +1292,13 @@ Tools/Demos
|
||||
been added: -X and -E.
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- configure will use CXX in LINKCC if CXX is used to build main() and
|
||||
the system requires to link a C++ main using the C++ compiler.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- The documentation for the tp_compare slot is updated to require that
|
||||
the return value must be -1, 0, 1; an arbitrary number <0 or >0 is
|
||||
@ -1257,10 +1321,13 @@ C API
|
||||
input.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- Installer: If you install IDLE, and don't disable file-extension
|
||||
registration, a new "Edit with IDLE" context (right-click) menu entry
|
||||
@ -1269,29 +1336,30 @@ Windows
|
||||
- The signal module now supports SIGBREAK on Windows, thanks to Steven
|
||||
Scott. Note that SIGBREAK is unique to Windows. The default SIGBREAK
|
||||
action remains to call Win32 ExitProcess(). This can be changed via
|
||||
signal.signal(). For example:
|
||||
signal.signal(). For example: ::
|
||||
|
||||
# Make Ctrl+Break raise KeyboardInterrupt, like Python's default Ctrl+C
|
||||
# (SIGINT) behavior.
|
||||
import signal
|
||||
signal.signal(signal.SIGBREAK,
|
||||
signal.default_int_handler)
|
||||
# Make Ctrl+Break raise KeyboardInterrupt, like Python's default Ctrl+C
|
||||
# (SIGINT) behavior.
|
||||
import signal
|
||||
signal.signal(signal.SIGBREAK, signal.default_int_handler)
|
||||
|
||||
try:
|
||||
while 1:
|
||||
pass
|
||||
except KeyboardInterrupt:
|
||||
# We get here on Ctrl+C or Ctrl+Break now; if we had not changed
|
||||
# SIGBREAK, only on Ctrl+C (and Ctrl+Break would terminate the
|
||||
# program without the possibility for any Python-level cleanup).
|
||||
print "Clean exit"
|
||||
try:
|
||||
while 1:
|
||||
pass
|
||||
except KeyboardInterrupt:
|
||||
# We get here on Ctrl+C or Ctrl+Break now; if we had not changed
|
||||
# SIGBREAK, only on Ctrl+C (and Ctrl+Break would terminate the
|
||||
# program without the possibility for any Python-level cleanup).
|
||||
print "Clean exit"
|
||||
|
||||
|
||||
What's New in Python 2.2a4?
|
||||
Release date: 28-Sep-2001
|
||||
===========================
|
||||
|
||||
*Release date: 28-Sep-2001*
|
||||
|
||||
Type/class unification and new-style classes
|
||||
--------------------------------------------
|
||||
|
||||
- pydoc and inspect are now aware of new-style classes;
|
||||
e.g. help(list) at the interactive prompt now shows proper
|
||||
@ -1362,6 +1430,7 @@ Type/class unification and new-style classes
|
||||
- Provisional support for pickling new-style objects has been added.
|
||||
|
||||
Core
|
||||
----
|
||||
|
||||
- file.writelines() now accepts any iterable object producing strings.
|
||||
|
||||
@ -1381,6 +1450,7 @@ Core
|
||||
to let other runnable threads be scheduled.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- StringIO.StringIO instances and cStringIO.StringIO instances support
|
||||
read character buffer compatible objects for their .write() methods.
|
||||
@ -1428,8 +1498,10 @@ Library
|
||||
a sample driver.)
|
||||
|
||||
Tools
|
||||
-----
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- Large file support (LFS) is now automatic when the platform supports
|
||||
it; no more manual configuration tweaks are needed. On Linux, at
|
||||
@ -1450,16 +1522,19 @@ Build
|
||||
using "make -s", thanks to a -q option to setup.py.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- The "structmember" API now supports some new flag bits to deny read
|
||||
and/or write access to attributes in restricted execution mode.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
- Compaq's iPAQ handheld, running the "familiar" Linux distribution
|
||||
(http://familiar.handhelds.org).
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
- The "classic" standard tests, which work by comparing stdout to
|
||||
an expected-output file under Lib/test/output/, no longer stop at
|
||||
@ -1476,6 +1551,7 @@ Tests
|
||||
especially in regard to reporting errors.
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- Large file support now also works for files > 4GB, on filesystems
|
||||
that support it (NTFS under Windows 2000). See "What's New in
|
||||
@ -1483,10 +1559,12 @@ Windows
|
||||
|
||||
|
||||
What's New in Python 2.2a3?
|
||||
Release Date: 07-Sep-2001
|
||||
===========================
|
||||
|
||||
*Release Date: 07-Sep-2001*
|
||||
|
||||
Core
|
||||
----
|
||||
|
||||
- Conversion of long to float now raises OverflowError if the long is too
|
||||
big to represent as a C double.
|
||||
@ -1528,14 +1606,13 @@ Core
|
||||
all uses of classic division for int and long arguments; -Qwarnall
|
||||
also warns about classic division for float and complex arguments
|
||||
(for use with fixdiv.py).
|
||||
[Note: the remainder of this paragraph (preserved below) became
|
||||
obsolete in 2.2c1 -- -Qnew has global effect in 2.2]
|
||||
<obsolete>
|
||||
Using -Qnew is questionable; it turns on new division by default, but
|
||||
only in the __main__ module. You can usefully combine -Qwarn or
|
||||
-Qwarnall and -Qnew: this gives the __main__ module new division, and
|
||||
warns about classic division everywhere else.
|
||||
</obsolete>
|
||||
[Note: the remainder of this item (preserved below) became
|
||||
obsolete in 2.2c1 -- -Qnew has global effect in 2.2] ::
|
||||
|
||||
Using -Qnew is questionable; it turns on new division by default, but
|
||||
only in the __main__ module. You can usefully combine -Qwarn or
|
||||
-Qwarnall and -Qnew: this gives the __main__ module new division, and
|
||||
warns about classic division everywhere else.
|
||||
|
||||
- Many built-in types can now be subclassed. This applies to int,
|
||||
long, float, str, unicode, and tuple. (The types complex, list and
|
||||
@ -1571,6 +1648,7 @@ Core
|
||||
exponent, such as 1e and 3.1e-. Such literals now raise SyntaxError.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- telnetlib includes symbolic names for the options, and support for
|
||||
setting an option negotiation callback.
|
||||
@ -1604,11 +1682,13 @@ Library
|
||||
to objects that should be garbage collected between tests.
|
||||
|
||||
Tools
|
||||
-----
|
||||
|
||||
- Tools/scripts/fixdiv.py has been added which can be used to fix
|
||||
division operators as per PEP 238.
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- If you are an adventurous person using Mac OS X you may want to look at
|
||||
Mac/OSX. There is a Makefile there that will build Python as a real Mac
|
||||
@ -1616,17 +1696,18 @@ Build
|
||||
Discussion of this on pythonmac-sig, please.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- New function PyObject_Dir(obj), like Python __builtin__.dir(obj).
|
||||
|
||||
- Note that PyLong_AsDouble can fail! This has always been true, but no
|
||||
callers checked for it. It's more likely to fail now, because overflow
|
||||
errors are properly detected now. The proper way to check:
|
||||
errors are properly detected now. The proper way to check: ::
|
||||
|
||||
double x = PyLong_AsDouble(some_long_object);
|
||||
if (x == -1.0 && PyErr_Occurred()) {
|
||||
/* The conversion failed. */
|
||||
}
|
||||
double x = PyLong_AsDouble(some_long_object);
|
||||
if (x == -1.0 && PyErr_Occurred()) {
|
||||
/* The conversion failed. */
|
||||
}
|
||||
|
||||
- The GC API has been changed. Extensions that use the old API will still
|
||||
compile but will not participate in GC. To upgrade an extension
|
||||
@ -1650,6 +1731,7 @@ C API
|
||||
by PyErr_Format()).
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
- Stephen Hansen contributed patches sufficient to get a clean compile
|
||||
under Borland C (Windows), but he reports problems running it and ran
|
||||
@ -1658,8 +1740,10 @@ New platforms
|
||||
causing later failures too.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- Large file support is now enabled on Win32 platforms as well as on
|
||||
Win64. This means that, for example, you can use f.tell() and f.seek()
|
||||
@ -1676,10 +1760,12 @@ Windows
|
||||
|
||||
|
||||
What's New in Python 2.2a2?
|
||||
Release Date: 22-Aug-2001
|
||||
===========================
|
||||
|
||||
*Release Date: 22-Aug-2001*
|
||||
|
||||
Build
|
||||
-----
|
||||
|
||||
- Tim Peters developed a brand new Windows installer using Wise 8.1,
|
||||
generously donated to us by Wise Solutions.
|
||||
@ -1695,15 +1781,17 @@ Build
|
||||
|
||||
- The NeXT platform is no longer supported.
|
||||
|
||||
- The `new' module is now statically linked.
|
||||
- The 'new' module is now statically linked.
|
||||
|
||||
Tools
|
||||
-----
|
||||
|
||||
- The new Tools/scripts/cleanfuture.py can be used to automatically
|
||||
edit out obsolete future statements from Python source code. See
|
||||
the module docstring for details.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
- regrtest.py now knows which tests are expected to be skipped on some
|
||||
platforms, allowing to give clearer test result output. regrtest
|
||||
@ -1714,6 +1802,7 @@ Tests
|
||||
Nick Mathewson.
|
||||
|
||||
Core
|
||||
----
|
||||
|
||||
- The floor division operator // has been added as outlined in PEP
|
||||
238. The / operator still provides classic division (and will until
|
||||
@ -1753,6 +1842,7 @@ Core
|
||||
older distribution.
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- New class Differ and new functions ndiff() and restore() in difflib.py.
|
||||
These package the algorithms used by the popular Tools/scripts/ndiff.py,
|
||||
@ -1770,13 +1860,15 @@ Library
|
||||
|
||||
- Added Ka-Ping Yee's cgitb.py module.
|
||||
|
||||
- The `new' module now exposes the CO_xxx flags.
|
||||
- The 'new' module now exposes the CO_xxx flags.
|
||||
|
||||
- The gc module offers the get_referents function.
|
||||
|
||||
New platforms
|
||||
-------------
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- Two new APIs PyOS_snprintf() and PyOS_vsnprintf() were added
|
||||
which provide a cross-platform implementations for the
|
||||
@ -1799,16 +1891,19 @@ C API
|
||||
deprecated.
|
||||
|
||||
Windows
|
||||
-------
|
||||
|
||||
- "import module" now compiles module.pyw if it exists and nothing else
|
||||
relevant is found.
|
||||
|
||||
|
||||
What's New in Python 2.2a1?
|
||||
Release date: 18-Jul-2001
|
||||
===========================
|
||||
|
||||
*Release date: 18-Jul-2001*
|
||||
|
||||
Core
|
||||
----
|
||||
|
||||
- TENTATIVELY, a large amount of code implementing much of what's
|
||||
described in PEP 252 (Making Types Look More Like Classes) and PEP
|
||||
@ -1854,14 +1949,21 @@ Core
|
||||
New codecs were added to demonstrate these new features (the .encode()
|
||||
and .decode() columns indicate the type of the returned objects):
|
||||
|
||||
Name | .encode() | .decode() | Description
|
||||
----------------------------------------------------------------------
|
||||
uu | string | string | UU codec (e.g. for email)
|
||||
base64 | string | string | base64 codec
|
||||
quopri | string | string | quoted-printable codec
|
||||
zlib | string | string | zlib compression
|
||||
hex | string | string | 2-byte hex codec
|
||||
rot-13 | string | Unicode | ROT-13 Unicode charmap codec
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|Name | .encode() | .decode() | Description |
|
||||
+=========+===========+===========+=============================+
|
||||
|uu | string | string | UU codec (e.g. for email) |
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|base64 | string | string | base64 codec |
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|quopri | string | string | quoted-printable codec |
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|zlib | string | string | zlib compression |
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|hex | string | string | 2-byte hex codec |
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|rot-13 | string | Unicode | ROT-13 Unicode charmap codec|
|
||||
+---------+-----------+-----------+-----------------------------+
|
||||
|
||||
- Some operating systems now support the concept of a default Unicode
|
||||
encoding for file system operations. Notably, Windows supports 'mbcs'
|
||||
@ -1934,7 +2036,8 @@ Core
|
||||
Iterating over a file generates its lines.
|
||||
|
||||
- The following functions were generalized to work nicely with iterator
|
||||
arguments:
|
||||
arguments: ::
|
||||
|
||||
map(), filter(), reduce(), zip()
|
||||
list(), tuple() (PySequence_Tuple() and PySequence_Fast() in C API)
|
||||
max(), min()
|
||||
@ -1942,7 +2045,7 @@ Core
|
||||
extend() method of lists
|
||||
'x in y' and 'x not in y' (PySequence_Contains() in C API)
|
||||
operator.countOf() (PySequence_Count() in C API)
|
||||
right-hand side of assignment statements with multiple targets, such as
|
||||
right-hand side of assignment statements with multiple targets, such as ::
|
||||
x, y, z = some_iterable_object_returning_exactly_3_values
|
||||
|
||||
- Accessing module attributes is significantly faster (for example,
|
||||
@ -1966,6 +2069,7 @@ Core
|
||||
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- The constants ascii_letters, ascii_lowercase. and ascii_uppercase
|
||||
were added to the string module. These a locale-independent
|
||||
@ -2013,6 +2117,7 @@ Library
|
||||
'help(object)'.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
- New test_mutants.py runs dict comparisons where the key and value
|
||||
comparison operators mutate the dicts randomly during comparison. This
|
||||
@ -2024,6 +2129,11 @@ Tests
|
||||
cases produce correct output.
|
||||
|
||||
C API
|
||||
-----
|
||||
|
||||
- Removed the unused last_is_sticky argument from the internal
|
||||
_PyTuple_Resize(). If this affects you, you were cheating.
|
||||
|
||||
----
|
||||
|
||||
**(For information about older versions, consult the HISTORY file.)**
|
||||
|
Loading…
Reference in New Issue
Block a user