~ubuntu-branches/ubuntu/lucid/python2.6/lucid

« back to all changes in this revision

Viewing changes to Misc/NEWS

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2010-03-11 13:30:19 UTC
  • mto: (10.1.13 sid)
  • mto: This revision was merged to the branch mainline in revision 44.
  • Revision ID: james.westby@ubuntu.com-20100311133019-sblbooa3uqrkoe70
Tags: upstream-2.6.5~rc2
ImportĀ upstreamĀ versionĀ 2.6.5~rc2

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
 
5
5
(editors: check NEWS.help for information about editing NEWS using ReST.)
6
6
 
 
7
What's New in Python 2.6.5 rc 2?
 
8
================================
 
9
 
 
10
*Release date: 2010-03-09*
 
11
 
 
12
Core and Builtins
 
13
-----------------
 
14
 
 
15
- Issue #8089: a OS X framework build with --with-universal-archs=3-way|intel
 
16
  had no way to select a 32-bit executable.
 
17
 
 
18
- Issue #8084: fixes build issues on OSX 10.6 when targetting OSX 10.4.
 
19
 
 
20
Library
 
21
-------
 
22
 
 
23
- Reverting the changes made in r78432. Discussed in the tracker issue #7540.
 
24
 
 
25
Extension Modules
 
26
-----------------
 
27
 
 
28
- Issue #7670: sqlite3: Fixed crashes when operating on closed connections.
 
29
 
 
30
- Issue #8053: logic was inverted on which platforms to run a test on.
 
31
  caused test_thread to fail on Windows.
 
32
 
 
33
 
 
34
What's New in Python 2.6.5 rc 1?
 
35
================================
 
36
 
 
37
*Release date: 2010-03-01*
 
38
 
 
39
Core and Builtins
 
40
-----------------
 
41
 
 
42
- Issue #7309: Fix unchecked attribute access when converting
 
43
  UnicodeEncodeError, UnicodeDecodeError, and UnicodeTranslateError to
 
44
  strings.
 
45
 
 
46
- Issue #7649: "u'%c' % char" now behaves like "u'%s' % char" and raises a
 
47
  UnicodeDecodeError if 'char' is a byte string that can't be decoded using
 
48
  the default encoding.
 
49
 
 
50
- Issue #5677: Explicitly forbid write operations on read-only file objects,
 
51
  and read operations on write-only file objects.  On Windows, the system C
 
52
  library would return a bogus result; on Solaris, it was possible to crash
 
53
  the interpreter.  Patch by Stefan Krah.
 
54
 
 
55
- Issue #4978: Passing keyword arguments as unicode strings is now allowed.
 
56
 
 
57
- Issue #7819: Check sys.call_tracing() arguments types.
 
58
 
 
59
- Issue #7788: Fix an interpreter crash produced by deleting a list
 
60
  slice with very large step value.
 
61
 
 
62
- Issue #7561: Operations on empty bytearrays (such as `int(bytearray())`)
 
63
  could crash in many places because of the PyByteArray_AS_STRING() macro
 
64
  returning NULL.  The macro now returns a statically allocated empty
 
65
  string instead.
 
66
 
 
67
- Issue #7604: Deleting an unset slotted attribute did not raise an
 
68
  AttributeError.
 
69
 
 
70
- Issue #7413: Passing '\0' as the separator to datetime.datetime.isoformat()
 
71
  used to drop the time part of the result.
 
72
 
 
73
- Issue #6108: unicode(exception) and str(exception) should return the same
 
74
  message when only __str__ (and not __unicode__) is overridden in the
 
75
  subclass.
 
76
 
 
77
- Issue #7491: Metaclass's __cmp__ method was ignored.
 
78
 
 
79
- Add Py3k warnings for parameter names in parenthesis.
 
80
 
 
81
- Issue #7362: Give a proper error message for def f((x)=3): pass.
 
82
 
 
83
- Issue #7085: Fix crash when importing some extensions in a thread
 
84
  on MacOSX 10.6.
 
85
 
 
86
- Issue #7070: Fix round bug for large odd integer arguments.
 
87
 
 
88
- Issue #7078: Set struct.__doc__ from _struct.__doc__.
 
89
 
 
90
- Issue #1722344: threading._shutdown() is now called in Py_Finalize(), which
 
91
  fixes the problem of some exceptions being thrown at shutdown when the
 
92
  interpreter is killed. Patch by Adam Olsen.
 
93
 
 
94
- Issue #7084: Fix a (very unlikely) crash when printing a list from one
 
95
  thread, and mutating it from another one.  Patch by Scott Dial.
 
96
 
 
97
- Issue #1747858: Fix lchown & fchown to work with large uid's and gid's on
 
98
  64-bit platforms.
 
99
 
 
100
 
 
101
Library
 
102
-------
 
103
 
 
104
- Issue #7250: Fix info leak of os.environ across multi-run uses of
 
105
  wsgiref.handlers.CGIHandler.
 
106
 
 
107
- Issue #1729305: Fix doctest to handle encode error with "backslashreplace".
 
108
 
 
109
- Issue #691291: codecs.open() should not convert end of lines on reading and
 
110
  writing.
 
111
 
 
112
- Issue #7975: correct regression in dict methods supported by bsddb.dbshelve.
 
113
 
 
114
- Issue #7959: ctypes callback functions are now registered correctly
 
115
  with the cycle garbage collector.
 
116
 
 
117
- Issue #6243: curses.getkey() can segfault when used with ungetch.
 
118
  Fix by Trundle and Jerry Chen.
 
119
 
 
120
- Issue #7597: curses.use_env() can now be called before initscr().
 
121
  Noted by Kan-Ru Chen.
 
122
 
 
123
- Issue #7970: email.Generator.flatten now correctly flattens message/rfc822
 
124
  messages parsed by email.Parser.HeaderParser.
 
125
 
 
126
- Issue #3426: ``os.path.abspath`` now returns unicode when its arg is unicode.
 
127
 
 
128
- Issue #7835: shelve should no longer produce mysterious warnings during
 
129
  interpreter shutdown.
 
130
 
 
131
- Issue #4772: Raise a ValueError when an unknown Bluetooth protocol is
 
132
  specified, rather than fall through to AF_PACKET (in the `socket` module).
 
133
  Also, raise ValueError rather than TypeError when an unknown TIPC address
 
134
  type is specified.  Patch by Brian Curtin.
 
135
 
 
136
- Issue #6939: Fix file I/O objects in the `io` module to keep the original
 
137
  file position when calling `truncate()`.  It would previously change the
 
138
  file position to the given argument, which goes against the tradition of
 
139
  ftruncate() and other truncation APIs.  Patch by Pascal Chambon.
 
140
 
 
141
- Issue #7773: Fix an UnboundLocalError in platform.linux_distribution() when
 
142
  the release file is empty.
 
143
 
 
144
- Issue #7748: Since unicode values are supported for some metadata options
 
145
  in Distutils, the DistributionMetadata get_* methods will now return an utf-8
 
146
  encoded string for them. This ensure that the upload and register commands
 
147
  send the right values to PyPI without any error.
 
148
 
 
149
- Issue #1670765: Prevent email.generator.Generator from re-wrapping
 
150
  headers in multipart/signed MIME parts, which fixes one of the sources of
 
151
  invalid modifications to such parts by Generator.
 
152
 
 
153
- Issue #7701: Fix crash in binascii.b2a_uu() in debug mode when given a
 
154
  1-byte argument.  Patch by Victor Stinner.
 
155
 
 
156
- Issue #3299: Fix possible crash in the _sre module when given bad
 
157
  argument values in debug mode.  Patch by Victor Stinner.
 
158
 
 
159
- Issue #5827: Make sure that normpath preserves unicode.  Initial patch
 
160
  by Matt Giuca.
 
161
 
 
162
- Issue #5372: Drop the reuse of .o files in Distutils' ccompiler (since
 
163
  Extension extra options may change the output without changing the .c
 
164
  file). Initial patch by Collin Winter.
 
165
 
 
166
- Issue #7617: Make sure distutils.unixccompiler.UnixCCompiler recognizes
 
167
  gcc when it has a fully qualified configuration prefix. Initial patch
 
168
  by Arfrever.
 
169
 
 
170
- Issue #7071: byte-compilation in Distutils is now done with respect to
 
171
  sys.dont_write_bytecode.
 
172
 
 
173
- Issue #7092: Remove py3k warning when importing cPickle.  2to3 handles
 
174
  renaming of `cPickle` to `pickle`.  The warning was annoying since there's
 
175
  no alternative to cPickle if you care about performance.  Patch by Florent
 
176
  Xicluna.
 
177
 
 
178
- Issue #7455: Fix possible crash in cPickle on invalid input.  Patch by
 
179
  Victor Stinner.
 
180
 
 
181
- Issue #6511: ZipFile now raises BadZipfile (instead of an IOError) when
 
182
  opening an empty or very small file.
 
183
 
 
184
- Issue #7552: Removed line feed in the base64 Authorization header in
 
185
  the Distutils upload command to avoid an error when PyPI reads it.
 
186
  This occurs on long passwords. Initial patch by JP St. Pierre.
 
187
 
 
188
- Issue #7231: urllib2 cannot handle https with proxy requiring auth. Patch by
 
189
  Tatsuhiro Tsujikawa.
 
190
 
 
191
- Issue #7348: StringIO.StringIO.readline(-1) now acts as if it got no argument
 
192
  like other file objects.
 
193
 
 
194
- Issue #5949: fixed IMAP4_SSL hang when the IMAP server response is
 
195
  missing proper end-of-line termination.
 
196
 
 
197
- Fix variations of extending deques:  d.extend(d)  d.extendleft(d)  d+=d
 
198
 
 
199
- Issue #1923: Fixed the removal of meaningful spaces when PKG-INFO is 
 
200
  generated in Distutils. Patch by Stephen Emslie.
 
201
 
 
202
- Issue #4120: Drop reference to CRT from manifest when building extensions
 
203
  with msvc9compiler.
 
204
 
 
205
- Issue #7410: deepcopy of itertools.count() erroneously reset the count.
 
206
 
 
207
- Issue #7403: logging: Fixed possible race condition in lock creation.
 
208
 
 
209
- Issue #7341: Close the internal file object in the TarFile constructor in
 
210
  case of an error.
 
211
 
 
212
- Issue #7328: pydoc no longer corrupts sys.path when run with the '-m' switch
 
213
 
 
214
- Issue #7318: multiprocessing now uses a timeout when it fails to establish
 
215
  a connection with another process, rather than looping endlessly. The
 
216
  default timeout is 20 seconds, which should be amply sufficient for
 
217
  local connections.
 
218
 
 
219
- Issue #7282: Fix a memory leak when an RLock was used in a thread other
 
220
  than those started through `threading.Thread` (for example, using
 
221
  `thread.start_new_thread()`.
 
222
 
 
223
- Issue #7264: Fix a possible deadlock when deallocating thread-local objects
 
224
  which are part of a reference cycle.
 
225
 
 
226
- Issue #7249: Methods of io.BytesIO now allow `long` as well as `int`
 
227
  arguments.
 
228
 
 
229
- Issue #6665: Fix fnmatch to properly match filenames with newlines in them.
 
230
 
 
231
- Issue #1008086: Fixed socket.inet_aton() to always return 4 bytes even on
 
232
  LP64 platforms (most 64-bit Linux, bsd, unix systems).
 
233
 
 
234
- Issue #7246 & Issue #7208: getpass now properly flushes input before
 
235
  reading from stdin so that existing input does not confuse it and
 
236
  lead to incorrect entry or an IOError.  It also properly flushes it
 
237
  afterwards to avoid the terminal echoing the input afterwards on
 
238
  OSes such as Solaris.
 
239
 
 
240
- Issue #7244: itertools.izip_longest() no longer ignores exceptions
 
241
  raised during the formation of an output tuple.
 
242
 
 
243
- Issue #7233: Fix a number of two-argument Decimal methods to make
 
244
  sure that they accept an int or long as the second argument.  Also
 
245
  fix buggy handling of large arguments (those with coefficient longer
 
246
  than the current precision) in shift and rotate.
 
247
 
 
248
- Issue #7082: When falling back to the MIME 'name' parameter, the
 
249
  correct place to look for it is the Content-Type header.
 
250
 
 
251
- Issue #7099: Decimal.is_normal now returns True for numbers with exponent
 
252
  larger than emax.
 
253
 
 
254
- Issue #7205: Fix a possible deadlock when using a BZ2File object from
 
255
  several threads at once.
 
256
 
 
257
- Issue #7048: Force Decimal.logb to round its result when that result
 
258
  is too large to fit in the current precision.
 
259
 
 
260
- Issue #1488943: difflib.Differ() doesn't always add hints for tab characters
 
261
 
 
262
- Issue #5037: Proxy the __unicode__ special method to __unicode__ instead of
 
263
  __str__.
 
264
 
 
265
- Issue #7481: When a threading.Thread failed to start it would leave the
 
266
  instance stuck in initial state and present in threading.enumerate().
 
267
 
 
268
- Issue #1068268: The subprocess module now handles EINTR in internal
 
269
  os.waitpid and os.read system calls where appropriate.
 
270
 
 
271
Extension Modules
 
272
-----------------
 
273
 
 
274
- Issue #7808: Fix reference leaks in _bsddb and related tests.
 
275
 
 
276
- Stop providing crtassem.h symbols when compiling with Visual Studio 2010, as
 
277
  msvcr100.dll is not a platform assembly anymore.
 
278
 
 
279
- Issue #6877: Make it possible to link the readline extension to libedit
 
280
  on OSX.
 
281
 
 
282
- Expat: Fix DoS via XML document with malformed UTF-8 sequences
 
283
  (CVE_2009_3560).
 
284
 
 
285
- Issue #7242: On Solaris 9 and earlier calling os.fork() from within a
 
286
  thread could raise an incorrect RuntimeError about not holding the import
 
287
  lock.  The import lock is now reinitialized after fork.
 
288
 
 
289
- Issue #7999: os.setreuid() and os.setregid() would refuse to accept a -1
 
290
  parameter on some platforms such as OS X.
 
291
 
 
292
Build
 
293
-----
 
294
 
 
295
- Issue #3920, #7903: Define _BSD_SOURCE on OpenBSD 4.4 through 4.9.
 
296
 
 
297
- Issue #7661: Allow ctypes to be built from a non-ASCII directory path.
 
298
  Patch by Florent Xicluna.
 
299
 
 
300
- Issue #7589: Only build the nis module when the correct header files are
 
301
  found.
 
302
 
 
303
- Switch to OpenSSL 0.9.8l on Windows.
 
304
 
 
305
- Issue #6603: Change READ_TIMESTAMP macro in ceval.c so that it
 
306
  compiles correctly under gcc on x86-64.  This fixes a reported
 
307
  problem with the --with-tsc build on x86-64.
 
308
 
 
309
- Ensure that it possible to build extensions for the default
 
310
  binary distribution on OSX 10.6 even when the user does not
 
311
  have the 10.4u SDK installed.
 
312
 
 
313
- Issue #7541: when using ``python-config`` with a framework install the
 
314
  compiler might use the wrong library.
 
315
 
 
316
Documentation
 
317
-------------
 
318
 
 
319
- Updating `Using Python` documentation to include description of CPython's
 
320
  -J, -U and -X options.
 
321
 
 
322
- Update python manual page (options -B, -O0, -s, environment variables
 
323
  PYTHONDONTWRITEBYTECODE, PYTHONNOUSERSITE).
 
324
 
 
325
Tests
 
326
-----
 
327
 
 
328
- issue #7728: test_timeout was changed to use test_support.bind_port
 
329
  instead of a hard coded port.
 
330
 
 
331
- Issue #7498: test_multiprocessing now uses test_support.find_unused_port
 
332
  instead of a hardcoded port number in test_rapid_restart.
 
333
 
 
334
- Issue #7431: use TESTFN in test_linecache instead of trying to create a 
 
335
  file in the Lib/test directory, which might be read-only for the
 
336
  user running the tests.
 
337
 
 
338
- Issue #7324: add a sanity check to regrtest argument parsing to
 
339
  catch the case of an option with no handler.
 
340
 
 
341
- Issue #7295: Do not use a hardcoded file name in test_tarfile.
 
342
 
 
343
- Issue #7270: Add some dedicated unit tests for multi-thread synchronization
 
344
  primitives such as Lock, RLock, Condition, Event and Semaphore.
 
345
 
 
346
- Issue #7055: test___all__ now greedily detects all modules which have an
 
347
  __all__ attribute, rather than using a hardcoded and incomplete list.
 
348
 
 
349
 
7
350
What's New in Python 2.6.4 final?
8
351
=================================
9
352
 
225
568
 
226
569
- Issue #6258: Support AMD64 in bdist_msi.
227
570
 
228
 
- Issue #5262: Fixed bug in next rollover time computation in
 
571
- Issue #6252: Fixed bug in next rollover time computation in
229
572
  TimedRotatingFileHandler.
230
573
 
231
574
- Issue #6121: pydoc now ignores leading and trailing spaces in the
543
886
 
544
887
- Issue #5387: Fixed mmap.move crash by integer overflow.
545
888
 
 
889
- Issue #3807: _multiprocessing build fails when configure is passed 
 
890
  --without-threads argument. When this occurs, _multiprocessing will
 
891
  be disabled, and not compiled.
 
892
 
546
893
- Issue #5261: Patch multiprocessing's semaphore.c to support context
547
894
  manager use: "with multiprocessing.Lock()" works now.
548
895
 
3551
3898
- Bug #1565661: in webbrowser, split() the command for the default
3552
3899
  GNOME browser in case it is a command with args.
3553
3900
 
3554
 
- Made the error message for time.strptime when the data data and
 
3901
- Made the error message for time.strptime when the data and
3555
3902
  format do match be more clear.
3556
3903
 
3557
3904
- Fix a bug in traceback.format_exception_only() that led to an error