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