| Skip Montanaro | e5d7f7f | 2002-09-20 14:16:59 +0000 | [diff] [blame] | 1 | +++++++++++ | 
 | 2 | Python News | 
 | 3 | +++++++++++ | 
 | 4 |  | 
| Anthony Baxter | b0c6630 | 2004-11-04 05:23:17 +0000 | [diff] [blame] | 5 | (editors: check NEWS.help for information about editing NEWS using ReST.) | 
 | 6 |  | 
| Fred Drake | 5391216 | 2006-07-29 13:22:49 +0000 | [diff] [blame] | 7 | What's New in Python 2.5 beta 3? | 
 | 8 | ================================ | 
| Neal Norwitz | a1f1090 | 2006-07-12 07:28:29 +0000 | [diff] [blame] | 9 |  | 
 | 10 | *Release date: XX-AUG-2006* | 
 | 11 |  | 
 | 12 | Core and builtins | 
 | 13 | ----------------- | 
 | 14 |  | 
| Neal Norwitz | 0d62a06 | 2006-07-30 06:53:31 +0000 | [diff] [blame^] | 15 | - Patch #1531113: Fix augmented assignment with yield expressions. | 
 | 16 |   Also fix a SystemError when trying to assign to yield expressions. | 
 | 17 |  | 
| Phillip J. Eby | f7575d0 | 2006-07-28 21:12:07 +0000 | [diff] [blame] | 18 | - Bug #1529871: The speed enhancement patch #921466 broke Python's compliance | 
 | 19 |   with PEP 302.  This was fixed by adding an ``imp.NullImporter`` type that is | 
 | 20 |   used in ``sys.path_importer_cache`` to cache non-directory paths and avoid | 
 | 21 |   excessive filesystem operations during imports. | 
 | 22 |  | 
| Tim Peters | bc24eee | 2006-07-27 01:14:53 +0000 | [diff] [blame] | 23 | - Bug #1521947: When checking for overflow, ``PyOS_strtol()`` used some | 
 | 24 |   operations on signed longs that are formally undefined by C. | 
 | 25 |   Unfortunately, at least one compiler now cares about that, so complicated | 
 | 26 |   the code to make that compiler happy again. | 
 | 27 |  | 
| Martin v. Löwis | 982e9fe | 2006-07-24 12:54:17 +0000 | [diff] [blame] | 28 | - Bug #1524310: Properly report errors from FindNextFile in os.listdir. | 
 | 29 |  | 
| Martin v. Löwis | d22968a | 2006-07-24 11:54:53 +0000 | [diff] [blame] | 30 | - Patch #1232023: Stop including current directory in search | 
 | 31 |   path on Windows. | 
 | 32 |  | 
| Neal Norwitz | e1fdb32 | 2006-07-21 05:32:28 +0000 | [diff] [blame] | 33 | - Fix some potential crashes found with failmalloc. | 
 | 34 |  | 
| Neal Norwitz | e756310 | 2006-07-17 01:00:16 +0000 | [diff] [blame] | 35 | - Fix warnings reported by Klocwork's static analysis tool. | 
 | 36 |  | 
| Neal Norwitz | 84be93b | 2006-07-16 01:50:38 +0000 | [diff] [blame] | 37 | - Bug #1512814, Fix incorrect lineno's when code within a function | 
 | 38 |   had more than 255 blank lines. | 
 | 39 |  | 
| Georg Brandl | 9dceedb | 2006-07-12 15:31:17 +0000 | [diff] [blame] | 40 | - Patch #1521179: Python now accepts the standard options ``--help`` and | 
 | 41 |   ``--version`` as well as ``/?`` on Windows. | 
 | 42 |  | 
| Andrew M. Kuchling | 93c928e | 2006-07-26 17:19:39 +0000 | [diff] [blame] | 43 | - Bug #1520864: unpacking singleton tuples in a 'for' loop (for x, in) works | 
| Neal Norwitz | a1f1090 | 2006-07-12 07:28:29 +0000 | [diff] [blame] | 44 |   again.  Fixing this problem required changing the .pyc magic number. | 
 | 45 |   This means that .pyc files generated before 2.5c1 will be regenerated. | 
 | 46 |  | 
| Tim Peters | 112aad3 | 2006-07-19 00:03:19 +0000 | [diff] [blame] | 47 | - Bug #1524317:  Compiling Python ``--without-threads`` failed. | 
 | 48 |   The Python core compiles again then, and, in a build without threads, the | 
 | 49 |   new ``sys._current_frames()`` returns a dictionary with one entry, | 
 | 50 |   mapping the faux "thread id" 0 to the current frame. | 
 | 51 |  | 
| Ronald Oussoren | 3075e16 | 2006-07-25 20:28:55 +0000 | [diff] [blame] | 52 | - Bug #1525447: build on MacOS X on a case-sensitive filesystem. | 
| Tim Peters | bc24eee | 2006-07-27 01:14:53 +0000 | [diff] [blame] | 53 |  | 
| Ronald Oussoren | 3075e16 | 2006-07-25 20:28:55 +0000 | [diff] [blame] | 54 |  | 
| Neal Norwitz | a1f1090 | 2006-07-12 07:28:29 +0000 | [diff] [blame] | 55 | Library | 
 | 56 | ------- | 
 | 57 |  | 
| Fred Drake | fbdeaad | 2006-07-29 16:56:15 +0000 | [diff] [blame] | 58 | - Rename of the xml package to xmlcore, and the import hackery done to | 
 | 59 |   make it appear at both names, has been removed.  Bug #1511497, | 
 | 60 |   #1513611, and probably others. | 
 | 61 |  | 
| Georg Brandl | edd9b0d | 2006-07-29 09:33:26 +0000 | [diff] [blame] | 62 | - Bug #1441397: The compiler module now recognizes module and function | 
 | 63 |   docstrings correctly as it did in Python 2.4. | 
 | 64 |  | 
| Tim Peters | 6f68147 | 2006-07-27 23:44:37 +0000 | [diff] [blame] | 65 | - Bug #1529297:  The rewrite of doctest for Python 2.4 unintentionally | 
 | 66 |   lost that tests are sorted by name before being run.  This rarely | 
 | 67 |   matters for well-written tests, but can create baffling symptoms if | 
 | 68 |   side effects from one test to the next affect outcomes.  ``DocTestFinder`` | 
 | 69 |   has been changed to sort the list of tests it returns. | 
 | 70 |  | 
| Martin v. Löwis | 997ceff | 2006-07-27 06:38:16 +0000 | [diff] [blame] | 71 | - The distutils version has been changed to 2.5.0. | 
 | 72 |  | 
| Martin v. Löwis | 9298eff | 2006-07-26 12:12:56 +0000 | [diff] [blame] | 73 | - Bug #978833: Really close underlying socket in _socketobject.close. | 
 | 74 |  | 
| Georg Brandl | 0619a32 | 2006-07-26 07:40:17 +0000 | [diff] [blame] | 75 | - Bug #1459963: urllib and urllib2 now normalize HTTP header names correctly | 
 | 76 |   with title(). | 
 | 77 |  | 
| Georg Brandl | cf0c172 | 2006-07-26 07:23:32 +0000 | [diff] [blame] | 78 | - Patch #1525766: In pkgutil.walk_packages, correctly pass the onerror callback | 
 | 79 |   to recursive calls and call it with the failing package name. | 
 | 80 |  | 
| Martin v. Löwis | 0b48303 | 2006-07-25 09:53:12 +0000 | [diff] [blame] | 81 | - Bug #1525817: Don't truncate short lines in IDLE's tool tips. | 
 | 82 |  | 
| Georg Brandl | c13c34c | 2006-07-24 14:09:56 +0000 | [diff] [blame] | 83 | - Patch #1515343: Fix printing of deprecated string exceptions with a | 
 | 84 |   value in the traceback module. | 
 | 85 |  | 
| Greg Ward | 48fae7a | 2006-07-23 16:05:51 +0000 | [diff] [blame] | 86 | - Resync optparse with Optik 1.5.3: minor tweaks for/to tests. | 
 | 87 |  | 
| Martin v. Löwis | 426f4a1 | 2006-07-18 17:46:31 +0000 | [diff] [blame] | 88 | - Patch #1524429: Use repr() instead of backticks in Tkinter again. | 
 | 89 |  | 
| Brett Cannon | caebe22 | 2006-07-18 04:41:36 +0000 | [diff] [blame] | 90 | - Bug #1520914: Change time.strftime() to accept a zero for any position in its | 
 | 91 |   argument tuple.  For arguments where zero is illegal, the value is forced to | 
 | 92 |   the minimum value that is correct.  This is to support an undocumented but | 
 | 93 |   common way people used  to fill in inconsequential information in the time | 
 | 94 |   tuple pre-2.4. | 
 | 95 |  | 
| Bob Ippolito | 5ea4bf1 | 2006-07-15 16:53:15 +0000 | [diff] [blame] | 96 | - Patch #1220874: Update the binhex module for Mach-O. | 
 | 97 |  | 
| Barry Warsaw | b110bad | 2006-07-21 14:51:07 +0000 | [diff] [blame] | 98 | - The email package has improved RFC 2231 support, specifically for | 
 | 99 |   recognizing the difference between encoded (name*0*=<blah>) and non-encoded | 
 | 100 |   (name*0=<blah>) parameter continuations.  This may change the types of | 
 | 101 |   values returned from email.message.Message.get_param() and friends. | 
 | 102 |   Specifically in some cases where non-encoded continuations were used, | 
 | 103 |   get_param() used to return a 3-tuple of (None, None, string) whereas now it | 
 | 104 |   will just return the string (since non-encoded continuations don't have | 
 | 105 |   charset and language parts). | 
 | 106 |  | 
 | 107 |   Also, whereas % values were decoded in all parameter continuations, they are | 
 | 108 |   now only decoded in encoded parameter parts. | 
 | 109 |  | 
| Ronald Oussoren | 3075e16 | 2006-07-25 20:28:55 +0000 | [diff] [blame] | 110 | - Bug #1517990: IDLE keybindings on MacOS X now work correctly | 
 | 111 |  | 
 | 112 | - Bug #1517996: IDLE now longer shows the default Tk menu when a | 
 | 113 |   path browser, class browser or debugger is the frontmost window on MacOS X | 
 | 114 |  | 
| Barry Warsaw | 00decd7 | 2006-07-27 23:43:15 +0000 | [diff] [blame] | 115 | - Patch #1520294: Support for getset and member descriptors in types.py, | 
 | 116 |   inspect.py, and pydoc.py.  Specifically, this allows for querying the type | 
 | 117 |   of an object against these built-in types and more importantly, for getting | 
 | 118 |   their docstrings printed in the interactive interpreter's help() function. | 
 | 119 |  | 
| Ronald Oussoren | 3075e16 | 2006-07-25 20:28:55 +0000 | [diff] [blame] | 120 |  | 
| Neal Norwitz | a1f1090 | 2006-07-12 07:28:29 +0000 | [diff] [blame] | 121 | Extension Modules | 
 | 122 | ----------------- | 
 | 123 |  | 
| Thomas Heller | 1393d6a | 2006-07-28 21:43:20 +0000 | [diff] [blame] | 124 | - Patch #1529514: The _ctypes extension is now compiled on more | 
 | 125 |   openbsd target platforms. | 
 | 126 |  | 
| Tim Peters | 9cab593 | 2006-07-28 00:30:00 +0000 | [diff] [blame] | 127 | - The ``__reduce__()`` method of the new ``collections.defaultdict`` had | 
 | 128 |   a memory leak, affecting pickles and deep copies. | 
 | 129 |  | 
| Tim Peters | bc24eee | 2006-07-27 01:14:53 +0000 | [diff] [blame] | 130 | - Bug #1471938: Fix curses module build problem on Solaris 8; patch by | 
| Andrew M. Kuchling | 10c2b55 | 2006-07-26 17:22:21 +0000 | [diff] [blame] | 131 |   Paul Eggert. | 
 | 132 |  | 
| Martin v. Löwis | bda0dde | 2006-07-24 10:26:33 +0000 | [diff] [blame] | 133 | - Patch #1448199: Release interpreter lock in _winreg.ConnectRegistry. | 
 | 134 |  | 
| Thomas Heller | ce049a0 | 2006-07-14 17:51:14 +0000 | [diff] [blame] | 135 | - Patch #1521817: Index range checking on ctypes arrays containing | 
 | 136 |   exactly one element enabled again.  This allows iterating over these | 
 | 137 |   arrays, without the need to check the array size before. | 
 | 138 |  | 
| Thomas Heller | 6e1ad2e | 2006-07-13 17:05:13 +0000 | [diff] [blame] | 139 | - Bug #1521375: When the code in ctypes.util.find_library was | 
| Andrew M. Kuchling | b7eca83 | 2006-07-13 17:37:26 +0000 | [diff] [blame] | 140 |   run with root privileges, it could overwrite or delete | 
| Thomas Heller | 2bdf29e | 2006-07-13 17:01:14 +0000 | [diff] [blame] | 141 |   /dev/null in certain cases; this is now fixed. | 
 | 142 |  | 
| Thomas Heller | 47d7a06 | 2006-07-12 08:43:47 +0000 | [diff] [blame] | 143 | - Bug #1467450: On Mac OS X 10.3, RTLD_GLOBAL is now used as the | 
 | 144 |   default mode for loading shared libraries in ctypes. | 
| Neal Norwitz | a1f1090 | 2006-07-12 07:28:29 +0000 | [diff] [blame] | 145 |  | 
| Thomas Heller | b4dc2ef | 2006-07-13 09:53:47 +0000 | [diff] [blame] | 146 | - Because of a misspelled preprocessor symbol, ctypes was always | 
 | 147 |   compiled without thread support; this is now fixed. | 
 | 148 |  | 
| Gregory P. Smith | 641cddf | 2006-07-28 01:35:25 +0000 | [diff] [blame] | 149 | - pybsddb Bug #1527939: bsddb module DBEnv dbremove and dbrename | 
 | 150 |   methods now allow their database parameter to be None as the | 
 | 151 |   sleepycat API allows. | 
 | 152 |  | 
| Matt Fleming | ec92650 | 2006-07-28 11:27:27 +0000 | [diff] [blame] | 153 | - Bug #1526460: Fix socketmodule compile on NetBSD as it has a different | 
 | 154 |   bluetooth API compared with Linux and FreeBSD. | 
 | 155 |  | 
| Brett Cannon | f23ad3d | 2006-07-25 17:32:20 +0000 | [diff] [blame] | 156 | Tests | 
 | 157 | ----- | 
 | 158 |  | 
 | 159 | - Bug #1501330: Change test_ossaudiodev to be much more tolerant in terms of | 
 | 160 |   how long the test file should take to play.  Now accepts taking 2.93 secs | 
 | 161 |   (exact time) +/- 10% instead of the hard-coded 3.1 sec. | 
 | 162 |  | 
| Georg Brandl | 4793aa3 | 2006-07-28 18:31:39 +0000 | [diff] [blame] | 163 | - Patch #1529686: The standard tests ``test_defaultdict``, ``test_iterlen``, | 
 | 164 |   ``test_uuid`` and ``test_email_codecs`` didn't actually run any tests when | 
 | 165 |   run via ``regrtest.py``. Now they do. | 
| Tim Peters | 3e246a8 | 2006-07-27 15:09:20 +0000 | [diff] [blame] | 166 |  | 
| Brett Cannon | f23ad3d | 2006-07-25 17:32:20 +0000 | [diff] [blame] | 167 |  | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 168 | What's New in Python 2.5 beta 2? | 
 | 169 | ================================ | 
 | 170 |  | 
| Anthony Baxter | 70e8e87 | 2006-07-10 07:41:04 +0000 | [diff] [blame] | 171 | *Release date: 11-JUL-2006* | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 172 |  | 
 | 173 | Core and builtins | 
 | 174 | ----------------- | 
 | 175 |  | 
| Neil Schemenauer | 6ec6ab0 | 2006-07-09 21:19:29 +0000 | [diff] [blame] | 176 | - Bug #1441486: The literal representation of -(sys.maxint - 1) | 
 | 177 |   again evaluates to a int object, not a long. | 
 | 178 |  | 
| Neil Schemenauer | 0e07b60 | 2006-07-09 16:16:34 +0000 | [diff] [blame] | 179 | - Bug #1501934: The scope of global variables that are locally assigned | 
 | 180 |   using augmented assignment is now correctly determined. | 
 | 181 |  | 
| Martin v. Löwis | d5cfa54 | 2006-07-03 13:47:40 +0000 | [diff] [blame] | 182 | - Bug #927248: Recursive method-wrapper objects can now safely | 
 | 183 |   be released. | 
 | 184 |  | 
| Martin v. Löwis | fcfff0a | 2006-07-03 12:19:50 +0000 | [diff] [blame] | 185 | - Bug #1417699: Reject locale-specific decimal point in float() | 
 | 186 |   and atof(). | 
 | 187 |  | 
| Hye-Shik Chang | e6a1cb9 | 2006-06-23 21:16:18 +0000 | [diff] [blame] | 188 | - Bug #1511381: codec_getstreamcodec() in codec.c is corrected to | 
 | 189 |   omit a default "error" argument for NULL pointer.  This allows | 
 | 190 |   the parser to take a codec from cjkcodecs again. | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 191 |  | 
| Neal Norwitz | fb48afa | 2006-07-08 05:31:37 +0000 | [diff] [blame] | 192 | - Bug #1519018: 'as' is now validated properly in import statements. | 
 | 193 |  | 
| Neal Norwitz | 28746ab | 2006-07-09 22:14:42 +0000 | [diff] [blame] | 194 | - On 64 bit systems, int literals that use less than 64 bits are | 
 | 195 |   now ints rather than longs. | 
 | 196 |  | 
| Neal Norwitz | ed65755 | 2006-07-10 00:04:44 +0000 | [diff] [blame] | 197 | - Bug #1512814, Fix incorrect lineno's when code at module scope | 
 | 198 |   started after line 256. | 
 | 199 |  | 
| Tim Peters | 32a8361 | 2006-07-10 21:08:24 +0000 | [diff] [blame] | 200 | - New function ``sys._current_frames()`` returns a dict mapping thread | 
 | 201 |   id to topmost thread stack frame.  This is for expert use, and is | 
 | 202 |   especially useful for debugging application deadlocks.  The functionality | 
 | 203 |   was previously available in Fazal Majid's ``threadframe`` extension | 
 | 204 |   module, but it wasn't possible to do this in a wholly threadsafe way from | 
 | 205 |   an extension. | 
 | 206 |  | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 207 | Library | 
 | 208 | ------- | 
 | 209 |  | 
| Martin v. Löwis | 06c68b8 | 2006-07-10 22:11:28 +0000 | [diff] [blame] | 210 | - Patch #1519566: Update turtle demo, make begin_fill idempotent. | 
 | 211 |  | 
| Tim Peters | 32a8361 | 2006-07-10 21:08:24 +0000 | [diff] [blame] | 212 | - Bug #1508010: msvccompiler now requires the DISTUTILS_USE_SDK | 
| Martin v. Löwis | 8d65681 | 2006-07-10 07:23:48 +0000 | [diff] [blame] | 213 |   environment variable to be set in order to the SDK environment | 
 | 214 |   for finding the compiler, include files, etc. | 
 | 215 |  | 
| Martin v. Löwis | 388a8c2 | 2006-07-06 19:28:03 +0000 | [diff] [blame] | 216 | - Bug #1515998: Properly generate logical ids for files in bdist_msi. | 
 | 217 |  | 
| Nick Coghlan | 2d79225 | 2006-07-06 13:47:18 +0000 | [diff] [blame] | 218 | - warnings.py now ignores ImportWarning by default | 
 | 219 |  | 
| Thomas Wouters | add1911 | 2006-07-05 11:03:49 +0000 | [diff] [blame] | 220 | - string.Template() now correctly handles tuple-values. Previously, | 
 | 221 |   multi-value tuples would raise an exception and single-value tuples would | 
 | 222 |   be treated as the value they contain, instead. | 
 | 223 |  | 
| Martin v. Löwis | ede77f5 | 2006-07-03 13:01:35 +0000 | [diff] [blame] | 224 | - Bug #822974: Honor timeout in telnetlib.{expect,read_until} | 
 | 225 |   even if some data are received. | 
 | 226 |  | 
| Martin v. Löwis | 4548239 | 2006-07-03 12:28:58 +0000 | [diff] [blame] | 227 | - Bug #1267547: Put proper recursive setup.py call into the | 
 | 228 |   spec file generated by bdist_rpm. | 
 | 229 |  | 
| Martin v. Löwis | 2b88f63 | 2006-07-03 10:19:49 +0000 | [diff] [blame] | 230 | - Bug #1514693: Update turtle's heading when switching between | 
 | 231 |   degrees and radians. | 
 | 232 |  | 
| Martin v. Löwis | 4c4300d | 2006-07-03 10:05:30 +0000 | [diff] [blame] | 233 | - Reimplement turtle.circle using a polyline, to allow correct | 
| Martin v. Löwis | 2b88f63 | 2006-07-03 10:19:49 +0000 | [diff] [blame] | 234 |   filling of arcs. | 
| Martin v. Löwis | 4c4300d | 2006-07-03 10:05:30 +0000 | [diff] [blame] | 235 |  | 
| Martin v. Löwis | bd39c03 | 2006-07-03 09:44:00 +0000 | [diff] [blame] | 236 | - Bug #1514703: Only setup canvas window in turtle when the canvas | 
 | 237 |   is created. | 
 | 238 |  | 
| Martin v. Löwis | 7596e83 | 2006-07-01 15:33:37 +0000 | [diff] [blame] | 239 | - Bug #1513223: .close() of a _socketobj now releases the underlying | 
 | 240 |   socket again, which then gets closed as it becomes unreferenced. | 
 | 241 |  | 
| Fred Drake | 10497c8 | 2006-06-29 02:57:48 +0000 | [diff] [blame] | 242 | - Bug #1504333: Make sgmllib support angle brackets in quoted | 
 | 243 |   attribute values. | 
 | 244 |  | 
 | 245 | - Bug #853506: Fix IPv6 address parsing in unquoted attributes in | 
 | 246 |   sgmllib ('[' and ']' were not accepted). | 
 | 247 |  | 
| Georg Brandl | 1be63af | 2006-06-28 20:23:25 +0000 | [diff] [blame] | 248 | - Fix a bug in the turtle module's end_fill function. | 
 | 249 |  | 
| Brett Cannon | 53ab5b7 | 2006-06-22 16:49:14 +0000 | [diff] [blame] | 250 | - Bug #1510580: The 'warnings' module improperly required that a Warning | 
 | 251 |   category be either a types.ClassType and a subclass of Warning.  The proper | 
 | 252 |   check is just that it is a subclass with Warning as the documentation states. | 
 | 253 |  | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 254 | - The compiler module now correctly compiles the new try-except-finally | 
 | 255 |   statement (bug #1509132). | 
 | 256 |  | 
| Neal Norwitz | 60373cd | 2006-06-22 06:30:50 +0000 | [diff] [blame] | 257 | - The wsgiref package is now installed properly on Unix. | 
 | 258 |  | 
| Vinay Sajip | 28e5761 | 2006-07-01 10:45:20 +0000 | [diff] [blame] | 259 | - A bug was fixed in logging.config.fileConfig() which caused a crash on | 
 | 260 |   shutdown when fileConfig() was called multiple times. | 
 | 261 |  | 
| Gerhard Häring | 762fbd3 | 2006-07-02 17:48:30 +0000 | [diff] [blame] | 262 | - The sqlite3 module did cut off data from the SQLite database at the first | 
 | 263 |   null character before sending it to a custom converter. This has been fixed | 
 | 264 |   now. | 
 | 265 |  | 
| Neal Norwitz | 0f8b31a | 2006-06-28 06:28:31 +0000 | [diff] [blame] | 266 | Extension Modules | 
 | 267 | ----------------- | 
 | 268 |  | 
| Tim Peters | 112aad3 | 2006-07-19 00:03:19 +0000 | [diff] [blame] | 269 | - #1494314: Fix a regression with high-numbered sockets in 2.4.3. This | 
 | 270 |   means that select() on sockets > FD_SETSIZE (typically 1024) work again. | 
 | 271 |   The patch makes sockets use poll() internally where available. | 
| Anthony Baxter | 93ab5fa | 2006-07-11 02:04:09 +0000 | [diff] [blame] | 272 |  | 
| Thomas Heller | b9cb84f | 2006-07-10 11:17:37 +0000 | [diff] [blame] | 273 | - Assigning None to pointer type fields in ctypes structures possible | 
 | 274 |   overwrote the wrong fields, this is fixed now. | 
 | 275 |  | 
 | 276 | - Fixed a segfault in _ctypes when ctypes.wintypes were imported | 
 | 277 |   on non-Windows platforms. | 
 | 278 |  | 
 | 279 | - Bug #1518190: The ctypes.c_void_p constructor now accepts any | 
 | 280 |   integer or long, without range checking. | 
 | 281 |  | 
 | 282 | - Patch #1517790: It is now possible to use custom objects in the ctypes | 
 | 283 |   foreign function argtypes sequence as long as they provide a from_param | 
 | 284 |   method, no longer is it required that the object is a ctypes type. | 
 | 285 |  | 
 | 286 | - The '_ctypes' extension module now works when Python is configured | 
 | 287 |   with the --without-threads option. | 
 | 288 |  | 
| Martin v. Löwis | ee1e06d | 2006-07-02 18:44:00 +0000 | [diff] [blame] | 289 | - Bug #1513646: os.access on Windows now correctly determines write | 
 | 290 |   access, again. | 
 | 291 |  | 
| Neal Norwitz | 0f8b31a | 2006-06-28 06:28:31 +0000 | [diff] [blame] | 292 | - Bug #1512695: cPickle.loads could crash if it was interrupted with | 
 | 293 |   a KeyboardInterrupt. | 
 | 294 |  | 
| Neal Norwitz | a12aa88 | 2006-07-06 06:45:08 +0000 | [diff] [blame] | 295 | - Bug #1296433: parsing XML with a non-default encoding and | 
 | 296 |   a CharacterDataHandler could crash the interpreter in pyexpat. | 
 | 297 |  | 
| Neal Norwitz | 2a30cd0 | 2006-07-10 01:18:57 +0000 | [diff] [blame] | 298 | - Patch #1516912: improve Modules support for OpenVMS. | 
 | 299 |  | 
| Neal Norwitz | 3b6b801 | 2006-06-27 04:12:58 +0000 | [diff] [blame] | 300 | Build | 
 | 301 | ----- | 
 | 302 |  | 
| Martin v. Löwis | d73168d | 2006-07-14 09:58:55 +0000 | [diff] [blame] | 303 | - Automate Windows build process for the Win64 SSL module. | 
 | 304 |  | 
| Tim Peters | 32a8361 | 2006-07-10 21:08:24 +0000 | [diff] [blame] | 305 | - 'configure' now detects the zlib library the same way as distutils. | 
| Thomas Wouters | fc34f6c | 2006-07-06 10:48:28 +0000 | [diff] [blame] | 306 |   Previously, the slight difference could cause compilation errors of the | 
 | 307 |   'zlib' module on systems with more than one version of zlib. | 
 | 308 |  | 
| Martin v. Löwis | 4cbd05c | 2006-07-06 07:05:21 +0000 | [diff] [blame] | 309 | - The MSI compileall step was fixed to also support a TARGETDIR | 
 | 310 |   with spaces in it. | 
 | 311 |  | 
| Martin v. Löwis | 88ef637 | 2006-07-06 06:55:58 +0000 | [diff] [blame] | 312 | - Bug #1517388: sqlite3.dll is now installed on Windows independent | 
 | 313 |   of Tcl/Tk. | 
 | 314 |  | 
| Neal Norwitz | c315a0f | 2006-06-27 04:28:56 +0000 | [diff] [blame] | 315 | - Bug #1513032: 'make install' failed on FreeBSD 5.3 due to lib-old | 
| Neal Norwitz | 3b6b801 | 2006-06-27 04:12:58 +0000 | [diff] [blame] | 316 |   trying to be installed even though it's empty. | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 317 |  | 
| Neal Norwitz | b15ac31 | 2006-06-29 04:10:08 +0000 | [diff] [blame] | 318 | Tests | 
 | 319 | ----- | 
 | 320 |  | 
 | 321 | - Call os.waitpid() at the end of tests that spawn child processes in order | 
 | 322 |   to minimize resources (zombies). | 
 | 323 |  | 
| Martin v. Löwis | 1bf5959 | 2006-06-29 18:58:44 +0000 | [diff] [blame] | 324 | Documentation | 
 | 325 | ------------- | 
 | 326 |  | 
| Nick Coghlan | 2d79225 | 2006-07-06 13:47:18 +0000 | [diff] [blame] | 327 | - Cover ImportWarning, PendingDeprecationWarning and simplefilter() in the | 
 | 328 |   documentation for the warnings module. | 
 | 329 |  | 
| Martin v. Löwis | 1bf5959 | 2006-06-29 18:58:44 +0000 | [diff] [blame] | 330 | - Patch #1509163: MS Toolkit Compiler no longer available. | 
 | 331 |  | 
| Neal Norwitz | 56640df | 2006-07-10 02:36:41 +0000 | [diff] [blame] | 332 | - Patch #1504046: Add documentation for xml.etree. | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 333 |  | 
| Nick Coghlan | c649ec5 | 2006-05-29 12:43:05 +0000 | [diff] [blame] | 334 | What's New in Python 2.5 beta 1? | 
| Georg Brandl | ad29e63 | 2006-06-21 17:45:17 +0000 | [diff] [blame] | 335 | ================================ | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 336 |  | 
| Anthony Baxter | d113680 | 2006-06-19 12:04:15 +0000 | [diff] [blame] | 337 | *Release date: 20-JUN-2006* | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 338 |  | 
 | 339 | Core and builtins | 
 | 340 | ----------------- | 
 | 341 |  | 
| Georg Brandl | a56b915 | 2006-06-19 06:35:54 +0000 | [diff] [blame] | 342 | - Patch #1507676: Error messages returned by invalid abstract object operations | 
 | 343 |   (such as iterating over an integer) have been improved and now include the | 
 | 344 |   type of the offending object to help with debugging. | 
 | 345 |  | 
| Brett Cannon | ea3912b | 2006-06-13 21:46:41 +0000 | [diff] [blame] | 346 | - Bug #992017: A classic class that defined a __coerce__() method that returned | 
 | 347 |   its arguments swapped would infinitely recurse and segfault the interpreter. | 
 | 348 |  | 
| Neal Norwitz | 909eb12 | 2006-06-12 02:13:21 +0000 | [diff] [blame] | 349 | - Fix the socket tests so they can be run concurrently. | 
 | 350 |  | 
| Neal Norwitz | b9845e7 | 2006-06-12 02:11:18 +0000 | [diff] [blame] | 351 | - Removed 5 integers from C frame objects (PyFrameObject). | 
| Vinay Sajip | 28e5761 | 2006-07-01 10:45:20 +0000 | [diff] [blame] | 352 |   f_nlocals, f_ncells, f_nfreevars, f_stack_size, f_restricted. | 
| Neal Norwitz | b9845e7 | 2006-06-12 02:11:18 +0000 | [diff] [blame] | 353 |  | 
| Brett Cannon | 22565aa | 2006-06-09 22:31:23 +0000 | [diff] [blame] | 354 | - Bug #532646: object.__call__() will continue looking for the __call__ | 
 | 355 |   attribute on objects until one without one is found.  This leads to recursion | 
 | 356 |   when you take a class and set its __call__ attribute to an instance of the | 
 | 357 |   class.  Originally fixed for classic classes, but this fix is for new-style. | 
 | 358 |   Removes the infinite_rec_3 crasher. | 
 | 359 |  | 
| Georg Brandl | 2425081 | 2006-06-09 18:45:48 +0000 | [diff] [blame] | 360 | - The string and unicode methods startswith() and endswith() now accept | 
 | 361 |   a tuple of prefixes/suffixes to look for. Implements RFE #1491485. | 
 | 362 |  | 
| Brett Cannon | de3b052 | 2006-06-08 17:00:45 +0000 | [diff] [blame] | 363 | - Buffer objects, at the C level, never used the char buffer | 
 | 364 |   implementation even when the char buffer for the wrapped object was | 
 | 365 |   explicitly requested (originally returned the read or write buffer). | 
 | 366 |   Now a TypeError is raised if the char buffer is not present but is | 
 | 367 |   requested. | 
 | 368 |  | 
| Georg Brandl | ddbaa66 | 2006-06-04 21:56:52 +0000 | [diff] [blame] | 369 | - Patch #1346214: Statements like "if 0: suite" are now again optimized | 
 | 370 |   away like they were in Python 2.4. | 
 | 371 |  | 
| Georg Brandl | b7c8f54 | 2006-05-27 12:30:25 +0000 | [diff] [blame] | 372 | - Builtin exceptions are now full-blown new-style classes instead of | 
 | 373 |   instances pretending to be classes, which speeds up exception handling | 
 | 374 |   by about 80% in comparison to 2.5a2. | 
 | 375 |  | 
| Martin v. Löwis | d004fc8 | 2006-05-27 08:36:52 +0000 | [diff] [blame] | 376 | - Patch #1494554: Update unicodedata.numeric and unicode.isnumeric to | 
 | 377 |   Unicode 4.1. | 
 | 378 |  | 
| Georg Brandl | f4ef116 | 2006-05-26 18:03:31 +0000 | [diff] [blame] | 379 | - Patch #921466: sys.path_importer_cache is now used to cache valid and | 
 | 380 |   invalid file paths for the built-in import machinery which leads to | 
 | 381 |   fewer open calls on startup. | 
 | 382 |  | 
| Tim Peters | 696cf43 | 2006-05-24 21:10:40 +0000 | [diff] [blame] | 383 | - Patch #1442927: ``long(str, base)`` is now up to 6x faster for non-power- | 
 | 384 |   of-2 bases.  The largest speedup is for inputs with about 1000 decimal | 
 | 385 |   digits.  Conversion from non-power-of-2 bases remains quadratic-time in | 
 | 386 |   the number of input digits (it was and remains linear-time for bases | 
 | 387 |   2, 4, 8, 16 and 32). | 
 | 388 |  | 
| Tim Peters | b713ec2 | 2006-05-23 18:45:30 +0000 | [diff] [blame] | 389 | - Bug #1334662: ``int(string, base)`` could deliver a wrong answer | 
 | 390 |   when ``base`` was not 2, 4, 8, 10, 16 or 32, and ``string`` represented | 
 | 391 |   an integer close to ``sys.maxint``.  This was repaired by patch | 
 | 392 |   #1335972, which also gives a nice speedup. | 
 | 393 |  | 
| Richard Jones | cebbefc | 2006-05-23 18:28:17 +0000 | [diff] [blame] | 394 | - Patch #1337051: reduced size of frame objects. | 
 | 395 |  | 
 | 396 | - PyErr_NewException now accepts a tuple of base classes as its | 
 | 397 |   "base" parameter. | 
 | 398 |  | 
| Richard Jones | 7c88dcc | 2006-05-23 10:37:38 +0000 | [diff] [blame] | 399 | - Patch #876206: function call speedup by retaining allocated frame | 
 | 400 |   objects. | 
 | 401 |  | 
| Georg Brandl | 7b90e16 | 2006-05-18 07:01:27 +0000 | [diff] [blame] | 402 | - Bug #1462152: file() now checks more thoroughly for invalid mode | 
 | 403 |   strings and removes a possible "U" before passing the mode to the | 
 | 404 |   C library function. | 
 | 405 |  | 
| Neal Norwitz | 1004a53 | 2006-05-15 07:17:23 +0000 | [diff] [blame] | 406 | - Patch #1488312, Fix memory alignment problem on SPARC in unicode | 
 | 407 |  | 
| Neal Norwitz | 373f0a7 | 2006-05-15 07:04:36 +0000 | [diff] [blame] | 408 | - Bug #1487966: Fix SystemError with conditional expression in assignment | 
 | 409 |  | 
| Martin v. Löwis | 879768d | 2006-05-11 13:28:43 +0000 | [diff] [blame] | 410 | - WindowsError now has two error code attributes: errno, which carries | 
 | 411 |   the error values from errno.h, and winerror, which carries the error | 
 | 412 |   values from winerror.h. Previous versions put the winerror.h values | 
 | 413 |   (from GetLastError()) into the errno attribute. | 
 | 414 |  | 
| Martin v. Löwis | 7773671 | 2006-05-04 05:51:03 +0000 | [diff] [blame] | 415 | - Patch #1475845: Raise IndentationError for unexpected indent. | 
 | 416 |  | 
| Neal Norwitz | c4edb0e | 2006-05-02 04:43:14 +0000 | [diff] [blame] | 417 | - Patch #1479181: split open() and file() from being aliases for each other. | 
 | 418 |  | 
| Tim Peters | 44bd986 | 2006-06-01 13:49:23 +0000 | [diff] [blame] | 419 | - Patch #1497053 & bug #1275608: Exceptions occurring in ``__eq__()`` | 
 | 420 |   methods were always silently ignored by dictionaries when comparing keys. | 
 | 421 |   They are now passed through (except when using the C API function | 
 | 422 |   ``PyDict_GetItem()``, whose semantics did not change). | 
 | 423 |  | 
 | 424 | - Bug #1456209: In some obscure cases it was possible for a class with a | 
 | 425 |   custom ``__eq__()`` method to confuse dict internals when class instances | 
 | 426 |   were used as a dict's keys and the ``__eq__()`` method mutated the dict. | 
 | 427 |   No, you don't have any code that did this ;-) | 
| Armin Rigo | 35f6d36 | 2006-06-01 13:19:12 +0000 | [diff] [blame] | 428 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 429 | Extension Modules | 
 | 430 | ----------------- | 
 | 431 |  | 
| Trent Mick | 960a3f8 | 2006-06-28 20:30:41 +0000 | [diff] [blame] | 432 | - Bug #1295808: expat symbols should be namespaced in pyexpat | 
 | 433 |  | 
 | 434 | - Patch #1462338: Upgrade pyexpat to expat 2.0.0 | 
 | 435 |  | 
| Brett Cannon | 6ee7d01 | 2006-06-08 16:23:04 +0000 | [diff] [blame] | 436 | - Change binascii.hexlify to accept a read-only buffer instead of only a char | 
 | 437 |   buffer and actually follow its documentation. | 
 | 438 |  | 
| Hye-Shik Chang | 58ce5bc | 2006-06-05 00:59:54 +0000 | [diff] [blame] | 439 | - Fixed a potentially invalid memory access of CJKCodecs' shift-jis decoder. | 
 | 440 |  | 
| Nick Coghlan | c649ec5 | 2006-05-29 12:43:05 +0000 | [diff] [blame] | 441 | - Patch #1478788 (modified version): The functional extension module has | 
 | 442 |   been renamed to _functools and a functools Python wrapper module added. | 
 | 443 |   This provides a home for additional function related utilities that are | 
 | 444 |   not specifically about functional programming. See PEP 309. | 
 | 445 |  | 
| Bob Ippolito | 7ccc95a | 2006-05-23 19:11:34 +0000 | [diff] [blame] | 446 | - Patch #1493701: performance enhancements for struct module. | 
 | 447 |  | 
| Georg Brandl | 378d592 | 2006-05-17 14:26:50 +0000 | [diff] [blame] | 448 | - Patch #1490224: time.altzone is now set correctly on Cygwin. | 
 | 449 |  | 
| Georg Brandl | 8d3342b | 2006-05-16 07:38:27 +0000 | [diff] [blame] | 450 | - Patch #1435422: zlib's compress and decompress objects now have a | 
 | 451 |   copy() method. | 
 | 452 |  | 
| Andrew MacIntyre | 9291332 | 2006-06-13 15:04:24 +0000 | [diff] [blame] | 453 | - Patch #1454481: thread stack size is now tunable at runtime for thread | 
 | 454 |   enabled builds on Windows and systems with Posix threads support. | 
 | 455 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 456 | - On Win32, os.listdir now supports arbitrarily-long Unicode path names | 
 | 457 |   (up to the system limit of 32K characters). | 
 | 458 |  | 
 | 459 | - Use Win32 API to implement os.{access,chdir,chmod,mkdir,remove,rename,rmdir,utime}. | 
 | 460 |   As a result, these functions now raise WindowsError instead of OSError. | 
 | 461 |  | 
| Tim Peters | 7a822da | 2006-05-25 21:50:17 +0000 | [diff] [blame] | 462 | - ``time.clock()`` on Win64 should use the high-performance Windows | 
 | 463 |   ``QueryPerformanceCounter()`` now (as was already the case on 32-bit | 
 | 464 |   Windows platforms). | 
 | 465 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 466 | - Calling Tk_Init twice is refused if the first call failed as that | 
 | 467 |   may deadlock. | 
 | 468 |  | 
| Gregory P. Smith | 0459e4d | 2006-06-05 02:02:25 +0000 | [diff] [blame] | 469 | - bsddb: added the DB_ARCH_REMOVE flag and fixed db.DBEnv.log_archive() to | 
 | 470 |   accept it without potentially using an uninitialized pointer. | 
 | 471 |  | 
 | 472 | - bsddb: added support for the DBEnv.log_stat() and DBEnv.lsn_reset() methods | 
 | 473 |   assuming BerkeleyDB >= 4.0 and 4.4 respectively.  [pybsddb project SF | 
 | 474 |   patch numbers 1494885 and 1494902] | 
| Nick Coghlan | c649ec5 | 2006-05-29 12:43:05 +0000 | [diff] [blame] | 475 |  | 
| Gregory P. Smith | 372b583 | 2006-06-05 18:48:21 +0000 | [diff] [blame] | 476 | - bsddb: added an interface for the BerkeleyDB >= 4.3 DBSequence class. | 
| Gregory P. Smith | f0547d0 | 2006-06-05 17:38:04 +0000 | [diff] [blame] | 477 |   [pybsddb project SF patch number 1466734] | 
 | 478 |  | 
| Gregory P. Smith | 372b583 | 2006-06-05 18:48:21 +0000 | [diff] [blame] | 479 | - bsddb: fix DBCursor.pget() bug with keyword argument names when no data | 
 | 480 |   parameter is supplied.  [SF pybsddb bug #1477863] | 
 | 481 |  | 
| Gregory P. Smith | 3c228b1 | 2006-06-05 23:59:37 +0000 | [diff] [blame] | 482 | - bsddb: the __len__ method of a DB object has been fixed to return correct | 
 | 483 |   results.  It could previously incorrectly return 0 in some cases. | 
 | 484 |   Fixes SF bug 1493322 (pybsddb bug 1184012). | 
 | 485 |  | 
| Gregory P. Smith | ff7d991 | 2006-06-08 05:17:08 +0000 | [diff] [blame] | 486 | - bsddb: the bsddb.dbtables Modify method now raises the proper error and | 
 | 487 |   aborts the db transaction safely when a modifier callback fails. | 
 | 488 |   Fixes SF python patch/bug #1408584. | 
 | 489 |  | 
| Gregory P. Smith | 506f7b5 | 2006-06-15 08:52:32 +0000 | [diff] [blame] | 490 | - bsddb: multithreaded DB access using the simple bsddb module interface | 
| Vinay Sajip | 28e5761 | 2006-07-01 10:45:20 +0000 | [diff] [blame] | 491 |   now works reliably.  It has been updated to use automatic BerkeleyDB | 
| Gregory P. Smith | 506f7b5 | 2006-06-15 08:52:32 +0000 | [diff] [blame] | 492 |   deadlock detection and the bsddb.dbutils.DeadlockWrap wrapper to retry | 
 | 493 |   database calls that would previously deadlock. [SF python bug #775414] | 
 | 494 |  | 
| Vinay Sajip | 28e5761 | 2006-07-01 10:45:20 +0000 | [diff] [blame] | 495 | - Patch #1446489: add support for the ZIP64 extensions to zipfile. | 
| Gregory P. Smith | 372b583 | 2006-06-05 18:48:21 +0000 | [diff] [blame] | 496 |  | 
| Walter Dörwald | 4994d95 | 2006-06-19 08:07:50 +0000 | [diff] [blame] | 497 | - Patch #1506645: add Python wrappers for the curses functions | 
 | 498 |   is_term_resized, resize_term and resizeterm. | 
| Gregory P. Smith | 506f7b5 | 2006-06-15 08:52:32 +0000 | [diff] [blame] | 499 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 500 | Library | 
 | 501 | ------- | 
 | 502 |  | 
| Martin v. Löwis | 6fb20aa | 2006-06-17 19:03:26 +0000 | [diff] [blame] | 503 | - Patch #815924: Restore ability to pass type= and icon= in tkMessageBox | 
 | 504 |   functions. | 
 | 505 |  | 
| Martin v. Löwis | 3798da0 | 2006-06-17 18:44:27 +0000 | [diff] [blame] | 506 | - Patch #812986: Update turtle output even if not tracing. | 
 | 507 |  | 
| Vinay Sajip | 28e5761 | 2006-07-01 10:45:20 +0000 | [diff] [blame] | 508 | - Patch #1494750: Destroy master after deleting children in | 
| Martin v. Löwis | 92733be | 2006-06-17 09:25:15 +0000 | [diff] [blame] | 509 |   Tkinter.BaseWidget. | 
 | 510 |  | 
| Martin v. Löwis | 5ecad9c | 2006-06-17 09:20:41 +0000 | [diff] [blame] | 511 | - Patch #1096231: Add ``default`` argument to Tkinter.Wm.wm_iconbitmap. | 
 | 512 |  | 
| Martin v. Löwis | 337487e | 2006-06-17 09:15:14 +0000 | [diff] [blame] | 513 | - Patch #763580: Add name and value arguments to Tkinter variable | 
 | 514 |   classes. | 
 | 515 |  | 
| Georg Brandl | 83cc0d0 | 2006-06-14 08:50:03 +0000 | [diff] [blame] | 516 | - Bug #1117556: SimpleHTTPServer now tries to find and use the system's | 
 | 517 |   mime.types file for determining MIME types. | 
 | 518 |  | 
| Georg Brandl | 2605ca8 | 2006-06-14 06:08:31 +0000 | [diff] [blame] | 519 | - Bug #1339007: Shelf objects now don't raise an exception in their | 
 | 520 |   __del__ method when initialization failed. | 
 | 521 |  | 
| Martin v. Löwis | d825143 | 2006-06-14 05:21:04 +0000 | [diff] [blame] | 522 | - Patch #1455898: The MBCS codec now supports the incremental mode for | 
 | 523 |   double-byte encodings. | 
 | 524 |  | 
| Tim Peters | 43898b4 | 2006-06-14 04:09:25 +0000 | [diff] [blame] | 525 | - ``difflib``'s ``SequenceMatcher.get_matching_blocks()`` was changed to | 
 | 526 |   guarantee that adjacent triples in the return list always describe | 
 | 527 |   non-adjacent blocks.  Previously, a pair of matching blocks could end | 
 | 528 |   up being described by multiple adjacent triples that formed a partition | 
 | 529 |   of the matching pair. | 
 | 530 |  | 
| Greg Ward | 0e0c9f4 | 2006-06-11 16:24:11 +0000 | [diff] [blame] | 531 | - Bug #1498146: fix optparse to handle Unicode strings in option help, | 
 | 532 |   description, and epilog. | 
 | 533 |  | 
| Greg Ward | d1c797e | 2006-06-11 14:42:41 +0000 | [diff] [blame] | 534 | - Bug #1366250: minor optparse documentation error. | 
 | 535 |  | 
| Greg Ward | 7f54740 | 2006-06-11 00:40:49 +0000 | [diff] [blame] | 536 | - Bug #1361643: fix textwrap.dedent() so it handles tabs appropriately; | 
 | 537 |   clarify docs. | 
 | 538 |  | 
| Andrew M. Kuchling | 0873b11 | 2006-06-09 16:46:51 +0000 | [diff] [blame] | 539 | - The wsgiref package has been added to the standard library. | 
 | 540 |  | 
| Nick Coghlan | 676725d | 2006-06-08 13:54:49 +0000 | [diff] [blame] | 541 | - The functions update_wrapper() and wraps() have been added to the functools | 
 | 542 |   module. These make it easier to copy relevant metadata from the original | 
 | 543 |   function when writing wrapper functions. | 
 | 544 |  | 
| Tim Peters | d6a9eef | 2006-06-05 01:48:21 +0000 | [diff] [blame] | 545 | - The optional ``isprivate`` argument to ``doctest.testmod()``, and the | 
 | 546 |   ``doctest.is_private()`` function, both deprecated in 2.4, were removed. | 
| Tim Peters | bf0400a | 2006-06-05 01:43:03 +0000 | [diff] [blame] | 547 |  | 
| Martin v. Löwis | 3f76779 | 2006-06-04 19:36:28 +0000 | [diff] [blame] | 548 | - Patch #1359618: Speed up charmap encoder by using a trie structure | 
 | 549 |   for lookup. | 
 | 550 |  | 
| Tim Peters | d609b1a | 2006-06-02 23:22:51 +0000 | [diff] [blame] | 551 | - The functions in the ``pprint`` module now sort dictionaries by key | 
 | 552 |   before computing the display.  Before 2.5, ``pprint`` sorted a dictionary | 
 | 553 |   if and only if its display required more than one line, although that | 
 | 554 |   wasn't documented.  The new behavior increases predictability; e.g., | 
 | 555 |   using ``pprint.pprint(a_dict)`` in a doctest is now reliable. | 
 | 556 |  | 
| Georg Brandl | fd9a4b1 | 2006-05-29 20:57:01 +0000 | [diff] [blame] | 557 | - Patch #1497027: try HTTP digest auth before basic auth in urllib2 | 
 | 558 |   (thanks for J. J. Lee). | 
 | 559 |  | 
| Georg Brandl | 2b33037 | 2006-05-28 20:23:12 +0000 | [diff] [blame] | 560 | - Patch #1496206: improve urllib2 handling of passwords with respect to | 
 | 561 |   default HTTP and HTTPS ports. | 
 | 562 |  | 
| George Yoshida | f3c65de | 2006-05-28 16:39:09 +0000 | [diff] [blame] | 563 | - Patch #1080727: add "encoding" parameter to doctest.DocFileSuite. | 
 | 564 |  | 
| Bob Ippolito | 7298f27 | 2006-05-23 18:43:47 +0000 | [diff] [blame] | 565 | - Patch #1281707: speed up gzip.readline. | 
 | 566 |  | 
| Georg Brandl | b89316f | 2006-05-17 15:51:16 +0000 | [diff] [blame] | 567 | - Patch #1180296: Two new functions were added to the locale module: | 
 | 568 |   format_string() to get the effect of  "format % items" but locale-aware, | 
 | 569 |   and currency() to format a monetary number with currency sign. | 
 | 570 |  | 
| Georg Brandl | e3a2583 | 2006-05-17 14:56:04 +0000 | [diff] [blame] | 571 | - Patch #1486962: Several bugs in the turtle Tk demo module were fixed | 
 | 572 |   and several features added, such as speed and geometry control. | 
 | 573 |  | 
| Georg Brandl | 49c8f4c | 2006-05-15 19:30:35 +0000 | [diff] [blame] | 574 | - Patch #1488881: add support for external file objects in bz2 compressed | 
 | 575 |   tarfiles. | 
 | 576 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 577 | - Patch #721464: pdb.Pdb instances can now be given explicit stdin and | 
 | 578 |   stdout arguments, making it possible to redirect input and output | 
 | 579 |   for remote debugging. | 
 | 580 |  | 
 | 581 | - Patch #1484695: Update the tarfile module to version 0.8. This fixes | 
 | 582 |   a couple of issues, notably handling of long file names using the | 
 | 583 |   GNU LONGNAME extension. | 
 | 584 |  | 
 | 585 | - Patch #1478292. ``doctest.register_optionflag(name)`` shouldn't create a | 
 | 586 |   new flag when ``name`` is already the name of an option flag. | 
 | 587 |  | 
 | 588 | - Bug #1385040: don't allow "def foo(a=1, b): pass" in the compiler | 
 | 589 |   package. | 
 | 590 |  | 
 | 591 | - Patch #1472854: make the rlcompleter.Completer class usable on non- | 
 | 592 |   UNIX platforms. | 
 | 593 |  | 
 | 594 | - Patch #1470846: fix urllib2 ProxyBasicAuthHandler. | 
 | 595 |  | 
| Andrew M. Kuchling | 3fed2eb | 2006-06-09 16:44:40 +0000 | [diff] [blame] | 596 | - Bug #1472827: correctly escape newlines and tabs in attribute values in | 
 | 597 |   the saxutils.XMLGenerator class. | 
 | 598 |  | 
 | 599 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 600 | Build | 
 | 601 | ----- | 
 | 602 |  | 
| Georg Brandl | 66a0dbb | 2006-06-08 12:54:13 +0000 | [diff] [blame] | 603 | - Bug #1502728: Correctly link against librt library on HP-UX. | 
 | 604 |  | 
| Martin v. Löwis | 222c515 | 2006-06-03 07:37:13 +0000 | [diff] [blame] | 605 | - OpenBSD 3.9 is supported now. | 
 | 606 |  | 
| Martin v. Löwis | a43190b | 2006-05-22 09:15:18 +0000 | [diff] [blame] | 607 | - Patch #1492356: Port to Windows CE. | 
 | 608 |  | 
| Neal Norwitz | 58e2888 | 2006-05-19 07:00:58 +0000 | [diff] [blame] | 609 | - Bug/Patch #1481770: Use .so extension for shared libraries on HP-UX for ia64. | 
 | 610 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 611 | - Patch #1471883: Add --enable-universalsdk. | 
 | 612 |  | 
 | 613 | C API | 
 | 614 | ----- | 
 | 615 |  | 
 | 616 | Tests | 
 | 617 | ----- | 
 | 618 |  | 
 | 619 | Tools | 
 | 620 | ----- | 
 | 621 |  | 
 | 622 | Documentation | 
 | 623 | ------------- | 
 | 624 |  | 
| Nick Coghlan | c649ec5 | 2006-05-29 12:43:05 +0000 | [diff] [blame] | 625 |  | 
 | 626 |  | 
| Neal Norwitz | 7a5fc28 | 2006-05-15 06:48:14 +0000 | [diff] [blame] | 627 | What's New in Python 2.5 alpha 2? | 
 | 628 | ================================= | 
 | 629 |  | 
 | 630 | *Release date: 27-APR-2006* | 
 | 631 |  | 
 | 632 | Core and builtins | 
 | 633 | ----------------- | 
 | 634 |  | 
| Thomas Heller | 1b04664 | 2006-04-18 18:51:06 +0000 | [diff] [blame] | 635 | - Bug #1465834: 'bdist_wininst preinstall script support' was fixed | 
 | 636 |   by converting these apis from macros into exported functions again: | 
 | 637 |  | 
 | 638 |     PyParser_SimpleParseFile PyParser_SimpleParseString PyRun_AnyFile | 
 | 639 |     PyRun_AnyFileEx PyRun_AnyFileFlags PyRun_File PyRun_FileEx | 
 | 640 |     PyRun_FileFlags PyRun_InteractiveLoop PyRun_InteractiveOne | 
 | 641 |     PyRun_SimpleFile PyRun_SimpleFileEx PyRun_SimpleString | 
 | 642 |     PyRun_String Py_CompileString | 
 | 643 |  | 
| Martin v. Löwis | 45294a9 | 2006-04-18 06:24:08 +0000 | [diff] [blame] | 644 | - Under COUNT_ALLOCS, types are not necessarily immortal anymore. | 
 | 645 |  | 
| Martin v. Löwis | 19ab6c9 | 2006-04-16 18:55:50 +0000 | [diff] [blame] | 646 | - All uses of PyStructSequence_InitType have been changed to initialize | 
 | 647 |   the type objects only once, even if the interpreter is initialized | 
 | 648 |   multiple times. | 
 | 649 |  | 
| Neal Norwitz | 6154616 | 2006-04-14 05:20:28 +0000 | [diff] [blame] | 650 | - Bug #1454485, array.array('u') could crash the interpreter.  This was | 
 | 651 |   due to PyArgs_ParseTuple(args, 'u#', ...) trying to convert buffers (strings) | 
 | 652 |   to unicode when it didn't make sense.  'u#' now requires a unicode string. | 
 | 653 |  | 
 | 654 | - Py_UNICODE is unsigned.  It was always documented as unsigned, but | 
 | 655 |   due to a bug had a signed value in previous versions. | 
 | 656 |  | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 657 | - Patch #837242: ``id()`` of any Python object always gives a positive | 
 | 658 |   number now, which might be a long integer. ``PyLong_FromVoidPtr`` and | 
 | 659 |   ``PyLong_AsVoidPtr`` have been changed accordingly.  Note that it has | 
| Tim Peters | 527f652 | 2006-04-11 01:47:17 +0000 | [diff] [blame] | 660 |   never been correct to implement a ``__hash()__`` method that returns the | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 661 |   ``id()`` of an object: | 
| Martin v. Löwis | 0bc2ab9 | 2006-04-10 20:28:17 +0000 | [diff] [blame] | 662 |  | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 663 |       def __hash__(self): | 
 | 664 |           return id(self)  # WRONG | 
 | 665 |  | 
 | 666 |   because a hash result must be a (short) Python int but it was always | 
 | 667 |   possible for ``id()`` to return a Python long.  However, because ``id()`` | 
| Tim Peters | 527f652 | 2006-04-11 01:47:17 +0000 | [diff] [blame] | 668 |   could return negative values before, on a 32-bit box an ``id()`` result | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 669 |   was always usable as a hash value before this patch.  That's no longer | 
 | 670 |   necessarily so. | 
 | 671 |  | 
 | 672 | - Python on OS X 10.3 and above now uses dlopen() (via dynload_shlib.c) | 
| Anthony Baxter | 8220174 | 2006-04-09 15:07:40 +0000 | [diff] [blame] | 673 |   to load extension modules and now provides the dl module. As a result, | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 674 |   sys.setdlopenflags() now works correctly on these systems. (SF patch | 
| Anthony Baxter | 8220174 | 2006-04-09 15:07:40 +0000 | [diff] [blame] | 675 |   #1454844) | 
 | 676 |  | 
| Phillip J. Eby | 51dd7d9 | 2006-04-11 01:21:31 +0000 | [diff] [blame] | 677 | - Patch #1463867: enhanced garbage collection to allow cleanup of cycles | 
 | 678 |   involving generators that have paused outside of any ``try`` or ``with`` | 
 | 679 |   blocks.  (In 2.5a1, a paused generator that was part of a reference | 
 | 680 |   cycle could not be garbage collected, regardless of whether it was | 
 | 681 |   paused in a ``try`` or ``with`` block.) | 
| Anthony Baxter | 8220174 | 2006-04-09 15:07:40 +0000 | [diff] [blame] | 682 |  | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 683 | Extension Modules | 
 | 684 | ----------------- | 
 | 685 |  | 
| Martin v. Löwis | 7e75f1a | 2006-04-15 08:35:59 +0000 | [diff] [blame] | 686 | - Patch #1191065: Fix preprocessor problems on systems where recvfrom | 
 | 687 |   is a macro. | 
 | 688 |  | 
| Georg Brandl | bbfe4fa | 2006-04-11 06:47:43 +0000 | [diff] [blame] | 689 | - Bug #1467952: os.listdir() now correctly raises an error if readdir() | 
 | 690 |   fails with an error condition. | 
 | 691 |  | 
| Gregory P. Smith | 3adc4aa | 2006-04-13 19:19:01 +0000 | [diff] [blame] | 692 | - Fixed bsddb.db.DBError derived exceptions so they can be unpickled. | 
 | 693 |  | 
 | 694 | - Bug #1117761: bsddb.*open() no longer raises an exception when using | 
 | 695 |   the cachesize parameter. | 
 | 696 |  | 
 | 697 | - Bug #1149413: bsddb.*open() no longer raises an exception when using | 
 | 698 |   a temporary db (file=None) with the 'n' flag to truncate on open. | 
 | 699 |  | 
 | 700 | - Bug #1332852: bsddb module minimum BerkeleyDB version raised to 3.3 | 
 | 701 |   as older versions cause excessive test failures. | 
| Gregory P. Smith | 7f5b6f4 | 2006-04-08 07:10:51 +0000 | [diff] [blame] | 702 |  | 
| Armin Rigo | a9017c3 | 2006-04-19 11:50:27 +0000 | [diff] [blame] | 703 | - Patch #1062014: AF_UNIX sockets under Linux have a special | 
 | 704 |   abstract namespace that is now fully supported. | 
 | 705 |  | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 706 | Library | 
 | 707 | ------- | 
 | 708 |  | 
| Peter Astrand | 7d1d436 | 2006-07-14 14:04:45 +0000 | [diff] [blame] | 709 | - Bug #1223937: subprocess.CalledProcessError reports the exit status | 
 | 710 |   of the process using the returncode attribute, instead of | 
 | 711 |   abusing errno. | 
 | 712 |  | 
| Tim Peters | 711bf30 | 2006-04-25 03:31:36 +0000 | [diff] [blame] | 713 | - Patch #1475231: ``doctest`` has a new ``SKIP`` option, which causes | 
 | 714 |   a doctest to be skipped (the code is not run, and the expected output | 
 | 715 |   or exception is ignored). | 
 | 716 |  | 
| Nick Coghlan | da2268f | 2006-04-24 04:37:15 +0000 | [diff] [blame] | 717 | - Fixed contextlib.nested to cope with exceptions being raised and | 
 | 718 |   caught inside exit handlers. | 
 | 719 |  | 
| Greg Ward | ab05edc | 2006-04-23 03:47:58 +0000 | [diff] [blame] | 720 | - Updated optparse module to Optik 1.5.1 (allow numeric constants in | 
 | 721 |   hex, octal, or binary; add ``append_const`` action; keep going if | 
 | 722 |   gettext cannot be imported; added ``OptionParser.destroy()`` method; | 
 | 723 |   added ``epilog`` for better help generation). | 
 | 724 |  | 
| Tim Peters | 21fbd57 | 2006-04-21 21:18:10 +0000 | [diff] [blame] | 725 | - Bug #1473760: ``tempfile.TemporaryFile()`` could hang on Windows, when | 
 | 726 |   called from a thread spawned as a side effect of importing a module. | 
 | 727 |  | 
| Phillip J. Eby | 17a35f9 | 2006-04-18 16:45:14 +0000 | [diff] [blame] | 728 | - The pydoc module now supports documenting packages contained in | 
 | 729 |   .zip or .egg files. | 
 | 730 |  | 
 | 731 | - The pkgutil module now has several new utility functions, such | 
 | 732 |   as ``walk_packages()`` to support working with packages that are either | 
 | 733 |   in the filesystem or zip files. | 
 | 734 |  | 
| Andrew M. Kuchling | 1da4a94 | 2006-04-22 02:32:43 +0000 | [diff] [blame] | 735 | - The mailbox module can now modify and delete messages from | 
 | 736 |   mailboxes, in addition to simply reading them.  Thanks to Gregory | 
 | 737 |   K. Johnson for writing the code, and to the 2005 Google Summer of | 
 | 738 |   Code for funding his work. | 
| Phillip J. Eby | 17a35f9 | 2006-04-18 16:45:14 +0000 | [diff] [blame] | 739 |  | 
| Tim Peters | c7605f2 | 2006-04-17 21:12:33 +0000 | [diff] [blame] | 740 | - The ``__del__`` method of class ``local`` in module ``_threading_local`` | 
 | 741 |   returned before accomplishing any of its intended cleanup. | 
 | 742 |  | 
| Martin v. Löwis | bd30f52 | 2006-04-17 17:08:37 +0000 | [diff] [blame] | 743 | - Patch #790710: Add breakpoint command lists in pdb. | 
 | 744 |  | 
| Martin v. Löwis | 0db2a98 | 2006-04-16 20:55:38 +0000 | [diff] [blame] | 745 | - Patch #1063914: Add Tkinter.Misc.clipboard_get(). | 
 | 746 |  | 
| Martin v. Löwis | 4b501e6 | 2006-04-15 08:41:11 +0000 | [diff] [blame] | 747 | - Patch #1191700: Adjust column alignment in bdb breakpoint lists. | 
 | 748 |  | 
| Anthony Baxter | e29002c | 2006-04-12 12:07:31 +0000 | [diff] [blame] | 749 | - SimpleXMLRPCServer relied on the fcntl module, which is unavailable on | 
 | 750 |   Windows. Bug #1469163. | 
 | 751 |  | 
| Phillip J. Eby | 4703211 | 2006-04-11 01:07:43 +0000 | [diff] [blame] | 752 | - The warnings, linecache, inspect, traceback, site, and doctest modules | 
 | 753 |   were updated to work correctly with modules imported from zipfiles or | 
 | 754 |   via other PEP 302 __loader__ objects. | 
 | 755 |  | 
| Martin v. Löwis | 17de8ff | 2006-04-10 15:55:37 +0000 | [diff] [blame] | 756 | - Patch #1467770: Reduce usage of subprocess._active to processes which | 
 | 757 |   the application hasn't waited on. | 
 | 758 |  | 
| Martin v. Löwis | b04dee9 | 2006-04-10 08:34:21 +0000 | [diff] [blame] | 759 | - Patch #1462222: Fix Tix.Grid. | 
 | 760 |  | 
| Neal Norwitz | a31bf18 | 2006-04-09 03:35:43 +0000 | [diff] [blame] | 761 | - Fix exception when doing glob.glob('anything*/') | 
 | 762 |  | 
| Skip Montanaro | 262fb92 | 2006-04-21 02:31:07 +0000 | [diff] [blame] | 763 | - The pstats.Stats class accepts an optional stream keyword argument to | 
 | 764 |   direct output to an alternate file-like object. | 
 | 765 |  | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 766 | Build | 
 | 767 | ----- | 
 | 768 |  | 
| Martin v. Löwis | 4be4e65 | 2006-04-17 19:25:49 +0000 | [diff] [blame] | 769 | - The Makefile now has a reindent target, which runs reindent.py on | 
 | 770 |   the library. | 
 | 771 |  | 
| Martin v. Löwis | 48bbaf2 | 2006-04-15 18:06:54 +0000 | [diff] [blame] | 772 | - Patch #1470875: Building Python with MS Free Compiler | 
 | 773 |  | 
| Martin v. Löwis | c90b17e | 2006-04-15 08:13:05 +0000 | [diff] [blame] | 774 | - Patch #1161914: Add a python-config script. | 
| Martin v. Löwis | 48bbaf2 | 2006-04-15 18:06:54 +0000 | [diff] [blame] | 775 |  | 
| Martin v. Löwis | 0f48d98 | 2006-04-14 14:34:26 +0000 | [diff] [blame] | 776 | - Patch #1324762:Remove ccpython.cc; replace --with-cxx with | 
 | 777 |   --with-cxx-main. Link with C++ compiler only if --with-cxx-main was | 
| Andrew M. Kuchling | db4018f | 2006-04-14 14:54:18 +0000 | [diff] [blame] | 778 |   specified. (Can be overridden by explicitly setting LINKCC.) Decouple | 
| Martin v. Löwis | 0f48d98 | 2006-04-14 14:34:26 +0000 | [diff] [blame] | 779 |   CXX from --with-cxx-main, see description in README. | 
 | 780 |  | 
| Martin v. Löwis | 10acfd0 | 2006-04-10 12:39:36 +0000 | [diff] [blame] | 781 | - Patch #1429775: Link extension modules with the shared libpython. | 
 | 782 |  | 
| Hye-Shik Chang | f4795c8 | 2006-04-26 19:20:26 +0000 | [diff] [blame] | 783 | - Fixed a libffi build problem on MIPS systems. | 
 | 784 |  | 
| Tim Peters | 8931ff1 | 2006-05-13 23:28:20 +0000 | [diff] [blame] | 785 | - ``PyString_FromFormat``, ``PyErr_Format``, and ``PyString_FromFormatV`` | 
 | 786 |   now accept formats "%u" for unsigned ints, "%lu" for unsigned longs, | 
 | 787 |   and "%zu" for unsigned integers of type ``size_t``. | 
 | 788 |  | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 789 | Tests | 
 | 790 | ----- | 
 | 791 |  | 
| Nick Coghlan | da2268f | 2006-04-24 04:37:15 +0000 | [diff] [blame] | 792 | - test_contextlib now checks contextlib.nested can cope with exceptions | 
 | 793 |   being raised and caught inside exit handlers. | 
 | 794 |  | 
| Nick Coghlan | 27ec1a7 | 2006-04-24 04:32:47 +0000 | [diff] [blame] | 795 | - test_cmd_line now checks operation of the -m and -c command switches | 
 | 796 |  | 
| Phillip J. Eby | 51dd7d9 | 2006-04-11 01:21:31 +0000 | [diff] [blame] | 797 | - The test_contextlib test in 2.5a1 wasn't actually run unless you ran | 
 | 798 |   it separately and by hand.  It also wasn't cleaning up its changes to | 
 | 799 |   the current Decimal context. | 
 | 800 |  | 
| Thomas Wouters | abd0888 | 2006-04-26 15:53:30 +0000 | [diff] [blame] | 801 | - regrtest.py now has a -M option to run tests that test the new limits of | 
 | 802 |   containers, on 64-bit architectures. Running these tests is only sensible | 
 | 803 |   on 64-bit machines with more than two gigabytes of memory. The argument | 
 | 804 |   passed is the maximum amount of memory for the tests to use. | 
 | 805 |  | 
| Marc-André Lemburg | d0b8e83 | 2006-04-19 15:48:59 +0000 | [diff] [blame] | 806 | Tools | 
 | 807 | ----- | 
 | 808 |  | 
 | 809 | - Added the Python benchmark suite pybench to the Tools/ directory; | 
 | 810 |   contributed by Marc-Andre Lemburg. | 
| Phillip J. Eby | 51dd7d9 | 2006-04-11 01:21:31 +0000 | [diff] [blame] | 811 |  | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 812 | Documentation | 
 | 813 | ------------- | 
 | 814 |  | 
| Tim Peters | b06d28c | 2006-05-12 01:57:59 +0000 | [diff] [blame] | 815 | - Patch #1473132: Improve docs for ``tp_clear`` and ``tp_traverse``. | 
 | 816 |  | 
| Nick Coghlan | c195d8a | 2006-04-24 03:04:43 +0000 | [diff] [blame] | 817 | - PEP 343: Added Context Types section to the library reference | 
 | 818 |   and attempted to bring other PEP 343 related documentation into | 
 | 819 |   line with the implementation and/or python-dev discussions. | 
 | 820 |  | 
| Tim Peters | 8dc73d2 | 2006-04-24 02:03:16 +0000 | [diff] [blame] | 821 | - Bug #1337990: clarified that ``doctest`` does not support examples | 
 | 822 |   requiring both expected output and an exception. | 
| Anthony Baxter | 51bcb68 | 2006-04-05 14:51:42 +0000 | [diff] [blame] | 823 |  | 
 | 824 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 825 | What's New in Python 2.5 alpha 1? | 
 | 826 | ================================= | 
 | 827 |  | 
| Anthony Baxter | ebed3f6 | 2006-04-03 15:03:44 +0000 | [diff] [blame] | 828 | *Release date: 05-APR-2006* | 
| Anthony Baxter | 12b6f6c | 2005-03-29 13:36:16 +0000 | [diff] [blame] | 829 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 830 | Core and builtins | 
 | 831 | ----------------- | 
 | 832 |  | 
| Nick Coghlan | 4383230 | 2006-04-23 17:04:07 +0000 | [diff] [blame] | 833 | - PEP 338: -m command line switch now delegates to runpy.run_module | 
 | 834 |   allowing it to support modules in packages and zipfiles | 
 | 835 |  | 
| Martin v. Löwis | c661b88 | 2006-04-20 04:54:23 +0000 | [diff] [blame] | 836 | - On Windows, .DLL is not an accepted file name extension for | 
 | 837 |   extension modules anymore; extensions are only found if they | 
 | 838 |   end in .PYD. | 
 | 839 |  | 
| Martin v. Löwis | ea62d25 | 2006-04-03 10:56:49 +0000 | [diff] [blame] | 840 | - Bug #1421664: sys.stderr.encoding is now set to the same value as | 
 | 841 |   sys.stdout.encoding. | 
 | 842 |  | 
| Neal Norwitz | 92e212f | 2006-04-03 04:48:37 +0000 | [diff] [blame] | 843 | - __import__ accepts keyword arguments. | 
 | 844 |  | 
| Georg Brandl | ccadf84 | 2006-03-31 18:54:53 +0000 | [diff] [blame] | 845 | - Patch #1460496: round() now accepts keyword arguments. | 
 | 846 |  | 
| Anthony Baxter | 262c00a | 2006-03-30 10:53:17 +0000 | [diff] [blame] | 847 | - Fixed bug #1459029 - unicode reprs were double-escaped. | 
 | 848 |  | 
| Hye-Shik Chang | d478f34 | 2006-03-23 12:32:36 +0000 | [diff] [blame] | 849 | - Patch #1396919: The system scope threads are reenabled on FreeBSD | 
 | 850 |   5.4 and later versions. | 
 | 851 |  | 
| Neal Norwitz | e98ccf6 | 2006-03-23 05:39:47 +0000 | [diff] [blame] | 852 | - Bug #1115379: Compiling a Unicode string with an encoding declaration | 
 | 853 |   now gives a SyntaxError. | 
 | 854 |  | 
| Georg Brandl | abd1ff8 | 2006-03-18 07:59:59 +0000 | [diff] [blame] | 855 | - Previously, Python code had no easy way to access the contents of a | 
 | 856 |   cell object. Now, a ``cell_contents`` attribute has been added | 
 | 857 |   (closes patch #1170323). | 
 | 858 |  | 
| Tim Peters | cf79aac | 2006-03-16 01:14:46 +0000 | [diff] [blame] | 859 | - Patch #1123430: Python's small-object allocator now returns an arena to | 
 | 860 |   the system ``free()`` when all memory within an arena becomes unused | 
 | 861 |   again.  Prior to Python 2.5, arenas (256KB chunks of memory) were never | 
 | 862 |   freed.  Some applications will see a drop in virtual memory size now, | 
 | 863 |   especially long-running applications that, from time to time, temporarily | 
 | 864 |   use a large number of small objects.  Note that when Python returns an | 
 | 865 |   arena to the platform C's ``free()``, there's no guarantee that the | 
| Andrew M. Kuchling | 1da4a94 | 2006-04-22 02:32:43 +0000 | [diff] [blame] | 866 |   platform C library will in turn return that memory to the operating system. | 
 | 867 |   The effect of the patch is to stop making that impossible, and in tests it | 
| Tim Peters | cf79aac | 2006-03-16 01:14:46 +0000 | [diff] [blame] | 868 |   appears to be effective at least on Microsoft C and gcc-based systems. | 
 | 869 |   Thanks to Evan Jones for hard work and patience. | 
 | 870 |  | 
| Georg Brandl | 533ff6f | 2006-03-08 18:09:27 +0000 | [diff] [blame] | 871 | - Patch #1434038: property() now uses the getter's docstring if there is | 
 | 872 |   no "doc" argument given. This makes it possible to legitimately use | 
 | 873 |   property() as a decorator to produce a read-only property. | 
 | 874 |  | 
| Guido van Rossum | 9aa37ab | 2006-03-07 18:54:08 +0000 | [diff] [blame] | 875 | - PEP 357, patch 1436368: add an __index__ method to int/long and a matching | 
 | 876 |   nb_index slot to the PyNumberMethods struct.  The slot is consulted instead | 
 | 877 |   of requiring an int or long in slicing and a few other contexts, enabling | 
 | 878 |   other objects (e.g. Numeric Python's integers) to be used as slice indices. | 
 | 879 |  | 
| Neal Norwitz | 995acdf | 2006-03-07 05:01:00 +0000 | [diff] [blame] | 880 | - Fixed various bugs reported by Coverity's Prevent tool. | 
 | 881 |  | 
| Brett Cannon | bf36409 | 2006-03-01 04:25:17 +0000 | [diff] [blame] | 882 | - PEP 352, patch #1104669: Make exceptions new-style objects.  Introduced the | 
 | 883 |   new exception base class, BaseException, which has a new message attribute. | 
 | 884 |   KeyboardInterrupt and SystemExit to directly inherit from BaseException now. | 
 | 885 |   Raising a string exception now raises a DeprecationWarning. | 
 | 886 |  | 
| Thomas Wouters | fb609f4 | 2006-02-28 16:37:25 +0000 | [diff] [blame] | 887 | - Patch #1438387, PEP 328: relative and absolute imports. Imports can now be | 
 | 888 |   explicitly relative, using 'from .module import name' to mean 'from the same | 
 | 889 |   package as this module is in. Imports without dots still default to the | 
 | 890 |   old relative-then-absolute, unless 'from __future__ import | 
 | 891 |   absolute_import' is used. | 
 | 892 |  | 
| Brett Cannon | a7446e3 | 2006-02-27 23:39:10 +0000 | [diff] [blame] | 893 | - Properly check if 'warnings' raises an exception (usually when a filter set | 
 | 894 |   to "error" is triggered) when raising a warning for raising string | 
 | 895 |   exceptions. | 
 | 896 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 897 | - CO_GENERATOR_ALLOWED is no longer defined. This behavior is the default. | 
| Neal Norwitz | 0023a2f | 2006-02-27 23:24:48 +0000 | [diff] [blame] | 898 |   The name was removed from Include/code.h. | 
 | 899 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 900 | - PEP 308: conditional expressions were added: (x if cond else y). | 
| Neal Norwitz | eb65125 | 2006-02-27 16:47:12 +0000 | [diff] [blame] | 901 |  | 
| Guido van Rossum | 1968ad3 | 2006-02-25 22:38:04 +0000 | [diff] [blame] | 902 | - Patch 1433928: | 
 | 903 |   - The copy module now "copies" function objects (as atomic objects). | 
 | 904 |   - dict.__getitem__ now looks for a __missing__ hook before raising | 
 | 905 |     KeyError. | 
 | 906 |  | 
| Tim Peters | 84ef21c | 2006-02-28 20:39:06 +0000 | [diff] [blame] | 907 | - PEP 343: with statement implemented. Needs ``from __future__ import | 
 | 908 |   with_statement``. Use of 'with' as a variable will generate a warning. | 
 | 909 |   Use of 'as' as a variable will also generate a warning (unless it's | 
| Neal Norwitz | 055ec24 | 2006-02-28 20:06:49 +0000 | [diff] [blame] | 910 |   part of an import statement). | 
| Guido van Rossum | 1a5e21e | 2006-02-28 21:57:43 +0000 | [diff] [blame] | 911 |   The following objects have __context__ methods: | 
 | 912 |   - The built-in file type. | 
 | 913 |   - The thread.LockType type. | 
 | 914 |   - The following types defined by the threading module: | 
 | 915 |     Lock, RLock, Condition, Semaphore, BoundedSemaphore. | 
 | 916 |   - The decimal.Context class. | 
| Guido van Rossum | c2e2074 | 2006-02-27 22:32:47 +0000 | [diff] [blame] | 917 |  | 
| Marc-André Lemburg | fe4b34c | 2006-02-19 15:22:22 +0000 | [diff] [blame] | 918 | - Fix the encodings package codec search function to only search | 
 | 919 |   inside its own package. Fixes problem reported in patch #1433198. | 
 | 920 |  | 
 | 921 |   Note: Codec packages should implement and register their own | 
 | 922 |   codec search function. PEP 100 has the details. | 
 | 923 |  | 
| Tim Peters | 9ea89d2 | 2006-06-04 03:26:02 +0000 | [diff] [blame] | 924 | - PEP 353: Using ``Py_ssize_t`` as the index type. | 
 | 925 |  | 
 | 926 | - ``PYMALLOC_DEBUG`` builds now add ``4*sizeof(size_t)`` bytes of debugging | 
 | 927 |   info to each allocated block, since the ``Py_ssize_t`` changes (PEP 353) | 
 | 928 |   now allow Python to make use of memory blocks exceeding 2**32 bytes for | 
 | 929 |   some purposes on 64-bit boxes.  A ``PYMALLOC_DEBUG`` build was limited | 
 | 930 |   to 4-byte allocations before. | 
| Martin v. Löwis | 18e1655 | 2006-02-15 17:27:45 +0000 | [diff] [blame] | 931 |  | 
| Neal Norwitz | fc76d63 | 2006-01-10 06:03:13 +0000 | [diff] [blame] | 932 | - Patch #1400181, fix unicode string formatting to not use the locale. | 
 | 933 |   This is how string objects work.  u'%f' could use , instead of . | 
 | 934 |   for the decimal point.  Now both strings and unicode always use periods. | 
 | 935 |  | 
| Neal Norwitz | 671b9e3 | 2006-01-09 07:07:12 +0000 | [diff] [blame] | 936 | - Bug #1244610, #1392915, fix build problem on OpenBSD 3.7 and 3.8. | 
 | 937 |   configure would break checking curses.h. | 
 | 938 |  | 
| Georg Brandl | cd4d1e8 | 2005-12-27 17:37:07 +0000 | [diff] [blame] | 939 | - Bug #959576: The pwd module is now builtin. This allows Python to be | 
 | 940 |   built on UNIX platforms without $HOME set. | 
 | 941 |  | 
| Neal Norwitz | c10978f | 2005-12-19 06:07:16 +0000 | [diff] [blame] | 942 | - Bug #1072182, fix some potential problems if characters are signed. | 
 | 943 |  | 
| Neal Norwitz | 5d0ad50 | 2005-12-19 04:27:42 +0000 | [diff] [blame] | 944 | - Bug #889500, fix line number on SyntaxWarning for global declarations. | 
 | 945 |  | 
| Neal Norwitz | db83eb3 | 2005-12-18 05:29:30 +0000 | [diff] [blame] | 946 | - Bug #1378022, UTF-8 files with a leading BOM crashed the interpreter. | 
 | 947 |  | 
| Neal Norwitz | e7214a1 | 2005-12-18 05:03:17 +0000 | [diff] [blame] | 948 | - Support for converting hex strings to floats no longer works. | 
 | 949 |   This was not portable.  float('0x3') now raises a ValueError. | 
 | 950 |  | 
| Barry Warsaw | 2a38a86 | 2005-12-18 01:27:35 +0000 | [diff] [blame] | 951 | - Patch #1382163: Expose Subversion revision number to Python.  New C API | 
| Barry Warsaw | d3c38ff | 2006-03-07 09:46:03 +0000 | [diff] [blame] | 952 |   function Py_GetBuildNumber().  New attribute sys.subversion.  Build number | 
| Barry Warsaw | 2a38a86 | 2005-12-18 01:27:35 +0000 | [diff] [blame] | 953 |   is now displayed in interactive prompt banner. | 
 | 954 |  | 
| Georg Brandl | fa16668 | 2005-12-17 21:45:17 +0000 | [diff] [blame] | 955 | - Implementation of PEP 341 - Unification of try/except and try/finally. | 
 | 956 |   "except" clauses can now be written together with a "finally" clause in | 
| Neal Norwitz | 11ca77e | 2005-12-17 22:24:12 +0000 | [diff] [blame] | 957 |   one try statement instead of two nested ones.  Patch #1355913. | 
| Georg Brandl | fa16668 | 2005-12-17 21:45:17 +0000 | [diff] [blame] | 958 |  | 
| Hye-Shik Chang | 835b243 | 2005-12-17 04:38:31 +0000 | [diff] [blame] | 959 | - Bug #1379994: Builtin unicode_escape and raw_unicode_escape codec | 
 | 960 |   now encodes backslash correctly. | 
 | 961 |  | 
| Martin v. Löwis | b45b315 | 2005-11-28 17:34:23 +0000 | [diff] [blame] | 962 | - Patch #1350409: Work around signal handling bug in Visual Studio 2005. | 
 | 963 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 964 | - Bug #1281408: Py_BuildValue now works correctly even with unsigned longs | 
| Georg Brandl | f06e30a | 2005-11-24 15:37:42 +0000 | [diff] [blame] | 965 |   and long longs. | 
 | 966 |  | 
| Neal Norwitz | 67715f0 | 2005-11-09 06:59:35 +0000 | [diff] [blame] | 967 | - SF Bug #1350188, "setdlopenflags" leads to crash upon "import" | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 968 |   It was possible for dlerror() to return a NULL pointer, so | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 969 |   it will now use a default error message in this case. | 
| Neal Norwitz | 67715f0 | 2005-11-09 06:59:35 +0000 | [diff] [blame] | 970 |  | 
| Marc-André Lemburg | a5bafc4 | 2005-10-23 13:43:40 +0000 | [diff] [blame] | 971 | - Replaced most Unicode charmap codecs with new ones using the | 
 | 972 |   new Unicode translate string feature in the builtin charmap | 
 | 973 |   codec; the codecs were created from the mapping tables available | 
 | 974 |   at ftp.unicode.org and contain a few updates (e.g. the Mac OS | 
 | 975 |   encodings now include a mapping for the Apple logo) | 
 | 976 |  | 
| Tim Peters | e3547fd | 2005-12-16 23:13:57 +0000 | [diff] [blame] | 977 | - Added a few more codecs for Mac OS encodings | 
| Marc-André Lemburg | a5bafc4 | 2005-10-23 13:43:40 +0000 | [diff] [blame] | 978 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 979 | - Sped up some Unicode operations. | 
| Neal Norwitz | fed9b3e | 2005-10-21 06:32:02 +0000 | [diff] [blame] | 980 |  | 
| Martin v. Löwis | bd260da | 2006-02-26 19:42:26 +0000 | [diff] [blame] | 981 | - A new AST parser implementation was completed. The abstract | 
 | 982 |   syntax tree is available for read-only (non-compile) access | 
| Martin v. Löwis | 577b5b9 | 2006-02-27 15:23:19 +0000 | [diff] [blame] | 983 |   to Python code; an _ast module was added. | 
| Neal Norwitz | fed9b3e | 2005-10-21 06:32:02 +0000 | [diff] [blame] | 984 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 985 | - SF bug #1167751: fix incorrect code being produced for generator expressions. | 
| Neal Norwitz | 16af734 | 2005-10-21 06:25:33 +0000 | [diff] [blame] | 986 |   The following code now raises a SyntaxError:  foo(a = i for i in range(10)) | 
 | 987 |  | 
| Neal Norwitz | 708e51a | 2005-10-03 04:48:15 +0000 | [diff] [blame] | 988 | - SF Bug #976608: fix SystemError when mtime of an imported file is -1. | 
 | 989 |  | 
| Neal Norwitz | 11bd119 | 2005-10-03 00:54:56 +0000 | [diff] [blame] | 990 | - SF Bug #887946: fix segfault when redirecting stdin from a directory. | 
 | 991 |   Provide a warning when a directory is passed on the command line. | 
 | 992 |  | 
| Neal Norwitz | 40d3781 | 2005-10-02 01:48:49 +0000 | [diff] [blame] | 993 | - Fix segfault with invalid coding. | 
 | 994 |  | 
 | 995 | - SF bug #772896: unknown encoding results in MemoryError. | 
 | 996 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 997 | - All iterators now have a Boolean value of True.  Formerly, some iterators | 
| Raymond Hettinger | 6b27cda | 2005-09-24 21:23:05 +0000 | [diff] [blame] | 998 |   supported a __len__() method which evaluated to False when the iterator | 
 | 999 |   was empty. | 
 | 1000 |  | 
| Guido van Rossum | 630db60 | 2005-09-20 18:49:54 +0000 | [diff] [blame] | 1001 | - On 64-bit platforms, when __len__() returns a value that cannot be | 
 | 1002 |   represented as a C int, raise OverflowError. | 
 | 1003 |  | 
| Skip Montanaro | f8948ca | 2005-09-19 03:54:46 +0000 | [diff] [blame] | 1004 | - test__locale is skipped on OS X < 10.4 (only partial locale support is | 
| Walter Dörwald | 6611a8b | 2005-10-09 19:28:35 +0000 | [diff] [blame] | 1005 |   present). | 
| Skip Montanaro | f8948ca | 2005-09-19 03:54:46 +0000 | [diff] [blame] | 1006 |  | 
| Georg Brandl | 80bbf3f | 2005-09-14 19:38:29 +0000 | [diff] [blame] | 1007 | - SF bug #893549: parsing keyword arguments was broken with a few format | 
 | 1008 |   codes. | 
 | 1009 |  | 
| Guido van Rossum | 8ee3e5a | 2005-09-14 18:09:42 +0000 | [diff] [blame] | 1010 | - Changes donated by Elemental Security to make it work on AIX 5.3 | 
 | 1011 |   with IBM's 64-bit compiler (SF patch #1284289).  This also closes SF | 
 | 1012 |   bug #105470: test_pwd fails on 64bit system (Opteron). | 
 | 1013 |  | 
| Guido van Rossum | 539c662 | 2005-09-14 17:49:54 +0000 | [diff] [blame] | 1014 | - Changes donated by Elemental Security to make it work on HP-UX 11 on | 
 | 1015 |   Itanium2 with HP's 64-bit compiler (SF patch #1225212). | 
 | 1016 |  | 
| Georg Brandl | 4550b8d | 2005-08-26 06:43:52 +0000 | [diff] [blame] | 1017 | - Disallow keyword arguments for type constructors that don't use them | 
| Georg Brandl | 02c4287 | 2005-08-26 06:42:30 +0000 | [diff] [blame] | 1018 |   (fixes bug #1119418). | 
 | 1019 |  | 
| Martin v. Löwis | d35edda | 2005-08-24 08:39:24 +0000 | [diff] [blame] | 1020 | - Forward UnicodeDecodeError into SyntaxError for source encoding errors. | 
 | 1021 |  | 
| Barry Warsaw | e2eca0b | 2005-08-15 18:14:19 +0000 | [diff] [blame] | 1022 | - SF bug #900092: When tracing (e.g. for hotshot), restore 'return' events for | 
 | 1023 |   exceptions that cause a function to exit. | 
 | 1024 |  | 
| Raymond Hettinger | 9f1a679 | 2005-07-31 01:16:36 +0000 | [diff] [blame] | 1025 | - The implementation of set() and frozenset() was revised to use its | 
 | 1026 |   own internal data structure.  Memory consumption is reduced by 1/3 | 
 | 1027 |   and there are modest speed-ups as well.  The API is unchanged. | 
 | 1028 |  | 
| Tim Peters | de7990b | 2005-07-17 23:45:23 +0000 | [diff] [blame] | 1029 | - SF bug #1238681:  freed pointer is used in longobject.c:long_pow(). | 
 | 1030 |  | 
| Michael W. Hudson | 0edc7a0 | 2005-07-12 10:21:19 +0000 | [diff] [blame] | 1031 | - SF bug #1229429: PyObject_CallMethod failed to decrement some | 
 | 1032 |   reference counts in some error exit cases. | 
 | 1033 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1034 | - SF bug #1185883:  Python's small-object memory allocator took over | 
 | 1035 |   a block managed by the platform C library whenever a realloc specified | 
 | 1036 |   a small new size.  However, there's no portable way to know then how | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 1037 |   much of the address space following the pointer is valid, so there's no | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1038 |   portable way to copy data from the C-managed block into Python's | 
 | 1039 |   small-object space without risking a memory fault.  Python's small-object | 
 | 1040 |   realloc now leaves such blocks under the control of the platform C | 
 | 1041 |   realloc. | 
 | 1042 |  | 
| Michael W. Hudson | b896381 | 2005-07-05 15:21:58 +0000 | [diff] [blame] | 1043 | - SF bug #1232517: An overflow error was not detected properly when | 
 | 1044 |   attempting to convert a large float to an int in os.utime(). | 
 | 1045 |  | 
| Raymond Hettinger | 3296e69 | 2005-06-29 23:29:56 +0000 | [diff] [blame] | 1046 | - SF bug #1224347: hex longs now print with lowercase letters just | 
 | 1047 |   like their int counterparts. | 
 | 1048 |  | 
| Michael W. Hudson | 188d436 | 2005-06-20 16:52:57 +0000 | [diff] [blame] | 1049 | - SF bug #1163563: the original fix for bug #1010677 ("thread Module | 
 | 1050 |   Breaks PyGILState_Ensure()") broke badly in the case of multiple | 
 | 1051 |   interpreter states; back out that fix and do a better job (see | 
 | 1052 |   http://mail.python.org/pipermail/python-dev/2005-June/054258.html | 
 | 1053 |   for a longer write-up of the problem). | 
 | 1054 |  | 
| Michael W. Hudson | df88846 | 2005-06-03 14:41:55 +0000 | [diff] [blame] | 1055 | - SF patch #1180995: marshal now uses a binary format by default when | 
 | 1056 |   serializing floats. | 
 | 1057 |  | 
| Michael W. Hudson | da85a90 | 2005-06-01 11:34:22 +0000 | [diff] [blame] | 1058 | - SF patch #1181301: on platforms that appear to use IEEE 754 floats, | 
 | 1059 |   the routines that promise to produce IEEE 754 binary representations | 
 | 1060 |   of floats now simply copy bytes around. | 
 | 1061 |  | 
| Skip Montanaro | bbf12ba | 2005-05-20 03:07:06 +0000 | [diff] [blame] | 1062 | - bug #967182: disallow opening files with 'wU' or 'aU' as specified by PEP | 
 | 1063 |   278. | 
 | 1064 |  | 
| Brett Cannon | c3647ac | 2005-04-26 03:45:26 +0000 | [diff] [blame] | 1065 | - patch #1109424: int, long, float, complex, and unicode now check for the | 
 | 1066 |   proper magic slot for type conversions when subclassed.  Previously the | 
 | 1067 |   magic slot was ignored during conversion.  Semantics now match the way | 
 | 1068 |   subclasses of str always behaved.  int/long/float, conversion of an instance | 
| Walter Dörwald | 78a78b0 | 2005-09-01 12:04:29 +0000 | [diff] [blame] | 1069 |   to the base class has been moved to the proper nb_* magic slot and out of | 
| Brett Cannon | c3647ac | 2005-04-26 03:45:26 +0000 | [diff] [blame] | 1070 |   PyNumber_*(). | 
| Neal Norwitz | cfba5f8 | 2006-04-25 05:05:03 +0000 | [diff] [blame] | 1071 |   Thanks Walter D�rwald. | 
| Brett Cannon | c3647ac | 2005-04-26 03:45:26 +0000 | [diff] [blame] | 1072 |  | 
| Barry Warsaw | c8d907c | 2005-04-19 23:43:40 +0000 | [diff] [blame] | 1073 | - Descriptors defined in C with a PyGetSetDef structure, where the setter is | 
 | 1074 |   NULL, now raise an AttributeError when attempting to set or delete the | 
 | 1075 |   attribute.  Previously a TypeError was raised, but this was inconsistent | 
 | 1076 |   with the equivalent pure-Python implementation. | 
 | 1077 |  | 
| Michael W. Hudson | 774479c | 2005-04-18 08:46:17 +0000 | [diff] [blame] | 1078 | - It is now safe to call PyGILState_Release() before | 
 | 1079 |   PyEval_InitThreads() (note that if there is reason to believe there | 
 | 1080 |   are multiple threads around you still must call PyEval_InitThreads() | 
 | 1081 |   before using the Python API; this fix is for extension modules that | 
 | 1082 |   have no way of knowing if Python is multi-threaded yet). | 
 | 1083 |  | 
| Michael W. Hudson | e3afc59 | 2005-04-07 10:11:19 +0000 | [diff] [blame] | 1084 | - Typing Ctrl-C whilst raw_input() was waiting in a build with threads | 
 | 1085 |   disabled caused a crash. | 
 | 1086 |  | 
| Michael W. Hudson | b330adf | 2005-03-31 09:35:44 +0000 | [diff] [blame] | 1087 | - Bug #1165306: instancemethod_new allowed the creation of a method | 
 | 1088 |   with im_class == im_self == NULL, which caused a crash when called. | 
 | 1089 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1090 | - Move exception finalisation later in the shutdown process - this | 
| Anthony Baxter | 12b6f6c | 2005-03-29 13:36:16 +0000 | [diff] [blame] | 1091 |   fixes the crash seen in bug #1165761 | 
 | 1092 |  | 
| Raymond Hettinger | 96229b1 | 2005-03-11 06:49:40 +0000 | [diff] [blame] | 1093 | - Added two new builtins, any() and all(). | 
 | 1094 |  | 
| Brett Cannon | 409d8f2 | 2005-03-05 06:47:57 +0000 | [diff] [blame] | 1095 | - Defining a class with empty parentheses is now allowed | 
| Brett Cannon | f418991 | 2005-04-09 02:30:16 +0000 | [diff] [blame] | 1096 |   (e.g., ``class C(): pass`` is no longer a syntax error). | 
 | 1097 |   Patch #1176012 added support to the 'parser' module and 'compiler' package | 
 | 1098 |   (thanks to logistix for that added support). | 
| Brett Cannon | 409d8f2 | 2005-03-05 06:47:57 +0000 | [diff] [blame] | 1099 |  | 
| Martin v. Löwis | 96d743e | 2005-03-03 23:00:26 +0000 | [diff] [blame] | 1100 | - Patch #1115086: Support PY_LONGLONG in structmember. | 
 | 1101 |  | 
| Raymond Hettinger | b67cc80 | 2005-03-03 16:45:19 +0000 | [diff] [blame] | 1102 | - Bug #1155938: new style classes did not check that __init__() was | 
 | 1103 |   returning None. | 
 | 1104 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1105 | - Patch #802188: Report characters after line continuation character | 
| Martin v. Löwis | 4bf108d | 2005-03-03 11:45:45 +0000 | [diff] [blame] | 1106 |   ('\') with a specific error message. | 
 | 1107 |  | 
| Martin v. Löwis | ff232d7 | 2005-03-03 09:24:38 +0000 | [diff] [blame] | 1108 | - Bug #723201: Raise a TypeError for passing bad objects to 'L' format. | 
 | 1109 |  | 
| Michael W. Hudson | 8e1afab | 2005-02-17 14:55:21 +0000 | [diff] [blame] | 1110 | - Bug #1124295: the __name__ attribute of file objects was | 
 | 1111 |   inadvertently made inaccessible in restricted mode. | 
 | 1112 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1113 | - Bug #1074011: closing sys.std{out,err} now causes a flush() and | 
| Martin v. Löwis | 8e3ca8a | 2005-01-23 09:41:49 +0000 | [diff] [blame] | 1114 |   an ferror() call. | 
 | 1115 |  | 
| Raymond Hettinger | 3b0c7c2 | 2004-12-03 08:30:39 +0000 | [diff] [blame] | 1116 | - min() and max() now support key= arguments with the same meaning as in | 
 | 1117 |   list.sort(). | 
 | 1118 |  | 
| Raymond Hettinger | c34f867 | 2005-01-02 06:17:33 +0000 | [diff] [blame] | 1119 | - The peephole optimizer now performs simple constant folding in expressions: | 
 | 1120 |       (2+3) --> (5). | 
 | 1121 |  | 
| Raymond Hettinger | a422c34 | 2005-01-11 03:03:27 +0000 | [diff] [blame] | 1122 | - set and frozenset objects can now be marshalled.  SF #1098985. | 
 | 1123 |  | 
| Michael W. Hudson | faa7648 | 2005-01-31 17:09:25 +0000 | [diff] [blame] | 1124 | - Bug #1077106: Poor argument checking could cause memory corruption | 
 | 1125 |   in calls to os.read(). | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1126 |  | 
| Jeremy Hylton | ab63050 | 2005-02-04 18:44:06 +0000 | [diff] [blame] | 1127 | - The parser did not complain about future statements in illegal | 
 | 1128 |   positions.  It once again reports a syntax error if a future | 
 | 1129 |   statement occurs after anything other than a doc string. | 
 | 1130 |  | 
| Neil Schemenauer | cf52c07 | 2005-08-12 17:34:58 +0000 | [diff] [blame] | 1131 | - Change the %s format specifier for str objects so that it returns a | 
 | 1132 |   unicode instance if the argument is not an instance of basestring and | 
 | 1133 |   calling __str__ on the argument returns a unicode instance. | 
 | 1134 |  | 
| Tim Peters | f4e6928 | 2006-02-27 17:15:31 +0000 | [diff] [blame] | 1135 | - Patch #1413181:  changed ``PyThreadState_Delete()`` to forget about the | 
 | 1136 |   current thread state when the auto-GIL-state machinery knows about | 
 | 1137 |   it (since the thread state is being deleted, continuing to remember it | 
 | 1138 |   can't help, but can hurt if another thread happens to get created with | 
 | 1139 |   the same thread id). | 
 | 1140 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1141 | Extension Modules | 
 | 1142 | ----------------- | 
 | 1143 |  | 
| Georg Brandl | 43f08a8 | 2006-03-31 18:01:16 +0000 | [diff] [blame] | 1144 | - Patch #1380952: fix SSL objects timing out on consecutive read()s | 
 | 1145 |  | 
| Neal Norwitz | 05a4559 | 2006-03-20 06:30:08 +0000 | [diff] [blame] | 1146 | - Patch #1309579: wait3 and wait4 were added to the posix module. | 
 | 1147 |  | 
| Anthony Baxter | fa86907 | 2006-03-20 05:21:58 +0000 | [diff] [blame] | 1148 | - Patch #1231053: The audioop module now supports encoding/decoding of alaw. | 
 | 1149 |   In addition, the existing ulaw code was updated. | 
 | 1150 |  | 
| Georg Brandl | bc45a3f | 2006-03-17 19:17:34 +0000 | [diff] [blame] | 1151 | - RFE #567972: Socket objects' family, type and proto properties are | 
| Georg Brandl | 72d7a78 | 2006-03-22 06:44:14 +0000 | [diff] [blame] | 1152 |   now exposed via new attributes. | 
| Georg Brandl | bc45a3f | 2006-03-17 19:17:34 +0000 | [diff] [blame] | 1153 |  | 
| Neal Norwitz | 10be10c | 2006-03-16 06:50:13 +0000 | [diff] [blame] | 1154 | - Everything under lib-old was removed.  This includes the following modules: | 
 | 1155 |     Para, addpack, cmp, cmpcache, codehack, dircmp, dump, find, fmt, grep, | 
| Tim Peters | c9d78aa | 2006-03-26 23:27:58 +0000 | [diff] [blame] | 1156 |     lockfile, newdir, ni, packmail, poly, rand, statcache, tb, tzparse, | 
| Neal Norwitz | 10be10c | 2006-03-16 06:50:13 +0000 | [diff] [blame] | 1157 |     util, whatsound, whrandom, zmod | 
 | 1158 |  | 
 | 1159 | - The following modules were removed:  regsub, reconvert, regex, regex_syntax. | 
 | 1160 |  | 
 | 1161 | - re and sre were swapped, so help(re) provides full help.  importing sre | 
| Neal Norwitz | efbeaef | 2006-03-16 06:40:39 +0000 | [diff] [blame] | 1162 |   is deprecated.  The undocumented re.engine variable no longer exists. | 
 | 1163 |  | 
| Hye-Shik Chang | abb903f | 2006-03-13 10:20:08 +0000 | [diff] [blame] | 1164 | - Bug #1448490: Fixed a bug that ISO-2022 codecs could not handle | 
 | 1165 |   SS2 (single-shift 2) escape sequences correctly. | 
 | 1166 |  | 
| Martin v. Löwis | 480f1bb | 2006-03-09 23:38:20 +0000 | [diff] [blame] | 1167 | - The unicodedata module was updated to the 4.1 version of the Unicode | 
 | 1168 |   database. The 3.2 version is still available as unicodedata.db_3_2_0 | 
 | 1169 |   for applications that require this specific version (such as IDNA). | 
 | 1170 |  | 
| Neal Norwitz | b62c433 | 2006-03-04 18:35:47 +0000 | [diff] [blame] | 1171 | - The timing module is no longer built by default.  It was deprecated | 
 | 1172 |   in PEP 4 in Python 2.0 or earlier. | 
 | 1173 |  | 
| Guido van Rossum | 1968ad3 | 2006-02-25 22:38:04 +0000 | [diff] [blame] | 1174 | - Patch 1433928: Added a new type, defaultdict, to the collections module. | 
 | 1175 |   This uses the new __missing__ hook behavior added to dict (see above). | 
 | 1176 |  | 
| Georg Brandl | dbd8339 | 2006-02-20 09:42:33 +0000 | [diff] [blame] | 1177 | - Bug #854823: socketmodule now builds on Sun platforms even when | 
 | 1178 |   INET_ADDRSTRLEN is not defined. | 
 | 1179 |  | 
| Georg Brandl | f4f4415 | 2006-02-18 22:29:33 +0000 | [diff] [blame] | 1180 | - Patch #1393157: os.startfile() now has an optional argument to specify | 
 | 1181 |   a "command verb" to invoke on the file. | 
 | 1182 |  | 
| Neal Norwitz | 082b2df | 2006-02-07 07:04:46 +0000 | [diff] [blame] | 1183 | - Bug #876637, prevent stack corruption when socket descriptor | 
 | 1184 |   is larger than FD_SETSIZE. | 
 | 1185 |  | 
| Neal Norwitz | 0e6bc8c | 2006-02-05 05:45:43 +0000 | [diff] [blame] | 1186 | - Patch #1407135, bug #1424041: harmonize mmap behavior of anonymous memory. | 
 | 1187 |   mmap.mmap(-1, size) now returns anonymous memory in both Unix and Windows. | 
 | 1188 |   mmap.mmap(0, size) should not be used on Windows for anonymous memory. | 
 | 1189 |  | 
| Martin v. Löwis | 57a34e8 | 2006-02-04 19:12:37 +0000 | [diff] [blame] | 1190 | - Patch #1422385: The nis module now supports access to domains other | 
 | 1191 |   than the system default domain. | 
 | 1192 |  | 
| Martin v. Löwis | 1469466 | 2006-02-03 12:54:16 +0000 | [diff] [blame] | 1193 | - Use Win32 API to implement os.stat/fstat. As a result, subsecond timestamps | 
 | 1194 |   are reported, the limit on path name lengths is removed, and stat reports | 
 | 1195 |   WindowsError now (instead of OSError). | 
 | 1196 |  | 
| Gregory P. Smith | cfc4a8d | 2006-01-29 19:46:23 +0000 | [diff] [blame] | 1197 | - Add bsddb.db.DBEnv.set_tx_timestamp allowing time based database recovery. | 
 | 1198 |  | 
| Neal Norwitz | 62a2112 | 2006-01-25 05:21:55 +0000 | [diff] [blame] | 1199 | - Bug #1413192, fix seg fault in bsddb if a transaction was deleted | 
 | 1200 |   before the env. | 
 | 1201 |  | 
| Martin v. Löwis | 11017b1 | 2006-01-14 18:12:57 +0000 | [diff] [blame] | 1202 | - Patch #1103116: Basic AF_NETLINK support. | 
 | 1203 |  | 
| Neal Norwitz | 3b4fff8 | 2006-01-11 08:54:45 +0000 | [diff] [blame] | 1204 | - Bug #1402308, (possible) segfault when using mmap.mmap(-1, ...) | 
 | 1205 |  | 
| Neal Norwitz | 88bbd73 | 2006-01-10 07:05:44 +0000 | [diff] [blame] | 1206 | - Bug #1400822, _curses over{lay,write} doesn't work when passing 6 ints. | 
 | 1207 |   Also fix ungetmouse() which did not accept arguments properly. | 
 | 1208 |   The code now conforms to the documented signature. | 
 | 1209 |  | 
| Neal Norwitz | 5e3d862 | 2006-01-09 06:24:35 +0000 | [diff] [blame] | 1210 | - Bug #1400115, Fix segfault when calling curses.panel.userptr() | 
 | 1211 |   without prior setting of the userptr. | 
 | 1212 |  | 
| Neal Norwitz | 40c6b47 | 2006-01-05 05:43:35 +0000 | [diff] [blame] | 1213 | - Fix 64-bit problems in bsddb. | 
 | 1214 |  | 
| Neal Norwitz | 8856fb7 | 2005-12-18 03:34:22 +0000 | [diff] [blame] | 1215 | - Patch #1365916: fix some unsafe 64-bit mmap methods. | 
 | 1216 |  | 
| Hye-Shik Chang | c5c57e6 | 2005-12-12 11:48:32 +0000 | [diff] [blame] | 1217 | - Bug #1290333: Added a workaround for cjkcodecs' _codecs_cn build | 
 | 1218 |   problem on AIX. | 
 | 1219 |  | 
| Georg Brandl | a13c244 | 2005-11-22 19:30:31 +0000 | [diff] [blame] | 1220 | - Bug #869197: os.setgroups rejects long integer arguments | 
 | 1221 |  | 
| Neal Norwitz | 0f46bbf | 2005-11-03 05:00:25 +0000 | [diff] [blame] | 1222 | - Bug #1346533, select.poll() doesn't raise an error if timeout > sys.maxint | 
 | 1223 |  | 
| Neal Norwitz | 7b63179 | 2005-11-02 05:26:07 +0000 | [diff] [blame] | 1224 | - Bug #1344508, Fix UNIX mmap leaking file descriptors | 
 | 1225 |  | 
| Neal Norwitz | f339654 | 2005-10-28 05:52:22 +0000 | [diff] [blame] | 1226 | - Patch #1338314, Bug #1336623: fix tarfile so it can extract | 
 | 1227 |   REGTYPE directories from tarfiles written by old programs. | 
 | 1228 |  | 
| Gregory P. Smith | e101df9 | 2006-01-24 20:09:45 +0000 | [diff] [blame] | 1229 | - Patch #1407992, fixes broken bsddb module db associate when using | 
 | 1230 |   BerkeleyDB 3.3, 4.0 or 4.1. | 
 | 1231 |  | 
 | 1232 | - Get bsddb module to build with BerkeleyDB version 4.4 | 
 | 1233 |  | 
 | 1234 | - Get bsddb module to build with BerkeleyDB version 3.2 | 
| Neal Norwitz | fed9b3e | 2005-10-21 06:32:02 +0000 | [diff] [blame] | 1235 |  | 
| Neal Norwitz | 484d9a4 | 2005-09-30 04:46:49 +0000 | [diff] [blame] | 1236 | - Patch #1309009, Fix segfault in pyexpat when the XML document is in latin_1, | 
 | 1237 |   but Python incorrectly assumes it is in UTF-8 format | 
 | 1238 |  | 
| Georg Brandl | e677adc | 2005-09-29 13:40:49 +0000 | [diff] [blame] | 1239 | - Fix parse errors in the readline module when compiling without threads. | 
 | 1240 |  | 
| Hye-Shik Chang | 9ceebd5 | 2005-09-24 14:58:47 +0000 | [diff] [blame] | 1241 | - Patch #1288833: Removed thread lock from socket.getaddrinfo on | 
 | 1242 |   FreeBSD 5.3 and later versions which got thread-safe getaddrinfo(3). | 
 | 1243 |  | 
| Michael W. Hudson | 10402a3 | 2005-09-22 09:19:01 +0000 | [diff] [blame] | 1244 | - Patches #1298449 and #1298499: Add some missing checks for error | 
 | 1245 |   returns in cStringIO.c. | 
 | 1246 |  | 
| Neal Norwitz | 058bde1 | 2005-09-21 06:44:25 +0000 | [diff] [blame] | 1247 | - Patch #1297028: fix segfault if call type on MultibyteCodec, | 
 | 1248 |   MultibyteStreamReader, or MultibyteStreamWriter | 
 | 1249 |  | 
| Neal Norwitz | cfe7dd9 | 2005-09-19 06:49:27 +0000 | [diff] [blame] | 1250 | - Fix memory leak in posix.access(). | 
 | 1251 |  | 
| Martin v. Löwis | 8b291e2 | 2005-09-18 08:17:56 +0000 | [diff] [blame] | 1252 | - Patch #1213831: Fix typo in unicodedata._getcode. | 
 | 1253 |  | 
| Georg Brandl | fb1ef85 | 2005-09-14 20:53:32 +0000 | [diff] [blame] | 1254 | - Bug #1007046: os.startfile() did not accept unicode strings encoded in | 
 | 1255 |   the file system encoding. | 
 | 1256 |  | 
| Georg Brandl | d2e3ba7 | 2005-08-26 08:34:00 +0000 | [diff] [blame] | 1257 | - Patch #756021: Special-case socket.inet_aton('255.255.255.255') for | 
 | 1258 |   platforms that don't have inet_aton(). | 
| Georg Brandl | 02760f9 | 2005-08-25 13:10:41 +0000 | [diff] [blame] | 1259 |  | 
| Georg Brandl | d2e3ba7 | 2005-08-26 08:34:00 +0000 | [diff] [blame] | 1260 | - Bug #1215928: Fix bz2.BZ2File.seek() for 64-bit file offsets. | 
 | 1261 |  | 
 | 1262 | - Bug #1191043: Fix bz2.BZ2File.(x)readlines for files containing one | 
| Georg Brandl | 02760f9 | 2005-08-25 13:10:41 +0000 | [diff] [blame] | 1263 |   line without newlines. | 
 | 1264 |  | 
| Georg Brandl | 38387b8 | 2005-08-24 07:17:40 +0000 | [diff] [blame] | 1265 | - Bug #728515: mmap.resize() now resizes the file on Unix as it did | 
 | 1266 |   on Windows. | 
 | 1267 |  | 
| Walter Dörwald | a05834e | 2005-10-09 19:38:21 +0000 | [diff] [blame] | 1268 | - Patch #1180695: Add nanosecond stat resolution, and st_gen, | 
| Martin v. Löwis | ebd9d5b | 2005-08-09 15:00:59 +0000 | [diff] [blame] | 1269 |   st_birthtime for FreeBSD. | 
 | 1270 |  | 
| Michael W. Hudson | 8137bea | 2005-07-27 20:24:40 +0000 | [diff] [blame] | 1271 | - Patch #1231069: The fcntl.ioctl function now uses the 'I' code for | 
 | 1272 |   the request code argument, which results in more C-like behaviour | 
 | 1273 |   for large or negative values. | 
 | 1274 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1275 | - Bug #1234979: For the argument of thread.Lock.acquire, the Windows | 
| Andrew M. Kuchling | 88b8582 | 2005-08-23 00:57:07 +0000 | [diff] [blame] | 1276 |   implementation treated all integer values except 1 as false. | 
| Georg Brandl | af410b5 | 2005-07-08 22:26:13 +0000 | [diff] [blame] | 1277 |  | 
| Georg Brandl | 6b95f1d | 2005-06-03 19:47:00 +0000 | [diff] [blame] | 1278 | - Bug #1194181: bz2.BZ2File didn't handle mode 'U' correctly. | 
 | 1279 |  | 
| Hye-Shik Chang | 5f937a7 | 2005-06-02 13:09:30 +0000 | [diff] [blame] | 1280 | - Patch #1212117: os.stat().st_flags is now accessible as a attribute | 
 | 1281 |   if available on the platform. | 
 | 1282 |  | 
| Skip Montanaro | 5ff1492 | 2005-05-16 02:42:22 +0000 | [diff] [blame] | 1283 | - Patch #1103951: Expose O_SHLOCK and O_EXLOCK in the posix module if | 
 | 1284 |   available on the platform. | 
 | 1285 |  | 
| Michael W. Hudson | b330adf | 2005-03-31 09:35:44 +0000 | [diff] [blame] | 1286 | - Bug #1166660: The readline module could segfault if hook functions | 
 | 1287 |   were set in a different thread than that which called readline. | 
 | 1288 |  | 
| Raymond Hettinger | 4aec61e | 2005-03-18 21:20:23 +0000 | [diff] [blame] | 1289 | - collections.deque objects now support a remove() method. | 
 | 1290 |  | 
| Raymond Hettinger | 984f9bb | 2005-03-09 16:38:48 +0000 | [diff] [blame] | 1291 | - operator.itemgetter() and operator.attrgetter() now support retrieving | 
 | 1292 |   multiple fields.  This provides direct support for sorting on multiple | 
 | 1293 |   keys (primary, secondary, etc). | 
 | 1294 |  | 
| Martin v. Löwis | b60ae99 | 2005-03-08 09:10:29 +0000 | [diff] [blame] | 1295 | - os.access now supports Unicode path names on non-Win32 systems. | 
 | 1296 |  | 
| Martin v. Löwis | fd78a6f | 2005-03-04 14:37:01 +0000 | [diff] [blame] | 1297 | - Patches #925152, #1118602: Avoid reading after the end of the buffer | 
 | 1298 |   in pyexpat.GetInputContext. | 
 | 1299 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1300 | - Patches #749830, #1144555: allow UNIX mmap size to default to current | 
| Martin v. Löwis | 7fe60c0 | 2005-03-03 11:22:44 +0000 | [diff] [blame] | 1301 |   file size. | 
 | 1302 |  | 
| Raymond Hettinger | 9c323f8 | 2005-02-28 19:39:44 +0000 | [diff] [blame] | 1303 | - Added functional.partial().  See PEP309. | 
 | 1304 |  | 
| Martin v. Löwis | 9533e34 | 2005-02-27 20:33:25 +0000 | [diff] [blame] | 1305 | - Patch #1093585: raise a ValueError for negative history items in readline. | 
 | 1306 |   {remove_history,replace_history} | 
 | 1307 |  | 
| Fred Drake | 9c131f2 | 2005-01-23 15:16:08 +0000 | [diff] [blame] | 1308 | - The spwd module has been added, allowing access to the shadow password | 
 | 1309 |   database. | 
| Martin v. Löwis | c300175 | 2005-01-23 09:27:24 +0000 | [diff] [blame] | 1310 |  | 
| Martin v. Löwis | fe33d0b | 2005-01-16 08:57:39 +0000 | [diff] [blame] | 1311 | - stat_float_times is now True. | 
 | 1312 |  | 
| Raymond Hettinger | b0900e6 | 2004-12-16 16:23:40 +0000 | [diff] [blame] | 1313 | - array.array objects are now picklable. | 
 | 1314 |  | 
| Raymond Hettinger | a6b45cc | 2004-12-07 07:05:57 +0000 | [diff] [blame] | 1315 | - the cPickle module no longer accepts the deprecated None option in the | 
 | 1316 |   args tuple returned by __reduce__(). | 
 | 1317 |  | 
| Raymond Hettinger | b259405 | 2004-12-05 09:25:51 +0000 | [diff] [blame] | 1318 | - itertools.islice() now accepts None for the start and step arguments. | 
 | 1319 |   This allows islice() to work more readily with slices: | 
 | 1320 |       islice(s.start, s.stop, s.step) | 
 | 1321 |  | 
| Skip Montanaro | 0af3ade | 2005-01-13 04:12:31 +0000 | [diff] [blame] | 1322 | - datetime.datetime() now has a strptime class method which can be used to | 
 | 1323 |   create datetime object using a string and format. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1324 |  | 
| Matthias Klose | d77f8b3 | 2006-04-03 16:34:56 +0000 | [diff] [blame] | 1325 | - Patch #1117961: Replace the MD5 implementation from RSA Data Security Inc | 
| Matthias Klose | 8e39ec7 | 2006-04-03 16:27:50 +0000 | [diff] [blame] | 1326 |   with the implementation from http://sourceforge.net/projects/libmd5-rfc/. | 
 | 1327 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1328 | Library | 
 | 1329 | ------- | 
| Tim Peters | 112aad3 | 2006-07-19 00:03:19 +0000 | [diff] [blame] | 1330 |  | 
| Georg Brandl | c5e3d8a | 2006-07-17 13:26:33 +0000 | [diff] [blame] | 1331 | - Patch #1388073: Numerous __-prefixed attributes of unittest.TestCase have | 
 | 1332 |   been renamed to have only a single underscore prefix.  This was done to | 
 | 1333 |   make subclassing easier. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1334 |  | 
| Nick Coghlan | 4383230 | 2006-04-23 17:04:07 +0000 | [diff] [blame] | 1335 | - PEP 338: new module runpy defines a run_module function to support | 
 | 1336 |   executing modules which provide access to source code or a code object | 
 | 1337 |   via the PEP 302 import mechanisms. | 
 | 1338 |  | 
| Anthony Baxter | 93f5b93 | 2006-04-03 08:05:07 +0000 | [diff] [blame] | 1339 | - The email module's parsedate_tz function now sets the daylight savings | 
 | 1340 |   flag to -1 (unknown) since it can't tell from the date whether it should | 
 | 1341 |   be set. | 
 | 1342 |  | 
| Fred Drake | ad5177c | 2006-04-01 22:14:43 +0000 | [diff] [blame] | 1343 | - Patch #624325: urlparse.urlparse() and urlparse.urlsplit() results | 
 | 1344 |   now sport attributes that provide access to the parts of the result. | 
 | 1345 |  | 
| Georg Brandl | 7f6b67c | 2006-04-01 08:35:18 +0000 | [diff] [blame] | 1346 | - Patch #1462498: sgmllib now handles entity and character references | 
 | 1347 |   in attribute values. | 
 | 1348 |  | 
| Anthony Baxter | c51ee69 | 2006-04-01 00:57:31 +0000 | [diff] [blame] | 1349 | - Added the sqlite3 package. This is based on pysqlite2.1.3, and provides | 
| Georg Brandl | 828fdef | 2006-04-01 08:59:03 +0000 | [diff] [blame] | 1350 |   a DB-API interface in the standard library. You'll need sqlite 3.0.8 or | 
| Tim Peters | 3a5e8b1 | 2006-04-11 01:44:07 +0000 | [diff] [blame] | 1351 |   later to build this - if you have an earlier version, the C extension | 
| Anthony Baxter | c51ee69 | 2006-04-01 00:57:31 +0000 | [diff] [blame] | 1352 |   module will not be built. | 
 | 1353 |  | 
| Tim Peters | c17976e | 2006-04-01 00:26:53 +0000 | [diff] [blame] | 1354 | - Bug #1460340: ``random.sample(dict)`` failed in various ways.  Dicts | 
 | 1355 |   aren't officially supported here, and trying to use them will probably | 
 | 1356 |   raise an exception some day.  But dicts have been allowed, and "mostly | 
 | 1357 |   worked", so support for them won't go away without warning. | 
 | 1358 |  | 
| Georg Brandl | 338ef7d | 2006-03-31 18:42:16 +0000 | [diff] [blame] | 1359 | - Bug #1445068: getpass.getpass() can now be given an explicit stream | 
 | 1360 |   argument to specify where to write the prompt. | 
 | 1361 |  | 
| Georg Brandl | 22ec80b | 2006-03-31 18:25:44 +0000 | [diff] [blame] | 1362 | - Patch #1462313, bug #1443328: the pickle modules now can handle classes | 
 | 1363 |   that have __private names in their __slots__. | 
 | 1364 |  | 
| Neal Norwitz | 6974a51 | 2006-04-10 00:25:01 +0000 | [diff] [blame] | 1365 | - Bug #1250170: mimetools now handles socket.gethostname() failures gracefully. | 
| Georg Brandl | dd2245f | 2006-03-31 17:18:06 +0000 | [diff] [blame] | 1366 |  | 
| Phillip J. Eby | 59821cf | 2006-03-30 02:16:40 +0000 | [diff] [blame] | 1367 | - patch #1457316: "setup.py upload" now supports --identity to select the | 
 | 1368 |   key to be used for signing the uploaded code. | 
 | 1369 |  | 
| Raymond Hettinger | fd3fcf0 | 2006-03-24 20:43:29 +0000 | [diff] [blame] | 1370 | - Queue.Queue objects now support .task_done() and .join() methods | 
 | 1371 |   to make it easier to monitor when daemon threads have completed | 
 | 1372 |   processing all enqueued tasks.  Patch #1455676. | 
 | 1373 |  | 
| Martin v. Löwis | bd8dbab | 2006-03-23 18:18:35 +0000 | [diff] [blame] | 1374 | - popen2.Popen objects now preserve the command in a .cmd attribute. | 
 | 1375 |  | 
| Thomas Heller | c61c049 | 2006-03-22 10:09:27 +0000 | [diff] [blame] | 1376 | - Added the ctypes ffi package. | 
 | 1377 |  | 
| Barry Warsaw | 4d90bbd | 2006-03-22 02:45:50 +0000 | [diff] [blame] | 1378 | - email 4.0 package now integrated.  This is largely the same as the email 3.0 | 
 | 1379 |   package that was included in Python 2.3, except that PEP 8 module names are | 
 | 1380 |   now used (e.g. mail.message instead of email.Message).  The MIME classes | 
 | 1381 |   have been moved to a subpackage (e.g. email.mime.text instead of | 
 | 1382 |   email.MIMEText).  The old names are still supported for now.  Several | 
 | 1383 |   deprecated Message methods have been removed and lots of bugs have been | 
 | 1384 |   fixed.  More details can be found in the email package documentation. | 
 | 1385 |  | 
| Walter Dörwald | 40108c9 | 2006-03-27 08:15:44 +0000 | [diff] [blame] | 1386 | - Patches #1436130/#1443155: codecs.lookup() now returns a CodecInfo object | 
 | 1387 |   (a subclass of tuple) that provides incremental decoders and encoders | 
 | 1388 |   (a way to use stateful codecs without the stream API). Python functions | 
 | 1389 |   codecs.getincrementaldecoder() and codecs.getincrementalencoder() as well | 
 | 1390 |   as C functions PyCodec_IncrementalEncoder() and PyCodec_IncrementalDecoder() | 
 | 1391 |   have been added. | 
| Walter Dörwald | abb02e5 | 2006-03-15 11:35:15 +0000 | [diff] [blame] | 1392 |  | 
| Walter Dörwald | 067db48 | 2006-03-15 22:17:27 +0000 | [diff] [blame] | 1393 | - Patch #1359365: Calling next() on a closed StringIO.String object raises | 
 | 1394 |   a ValueError instead of a StopIteration now (like file and cString.String do). | 
 | 1395 |   cStringIO.StringIO.isatty() will raise a ValueError now if close() has been | 
 | 1396 |   called before (like file and StringIO.StringIO do). | 
| Walter Dörwald | 197e832 | 2006-03-15 22:13:13 +0000 | [diff] [blame] | 1397 |  | 
| Martin v. Löwis | 04824ce | 2006-03-10 21:26:16 +0000 | [diff] [blame] | 1398 | - A regrtest option -w was added to re-run failed tests in verbose mode. | 
 | 1399 |  | 
| Georg Brandl | e2b4677 | 2006-03-09 23:22:43 +0000 | [diff] [blame] | 1400 | - Patch #1446372: quit and exit can now be called from the interactive | 
 | 1401 |   interpreter to exit. | 
 | 1402 |  | 
| Barry Warsaw | d3c38ff | 2006-03-07 09:46:03 +0000 | [diff] [blame] | 1403 | - The function get_count() has been added to the gc module, and gc.collect() | 
 | 1404 |   grew an optional 'generation' argument. | 
 | 1405 |  | 
| Martin v. Löwis | fbab90e | 2006-03-05 13:36:04 +0000 | [diff] [blame] | 1406 | - A library msilib to generate Windows Installer files, and a distutils | 
 | 1407 |   command bdist_msi have been added. | 
 | 1408 |  | 
| Guido van Rossum | 1a5e21e | 2006-02-28 21:57:43 +0000 | [diff] [blame] | 1409 | - PEP 343: new module contextlib.py defines decorator @contextmanager | 
 | 1410 |   and helpful context managers nested() and closing(). | 
 | 1411 |  | 
| Martin v. Löwis | 415ed93 | 2006-02-27 19:56:30 +0000 | [diff] [blame] | 1412 | - The compiler package now supports future imports after the module docstring. | 
 | 1413 |  | 
| Georg Brandl | 8f7c54e | 2006-02-20 08:40:38 +0000 | [diff] [blame] | 1414 | - Bug #1413790: zipfile now sanitizes absolute archive names that are | 
 | 1415 |   not allowed by the specs. | 
 | 1416 |  | 
| Georg Brandl | c98eeed | 2006-02-19 14:57:47 +0000 | [diff] [blame] | 1417 | - Patch #1215184: FileInput now can be given an opening hook which can | 
 | 1418 |   be used to control how files are opened. | 
 | 1419 |  | 
| Georg Brandl | c029f87 | 2006-02-19 14:12:34 +0000 | [diff] [blame] | 1420 | - Patch #1212287: fileinput.input() now has a mode parameter for | 
 | 1421 |   specifying the file mode input files should be opened with. | 
 | 1422 |  | 
| Georg Brandl | 67e9fb9 | 2006-02-19 13:56:17 +0000 | [diff] [blame] | 1423 | - Patch #1215184: fileinput now has a fileno() function for getting the | 
 | 1424 |   current file number. | 
 | 1425 |  | 
| Georg Brandl | 602b9ba | 2006-02-19 13:26:36 +0000 | [diff] [blame] | 1426 | - Patch #1349274: gettext.install() now optionally installs additional | 
 | 1427 |   translation functions other than _() in the builtin namespace. | 
 | 1428 |  | 
| Georg Brandl | e466217 | 2006-02-19 09:51:27 +0000 | [diff] [blame] | 1429 | - Patch #1337756: fileinput now accepts Unicode filenames. | 
 | 1430 |  | 
| Georg Brandl | 7b4e7c2 | 2006-02-18 21:10:56 +0000 | [diff] [blame] | 1431 | - Patch #1373643: The chunk module can now read chunks larger than | 
 | 1432 |   two gigabytes. | 
 | 1433 |  | 
| Georg Brandl | 21dd1af | 2006-02-17 13:35:13 +0000 | [diff] [blame] | 1434 | - Patch #1417555: SimpleHTTPServer now returns Last-Modified headers. | 
 | 1435 |  | 
| Georg Brandl | bd3bc4d | 2006-02-17 09:52:53 +0000 | [diff] [blame] | 1436 | - Bug #1430298: It is now possible to send a mail with an empty | 
 | 1437 |   return address using smtplib. | 
 | 1438 |  | 
| Georg Brandl | 0e1abe2 | 2006-02-17 09:48:14 +0000 | [diff] [blame] | 1439 | - Bug #1432260: The names of lambda functions are now properly displayed | 
 | 1440 |   in pydoc. | 
| Georg Brandl | 501dd0d | 2006-02-17 09:45:40 +0000 | [diff] [blame] | 1441 |  | 
| Martin v. Löwis | 0075690 | 2006-02-05 17:09:41 +0000 | [diff] [blame] | 1442 | - Patch #1412872: zipfile now sets the creator system to 3 (Unix) | 
 | 1443 |   unless the system is Win32. | 
 | 1444 |  | 
| Tim Peters | da1329b | 2006-02-27 16:50:01 +0000 | [diff] [blame] | 1445 | - Patch #1349118: urllib now supports user:pass@ style proxy | 
| Martin v. Löwis | 3e86595 | 2006-01-24 15:51:21 +0000 | [diff] [blame] | 1446 |   specifications, raises IOErrors when proxies for unsupported protocols | 
 | 1447 |   are defined, and uses the https proxy on https redirections. | 
 | 1448 |  | 
| Georg Brandl | 531ceba | 2006-01-21 07:20:56 +0000 | [diff] [blame] | 1449 | - Bug #902075: urllib2 now supports 'host:port' style proxy specifications. | 
 | 1450 |  | 
 | 1451 | - Bug #1407902: Add support for sftp:// URIs to urlparse. | 
| Georg Brandl | 89f35ac | 2006-01-20 17:24:23 +0000 | [diff] [blame] | 1452 |  | 
| Georg Brandl | b709c2c | 2006-01-20 09:07:35 +0000 | [diff] [blame] | 1453 | - Bug #1371247: Update Windows locale identifiers in locale.py. | 
 | 1454 |  | 
| Neal Norwitz | f60cd47 | 2006-01-14 07:05:13 +0000 | [diff] [blame] | 1455 | - Bug #1394565: SimpleHTTPServer now doesn't choke on query parameters | 
| Georg Brandl | 45ab233 | 2006-01-13 17:05:56 +0000 | [diff] [blame] | 1456 |   any more. | 
| Georg Brandl | b709c2c | 2006-01-20 09:07:35 +0000 | [diff] [blame] | 1457 |  | 
| Georg Brandl | 4edd989 | 2006-01-13 16:59:46 +0000 | [diff] [blame] | 1458 | - Bug #1403410: The warnings module now doesn't get confused | 
 | 1459 |   when it can't find out the module name it generates a warning for. | 
| Georg Brandl | b709c2c | 2006-01-20 09:07:35 +0000 | [diff] [blame] | 1460 |  | 
| Martin v. Löwis | 412ed3b | 2006-01-08 10:45:39 +0000 | [diff] [blame] | 1461 | - Patch #1177307: Added a new codec utf_8_sig for UTF-8 with a BOM signature. | 
 | 1462 |  | 
| Neal Norwitz | ab86f8e | 2005-12-23 21:44:36 +0000 | [diff] [blame] | 1463 | - Patch #1157027: cookielib mishandles RFC 2109 cookies in Netscape mode | 
 | 1464 |  | 
| Neal Norwitz | 338e786 | 2005-12-23 21:27:46 +0000 | [diff] [blame] | 1465 | - Patch #1117398: cookielib.LWPCookieJar and .MozillaCookieJar now raise | 
 | 1466 |   LoadError as documented, instead of IOError.  For compatibility, | 
 | 1467 |   LoadError subclasses IOError. | 
 | 1468 |  | 
| Brett Cannon | 3cbd038 | 2005-12-16 22:49:23 +0000 | [diff] [blame] | 1469 | - Added the hashlib module.  It provides secure hash functions for MD5 and | 
| Tim Peters | e3547fd | 2005-12-16 23:13:57 +0000 | [diff] [blame] | 1470 |   SHA1, 224, 256, 384, and 512.  Note that recent developments make the | 
 | 1471 |   historic MD5 and SHA1 unsuitable for cryptographic-strength applications. | 
 | 1472 |   In <http://mail.python.org/pipermail/python-dev/2005-December/058850.html> | 
 | 1473 |   Ronald L. Rivest offered this advice for Python: | 
 | 1474 |  | 
 | 1475 |       "The consensus of researchers in this area (at least as | 
 | 1476 |       expressed at the NIST Hash Function Workshop 10/31/05), | 
 | 1477 |       is that SHA-256 is a good choice for the time being, but | 
 | 1478 |       that research should continue, and other alternatives may | 
 | 1479 |       arise from this research.  The larger SHA's also seem OK." | 
| Brett Cannon | 3cbd038 | 2005-12-16 22:49:23 +0000 | [diff] [blame] | 1480 |  | 
| Fredrik Lundh | 7e0aef0 | 2005-12-12 18:54:55 +0000 | [diff] [blame] | 1481 | - Added a subset of Fredrik Lundh's ElementTree package.  Available | 
 | 1482 |   modules are xml.etree.ElementTree, xml.etree.ElementPath, and | 
 | 1483 |   xml.etree.ElementInclude, from ElementTree 1.2.6. | 
 | 1484 |  | 
| Martin v. Löwis | 307021f | 2005-11-27 16:59:04 +0000 | [diff] [blame] | 1485 | - Patch #1162825: Support non-ASCII characters in IDLE window titles. | 
 | 1486 |  | 
| Georg Brandl | 1f66357 | 2005-11-26 16:50:44 +0000 | [diff] [blame] | 1487 | - Bug #1365984: urllib now opens "data:" URLs again. | 
 | 1488 |  | 
| Brett Cannon | ad07ff2 | 2005-11-23 02:15:50 +0000 | [diff] [blame] | 1489 | - Patch #1314396: prevent deadlock for threading.Thread.join() when an exception | 
 | 1490 |   is raised within the method itself on a previous call (e.g., passing in an | 
 | 1491 |   illegal argument) | 
 | 1492 |  | 
| Brett Cannon | 5d0bf94 | 2005-11-02 23:04:26 +0000 | [diff] [blame] | 1493 | - Bug #1340337: change time.strptime() to always return ValueError when there | 
 | 1494 |   is an error in the format string. | 
 | 1495 |  | 
| Georg Brandl | e8f2443 | 2005-10-03 14:16:44 +0000 | [diff] [blame] | 1496 | - Patch #754022: Greatly enhanced webbrowser.py (by Oleg Broytmann). | 
 | 1497 |  | 
| Walter Dörwald | a05834e | 2005-10-09 19:38:21 +0000 | [diff] [blame] | 1498 | - Bug #729103: pydoc.py: Fix docother() method to accept additional | 
| Georg Brandl | 8b813db | 2005-10-01 16:32:31 +0000 | [diff] [blame] | 1499 |   "parent" argument. | 
 | 1500 |  | 
| Georg Brandl | aa93517 | 2005-09-29 20:49:16 +0000 | [diff] [blame] | 1501 | - Patch #1300515: xdrlib.py: Fix pack_fstring() to really use null bytes | 
 | 1502 |   for padding. | 
 | 1503 |  | 
| Georg Brandl | 80ba8e8 | 2005-09-29 20:16:07 +0000 | [diff] [blame] | 1504 | - Bug #1296004: httplib.py: Limit maximal amount of data read from the | 
 | 1505 |   socket to avoid a MemoryError on Windows. | 
 | 1506 |  | 
| Matthias Klose | f3f231f | 2005-09-20 07:02:49 +0000 | [diff] [blame] | 1507 | - Patch #1166948: locale.py: Prefer LC_ALL, LC_CTYPE and LANG over LANGUAGE | 
 | 1508 |   to get the correct encoding. | 
 | 1509 |  | 
 | 1510 | - Patch #1166938: locale.py: Parse LANGUAGE as a colon separated list of | 
 | 1511 |   languages. | 
 | 1512 |  | 
| Martin v. Löwis | 4ed6738 | 2005-09-18 08:34:39 +0000 | [diff] [blame] | 1513 | - Patch #1268314: Cache lines in StreamReader.readlines for performance. | 
 | 1514 |  | 
| Brett Cannon | a783d06 | 2005-09-15 02:34:56 +0000 | [diff] [blame] | 1515 | - Bug #1290505: Fix clearing the regex cache for time.strptime(). | 
 | 1516 |  | 
| Martin v. Löwis | 5dbdc59 | 2005-08-27 10:07:56 +0000 | [diff] [blame] | 1517 | - Bug #1167128: Fix size of a symlink in a tarfile to be 0. | 
 | 1518 |  | 
| Georg Brandl | 5a650a2 | 2005-08-26 08:51:34 +0000 | [diff] [blame] | 1519 | - Patch #810023: Fix off-by-one bug in urllib.urlretrieve reporthook | 
 | 1520 |   functionality. | 
 | 1521 |  | 
| Martin v. Löwis | 8b59514 | 2005-08-25 11:03:38 +0000 | [diff] [blame] | 1522 | - Bug #1163178: Make IDNA return an empty string when the input is empty. | 
 | 1523 |  | 
| Georg Brandl | 532efab | 2005-08-24 22:34:21 +0000 | [diff] [blame] | 1524 | - Patch #848017: Make Cookie more RFC-compliant. Use CRLF as default output | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 1525 |   separator and do not output trailing semicolon. | 
| Georg Brandl | 532efab | 2005-08-24 22:34:21 +0000 | [diff] [blame] | 1526 |  | 
| Georg Brandl | b925602 | 2005-08-24 18:46:39 +0000 | [diff] [blame] | 1527 | - Patch #1062060: urllib.urlretrieve() now raises a new exception, named | 
 | 1528 |   ContentTooShortException, when the actually downloaded size does not | 
 | 1529 |   match the Content-Length header. | 
 | 1530 |  | 
| Martin v. Löwis | 0a5d4a2 | 2005-08-24 14:55:22 +0000 | [diff] [blame] | 1531 | - Bug #1121494: distutils.dir_utils.mkpath now accepts Unicode strings. | 
 | 1532 |  | 
| Martin v. Löwis | 56066d2 | 2005-08-24 07:38:12 +0000 | [diff] [blame] | 1533 | - Bug #1178484: Return complete lines from codec stream readers | 
 | 1534 |   even if there is an exception in later lines, resulting in | 
| Walter Dörwald | a05834e | 2005-10-09 19:38:21 +0000 | [diff] [blame] | 1535 |   correct line numbers for decoding errors in source code. | 
| Martin v. Löwis | 56066d2 | 2005-08-24 07:38:12 +0000 | [diff] [blame] | 1536 |  | 
| Georg Brandl | 6d2b346 | 2005-08-24 07:36:17 +0000 | [diff] [blame] | 1537 | - Bug #1192315: Disallow negative arguments to clear() in pdb. | 
 | 1538 |  | 
| Martin v. Löwis | b813c53 | 2005-08-07 20:51:04 +0000 | [diff] [blame] | 1539 | - Patch #827386: Support absolute source paths in msvccompiler.py. | 
 | 1540 |  | 
| Georg Brandl | 649f8e7 | 2005-08-03 07:30:12 +0000 | [diff] [blame] | 1541 | - Patch #1105730: Apply the new implementation of commonprefix in posixpath | 
 | 1542 |   to ntpath, macpath, os2emxpath and riscospath. | 
 | 1543 |  | 
| Guido van Rossum | 755149f | 2005-07-27 00:00:44 +0000 | [diff] [blame] | 1544 | - Fix a problem in Tkinter introduced by SF patch #869468: delete bogus | 
 | 1545 |   __hasattr__ and __delattr__ methods on class Tk that were breaking | 
 | 1546 |   Tkdnd. | 
 | 1547 |  | 
| Georg Brandl | 5dbda75 | 2005-07-17 20:27:41 +0000 | [diff] [blame] | 1548 | - Bug #1015140: disambiguated the term "article id" in nntplib docs and | 
 | 1549 |   docstrings to either "article number" or "message id". | 
 | 1550 |  | 
| Georg Brandl | a4a8b82 | 2005-07-15 09:13:21 +0000 | [diff] [blame] | 1551 | - Bug #1238170: threading.Thread.__init__ no longer has "kwargs={}" as a | 
 | 1552 |   parameter, but uses the usual "kwargs=None". | 
 | 1553 |  | 
| Andrew M. Kuchling | 88b8582 | 2005-08-23 00:57:07 +0000 | [diff] [blame] | 1554 | - textwrap now processes text chunks at O(n) speed instead of O(n**2). | 
| Raymond Hettinger | 8bfa893 | 2005-07-15 06:53:35 +0000 | [diff] [blame] | 1555 |   Patch #1209527 (Contributed by Connelly). | 
 | 1556 |  | 
| Georg Brandl | 5c5fe2f | 2005-07-14 06:40:47 +0000 | [diff] [blame] | 1557 | - urllib2 has now an attribute 'httpresponses' mapping from HTTP status code | 
 | 1558 |   to W3C name (404 -> 'Not Found'). RFE #1216944. | 
 | 1559 |  | 
| Georg Brandl | 9e43acf | 2005-07-04 17:16:07 +0000 | [diff] [blame] | 1560 | - Bug #1177468: Don't cache the /dev/urandom file descriptor for os.urandom, | 
 | 1561 |   as this can cause problems with apps closing all file descriptors. | 
 | 1562 |  | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 1563 | - Bug #839151: Fix an attempt to access sys.argv in the warnings module; | 
| Andrew M. Kuchling | 88b8582 | 2005-08-23 00:57:07 +0000 | [diff] [blame] | 1564 |   it can be missing in embedded interpreters | 
| Georg Brandl | 5284b53 | 2005-06-26 22:54:58 +0000 | [diff] [blame] | 1565 |  | 
| Georg Brandl | 2f210b6 | 2005-06-26 22:09:06 +0000 | [diff] [blame] | 1566 | - Bug #1155638: Fix a bug which affected HTTP 0.9 responses in httplib. | 
 | 1567 |  | 
| Georg Brandl | fbff1bc | 2005-06-26 21:36:25 +0000 | [diff] [blame] | 1568 | - Bug #1100201: Cross-site scripting was possible on BaseHTTPServer via | 
 | 1569 |   error messages. | 
 | 1570 |  | 
| Georg Brandl | 379f99d | 2005-06-26 21:09:38 +0000 | [diff] [blame] | 1571 | - Bug #1108948: Cookie.py produced invalid JavaScript code. | 
 | 1572 |  | 
| Raymond Hettinger | da99d1c | 2005-06-21 07:43:58 +0000 | [diff] [blame] | 1573 | - The tokenize module now detects and reports indentation errors. | 
 | 1574 |   Bug #1224621. | 
 | 1575 |  | 
| Raymond Hettinger | 68c0453 | 2005-06-10 11:05:19 +0000 | [diff] [blame] | 1576 | - The tokenize module has a new untokenize() function to support a full | 
| Andrew M. Kuchling | 7034f6b | 2006-04-01 10:50:08 +0000 | [diff] [blame] | 1577 |   roundtrip from lexed tokens back to Python source code.  In addition, | 
| Raymond Hettinger | 68c0453 | 2005-06-10 11:05:19 +0000 | [diff] [blame] | 1578 |   the generate_tokens() function now accepts a callable argument that | 
 | 1579 |   terminates by raising StopIteration. | 
 | 1580 |  | 
| Georg Brandl | 9166e1a | 2005-06-04 09:20:03 +0000 | [diff] [blame] | 1581 | - Bug #1196315: fix weakref.WeakValueDictionary constructor. | 
 | 1582 |  | 
| Georg Brandl | 268e61c | 2005-06-03 14:28:50 +0000 | [diff] [blame] | 1583 | - Bug #1213894: os.path.realpath didn't resolve symlinks that were the first | 
 | 1584 |   component of the path. | 
 | 1585 |  | 
| Skip Montanaro | 174dd22 | 2005-05-14 20:54:16 +0000 | [diff] [blame] | 1586 | - Patch #1120353: The xmlrpclib module provides better, more transparent, | 
 | 1587 |   support for datetime.{datetime,date,time} objects.  With use_datetime set | 
 | 1588 |   to True, applications shouldn't have to fiddle with the DateTime wrapper | 
 | 1589 |   class at all. | 
 | 1590 |  | 
| Martin v. Löwis | 55f1bb8 | 2005-03-21 20:56:35 +0000 | [diff] [blame] | 1591 | - distutils.commands.upload was added to support uploading distribution | 
 | 1592 |   files to PyPI. | 
 | 1593 |  | 
| Walter Dörwald | a6e8a4a | 2005-03-31 13:57:38 +0000 | [diff] [blame] | 1594 | - distutils.commands.register now encodes the data as UTF-8 before posting | 
 | 1595 |   them to PyPI. | 
 | 1596 |  | 
| Raymond Hettinger | 267b868 | 2005-03-27 10:47:39 +0000 | [diff] [blame] | 1597 | - decimal operator and comparison methods now return NotImplemented | 
 | 1598 |   instead of raising a TypeError when interacting with other types.  This | 
 | 1599 |   allows other classes to implement __radd__ style methods and have them | 
 | 1600 |   work as expected. | 
 | 1601 |  | 
| Raymond Hettinger | bea3f6f | 2005-03-15 04:59:17 +0000 | [diff] [blame] | 1602 | - Bug #1163325:  Decimal infinities failed to hash.  Attempting to | 
 | 1603 |   hash a NaN raised an InvalidOperation instead of a TypeError. | 
 | 1604 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1605 | - Patch #918101: Add tarfile open mode r|* for auto-detection of the | 
| Martin v. Löwis | 78be7df | 2005-03-05 12:47:42 +0000 | [diff] [blame] | 1606 |   stream compression; add, for symmetry reasons, r:* as a synonym of r. | 
 | 1607 |  | 
| Martin v. Löwis | 00a73e7 | 2005-03-04 19:40:34 +0000 | [diff] [blame] | 1608 | - Patch #1043890: Add extractall method to tarfile. | 
 | 1609 |  | 
| Martin v. Löwis | c72dd38 | 2005-03-04 13:50:17 +0000 | [diff] [blame] | 1610 | - Patch #1075887: Don't require MSVC in distutils if there is nothing | 
 | 1611 |   to build. | 
 | 1612 |  | 
| Martin v. Löwis | 637431b | 2005-03-03 23:12:42 +0000 | [diff] [blame] | 1613 | - Patch #1103407: Properly deal with tarfile iterators when untarring | 
 | 1614 |   symbolic links on Windows. | 
 | 1615 |  | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1616 | - Patch #645894: Use getrusage for computing the time consumption in | 
| Martin v. Löwis | a4dac40 | 2005-03-03 11:39:45 +0000 | [diff] [blame] | 1617 |   profile.py if available. | 
 | 1618 |  | 
| Martin v. Löwis | df37c8c | 2005-03-03 11:08:03 +0000 | [diff] [blame] | 1619 | - Patch #1046831: Use get_python_version where appropriate in sysconfig.py. | 
 | 1620 |  | 
| Martin v. Löwis | c5574e8 | 2005-03-03 10:57:37 +0000 | [diff] [blame] | 1621 | - Patch #1117454: Remove code to special-case cookies without values | 
 | 1622 |   in LWPCookieJar. | 
 | 1623 |  | 
| Martin v. Löwis | 4ea3ead | 2005-03-03 10:48:12 +0000 | [diff] [blame] | 1624 | - Patch #1117339: Add cookielib special name tests. | 
 | 1625 |  | 
| Martin v. Löwis | e869eb1 | 2005-03-03 09:46:07 +0000 | [diff] [blame] | 1626 | - Patch #1112812: Make bsddb/__init__.py more friendly for modulefinder. | 
 | 1627 |  | 
| Martin v. Löwis | f2a8d63 | 2005-03-03 08:35:22 +0000 | [diff] [blame] | 1628 | - Patch #1110248: SYNC_FLUSH the zlib buffer for GZipFile.flush. | 
 | 1629 |  | 
| Martin v. Löwis | df24153 | 2005-03-03 08:17:42 +0000 | [diff] [blame] | 1630 | - Patch #1107973: Allow to iterate over the lines of a tarfile.ExFileObject. | 
 | 1631 |  | 
| Martin v. Löwis | 8ed338a | 2005-03-03 08:12:27 +0000 | [diff] [blame] | 1632 | - Patch #1104111: Alter setup.py --help and --help-commands. | 
 | 1633 |  | 
| Martin v. Löwis | 4afe154 | 2005-03-01 08:09:28 +0000 | [diff] [blame] | 1634 | - Patch #1121234: Properly cleanup _exit and tkerror commands. | 
 | 1635 |  | 
| Martin v. Löwis | c2a0ac2 | 2005-02-24 20:22:10 +0000 | [diff] [blame] | 1636 | - Patch #1049151: xdrlib now unpacks booleans as True or False. | 
 | 1637 |  | 
| Raymond Hettinger | bab4143 | 2005-02-05 01:31:19 +0000 | [diff] [blame] | 1638 | - Fixed bug in a NameError bug in cookielib.  Patch #1116583. | 
 | 1639 |  | 
| Guido van Rossum | d064142 | 2005-02-03 15:01:24 +0000 | [diff] [blame] | 1640 | - Applied a security fix to SimpleXMLRPCserver (PSF-2005-001).  This | 
 | 1641 |   disables recursive traversal through instance attributes, which can | 
 | 1642 |   be exploited in various ways. | 
 | 1643 |  | 
| Tim Peters | e3547fd | 2005-12-16 23:13:57 +0000 | [diff] [blame] | 1644 | - Bug #1222790: in SimpleXMLRPCServer, set the reuse-address and close-on-exec | 
| Andrew M. Kuchling | 3a97605 | 2005-12-04 15:07:41 +0000 | [diff] [blame] | 1645 |   flags on the HTTP listening socket. | 
 | 1646 |  | 
| Andrew M. Kuchling | e63fde7 | 2005-12-04 15:36:57 +0000 | [diff] [blame] | 1647 | - Bug #792570: SimpleXMLRPCServer had problems if the request grew too large. | 
 | 1648 |   Fixed by reading the HTTP body in chunks instead of one big socket.read(). | 
 | 1649 |  | 
| Fred Drake | fbdeaad | 2006-07-29 16:56:15 +0000 | [diff] [blame] | 1650 | - Patches #893642, #1039083: add allow_none, encoding arguments to | 
 | 1651 |   constructors of SimpleXMLRPCServer and CGIXMLRPCRequestHandler. | 
| Andrew M. Kuchling | 10a16de | 2005-12-04 16:34:40 +0000 | [diff] [blame] | 1652 |  | 
| Martin v. Löwis | 1d11de6 | 2005-01-29 13:29:23 +0000 | [diff] [blame] | 1653 | - Bug #1110478: Revert os.environ.update to do putenv again. | 
 | 1654 |  | 
| Thomas Heller | d6c6e22 | 2005-01-20 19:20:16 +0000 | [diff] [blame] | 1655 | - Bug #1103844: fix distutils.install.dump_dirs() with negated options. | 
 | 1656 |  | 
| Martin v. Löwis | 22b457e | 2005-01-16 08:40:58 +0000 | [diff] [blame] | 1657 | - os.{SEEK_SET, SEEK_CUR, SEEK_END} have been added for convenience. | 
 | 1658 |  | 
| Andrew McNamara | a08eecb | 2005-01-12 03:25:27 +0000 | [diff] [blame] | 1659 | - Enhancements to the csv module: | 
 | 1660 |  | 
 | 1661 |   + Dialects are now validated by the underlying C code, better | 
| Georg Brandl | 7eb4b7d | 2005-07-22 21:49:32 +0000 | [diff] [blame] | 1662 |     reflecting its capabilities, and improving its compliance with | 
| Tim Peters | ecc6e6a | 2005-07-10 22:30:55 +0000 | [diff] [blame] | 1663 |     PEP 305. | 
| Andrew McNamara | a08eecb | 2005-01-12 03:25:27 +0000 | [diff] [blame] | 1664 |   + Dialect parameter parsing has been re-implemented to improve error | 
 | 1665 |     reporting. | 
 | 1666 |   + quotechar=None and quoting=QUOTE_NONE now work the way PEP 305 | 
 | 1667 |     dictates. | 
 | 1668 |   + the parser now removes the escapechar prefix from escaped characters. | 
| Andrew McNamara | 0f0599d | 2005-01-12 09:45:18 +0000 | [diff] [blame] | 1669 |   + when quoting=QUOTE_NONNUMERIC, the writer now tests for numeric | 
| Andrew M. Kuchling | 6db6782 | 2006-04-18 14:04:57 +0000 | [diff] [blame] | 1670 |     types, rather than any object that can be represented as a numeric. | 
| Andrew McNamara | 0f0599d | 2005-01-12 09:45:18 +0000 | [diff] [blame] | 1671 |   + when quoting=QUOTE_NONNUMERIC, the reader now casts unquoted fields | 
 | 1672 |     to floats. | 
| Andrew McNamara | f69d94f | 2005-01-13 11:30:54 +0000 | [diff] [blame] | 1673 |   + reader now allows \r characters to be quoted (previously it only allowed | 
 | 1674 |     \n to be quoted). | 
| Andrew McNamara | c89f284 | 2005-01-12 07:44:42 +0000 | [diff] [blame] | 1675 |   + writer doublequote handling improved. | 
| Andrew McNamara | a08eecb | 2005-01-12 03:25:27 +0000 | [diff] [blame] | 1676 |   + Dialect classes passed to the module are no longer instantiated by | 
 | 1677 |     the module before being parsed (the former validation scheme required | 
 | 1678 |     this, but the mechanism was unreliable). | 
 | 1679 |   + The dialect registry now contains instances of the internal | 
 | 1680 |     C-coded dialect type, rather than references to python objects. | 
 | 1681 |   + the internal c-coded dialect type is now immutable. | 
 | 1682 |   + register_dialect now accepts the same keyword dialect specifications | 
 | 1683 |     as the reader and writer, allowing the user to register dialects | 
 | 1684 |     without first creating a dialect class. | 
 | 1685 |   + a configurable limit to the size of parsed fields has been added - | 
 | 1686 |     previously, an unmatched quote character could result in the entire | 
 | 1687 |     file being read into the field buffer before an error was reported. | 
| Andrew McNamara | 31d8896 | 2005-01-12 03:45:10 +0000 | [diff] [blame] | 1688 |   + A new module method csv.field_size_limit() has been added that sets | 
| Andrew McNamara | a08eecb | 2005-01-12 03:25:27 +0000 | [diff] [blame] | 1689 |     the parser field size limit (returning the former limit). The initial | 
 | 1690 |     limit is 128kB. | 
| Andrew McNamara | 7f2053e | 2005-01-12 11:17:16 +0000 | [diff] [blame] | 1691 |   + A line_num attribute has been added to the reader object, which tracks | 
 | 1692 |     the number of lines read from the source iterator. This is not | 
 | 1693 |     the same as the number of records returned, as records can span | 
 | 1694 |     multiple lines. | 
| Andrew McNamara | a08eecb | 2005-01-12 03:25:27 +0000 | [diff] [blame] | 1695 |   + reader and writer objects were not being registered with the cyclic-GC. | 
 | 1696 |     This has been fixed. | 
 | 1697 |  | 
| Brett Cannon | e6539c4 | 2005-01-08 02:43:53 +0000 | [diff] [blame] | 1698 | - _DummyThread objects in the threading module now delete self.__block that is | 
 | 1699 |   inherited from _Thread since it uses up a lock allocated by 'thread'.  The | 
 | 1700 |   lock primitives tend to be limited in number and thus should not be wasted on | 
 | 1701 |   a _DummyThread object.  Fixes bug #1089632. | 
 | 1702 |  | 
| Raymond Hettinger | 97db05d | 2005-01-07 08:15:41 +0000 | [diff] [blame] | 1703 | - The imghdr module now detects Exif files. | 
 | 1704 |  | 
| Raymond Hettinger | 6065d32 | 2004-12-20 23:51:53 +0000 | [diff] [blame] | 1705 | - StringIO.truncate() now correctly adjusts the size attribute. | 
 | 1706 |   (Bug #951915). | 
 | 1707 |  | 
| Marc-André Lemburg | bb4f1bd | 2004-12-10 21:58:14 +0000 | [diff] [blame] | 1708 | - locale.py now uses an updated locale alias table (built using | 
 | 1709 |   Tools/i18n/makelocalealias.py, a tool to parse the X11 locale | 
 | 1710 |   alias file); the encoding lookup was enhanced to use Python's | 
| Andrew M. Kuchling | 88b8582 | 2005-08-23 00:57:07 +0000 | [diff] [blame] | 1711 |   encoding alias table. | 
| Marc-André Lemburg | bb4f1bd | 2004-12-10 21:58:14 +0000 | [diff] [blame] | 1712 |  | 
| Raymond Hettinger | 3557f42 | 2004-12-07 12:02:02 +0000 | [diff] [blame] | 1713 | - moved deprecated modules to Lib/lib-old:  whrandom, tzparse, statcache. | 
 | 1714 |  | 
| Raymond Hettinger | a6b45cc | 2004-12-07 07:05:57 +0000 | [diff] [blame] | 1715 | - the pickle module no longer accepts the deprecated None option in the | 
 | 1716 |   args tuple returned by __reduce__(). | 
 | 1717 |  | 
| Brett Cannon | 84667c0 | 2004-12-07 03:25:18 +0000 | [diff] [blame] | 1718 | - optparse now optionally imports gettext.  This allows its use in setup.py. | 
 | 1719 |  | 
| Raymond Hettinger | 3489cad | 2004-12-05 05:20:42 +0000 | [diff] [blame] | 1720 | - the pickle module no longer uses the deprecated bin parameter. | 
 | 1721 |  | 
| Raymond Hettinger | 1bc82f8 | 2004-12-05 03:58:17 +0000 | [diff] [blame] | 1722 | - the shelve module no longer uses the deprecated binary parameter. | 
 | 1723 |  | 
| Raymond Hettinger | 6c92d76 | 2004-12-05 03:28:00 +0000 | [diff] [blame] | 1724 | - the pstats module no longer uses the deprecated ignore() method. | 
 | 1725 |  | 
| Raymond Hettinger | f3fa946 | 2004-12-05 01:58:09 +0000 | [diff] [blame] | 1726 | - the filecmp module no longer uses the deprecated use_statcache argument. | 
 | 1727 |  | 
| Raymond Hettinger | 664347b | 2004-12-04 21:21:53 +0000 | [diff] [blame] | 1728 | - unittest.TestCase.run() and unittest.TestSuite.run() can now be successfully | 
 | 1729 |   extended or overridden by subclasses.  Formerly, the subclassed method would | 
 | 1730 |   be ignored by the rest of the module.  (Bug #1078905). | 
 | 1731 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1732 | - heapq.nsmallest() and heapq.nlargest() now support key= arguments with | 
| Raymond Hettinger | 3b0c7c2 | 2004-12-03 08:30:39 +0000 | [diff] [blame] | 1733 |   the same meaning as in list.sort(). | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1734 |  | 
| Walter Dörwald | 3673369 | 2004-12-22 12:50:50 +0000 | [diff] [blame] | 1735 | - Bug #1076985: ``codecs.StreamReader.readline()`` now calls ``read()`` only | 
 | 1736 |   once when a size argument is given. This prevents a buffer overflow in the | 
 | 1737 |   tokenizer with very long source lines. | 
 | 1738 |  | 
| Barry Warsaw | 538561e | 2006-01-01 21:48:54 +0000 | [diff] [blame] | 1739 | - Bug #1083110: ``zlib.decompress.flush()`` would segfault if called | 
 | 1740 |   immediately after creating the object, without any intervening | 
 | 1741 |   ``.decompress()`` calls. | 
| Andrew M. Kuchling | 3b585b3 | 2004-12-28 20:10:48 +0000 | [diff] [blame] | 1742 |  | 
| Skip Montanaro | 0588581 | 2005-01-16 20:48:27 +0000 | [diff] [blame] | 1743 | - The reconvert.quote function can now emit triple-quoted strings.  The | 
 | 1744 |   reconvert module now has some simple documentation. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1745 |  | 
| Walter Dörwald | af3b39a | 2005-02-18 13:22:43 +0000 | [diff] [blame] | 1746 | - ``UserString.MutableString`` now supports negative indices in | 
 | 1747 |   ``__setitem__`` and ``__delitem__`` | 
 | 1748 |  | 
| Greg Ward | 4040794 | 2005-03-05 02:53:17 +0000 | [diff] [blame] | 1749 | - Bug #1149508: ``textwrap`` now handles hyphenated numbers (eg. "2004-03-05") | 
 | 1750 |   correctly. | 
 | 1751 |  | 
| Walter Dörwald | bc8e642 | 2005-04-21 21:32:03 +0000 | [diff] [blame] | 1752 | - Partial fixes for SF bugs #1163244 and #1175396: If a chunk read by | 
 | 1753 |   ``codecs.StreamReader.readline()`` has a trailing "\r", read one more | 
 | 1754 |   character even if the user has passed a size parameter to get a proper | 
 | 1755 |   line ending. Remove the special handling of a "\r\n" that has been split | 
 | 1756 |   between two lines. | 
 | 1757 |  | 
| Walter Dörwald | a47d1c0 | 2005-08-30 10:23:14 +0000 | [diff] [blame] | 1758 | - Bug #1251300: On UCS-4 builds the "unicode-internal" codec will now complain | 
 | 1759 |   about illegal code points. The codec now supports PEP 293 style error | 
 | 1760 |   handlers. | 
 | 1761 |  | 
| Walter Dörwald | 78a78b0 | 2005-09-01 12:04:29 +0000 | [diff] [blame] | 1762 | - Bug #1235646: ``codecs.StreamRecoder.next()`` now reencodes the data it reads | 
| Walter Dörwald | c5238b8 | 2005-09-01 11:56:53 +0000 | [diff] [blame] | 1763 |   from the input stream, so that the output is a byte string in the correct | 
 | 1764 |   encoding instead of a unicode string. | 
| Greg Ward | 4040794 | 2005-03-05 02:53:17 +0000 | [diff] [blame] | 1765 |  | 
| Gustavo Niemeyer | 6fa0c5a | 2005-09-14 08:54:39 +0000 | [diff] [blame] | 1766 | - Bug #1202493: Fixing SRE parser to handle '{}' as perl does, rather than | 
 | 1767 |   considering it exactly like a '*'. | 
 | 1768 |  | 
| Walter Dörwald | 007f8df | 2005-10-09 19:42:27 +0000 | [diff] [blame] | 1769 | - Bug #1245379: Add "unicode-1-1-utf-7" as an alias for "utf-7" to | 
 | 1770 |   ``encodings.aliases``. | 
| Gustavo Niemeyer | 6fa0c5a | 2005-09-14 08:54:39 +0000 | [diff] [blame] | 1771 |  | 
| Walter Dörwald | 09f0dd5 | 2005-11-21 19:10:07 +0000 | [diff] [blame] | 1772 | - ` uu.encode()`` and ``uu.decode()`` now support unicode filenames. | 
 | 1773 |  | 
| Gustavo Niemeyer | 54814881 | 2006-01-31 18:34:13 +0000 | [diff] [blame] | 1774 | - Patch #1413711: Certain patterns of differences were making difflib | 
 | 1775 |   touch the recursion limit. | 
 | 1776 |  | 
| Walter Dörwald | 58917a6 | 2006-03-31 15:26:22 +0000 | [diff] [blame] | 1777 | - Bug #947906: An object oriented interface has been added to the calendar | 
 | 1778 |   module. It's possible to generate HTML calendar now and the module can be | 
| Walter Dörwald | 48d5e50 | 2006-04-01 07:57:00 +0000 | [diff] [blame] | 1779 |   called as a script (e.g. via ``python -mcalendar``). Localized month and | 
 | 1780 |   weekday names can be ouput (even if an exotic encoding is used) using | 
 | 1781 |   special classes that use unicode. | 
| Walter Dörwald | 58917a6 | 2006-03-31 15:26:22 +0000 | [diff] [blame] | 1782 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1783 | Build | 
 | 1784 | ----- | 
 | 1785 |  | 
| Neal Norwitz | 602d339 | 2006-03-31 08:21:40 +0000 | [diff] [blame] | 1786 | - Fix test_float, test_long, and test_struct failures on Tru64 with gcc | 
 | 1787 |   by using -mieee gcc option. | 
 | 1788 |  | 
| Martin v. Löwis | 86d6626 | 2006-02-17 08:40:11 +0000 | [diff] [blame] | 1789 | - Patch #1432345: Make python compile on DragonFly. | 
 | 1790 |  | 
| Martin v. Löwis | 856bf9a | 2006-02-14 20:42:55 +0000 | [diff] [blame] | 1791 | - Build support for Win64-AMD64 was added. | 
 | 1792 |  | 
| Martin v. Löwis | a55e55e | 2006-02-11 15:55:14 +0000 | [diff] [blame] | 1793 | - Patch #1428494: Prefer linking against ncursesw over ncurses library. | 
 | 1794 |  | 
| Martin v. Löwis | fd9a72a | 2006-01-08 10:07:33 +0000 | [diff] [blame] | 1795 | - Patch #881820: look for openpty and forkpty also in libbsd. | 
 | 1796 |  | 
| Martin v. Löwis | 64c33dd | 2006-01-03 07:42:14 +0000 | [diff] [blame] | 1797 | - The sources of zlib are now part of the Python distribution (zlib 1.2.3). | 
 | 1798 |   The zlib module is now builtin on Windows. | 
 | 1799 |  | 
| Martin v. Löwis | d5845ec | 2005-12-30 12:31:38 +0000 | [diff] [blame] | 1800 | - Use -xcode=pic32 for CCSHARED on Solaris with SunPro. | 
 | 1801 |  | 
| Martin v. Löwis | 147fbe5 | 2005-08-07 21:09:30 +0000 | [diff] [blame] | 1802 | - Bug #1189330: configure did not correctly determine the necessary | 
 | 1803 |   value of LINKCC if python was built with GCC 4.0. | 
 | 1804 |  | 
| Trent Mick | 8321b42 | 2005-07-26 02:29:21 +0000 | [diff] [blame] | 1805 | - Upgrade Windows build to zlib 1.2.3 which eliminates a potential security | 
 | 1806 |   vulnerability in zlib 1.2.1 and 1.2.2. | 
 | 1807 |  | 
| Brett Cannon | 08cd598 | 2005-04-24 22:26:38 +0000 | [diff] [blame] | 1808 | - EXTRA_CFLAGS has been introduced as an environment variable to hold compiler | 
 | 1809 |   flags that change binary compatibility.  Changes were also made to | 
 | 1810 |   distutils.sysconfig to also use the environment variable when used during | 
| Martin v. Löwis | d7c795e | 2005-04-25 07:14:03 +0000 | [diff] [blame] | 1811 |   compilation of the interpreter and of C extensions through distutils. | 
| Brett Cannon | 08cd598 | 2005-04-24 22:26:38 +0000 | [diff] [blame] | 1812 |  | 
| Bob Ippolito | ed23346 | 2005-03-29 13:47:59 +0000 | [diff] [blame] | 1813 | - SF patch 1171735: Darwin 8's headers are anal about POSIX compliance, | 
 | 1814 |   and linking has changed (prebinding is now deprecated, and libcc_dynamic | 
 | 1815 |   no longer exists). This configure patch makes things right. | 
 | 1816 |  | 
| Martin v. Löwis | e2713be | 2005-03-08 15:03:08 +0000 | [diff] [blame] | 1817 | - Bug #1158607: Build with --disable-unicode again. | 
 | 1818 |  | 
| Brett Cannon | 46d9623 | 2005-02-16 00:07:19 +0000 | [diff] [blame] | 1819 | - spwdmodule.c is built only if either HAVE_GETSPNAM or HAVE_HAVE_GETSPENT is | 
 | 1820 |   defined.  Discovered as a result of not being able to build on OS X. | 
 | 1821 |  | 
| Brett Cannon | 516592f | 2004-12-07 00:42:59 +0000 | [diff] [blame] | 1822 | - setup.py now uses the directories specified in LDFLAGS using the -L option | 
 | 1823 |   and in CPPFLAGS using the -I option for adding library and include | 
 | 1824 |   directories, respectively, for compiling extension modules against.  This has | 
 | 1825 |   led to the core being compiled using the values in CPPFLAGS.  It also removes | 
 | 1826 |   the need for the special-casing of both DarwinPorts and Fink for darwin since | 
 | 1827 |   the proper directories can be specified in LDFLAGS (``-L/sw/lib`` for Fink, | 
 | 1828 |   ``-L/opt/local/lib`` for DarwinPorts) and CPPFLAGS (``-I/sw/include`` for | 
 | 1829 |   Fink, ``-I/opt/local/include`` for DarwinPorts). | 
 | 1830 |  | 
| Brett Cannon | 4380242 | 2005-02-10 20:48:03 +0000 | [diff] [blame] | 1831 | - Test in configure.in that checks for tzset no longer dependent on tm->tm_zone | 
 | 1832 |   to exist in the struct (not required by either ISO C nor the UNIX 2 spec). | 
 | 1833 |   Tests for sanity in tzname when HAVE_TZNAME defined were also defined. | 
 | 1834 |   Closes bug #1096244.  Thanks Gregory Bond. | 
 | 1835 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1836 | C API | 
 | 1837 | ----- | 
 | 1838 |  | 
| Tim Peters | c9d78aa | 2006-03-26 23:27:58 +0000 | [diff] [blame] | 1839 | - ``PyMem_{Del, DEL}`` and ``PyMem_{Free, FREE}`` no longer map to | 
 | 1840 |   ``PyObject_{Free, FREE}``.  They map to the system ``free()`` now.  If memory | 
 | 1841 |   is obtained via the ``PyObject_`` family, it must be released via the | 
 | 1842 |   ``PyObject_`` family, and likewise for the ``PyMem_`` family.  This has | 
 | 1843 |   always been officially true, but when Python's small-object allocator was | 
 | 1844 |   introduced, an attempt was made to cater to a few extension modules | 
 | 1845 |   discovered at the time that obtained memory via ``PyObject_New`` but | 
 | 1846 |   released it via ``PyMem_DEL``.  It's years later, and if such code still | 
 | 1847 |   exists it will fail now (probably with segfaults, but calling wrong | 
 | 1848 |   low-level memory management functions can yield many symptoms). | 
 | 1849 |  | 
| Raymond Hettinger | beb3101 | 2005-08-16 03:47:52 +0000 | [diff] [blame] | 1850 | - Added a C API for set and frozenset objects. | 
 | 1851 |  | 
| Raymond Hettinger | 6651748 | 2004-12-03 11:45:13 +0000 | [diff] [blame] | 1852 | - Removed PyRange_New(). | 
 | 1853 |  | 
| Walter Dörwald | d1c1e10 | 2005-10-06 20:29:57 +0000 | [diff] [blame] | 1854 | - Patch #1313939: PyUnicode_DecodeCharmap() accepts a unicode string as the | 
 | 1855 |   mapping argument now. This string is used as a mapping table. Byte values | 
 | 1856 |   greater than the length of the string and 0xFFFE are treated as undefined | 
 | 1857 |   mappings. | 
 | 1858 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1859 |  | 
 | 1860 | Tests | 
 | 1861 | ----- | 
 | 1862 |  | 
| Martin v. Löwis | 4d394df | 2005-01-23 09:19:22 +0000 | [diff] [blame] | 1863 | - In test_os, st_?time is now truncated before comparing it with ST_?TIME. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1864 |  | 
| Hye-Shik Chang | aaa2f1d | 2005-12-10 17:44:27 +0000 | [diff] [blame] | 1865 | - Patch #1276356: New resource "urlfetch" is implemented.  This enables | 
 | 1866 |   even impatient people to run tests that require remote files. | 
 | 1867 |  | 
| Brett Cannon | ced04e0 | 2005-02-13 22:53:22 +0000 | [diff] [blame] | 1868 |  | 
 | 1869 | Documentation | 
 | 1870 | ------------- | 
 | 1871 |  | 
| Georg Brandl | 8cb3077 | 2006-01-20 09:34:29 +0000 | [diff] [blame] | 1872 | - Bug #1402224: Add warning to dl docs about crashes. | 
 | 1873 |  | 
| Georg Brandl | a3a93ae | 2006-01-20 09:14:36 +0000 | [diff] [blame] | 1874 | - Bug #1396471: Document that Windows' ftell() can return invalid | 
 | 1875 |   values for text files with UNIX-style line endings. | 
 | 1876 |  | 
| Georg Brandl | 3225242 | 2005-09-14 20:42:00 +0000 | [diff] [blame] | 1877 | - Bug #1274828: Document os.path.splitunc(). | 
 | 1878 |  | 
| Georg Brandl | 79c122f | 2005-08-24 07:31:33 +0000 | [diff] [blame] | 1879 | - Bug #1190204: Clarify which directories are searched by site.py. | 
 | 1880 |  | 
| Georg Brandl | 6f2bbd3 | 2005-08-24 07:26:55 +0000 | [diff] [blame] | 1881 | - Bug #1193849: Clarify os.path.expanduser() documentation. | 
 | 1882 |  | 
| Georg Brandl | f13c4ba | 2005-08-02 10:28:08 +0000 | [diff] [blame] | 1883 | - Bug #1243192: re.UNICODE and re.LOCALE affect \d, \D, \s and \S. | 
 | 1884 |  | 
| Georg Brandl | 150db73 | 2005-07-18 08:53:17 +0000 | [diff] [blame] | 1885 | - Bug #755617: Document the effects of os.chown() on Windows. | 
 | 1886 |  | 
| Georg Brandl | 379f99d | 2005-06-26 21:09:38 +0000 | [diff] [blame] | 1887 | - Patch #1180012: The documentation for modulefinder is now in the library reference. | 
 | 1888 |  | 
 | 1889 | - Patch #1213031: Document that os.chown() accepts argument values of -1. | 
 | 1890 |  | 
 | 1891 | - Bug #1190563: Document os.waitpid() return value with WNOHANG flag. | 
 | 1892 |  | 
 | 1893 | - Bug #1175022: Correct the example code for property(). | 
 | 1894 |  | 
| Georg Brandl | 40c7165 | 2005-06-25 21:08:46 +0000 | [diff] [blame] | 1895 | - Document the IterableUserDict class in the UserDict module. | 
 | 1896 |   Closes bug #1166582. | 
 | 1897 |  | 
| Brett Cannon | ced04e0 | 2005-02-13 22:53:22 +0000 | [diff] [blame] | 1898 | - Remove all latent references for "Macintosh" that referred to semantics for | 
 | 1899 |   Mac OS 9 and change to reflect the state for OS X. | 
 | 1900 |   Closes patch #1095802.  Thanks Jack Jansen. | 
 | 1901 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1902 | Mac | 
 | 1903 | --- | 
 | 1904 |  | 
 | 1905 |  | 
| Hye-Shik Chang | 4e42281 | 2005-07-17 02:36:59 +0000 | [diff] [blame] | 1906 | New platforms | 
 | 1907 | ------------- | 
 | 1908 |  | 
 | 1909 | - FreeBSD 7 support is added. | 
 | 1910 |  | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1911 |  | 
 | 1912 | Tools/Demos | 
 | 1913 | ----------- | 
 | 1914 |  | 
| Brett Cannon | acde734 | 2006-03-01 04:28:00 +0000 | [diff] [blame] | 1915 | - Created Misc/Vim/vim_syntax.py to auto-generate a python.vim file in that | 
 | 1916 |   directory for syntax highlighting in Vim.  Vim directory was added and placed | 
 | 1917 |   vimrc to it (was previous up a level). | 
 | 1918 |  | 
| Georg Brandl | 5689731 | 2005-08-24 18:32:30 +0000 | [diff] [blame] | 1919 | - Added two new files to Tools/scripts: pysource.py, which recursively | 
 | 1920 |   finds Python source files, and findnocoding.py, which finds Python | 
 | 1921 |   source files that need an encoding declaration. | 
 | 1922 |   Patch #784089, credits to Oleg Broytmann. | 
 | 1923 |  | 
| Georg Brandl | 379f99d | 2005-06-26 21:09:38 +0000 | [diff] [blame] | 1924 | - Bug #1072853: pindent.py used an uninitialized variable. | 
 | 1925 |  | 
| Martin v. Löwis | ab9ec16 | 2005-04-09 10:53:34 +0000 | [diff] [blame] | 1926 | - Patch #1177597: Correct Complex.__init__. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1927 |  | 
| Barry Warsaw | 538561e | 2006-01-01 21:48:54 +0000 | [diff] [blame] | 1928 | - Fixed a display glitch in Pynche, which could cause the right arrow to | 
 | 1929 |   wiggle over by a pixel. | 
| Raymond Hettinger | 4901a1f | 2004-12-02 08:59:14 +0000 | [diff] [blame] | 1930 |  | 
| Skip Montanaro | e5d7f7f | 2002-09-20 14:16:59 +0000 | [diff] [blame] | 1931 | ---- | 
 | 1932 |  | 
 | 1933 | **(For information about older versions, consult the HISTORY file.)** |