[Python-Dev] 1.5.2 -> 1.6 Changes

Moshe Zadka Moshe Zadka <mzadka@geocities.com>
Fri, 31 Mar 2000 13:24:05 +0200 (IST)


Here is a new list of things that will change in the next release. 
Thanks to all the people who gave me hints and information!
If you have anything you think I missed, or mistreated, please e-mail
me personally -- I'll post an updated version soon.

Obligatory
==========
A lot of bug-fixes, some optimizations, many improvements in the documentation

Core changes
============
Deleting objects is safe even for deeply nested data structures.

Long/int unifications: long integers can be used in seek() calls, as slice
indexes. str(1L) --> '1', not '1L' (repr() is still the same)

Builds on NT Alpha

UnboundLocalError is raised when a local variable is undefined
long, int take optional "base" parameter

string objects now have methods (though they are still immutable)

unicode support: Unicode strings are marked with u"string", and there
is support for arbitrary encoders/decoders

"in" operator can now be overriden in user-defined classes to mean anything:
it calls the magic method __contains__

New calling syntax: f(*args, **kw) equivalent to apply(f, args, kw)

Some methods which would take multiple arguments and treat them as a tuple
were fixed: list.{append, insert, remove, count}, socket.connect

New modules
===========
winreg - Windows registry interface.
Distutils - tools for distributing Python modules
robotparser - parse a robots.txt file (for writing web spiders)
linuxaudio - audio for Linux
mmap - treat a file as a memory buffer
sre -  regular expressions (fast, supports unicode)
filecmp - supersedes the old cmp.py and dircmp.py modules
tabnanny - check Python sources for tab-width dependance
unicode - support for unicode
codecs - support for Unicode encoders/decoders

Module changes
==============
re - changed to be a frontend to sre
readline, ConfigParser, cgi, calendar, posix, readline, xmllib, aifc, chunk, 
wave, random, shelve, nntplib - minor enhancements
socket, httplib, urllib - optional OpenSSL support
_tkinter - support for 8.1,8.2,8.3 (no support for versions older then 8.0)

Tool changes
============
IDLE -- complete overhaul

(Andrew, I'm still waiting for the expat support and integration to add to
this list -- other than that, please contact me if you want something less
telegraphic <wink>)
--
Moshe Zadka <mzadka@geocities.com>. 
http://www.oreilly.com/news/prescod_0300.html
http://www.linux.org.il -- we put the penguin in .com