|
1 | | -What's New in Python 2.1 final? |
2 | | -=============================== |
| 1 | +What's New in Python 2.1c2? |
| 2 | +=========================== |
3 | 3 |
|
4 | | -- Eric Raymond extended the pstats module with a simple interactive |
5 | | - statistics browser, invoked when the module is run as a script. |
| 4 | +A flurry of small changes, and one showstopper fixed in the nick of |
| 5 | +time made it necessary to release another release candidate. The list |
| 6 | +here is the *complete* list of patches (except version updates): |
6 | 7 |
|
7 | | -- Ping added an interactive help browser to pydoc. |
| 8 | +Core |
8 | 9 |
|
9 | | -- An updated python-mode.el version 4.0 which integrates Ken |
10 | | - Manheimer's pdbtrack.el. This makes debugging Python code via pdb |
11 | | - much nicer in XEmacs and Emacs. When stepping through your program |
12 | | - with pdb, in either the shell window or the *Python* window, the |
13 | | - source file and line will be tracked by an arrow. |
| 10 | +- Tim discovered a nasty bug in the dictionary code, caused by |
| 11 | + PyDict_Next() calling dict_resize(), and the GC code's use of |
| 12 | + PyDict_Next() violating an assumption in dict_items(). This was |
| 13 | + fixed with considerable amounts of band-aid, but the net effect is a |
| 14 | + saner and more robust implementation. |
| 15 | + |
| 16 | +- Made a bunch of symbols static that were accidentally global. |
| 17 | + |
| 18 | +Build and Ports |
| 19 | + |
| 20 | +- The setup.py script didn't check for a new enough version of zlib |
| 21 | + (1.1.3 is needed). Now it does. |
| 22 | + |
| 23 | +- Changed "make clean" target to also remove shared libraries. |
| 24 | + |
| 25 | +- Added a more general warning about the SGI Irix optimizer to README. |
| 26 | + |
| 27 | +Library |
| 28 | + |
| 29 | +- Fix a bug in urllib.basejoin("http://host", "../file.html") which |
| 30 | + omitted the slash between host and file.html. |
| 31 | + |
| 32 | +- The mailbox module's _Mailbox class contained a completely broken |
| 33 | + and undocumented seek() method. Ripped it out. |
| 34 | + |
| 35 | +- Fixed a bunch of typos in various library modules (urllib2, smtpd, |
| 36 | + sgmllib, netrc, chunk) found by Neil Norwitz's PyChecker. |
| 37 | + |
| 38 | +- Fixed a few last-minute bugs in unittest. |
| 39 | + |
| 40 | +Extensions |
| 41 | + |
| 42 | +- Reverted the patch to the OpenSSL code in socketmodule.c to support |
| 43 | + RAND_status() and the EGD, and the subsequent patch that tried to |
| 44 | + fix it for pre-0.9.5 versions; the problem with the patch is that on |
| 45 | + some systems it issues a warning whenever socket is imported, and |
| 46 | + that's unacceptable. |
| 47 | + |
| 48 | +Tests |
| 49 | + |
| 50 | +- Fixed the pickle tests to work with "import test.test_pickle". |
| 51 | + |
| 52 | +- Tweaked test_locale.py to actually run the test Windows. |
| 53 | + |
| 54 | +- In distutils/archive_util.py, call zipfile.ZipFile() with mode "w", |
| 55 | + not "wb" (which is not a valid mode at all). |
| 56 | + |
| 57 | +- Fix pstats browser crashes. Import readline if it exists to make |
| 58 | + the user interface nicer. |
| 59 | + |
| 60 | +- Add "import thread" to the top of test modules that import the |
| 61 | + threading module (test_asynchat and test_threadedtempfile). This |
| 62 | + prevents test failures caused by a broken threading module resulting |
| 63 | + from a previously caught failed import. |
| 64 | + |
| 65 | +- Changed test_asynchat.py to set the SO_REUSEADDR option; this was |
| 66 | + needed on some platforms (e.g. Solaris 8) when the tests are run |
| 67 | + twice in succession. |
| 68 | + |
| 69 | +- Skip rather than fail test_sunaudiodev if no audio device is found. |
| 70 | + |
| 71 | + |
| 72 | +What's New in Python 2.1c1? |
| 73 | +=========================== |
| 74 | + |
| 75 | +This list was significantly updated when 2.1c2 was released; the 2.1c1 |
| 76 | +release didn't mention most changes that were actually part of 2.1c1: |
| 77 | + |
| 78 | +Legal |
| 79 | + |
| 80 | +- Copyright was assigned to the Python Software Foundation (PSF) and a |
| 81 | + PSF license (very similar to the CNRI license) was added. |
| 82 | + |
| 83 | +- The CNRI copyright notice was updated to include 2001. |
| 84 | + |
| 85 | +Core |
14 | 86 |
|
15 | 87 | - After a public outcry, assignment to __debug__ is no longer illegal; |
16 | 88 | instead, a warning is issued. It will become illegal in 2.2. |
17 | 89 |
|
| 90 | +- Fixed a core dump with "%#x" % 0, and changed the semantics so that |
| 91 | + "%#x" now always prepends "0x", even if the value is zero. |
| 92 | + |
| 93 | +- Fixed some nits in the bytecode compiler. |
| 94 | + |
| 95 | +- Fixed core dumps when calling certain kinds of non-functions. |
| 96 | + |
| 97 | +- Fixed various core dumps caused by reference count bugs. |
| 98 | + |
| 99 | +Build and Ports |
| 100 | + |
| 101 | +- Use INSTALL_SCRIPT to install script files. |
| 102 | + |
18 | 103 | - New port: SCO Unixware 7, by Billy G. Allie. |
19 | 104 |
|
20 | | -- Updated the RISCOS port. |
| 105 | +- Updated RISCOS port. |
| 106 | + |
| 107 | +- Updated BeOS port and notes. |
| 108 | + |
| 109 | +- Various other porting problems resolved. |
| 110 | + |
| 111 | +Library |
| 112 | + |
| 113 | +- The TERMIOS and SOCKET modules are now truly obsolete and |
| 114 | + unnecessary. Their symbols are incorporated in the termios and |
| 115 | + socket modules. |
| 116 | + |
| 117 | +- Fixed some 64-bit bugs in pickle, cPickle, and struct, and added |
| 118 | + better tests for pickling. |
| 119 | + |
| 120 | +- threading: make Condition.wait() robust against KeyboardInterrupt. |
| 121 | + |
| 122 | +- zipfile: add support to zipfile to support opening an archive |
| 123 | + represented by an open file rather than a file name. Fix bug where |
| 124 | + the archive was not properly closed. Fixed a bug in this bugfix |
| 125 | + where flush() was called for a read-only file. |
| 126 | + |
| 127 | +- imputil: added an uninstall() method to the ImportManager. |
| 128 | + |
| 129 | +- Canvas: fixed bugs in lower() and tkraise() methods. |
| 130 | + |
| 131 | +- SocketServer: API change (added overridable close_request() method) |
| 132 | + so that the TCP server can explicitly close the request. |
| 133 | + |
| 134 | +- pstats: Eric Raymond added a simple interactive statistics browser, |
| 135 | + invoked when the module is run as a script. |
| 136 | + |
| 137 | +- locale: fixed a problem in format(). |
| 138 | + |
| 139 | +- webbrowser: made it work when the BROWSER environment variable has a |
| 140 | + value like "/usr/bin/netscape". Made it auto-detect Konqueror for |
| 141 | + KDE 2. Fixed some other nits. |
| 142 | + |
| 143 | +- unittest: changes to allow using a different exception than |
| 144 | + AssertionError, and added a few more function aliases. Some other |
| 145 | + small changes. |
| 146 | + |
| 147 | +- urllib, urllib2: fixed redirect problems and a coupleof other nits. |
| 148 | + |
| 149 | +- asynchat: fixed a critical bug in asynchat that slipped through the |
| 150 | + 2.1b2 release. Fixed another rare bug. |
| 151 | + |
| 152 | +- Fix some unqualified except: clauses (always a bad code example). |
| 153 | + |
| 154 | +XML |
| 155 | + |
| 156 | +- pyexpat: new API get_version_string(). |
| 157 | + |
| 158 | +- Fixed some minidom bugs. |
| 159 | + |
| 160 | +Extensions |
| 161 | + |
| 162 | +- Fixed a core dump in _weakref. Removed the weakref.mapping() |
| 163 | + function (it adds nothing to the API). |
| 164 | + |
| 165 | +- Rationalized the use of header files in the readline module, to make |
| 166 | + it compile (albeit with some warnings) with the very recent readline |
| 167 | + 4.2, without breaking for earlier versions. |
| 168 | + |
| 169 | +- Hopefully fixed a buffering problem in linuxaudiodev. |
| 170 | + |
| 171 | +- Attempted a fix to make the OpenSSL support in the socket module |
| 172 | + work again with pre-0.9.5 versions of OpenSSL. |
| 173 | + |
| 174 | +Tests |
| 175 | + |
| 176 | +- Added a test case for asynchat and asyncore. |
| 177 | + |
| 178 | +- Removed coupling between tests where one test failing could break |
| 179 | + another. |
| 180 | + |
| 181 | +Tools |
| 182 | + |
| 183 | +- Ping added an interactive help browser to pydoc, fixed some nits |
| 184 | + in the rest of the pydoc code, and added some features to his |
| 185 | + inspect module. |
| 186 | + |
| 187 | +- An updated python-mode.el version 4.1 which integrates Ken |
| 188 | + Manheimer's pdbtrack.el. This makes debugging Python code via pdb |
| 189 | + much nicer in XEmacs and Emacs. When stepping through your program |
| 190 | + with pdb, in either the shell window or the *Python* window, the |
| 191 | + source file and line will be tracked by an arrow. Very cool! |
| 192 | + |
| 193 | +- IDLE: syntax warnings in interactive mode are changed into errors. |
| 194 | + |
| 195 | +- Some improvements to Tools/webchecker (ignore some more URL types, |
| 196 | + follow some more links). |
| 197 | + |
| 198 | +- Brought the Tools/compiler package up to date. |
21 | 199 |
|
22 | 200 |
|
23 | 201 | What's New in Python 2.1 beta 2? |
@@ -936,6 +1114,9 @@ Core language, builtins, and interpreter |
936 | 1114 |
|
937 | 1115 | Standard library and extensions |
938 | 1116 |
|
| 1117 | +- socket module: the OpenSSL code now adds support for RAND_status() |
| 1118 | + and EGD (Entropy Gathering Device). |
| 1119 | + |
939 | 1120 | - array: reverse() method of array now works. buffer_info() now does |
940 | 1121 | argument checking; it still takes no arguments. |
941 | 1122 |
|
|
0 commit comments