summaryrefslogtreecommitdiff
path: root/Misc/NEWS.d/2.6a3.rst
blob: 5653d3850b154b6d75cff2904662c2bc26e94562 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
.. bpo: 2719
.. date: 6897
.. nonce: 4NH_Xn
.. release date: 08-May-2008
.. section: Core and Builtins

backported the ``next()`` builtin from Python 3.

..

.. bpo: 2681
.. date: 6896
.. nonce: 8UXx90
.. section: Core and Builtins

The octal literal ``0o8`` was incorrecly acctepted. Now it properly raises a
SyntaxError.

..

.. bpo: 2617
.. date: 6895
.. nonce: 1gTS6r
.. section: Core and Builtins

Reserved -J and -X arguments for Jython, IronPython and other
implementations of Python.

..

.. bpo: 0
.. date: 6894
.. nonce: aRO9gE
.. section: Core and Builtins

Implemented PEP 370: Per user site-packages directory.

..

.. bpo: 2670
.. date: 6893
.. nonce: VM2Luj
.. section: Library

Fix a failure in urllib2.build_opener(), when passed two handlers that
derive the same default base class.

..

.. bpo: 0
.. date: 6892
.. nonce: 7fblHZ
.. section: Library

Added kill, terminate and send_signal(sig) to subprocess.Popen.

..

.. bpo: 0
.. date: 6891
.. nonce: 88WSiY
.. section: Library

Added phase(z) -> phi, polar(z) -> r, phi and rect(r, phi) -> z to the cmath
module.

..

.. bpo: 0
.. date: 6890
.. nonce: 6dejMd
.. section: Library

Four new methods were added to the math and cmath modules: acosh, asinh,
atanh and log1p.

..

.. bpo: 0
.. date: 6889
.. nonce: v-VAd8
.. section: Library

zlib.decompressobj().flush(value) no longer crashes the interpreter when
passed a value less than or equal to zero.

..

.. bpo: 1631171
.. date: 6888
.. nonce: 8Bc0Zl
.. section: Library

Re-implement the 'warnings' module in C (the original Python code has been
kept as backup). This will allow for using the 'warning's machinery in such
places as the parser where use of pure Python code is not possible.  Both
the ``showarning()`` and ``formatwarning()`` gain an optional 'line'
argument which is not called by default for backwards-compatibility reasons.
Setting ``warnings.showwarning()`` to an implementation that lacks support
for the ``line`` argument will raise a DeprecationWarning.

..

.. bpo: 0
.. date: 6887
.. nonce: CNqdrb
.. section: Library

The audiodev module has been deprecated for removal in Python 3.0.

..

.. bpo: 2750
.. date: 6886
.. nonce: nv-hkg
.. section: Library

Add the 'json' package. Based on simplejson 1.9 and contributed by Bob
Ippolito.

..

.. bpo: 1734346
.. date: 6885
.. nonce: lfR8ca
.. section: Library

Support Unicode file names for zipfiles.

..

.. bpo: 2581
.. date: 6884
.. nonce: fOkdCT
.. section: Library

distutils: Vista UAC/elevation support for bdist_wininst.

..

.. bpo: 2635
.. date: 6883
.. nonce: F8Y92w
.. section: Library

Fix bug in 'fix_sentence_endings' textwrap.fill option, where an extra space
was added after a word containing (but not ending in) '.', '!' or '?'.

..

.. bpo: 0
.. date: 6882
.. nonce: lYk3LA
.. section: Library

Add from_buffer() and from_buffer_copy() class methods to ctypes data types.

..

.. bpo: 2682
.. date: 6881
.. nonce: NLrJe2
.. section: Library

ctypes callback functions no longer contain a cyclic reference to
themselves.

..

.. bpo: 0
.. date: 6880
.. nonce: TTWJof
.. section: Library

The getpass module has been improved on Unix.  It now uses /dev/tty by
default and uses stderr instead of stdout.  A GetPassWarning is issued when
input echo cannot be controlled.

..

.. bpo: 2014
.. date: 6879
.. nonce: CKvu6Y
.. section: Library

Allow XML-RPC datetime objects to have dates before 1900-01-01.

..

.. bpo: 2439
.. date: 6878
.. nonce: Kwwv4U
.. section: Library

Added new function pkgutil.get_data(), which is a convenience wrapper for
the PEP 302 get_data() API.

..

.. bpo: 2616
.. date: 6877
.. nonce: UHPY7r
.. section: Library

The ctypes.pointer() and ctypes.POINTER() functions are now implemented in C
for better performance.

..

.. bpo: 2408
.. date: 6876
.. nonce: GhLvZ5
.. section: Library

The ``_types`` module, which was used as in implementation detail of the
public ``types`` module, has been removed and replaced by pure python code.

..

.. bpo: 2513
.. date: 6875
.. nonce: x3Kj5E
.. section: Library

distutils on Windows is now capable of cross-compiling extension modules
between 32 and 64 bit platforms.  See the distutls build documentation for
more information.

..

.. bpo: 815646
.. date: 6874
.. nonce: GhCmJD
.. section: Library

Individual file objects may now be used from multiple threads at once
without fear of crashing the Python interpreter.  If file.close() is called
while an object is in use by another thread an IOError exception will be
raised and the file will not be closed.

..

.. bpo: 0
.. date: 6873
.. nonce: NdBuEp
.. section: Library

The bundled libffi copy is now in sync with the recently released
libffi3.0.5 version, apart from some small changes to
Modules/_ctypes/libffi/configure.ac.

..

.. bpo: 2385
.. date: 6872
.. nonce: qIBVVF
.. section: Library

distutils.core.run_script() makes __file__ available, so the controlled
environment will more closely mirror the typical script environment.  This
supports setup.py scripts that refer to data files.

..

.. bpo: 2550
.. date: 6871
.. nonce: wbV22J
.. section: Tests

The approach used by client/server code for obtaining ports to listen on in
network-oriented tests has been refined in an effort to facilitate running
multiple instances of the entire regression test suite in parallel without
issue. test_support.bind_port() has been fixed such that it will always
return a unique port -- which wasn't always the case with the previous
implementation, especially if socket options had been set that affected
address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT).  The new implementation of
bind_port() will actually raise an exception if it is passed an
AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or SO_REUSEPORT
socket option set.  Furthermore, if available, bind_port() will set the
SO_EXCLUSIVEADDRUSE option on the socket it's been passed.  This currently
only applies to Windows.  This option prevents any other sockets from
binding to the host/port we've bound to, thus removing the possibility of
the 'non-deterministic' behaviour, as Microsoft puts it, that occurs when a
second SOCK_STREAM socket binds and accepts to a host/port that's already
been bound by another socket.  The optional preferred port parameter to
bind_port() has been removed.  Under no circumstances should tests be hard
coding ports!

test_support.find_unused_port() has also been introduced, which will pass a
temporary socket object to bind_port() in order to obtain an unused port.
The temporary socket object is then closed and deleted, and the port is
returned.  This method should only be used for obtaining an unused port in
order to pass to an external program (i.e. the -accept [port] argument to
openssl's s_server mode) or as a parameter to a server-oriented class that
doesn't give you direct access to the underlying socket used.

Finally, test_support.HOST has been introduced, which should be used for the
host argument of any relevant socket calls (i.e. bind and connect).

The following tests were updated to following the new conventions:
test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib,
test_poplib, test_ftplib, test_telnetlib, test_socketserver,   test_asynchat
and test_socket_ssl.

It is now possible for multiple instances of the regression test suite to
run in parallel without issue.

..

.. bpo: 1496032
.. date: 6870
.. nonce: DcJtNu
.. section: Build

On alpha, use -mieee when gcc is the compiler.

..

.. bpo: 2544
.. date: 6869
.. nonce: -H_NZm
.. section: Build

On HP-UX systems, use 'gcc -shared' for linking when gcc is used as
compiler.

..

.. bpo: 2573
.. date: 6868
.. nonce: 4wDeJ7
.. section: Build

On MacOS X it is now possible to install the framework with a different name
using --with-framework-name=NAME.

..

.. bpo: 0
.. date: 6867
.. nonce: yznsKq
.. section: C API

Added implementation of copysign, acosh, asinh, atanh and log1p to the new
files Include/pymath.h and Python/pymath.h for platforms which provide the
functions through their libm. The files also contains several helpers and
constants for math.

..

.. bpo: 0
.. date: 6866
.. nonce: Kr65an
.. section: C API

Added a new convenience macro, PyErr_WarnPy3k, for issuing Py3k warnings.