Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(76548)

Delta Between Two Patch Sets: Misc/NEWS

Issue 11682: PEP 380 reference implementation for 3.3
Left Patch Set: Created 7 years, 11 months ago
Right Patch Set: Created 7 years, 5 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « Misc/ACKS ('k') | Modules/parsermodule.c » ('j') | Modules/parsermodule.c » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 +++++++++++ 1 +++++++++++
2 Python News 2 Python News
3 +++++++++++ 3 +++++++++++
4 4
5 What's New in Python 3.3 Alpha 1? 5 What's New in Python 3.3 Alpha 1?
6 ================================= 6 =================================
7 7
8 *Release date: XX-XXX-20XX* 8 *Release date: XX-XXX-20XX*
9 9
10 Core and Builtins 10 Core and Builtins
11 ----------------- 11 -----------------
12 12
13 - PEP 380, Issue #11682: Add "yield from <x>" to support easy delegation to 13 - PEP 380, Issue #11682: Add "yield from <x>" to support easy delegation to
14 subgenerators (patch by Greg Ewing and Renaud Blanch) 14 subgenerators (initial patch by Greg Ewing, integration into 3.3 by
15 Renaud Blanch, Ryan Kelly and Nick Coghlan)
16
17 - Issue #12736: Use full unicode case mappings for upper, lower, and title case.
18
19 - Issue #12760: Add a create mode to open(). Patch by David Townshend.
20
21 - Issue #13738: Simplify implementation of bytes.lower() and bytes.upper().
22
23 - Issue #13577: Built-in methods and functions now have a __qualname__.
24 Patch by sbt.
25
26 - Issue #6695: Full garbage collection runs now clear the freelist of set
27 objects. Initial patch by Matthias Troffaes.
28
29 - Fix OSError.__init__ and OSError.__new__ so that each of them can be
30 overriden and take additional arguments (followup to issue #12555).
31
32 - Fix the fix for issue #12149: it was incorrect, although it had the side
33 effect of appearing to resolve the issue. Thanks to Mark Shannon for
34 noticing.
35
36 - Issue #13505: Pickle bytes objects in a way that is compatible with
37 Python 2 when using protocols <= 2.
38
39 - Issue #11147: Fix an unused argument in _Py_ANNOTATE_MEMORY_ORDER. (Fix
40 given by Campbell Barton).
41
42 - Issue #13503: Use a more efficient reduction format for bytearrays with
43 pickle protocol >= 3. The old reduction format is kept with older protocols
44 in order to allow unpickling under Python 2. Patch by Irmen de Jong.
45
46 - Issue #7111: Python can now be run without a stdin, stdout or stderr
47 stream. It was already the case with Python 2. However, the corresponding
48 sys module entries are now set to None (instead of an unusable file object).
49
50 - Issue #11849: Ensure that free()d memory arenas are really released
51 on POSIX systems supporting anonymous memory mappings. Patch by
52 Charles-François Natali.
53
54 - Issue #13452: PyUnicode_EncodeDecimal() doesn't support error handlers
55 different than "strict" anymore. The caller was unable to compute the
56 size of the output buffer: it depends on the error handler.
57
58 - PEP 3155 / issue #13448: Qualified name for classes and functions.
59
60 - Issue #13436: Fix a bogus error message when an AST object was passed
61 an invalid integer value.
62
63 - Issue #13411: memoryview objects are now hashable when the underlying
64 object is hashable.
65
66 - Issue #13338: Handle all enumerations in _Py_ANNOTATE_MEMORY_ORDER
67 to allow compiling extension modules with -Wswitch-enum on gcc.
68 Initial patch by Floris Bruynooghe.
69
70 - Issue #10227: Add an allocation cache for a single slice object. Patch by
71 Stefan Behnel.
72
73 - Issue #13393: BufferedReader.read1() now asks the full requested size to
74 the raw stream instead of limiting itself to the buffer size.
75
76 - Issue #13392: Writing a pyc file should now be atomic under Windows as well.
77
78 - Issue #13333: The UTF-7 decoder now accepts lone surrogates (the encoder
79 already accepts them).
80
81 - Issue #13389: Full garbage collection passes now clear the freelists for
82 list and dict objects. They already cleared other freelists in the
83 interpreter.
84
85 - Issue #13327: Remove the need for an explicit None as the second argument
86 to os.utime, os.lutimes, os.futimes, os.futimens, os.futimesat, in
87 order to update to the current time. Also added keyword argument
88 handling to os.utimensat in order to remove the need for explicit None.
89
90 - Issue #13350: Simplify some C code by replacing most usages of
91 PyUnicode_Format by PyUnicode_FromFormat.
92
93 - Issue #13342: input() used to ignore sys.stdin's and sys.stdout's unicode
94 error handler in interactive mode (when calling into PyOS_Readline()).
95
96 - Issue #9896: Add start, stop, and step attributes to range objects.
97
98 - Issue #13343: Fix a SystemError when a lambda expression uses a global
99 variable in the default value of a keyword-only argument:
100 (lambda *, arg=GLOBAL_NAME: None)
101
102 - Issue #12797: Added custom opener parameter to builtin open() and
103 FileIO.open().
104
105 - Issue #10519: Avoid unnecessary recursive function calls in
106 setobject.c.
107
108 - Issue #10363: Deallocate global locks in Py_Finalize().
109
110 - Issue #13018: Fix reference leaks in error paths in dictobject.c.
111 Patch by Suman Saha.
112
113 - Issue #13201: Define '==' and '!=' to compare range objects based on
114 the sequence of values they define (instead of comparing based on
115 object identity).
116
117 - Issue #1294232: In a few cases involving metaclass inheritance, the
118 interpreter would sometimes invoke the wrong metaclass when building a new
119 class object. These cases now behave correctly. Patch by Daniel Urban.
120
121 - Issue #12753: Add support for Unicode name aliases and named sequences.
122 Both :func:`unicodedata.lookup()` and '\N{...}' now resolve aliases,
123 and :func:`unicodedata.lookup()` resolves named sequences too.
124
125 - Issue #12170: The count(), find(), rfind(), index() and rindex() methods
126 of bytes and bytearray objects now accept an integer between 0 and 255
127 as their first argument. Patch by Petri Lehtinen.
128
129 - Issue #12604: VTRACE macro expanded to no-op in _sre.c to avoid compiler
130 warnings. Patch by Josh Triplett and Petri Lehtinen.
131
132 - Issue #12281: Rewrite the MBCS codec to handle correctly replace and ignore
133 error handlers on all Windows versions. The MBCS codec is now supporting all
134 error handlers, instead of only replace to encode and ignore to decode.
135
136 - Issue #13188: When called without an explicit traceback argument,
137 generator.throw() now gets the traceback from the passed exception's
138 ``__traceback__`` attribute. Patch by Petri Lehtinen.
139
140 - Issue #13146: Writing a pyc file is now atomic under POSIX.
141
142 - Issue #7833: Extension modules built using distutils on Windows will no
143 longer include a "manifest" to prevent them failing at import time in some
144 embedded situations.
145
146 - PEP 3151 / issue #12555: reworking the OS and IO exception hierarchy.
147
148 - Add internal API for static strings (_Py_identifier et al.).
149
150 - Issue #13063: the Windows error ERROR_NO_DATA (numbered 232 and described
151 as "The pipe is being closed") is now mapped to POSIX errno EPIPE
152 (previously EINVAL).
153
154 - Issue #12911: Fix memory consumption when calculating the repr() of huge
155 tuples or lists.
156
157 - PEP 393: flexible string representation. Thanks to Torsten Becker for the
158 initial implementation, and Victor Stinner for various bug fixes.
159
160 - Issue #13012: The 'keepends' parameter to str.splitlines may now be passed
161 as a keyword argument: "my_string.splitlines(keepends=True)". The same
162 change also applies to bytes.splitlines and bytearray.splitlines.
163
164 - Issue #7732: Don't open a directory as a file anymore while importing a
165 module. Ignore the direcotry if its name matchs the module name (e.g.
166 "__init__.py") and raise a ImportError instead.
167
168 - Issue #13021: Missing decref on an error path. Thanks to Suman Saha for
169 finding the bug and providing a patch.
170
171 - Issue #12973: Fix overflow checks that relied on undefined behaviour in
172 list_repeat (listobject.c) and islice_next (itertoolsmodule.c). These bugs
173 caused test failures with recent versions of Clang.
174
175 - Issue #12904: os.utime, os.futimes, os.lutimes, and os.futimesat now write
176 atime and mtime with nanosecond precision on modern POSIX platforms.
177
178 - Issue #12802: the Windows error ERROR_DIRECTORY (numbered 267) is now
179 mapped to POSIX errno ENOTDIR (previously EINVAL).
180
181 - Issue #9200: The str.is* methods now work with strings that contain non-BMP
182 characters even in narrow Unicode builds.
183
184 - Issue #12791: Break reference cycles early when a generator exits with
185 an exception.
186
187 - Issue #12773: Make __doc__ mutable on user-defined classes.
188
189 - Issue #12766: Raise a ValueError when creating a class with a class variable
190 that conflicts with a name in __slots__.
191
192 - Issue #12266: Fix str.capitalize() to correctly uppercase/lowercase
193 titlecased and cased non-letter characters.
194
195 - Issue #12732: In narrow unicode builds, allow Unicode identifiers which fall
196 outside the BMP.
197
198 - Issue #12575: Validate user-generated AST before it is compiled.
199
200 - Make type(None), type(Ellipsis), and type(NotImplemented) callable. They
201 return the respective singleton instances.
202
203 - Forbid summing bytes with sum().
204
205 - Verify the types of AST strings and identifiers provided by the user before
206 compiling them.
207
208 - Issue #12647: The None object now has a __bool__() method that returns False.
209 Formerly, bool(None) returned False only because of special case logic
210 in PyObject_IsTrue().
211
212 - Issue #12579: str.format_map() now raises a ValueError if used on a
213 format string that contains positional fields. Initial patch by
214 Julian Berman.
215
216 - Issue #10271: Allow warnings.showwarning() be any callable.
217
218 - Issue #11627: Fix segfault when __new__ on a exception returns a
219 non-exception class.
220
221 - Issue #12149: Update the method cache after a type's dictionary gets
222 cleared by the garbage collector. This fixes a segfault when an instance
223 and its type get caught in a reference cycle, and the instance's
224 deallocator calls one of the methods on the type (e.g. when subclassing
225 IOBase). Diagnosis and patch by Davide Rizzo.
15 226
16 - Issue #9611, #9015: FileIO.read() clamps the length to INT_MAX on Windows. 227 - Issue #9611, #9015: FileIO.read() clamps the length to INT_MAX on Windows.
17 228
18 - Issue #9642: Uniformize the tests on the availability of the mbcs codec, add 229 - Issue #9642: Uniformize the tests on the availability of the mbcs codec, add
19 a new HAVE_MBCS define. 230 a new HAVE_MBCS define.
20 231
21 - Issue #9642: Fix filesystem encoding initialization: use the ANSI code page 232 - Issue #9642: Fix filesystem encoding initialization: use the ANSI code page
22 on Windows if the mbcs codec is not available, and fail with a fatal error if 233 on Windows if the mbcs codec is not available, and fail with a fatal error if
23 we cannot get the locale encoding (if nl_langinfo(CODESET) is not available) 234 we cannot get the locale encoding (if nl_langinfo(CODESET) is not available)
24 instead of using UTF-8. 235 instead of using UTF-8.
25 236
26 - When a generator yields, do not retain the caller's exception state on the 237 - When a generator yields, do not retain the caller's exception state on the
27 generator. 238 generator.
28 239
29 - Issue #12475: Prevent generators from leaking their exception state into the 240 - Issue #12475: Prevent generators from leaking their exception state into the
30 caller's frame as they return for the last time. 241 caller's frame as they return for the last time.
31 242
32 - Issue #12291: You can now load multiple marshalled objects from a stream, 243 - Issue #12291: You can now load multiple marshalled objects from a stream,
33 with other data interleaved between marshalled objects. 244 with other data interleaved between marshalled objects.
34 245
35 - Issue #12356: When required positional or keyword-only arguments are not 246 - Issue #12356: When required positional or keyword-only arguments are not
36 given, produce a informative error message which includes the name(s) of the 247 given, produce a informative error message which includes the name(s) of the
37 missing arguments. 248 missing arguments.
38 249
39 - Issue #12370: Fix super with not arguments when __class__ is overriden in the 250 - Issue #12370: Fix super with no arguments when __class__ is overriden in the
40 class body. 251 class body.
41 252
42 - Issue #12084: os.stat on Windows now works properly with relative symbolic 253 - Issue #12084: os.stat on Windows now works properly with relative symbolic
43 links when called from any directory. 254 links when called from any directory.
44 255
45 - Loosen type restrictions on the __dir__ method. __dir__ can now return any 256 - Loosen type restrictions on the __dir__ method. __dir__ can now return any
46 sequence, which will be converted to a list and sorted by dir(). 257 sequence, which will be converted to a list and sorted by dir().
47 258
48 - Issue #12265: Make error messages produced by passing an invalid set of 259 - Issue #12265: Make error messages produced by passing an invalid set of
49 arguments to a function more informative. 260 arguments to a function more informative.
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 - Issue #12044: Fixed subprocess.Popen when used as a context manager to 299 - Issue #12044: Fixed subprocess.Popen when used as a context manager to
89 wait for the process to end when exiting the context to avoid unintentionally 300 wait for the process to end when exiting the context to avoid unintentionally
90 leaving zombie processes around. 301 leaving zombie processes around.
91 302
92 - Issue #1195: Fix input() if it is interrupted by CTRL+d and then CTRL+c, 303 - Issue #1195: Fix input() if it is interrupted by CTRL+d and then CTRL+c,
93 clear the end-of-file indicator after CTRL+d. 304 clear the end-of-file indicator after CTRL+d.
94 305
95 - Issue #1856: Avoid crashes and lockups when daemon threads run while the 306 - Issue #1856: Avoid crashes and lockups when daemon threads run while the
96 interpreter is shutting down; instead, these threads are now killed when 307 interpreter is shutting down; instead, these threads are now killed when
97 they try to take the GIL. 308 they try to take the GIL.
98
99 - Issue #11849: Make it more likely for the system allocator to release
100 free()d memory arenas on glibc-based systems. Patch by Charles-François
101 Natali.
102 309
103 - Issue #9756: When calling a method descriptor or a slot wrapper descriptor, 310 - Issue #9756: When calling a method descriptor or a slot wrapper descriptor,
104 the check of the object type doesn't read the __class__ attribute anymore. 311 the check of the object type doesn't read the __class__ attribute anymore.
105 Fix a crash if a class override its __class__ attribute (e.g. a proxy of the 312 Fix a crash if a class override its __class__ attribute (e.g. a proxy of the
106 str type). Patch written by Andreas Stührk. 313 str type). Patch written by Andreas Stührk.
107 314
108 - Issue #10517: After fork(), reinitialize the TLS used by the PyGILState_* 315 - Issue #10517: After fork(), reinitialize the TLS used by the PyGILState_*
109 APIs, to avoid a crash with the pthread implementation in RHEL 5. Patch 316 APIs, to avoid a crash with the pthread implementation in RHEL 5. Patch
110 by Charles-François Natali. 317 by Charles-François Natali.
111 318
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 357
151 - Issue #11395: io.FileIO().write() clamps the data length to 32,767 bytes on 358 - Issue #11395: io.FileIO().write() clamps the data length to 32,767 bytes on
152 Windows if the file is a TTY to workaround a Windows bug. The Windows console 359 Windows if the file is a TTY to workaround a Windows bug. The Windows console
153 returns an error (12: not enough space error) on writing into stdout if 360 returns an error (12: not enough space error) on writing into stdout if
154 stdout mode is binary and the length is greater than 66,000 bytes (or less, 361 stdout mode is binary and the length is greater than 66,000 bytes (or less,
155 depending on heap usage). 362 depending on heap usage).
156 363
157 - Issue #11320: fix bogus memory management in Modules/getpath.c, leading to 364 - Issue #11320: fix bogus memory management in Modules/getpath.c, leading to
158 a possible crash when calling Py_SetPath(). 365 a possible crash when calling Py_SetPath().
159 366
160 - _ast.__version__ is now a Mercurial hex revision.
161
162 - Issue #11432: A bug was introduced in subprocess.Popen on posix systems with 367 - Issue #11432: A bug was introduced in subprocess.Popen on posix systems with
163 3.2.0 where the stdout or stderr file descriptor being the same as the stdin 368 3.2.0 where the stdout or stderr file descriptor being the same as the stdin
164 file descriptor would raise an exception. webbrowser.open would fail. fixed. 369 file descriptor would raise an exception. webbrowser.open would fail. fixed.
165 370
166 - Issue #9856: Change object.__format__ with a non-empty format string 371 - Issue #9856: Change object.__format__ with a non-empty format string
167 to be a DeprecationWarning. In 3.2 it was a PendingDeprecationWarning. 372 to be a DeprecationWarning. In 3.2 it was a PendingDeprecationWarning.
168 In 3.4 it will be a TypeError. 373 In 3.4 it will be a TypeError.
169 374
170 - Issue #11244: The peephole optimizer is now able to constant-fold 375 - Issue #11244: The peephole optimizer is now able to constant-fold
171 arbitrarily complex expressions. This also fixes a 3.2 regression where 376 arbitrarily complex expressions. This also fixes a 3.2 regression where
172 operations involving negative numbers were not constant-folded. 377 operations involving negative numbers were not constant-folded.
173 378
174 - Issue #11450: Don't truncate hg version info in Py_GetBuildInfo() when 379 - Issue #11450: Don't truncate hg version info in Py_GetBuildInfo() when
175 there are many tags (e.g. when using mq). Patch by Nadeem Vawda. 380 there are many tags (e.g. when using mq). Patch by Nadeem Vawda.
176 381
177 - Issue #11335: Fixed a memory leak in list.sort when the key function 382 - Issue #11335: Fixed a memory leak in list.sort when the key function
178 throws an exception. 383 throws an exception.
179 384
180 - Issue #8923: When a string is encoded to UTF-8 in strict mode, the result is 385 - Issue #8923: When a string is encoded to UTF-8 in strict mode, the result is
181 cached into the object. Examples: str.encode(), str.encode('utf-8'), 386 cached into the object. Examples: str.encode(), str.encode('utf-8'),
182 PyUnicode_AsUTF8String() and PyUnicode_AsEncodedString(unicode, "utf-8", 387 PyUnicode_AsUTF8String() and PyUnicode_AsEncodedString(unicode, "utf-8",
183 NULL). 388 NULL).
184 389
185 - Issue #10831: PyUnicode_FromFormat() supports %li, %lli and %zi formats. 390 - Issue #10831: PyUnicode_FromFormat() supports %li, %lli and %zi formats.
186 391
187 - Issue #10829: Refactor PyUnicode_FromFormat(), use the same function to parse 392 - Issue #10829: Refactor PyUnicode_FromFormat(), use the same function to parse
188 the format string in the 3 steps, fix crashs on invalid format strings. 393 the format string in the 3 steps, fix crashs on invalid format strings.
189 394
395 - Issue #13007: whichdb should recognize gdbm 1.9 magic numbers.
396
190 - Issue #11246: Fix PyUnicode_FromFormat("%V") to decode the byte string from 397 - Issue #11246: Fix PyUnicode_FromFormat("%V") to decode the byte string from
191 UTF-8 (with replace error handler) instead of ISO-8859-1 (in strict mode). 398 UTF-8 (with replace error handler) instead of ISO-8859-1 (in strict mode).
192 Patch written by Ray Allen. 399 Patch written by Ray Allen.
193 400
194 - Issue #11286: Raise a ValueError from calling PyMemoryView_FromBuffer with 401 - Issue #11286: Raise a ValueError from calling PyMemoryView_FromBuffer with
195 a buffer struct having a NULL data pointer. 402 a buffer struct having a NULL data pointer.
196 403
197 - Issue #11272: On Windows, input() strips '\r' (and not only '\n'), and 404 - Issue #11272: On Windows, input() strips '\r' (and not only '\n'), and
198 sys.stdin uses universal newline (replace '\r\n' by '\n'). 405 sys.stdin uses universal newline (replace '\r\n' by '\n').
199 406
(...skipping 12 matching lines...) Expand all
212 PyUnicode_AsEncodedString(), it was replaced by a better fallback (use the 419 PyUnicode_AsEncodedString(), it was replaced by a better fallback (use the
213 locale encoding) in PyUnicode_EncodeFSDefault(). 420 locale encoding) in PyUnicode_EncodeFSDefault().
214 421
215 - Check for NULL result in PyType_FromSpec. 422 - Check for NULL result in PyType_FromSpec.
216 423
217 - Issue #10516: New copy() and clear() methods for lists and bytearrays. 424 - Issue #10516: New copy() and clear() methods for lists and bytearrays.
218 425
219 - Issue #11386: bytearray.pop() now throws IndexError when the bytearray is 426 - Issue #11386: bytearray.pop() now throws IndexError when the bytearray is
220 empty, instead of OverflowError. 427 empty, instead of OverflowError.
221 428
429 - Issue #12380: The rjust, ljust and center methods of bytes and bytearray
430 now accept a bytearray argument.
431
222 Library 432 Library
223 ------- 433 -------
434
435 - Issue #12364: Fix a hang in concurrent.futures.ProcessPoolExecutor.
436 The hang would occur when retrieving the result of a scheduled future after
437 the executor had been shut down.
438
439 - Issue #13502: threading: Fix a race condition in Event.wait() that made it
440 return False when the event was set and cleared right after.
441
442 - Issue #9993: When the source and destination are on different filesystems,
443 and the source is a symlink, shutil.move() now recreates a symlink on the
444 destination instead of copying the file contents. Patch by Jonathan Niehof
445 and Hynek Schlawack.
446
447 - Issue #12926: Fix a bug in tarfile's link extraction.
448
449 - Issue #13696: Fix the 302 Relative URL Redirection problem.
450
451 - Issue #13636: Weak ciphers are now disabled by default in the ssl module
452 (except when SSLv2 is explicitly asked for).
453
454 - Issue #12715: Add an optional symlinks argument to shutil functions
455 (copyfile, copymode, copystat, copy, copy2). When that parameter is
456 true, symlinks aren't dereferenced and the operation instead acts on the
457 symlink itself (or creates one, if relevant). Patch by Hynek Schlawack.
458
459 - Add a flags parameter to select.epoll.
460
461 - Issue #12798: Updated the mimetypes documentation.
462
463 - Issue #13626: Add support for SSL Diffie-Hellman key exchange, through the
464 SSLContext.load_dh_params() method and the ssl.OP_SINGLE_DH_USE option.
465
466 - Issue #11006: Don't issue low level warning in subprocess when pipe2() fails.
467
468 - Issue #13620: Support for Chrome browser in webbrowser.py Patch contributed
469 by Arnaud Calmettes.
470
471 - Issue #11829: Fix code execution holes in inspect.getattr_static for
472 metaclasses with metaclasses. Patch by Andreas Stührk.
473
474 - Issue #12708: Add starmap() and starmap_async() methods (similar to
475 itertools.starmap()) to multiprocessing.Pool. Patch by Hynek Schlawack.
476
477 - Issue #1785: Fix inspect and pydoc with misbehaving descriptors.
478
479 - Issue #13637: "a2b" functions in the binascii module now accept ASCII-only
480 unicode strings.
481
482 - Issue #13634: Add support for querying and disabling SSL compression.
483
484 - Issue #13627: Add support for SSL Elliptic Curve-based Diffie-Hellman
485 key exchange, through the SSLContext.set_ecdh_curve() method and the
486 ssl.OP_SINGLE_ECDH_USE option.
487
488 - Issue #13635: Add ssl.OP_CIPHER_SERVER_PREFERENCE, so that SSL servers
489 choose the cipher based on their own preferences, rather than on the
490 client's.
491
492 - Issue #11813: Fix inspect.getattr_static for modules. Patch by Andreas
493 Stührk.
494
495 - Issue #7502: Fix equality comparison for DocTestCase instances. Patch by
496 Cédric Krier.
497
498 - Issue #11870: threading: Properly reinitialize threads internal locks and
499 condition variables to avoid deadlocks in child processes.
500
501 - Issue #8035: urllib: Fix a bug where the client could remain stuck after a
502 redirection or an error.
503
504 - Issue #13560: os.strerror() now uses the current locale encoding instead of
505 UTF-8.
506
507 - Issue #13560: Add PyUnicode_DecodeLocale(), PyUnicode_DecodeLocaleAndSize()
508 and PyUnicode_EncodeLocale() functions to the C API to decode/encode from/to
509 the current locale encoding.
510
511 - Issue #8373: The filesystem path of AF_UNIX sockets now uses the filesystem
512 encoding and the surrogateescape error handler, rather than UTF-8. Patch
513 by David Watson.
514
515 - Issue #10350: Read and save errno before calling a function which might
516 overwrite it. Original patch by Hallvard B Furuseth.
517
518 - Issue #11610: Introduce a more general way to declare abstract properties.
519
520 - Issue #13591: A bug in importlib has been fixed that caused import_module
521 to load a module twice.
522
523 - Issue #4625: If IDLE cannot write to its recent file or breakpoint
524 files, display a message popup and continue rather than crash.
525 (original patch by Roger Serwy)
526
527 - Issue #13449 sched.scheduler.run() method has a new "blocking" parameter which
528 when set to False makes run() execute the scheduled events due to expire
529 soonest (if any) and then return. Patch by Giampaolo Rodolà.
530
531 - Issue #8684 sched.scheduler class can be safely used in multi-threaded
532 environments. Patch by Josiah Carlson and Giampaolo Rodolà.
533
534 - Alias resource.error to OSError ala PEP 3151.
535
536 - Issue #5689: Add support for lzma compression to the tarfile module.
537
538 - Issue #13248: Turn 3.2's PendingDeprecationWarning into 3.3's
539 DeprecationWarning. It covers 'cgi.escape', 'importlib.abc.PyLoader',
540 'importlib.abc.PyPycLoader', 'nntplib.NNTP.xgtitle', 'nntplib.NNTP.xpath',
541 and private attributes of 'smtpd.SMTPChannel'.
542
543 - Issue #5905, #13560: time.strftime() is now using the current locale
544 encoding, instead of UTF-8, if the wcsftime() function is not available.
545
546 - Issue #8641: Update IDLE 3 syntax coloring to recognize b".." and not u"..".
547 Patch by Tal Einat.
548
549 - Issue #13464: Add a readinto() method to http.client.HTTPResponse. Patch
550 by Jon Kuhn.
551
552 - tarfile.py: Correctly detect bzip2 compressed streams with blocksizes
553 other than 900k.
554
555 - Issue #13439: Fix many errors in turtle docstrings.
556
557 - Issue #6715: Add a module 'lzma' for compression using the LZMA algorithm.
558 Thanks to Per Øyvind Karlsen for the initial implementation.
559
560 - Issue #13487: Make inspect.getmodule robust against changes done to
561 sys.modules while it is iterating over it.
562
563 - Issue #12618: Fix a bug that prevented py_compile from creating byte
564 compiled files in the current directory. Initial patch by Sjoerd de Vries.
565
566 - Issue #13444: When stdout has been closed explicitly, we should not attempt
567 to flush it at shutdown and print an error.
568
569 - Issue #12567: The curses module uses Unicode functions for Unicode arguments
570 when it is linked to the ncurses library. It encodes also Unicode strings to
571 the locale encoding instead of UTF-8.
572
573 - Issue #12856: Ensure child processes do not inherit the parent's random
574 seed for filename generation in the tempfile module. Patch by Brian
575 Harring.
576
577 - Issue #9957: SpooledTemporaryFile.truncate() now accepts an optional size
578 parameter, as other file-like objects. Patch by Ryan Kelly.
579
580 - Issue #13458: Fix a memory leak in the ssl module when decoding a
581 certificate with a subjectAltName. Patch by Robert Xiao.
582
583 - Issue #13415: os.unsetenv() doesn't ignore errors anymore.
584
585 - Issue #13245: sched.scheduler class constructor's timefunc and
586 delayfunct parameters are now optional.
587 scheduler.enter and scheduler.enterabs methods gained a new kwargs parameter.
588 Patch contributed by Chris Clark.
589
590 - Issue #12328: Under Windows, refactor handling of Ctrl-C events and
591 make _multiprocessing.win32.WaitForMultipleObjects interruptible when
592 the wait_flag parameter is false. Patch by sbt.
593
594 - Issue #13322: Fix BufferedWriter.write() to ensure that BlockingIOError is
595 raised when the wrapped raw file is non-blocking and the write would block.
596 Previous code assumed that the raw write() would raise BlockingIOError, but
597 RawIOBase.write() is defined to returned None when the call would block.
598 Patch by sbt.
599
600 - Issue #13358: HTMLParser now calls handle_data only once for each CDATA.
601
602 - Issue #4147: minidom's toprettyxml no longer adds whitespace around a text
603 node when it is the only child of an element. Initial patch by Dan
604 Kenigsberg.
605
606 - Issue #13374: The Windows bytes API has been deprecated in the os module. Use
607 Unicode filenames instead of bytes filenames to not depend on the ANSI code
608 page anymore and to support any filename.
609
610 - Issue #13297: Use bytes type to send and receive binary data through XMLRPC.
611
612 - Issue #6397: Support "/dev/poll" polling objects in select module,
613 under Solaris & derivatives.
614
615 - Issues #1745761, #755670, #13357, #12629, #1200313: HTMLParser now correctly
616 handles non-valid attributes, including adjacent and unquoted attributes.
617
618 - Issue #13193: Fix distutils.filelist.FileList and
619 packaging.manifest.Manifest under Windows. The "recursive-include"
620 directive now recognizes both legal path separators.
621
622 - Issue #13384: Remove unnecessary __future__ import in Lib/random.py
623
624 - Issue #13149: Speed up append-only StringIO objects.
625
626 - Issue #13373: multiprocessing.Queue.get() could sometimes block indefinitely
627 when called with a timeout. Patch by Arnaud Ysmal.
628
629 - Issue #13254: Fix Maildir initialization so that maildir contents
630 are read correctly.
631
632 - Issue #3067: locale.setlocale() now raises TypeError if the second
633 argument is an invalid iterable. Its documentation and docstring
634 were also updated. Initial patch by Jyrki Pulliainen.
635
636 - Issue #13140: Fix the daemon_threads attribute of ThreadingMixIn.
637
638 - Issue #13339: Fix compile error in posixmodule.c due to missing semicolon.
639 Thanks to Robert Xiao.
640
641 - Byte compilation in packaging is now isolated from the calling Python -B or
642 -O options, instead of being disallowed under -B or buggy under -O.
643
644 - Issue #10570: curses.putp() and curses.tparm() are now expecting a byte
645 string, instead of a Unicode string.
646
647 - Issue #13295: http.server now produces valid HTML 4.01 strict.
648
649 - Issue #2892: preserve iterparse events in case of SyntaxError.
650
651 - Issue #13287: urllib.request and urllib.error now contains an __all__
652 attribute to expose only relevant classes and functions. Patch by Florent
653 Xicluna.
654
655 - Issue #670664: Fix HTMLParser to correctly handle the content of
656 ``<script>...</script>`` and ``<style>...</style>``.
657
658 - Issue #10817: Fix urlretrieve function to raise ContentTooShortError even
659 when reporthook is None. Patch by Jyrki Pulliainen.
660
661 - Issue #13296: Fix IDLE to clear compile __future__ flags on shell restart.
662 (Patch by Roger Serwy)
663
664 - Fix the xmlrpc.client user agent to return something similar to
665 urllib.request user agent: "Python-xmlrpc/3.3".
666
667 - Issue #13293: Better error message when trying to marshal bytes using
668 xmlrpc.client.
669
670 - Issue #13291: NameError in xmlrpc package.
671
672 - Issue #13258: Use callable() built-in in the standard library.
673
674 - Issue #13273: fix a bug that prevented HTMLParser to properly detect some
675 tags when strict=False.
676
677 - Issue #11183: Add finer-grained exceptions to the ssl module, so that
678 you don't have to inspect the exception's attributes in the common case.
679
680 - Issue #13216: Add cp65001 codec, the Windows UTF-8 (CP_UTF8).
681
682 - Issue #13226: Add RTLD_xxx constants to the os module. These constants can be
683 used with sys.setdlopenflags().
684
685 - Issue #10278: Add clock_getres(), clock_gettime() and CLOCK_xxx constants to
686 the time module. time.clock_gettime(time.CLOCK_MONOTONIC) provides a
687 monotonic clock
688
689 - Issue #10332: multiprocessing: fix a race condition when a Pool is closed
690 before all tasks have completed.
691
692 - Issue #13255: wrong docstrings in array module.
693
694 - Issue #8540: Remove deprecated Context._clamp attribute in Decimal module.
695
696 - Issue #13235: Added PendingDeprecationWarning to warn() method and function.
697
698 - Issue #9168: now smtpd is able to bind privileged port.
699
700 - Issue #12529: fix cgi.parse_header issue on strings with double-quotes and
701 semicolons together. Patch by Ben Darnell and Petri Lehtinen.
702
703 - Issue #13227: functools.lru_cache() now has a option to distinguish
704 calls with different argument types.
705
706 - Issue #6090: zipfile raises a ValueError when a document with a timestamp
707 earlier than 1980 is provided. Patch contributed by Petri Lehtinen.
708
709 - Issue #13150: sysconfig no longer parses the Makefile and config.h files
710 when imported, instead doing it at build time. This makes importing
711 sysconfig faster and reduces Python startup time by 20%.
712
713 - Issue #12448: smtplib now flushes stdout while running ``python -m smtplib``
714 in order to display the prompt correctly.
715
716 - Issue #12454: The mailbox module is now using ASCII, instead of the locale
717 encoding, to read and write MH mailboxes (.mh_sequences files).
718
719 - Issue #13194: zlib.compressobj().copy() and zlib.decompressobj().copy() are
720 now available on Windows.
721
722 - issue #1673007: urllib2 to support HEAD request via new method argument.
723 Patch contributions by David Stanek, Patrick Westerhoff and Ezio Melotti.
724
725 - Issue #12386: packaging does not fail anymore when writing the RESOURCES
726 file.
727
728 - Issue #13158: Fix decoding and encoding of GNU tar specific base-256 number
729 fields in tarfile.
730
731 - Issue #13025: mimetypes is now reading MIME types using the UTF-8 encoding,
732 instead of the locale encoding.
733
734 - Issue #10653: On Windows, use strftime() instead of wcsftime() because
735 wcsftime() doesn't format time zone correctly.
736
737 - Issue #13150: The tokenize module doesn't compile large regular expressions
738 at startup anymore.
739
740 - Issue #11171: Fix distutils.sysconfig.get_makefile_filename when Python was
741 configured with different prefix and exec-prefix.
742
743 - Issue #11254: Teach distutils and packaging to compile .pyc and .pyo files in
744 PEP 3147-compliant __pycache__ directories.
745
746 - Issue #7367: Fix pkgutil.walk_paths to skip directories whose
747 contents cannot be read.
748
749 - Issue #3163: The struct module gets new format characters 'n' and 'N'
750 supporting C integer types ``ssize_t`` and ``size_t``, respectively.
751
752 - Issue #13099: Fix sqlite3.Cursor.lastrowid under a Turkish locale.
753 Reported and diagnosed by Thomas Kluyver.
754
755 - Issue #13087: BufferedReader.seek() now always raises UnsupportedOperation
756 if the underlying raw stream is unseekable, even if the seek could be
757 satisfied using the internal buffer. Patch by John O'Connor.
758
759 - Issue #7689: Allow pickling of dynamically created classes when their
760 metaclass is registered with copyreg. Patch by Nicolas M. Thiéry and Craig
761 Citro.
762
763 - Issue #4147: minidom's toprettyxml no longer adds whitespace to text nodes.
764
765 - Issue #13034: When decoding some SSL certificates, the subjectAltName
766 extension could be unreported.
767
768 - Issue #9871: Prevent IDLE 3 crash when given byte stings
769 with invalid hex escape sequences, like b'\x0'.
770 (Original patch by Claudiu Popa.)
771
772 - Issue #12306: Expose the runtime version of the zlib C library as a constant,
773 ZLIB_RUNTIME_VERSION, in the zlib module. Patch by Torsten Landschoff.
774
775 - Issue #12959: Add collections.ChainMap to collections.__all__.
776
777 - Issue #8933: distutils' PKG-INFO files and packaging's METADATA files will
778 now correctly report Metadata-Version: 1.1 instead of 1.0 if a Classifier or
779 Download-URL field is present.
780
781 - Issue #12567: Add curses.unget_wch() function. Push a character so the next
782 get_wch() will return it.
783
784 - Issue #9561: distutils and packaging now writes egg-info files using UTF-8,
785 instead of the locale encoding.
786
787 - Issue #8286: The distutils command sdist will print a warning message instead
788 of crashing when an invalid path is given in the manifest template.
789
790 - Issue #12841: tarfile unnecessarily checked the existence of numerical user
791 and group ids on extraction. If one of them did not exist the respective id
792 of the current user (i.e. root) was used for the file and ownership
793 information was lost.
794
795 - Issue #12888: Fix a bug in HTMLParser.unescape that prevented it to escape
796 more than 128 entities. Patch by Peter Otten.
797
798 - Issue #12878: Expose a __dict__ attribute on io.IOBase and its subclasses.
799
800 - Issue #12636: IDLE reads the coding cookie when executing a Python script.
801
802 - Issue #12494: On error, call(), check_call(), check_output() and
803 getstatusoutput() functions of the subprocess module now kill the process,
804 read its status (to avoid zombis) and close pipes.
805
806 - Issue #12720: Expose low-level Linux extended file attribute functions in os.
807
808 - Issue #10946: The distutils commands bdist_dumb, bdist_wininst and bdist_msi
809 now respect a --skip-build option given to bdist. The packaging commands
810 were fixed too.
811
812 - Issue #12847: Fix a crash with negative PUT and LONG_BINPUT arguments in
813 the C pickle implementation.
814
815 - Issue #11564: Avoid crashes when trying to pickle huge objects or containers
816 (more than 2**31 items). Instead, in most cases, an OverflowError is raised.
817
818 - Issue #12287: Fix a stack corruption in ossaudiodev module when the FD is
819 greater than FD_SETSIZE.
820
821 - Issue #12839: Fix crash in zlib module due to version mismatch.
822 Fix by Richard M. Tew.
823
824 - Issue #9923: The mailcap module now correctly uses the platform path
825 separator for the MAILCAP environment variable on non-POSIX platforms.
826
827 - Issue #12835: Follow up to #6560 that unconditionally prevents use of the
828 unencrypted sendmsg/recvmsg APIs on SSL wrapped sockets. Patch by David
829 Watson.
830
831 - Issue #12803: SSLContext.load_cert_chain() now accepts a password argument
832 to be used if the private key is encrypted. Patch by Adam Simpkins.
833
834 - Issue #11657: Fix sending file descriptors over 255 over a multiprocessing
835 Pipe.
836
837 - Issue #12811: tabnanny.check() now promptly closes checked files. Patch by
838 Anthony Briggs.
839
840 - Issue #6560: The sendmsg/recvmsg API is now exposed by the socket module
841 when provided by the underlying platform, supporting processing of
842 ancillary data in pure Python code. Patch by David Watson and Heiko Wundram.
843
844 - Issue #12326: On Linux, sys.platform doesn't contain the major version
845 anymore. It is now always 'linux', instead of 'linux2' or 'linux3' depending
846 on the Linux version used to build Python.
847
848 - Issue #12213: Fix a buffering bug with interleaved reads and writes that
849 could appear on BufferedRandom streams.
850
851 - Issue #12778: Reduce memory consumption when JSON-encoding a large
852 container of many small objects.
853
854 - Issue #12650: Fix a race condition where a subprocess.Popen could leak
855 resources (FD/zombie) when killed at the wrong time.
856
857 - Issue #12744: Fix inefficient representation of integers between 2**31 and
858 2**63 on systems with a 64-bit C "long".
859
860 - Issue #12646: Add an 'eof' attribute to zlib.Decompress, to make it easier to
861 detect truncated input streams.
862
863 - Issue #11513: Fix exception handling ``tarfile.TarFile.gzopen()`` when
864 the file cannot be opened.
865
866 - Issue #12687: Fix a possible buffering bug when unpickling text mode
867 (protocol 0, mostly) pickles.
868
869 - Issue #10087: Fix the html output format of the calendar module.
870
871 - Issue #12540: Prevent zombie IDLE processes on Windows due to changes
872 in os.kill().
873
874 - Add support for unary plus and unary minus to collections.Counter().
875 Issue #13121: Also add support for inplace math operators.
876
877 - Issue #12683: urlparse updated to include svn as schemes that uses relative
878 paths. (svn from 1.5 onwards support relative path).
879
880 - Issue #12655: Expose functions from sched.h in the os module: sched_yield(),
881 sched_setscheduler(), sched_getscheduler(), sched_setparam(),
882 sched_get_min_priority(), sched_get_max_priority(), sched_rr_get_interval(),
883 sched_getaffinity(), sched_setaffinity().
884
885 - Add ThreadError to threading.__all__.
886
887 - Issues #11104, #8688: Fix the behavior of distutils' sdist command with
888 manually-maintained MANIFEST files.
889
890 - Issue #11281: smtplib.STMP gets source_address parameter, which adds the
891 ability to bind to specific source address on a machine with multiple
892 interfaces. Patch by Paulo Scardine.
893
894 - Issue #12464: tempfile.TemporaryDirectory.cleanup() should not follow
895 symlinks: fix it. Patch by Petri Lehtinen.
896
897 - Issue #8887: "pydoc somebuiltin.somemethod" (or help('somebuiltin.somemethod')
898 in Python code) now finds the doc of the method.
899
900 - Issue #10968: Remove indirection in threading. The public names (Thread,
901 Condition, etc.) used to be factory functions returning instances of hidden
902 classes (_Thread, _Condition, etc.), because (if Guido recalls correctly) this
903 code pre-dates the ability to subclass extension types. It is now possible to
904 inherit from Thread and other classes, without having to import the private
905 underscored names like multiprocessing did.
906
907 - Issue #9723: Add shlex.quote functions, to escape filenames and command
908 lines.
909
910 - Issue #12603: Fix pydoc.synopsis() on files with non-negative st_mtime.
911
912 - Issue #12514: Use try/finally to assure the timeit module restores garbage
913 collections when it is done.
914
915 - Issue #12607: In subprocess, fix issue where if stdin, stdout or stderr is
916 given as a low fd, it gets overwritten.
917
918 - Issue #12590: IDLE editor window now always displays the first line
919 when opening a long file. With Tk 8.5, the first line was hidden.
920
921 - Issue #12576: Fix urlopen behavior on sites which do not send (or obfuscates)
922 Connection:close header.
923
924 - Issue #12102: Document that buffered files must be flushed before being used
925 with mmap. Patch by Steffen Daode Nurpmeso.
926
927 - Issue #12560: Build libpython.so on OpenBSD. Patch by Stefan Sperling.
928
929 - Issue #1813: Fix codec lookup under Turkish locales.
930
931 - Issue #12591: Improve support of "universal newlines" in the subprocess
932 module: the piped streams can now be properly read from or written to.
933
934 - Issue #12591: Allow io.TextIOWrapper to work with raw IO objects (without
935 a read1() method), and add a *write_through* parameter to mandate
936 unbuffered writes.
937
938 - Issue #10883: Fix socket leaks in urllib.request when using FTP.
939
940 - Issue #12592: Make Python build on OpenBSD 5 (and future major releases).
941
942 - Issue #12372: POSIX semaphores are broken on AIX: don't use them.
943
944 - Issue #12551: Provide a get_channel_binding() method on SSL sockets so as
945 to get channel binding data for the current SSL session (only the
946 "tls-unique" channel binding is implemented). This allows the implementation
947 of certain authentication mechanisms such as SCRAM-SHA-1-PLUS. Patch by
948 Jacek Konieczny.
949
950 - Issue #665194: email.utils now has format_datetime and parsedate_to_datetime
951 functions, allowing for round tripping of RFC2822 format dates.
952
953 - Issue #12571: Add a plat-linux3 directory mirroring the plat-linux2
954 directory, so that "import DLFCN" and other similar imports work on
955 Linux 3.0.
956
957 - Issue #7484: smtplib no longer puts <> around addresses in VRFY and EXPN
958 commands; they aren't required and in fact postfix doesn't support that form.
959
960 - Issue #12273: Remove ast.__version__. AST changes can be accounted for by
961 checking sys.version_info or sys._mercurial.
962
963 - Silence spurious "broken pipe" tracebacks when shutting down a
964 ProcessPoolExecutor.
965
966 - Fix potential resource leaks in concurrent.futures.ProcessPoolExecutor
967 by joining all queues and processes when shutdown() is called.
968
969 - Issue #11603: Fix a crash when __str__ is rebound as __repr__. Patch by
970 Andreas Stührk.
971
972 - Issue #11321: Fix a crash with multiple imports of the _pickle module when
973 embedding Python. Patch by Andreas Stührk.
974
975 - Issue #6755: Add get_wch() method to curses.window class. Patch by Iñigo
976 Serna.
977
978 - Add cgi.closelog() function to close the log file.
979
980 - Issue #12502: asyncore: fix polling loop with AF_UNIX sockets.
981
982 - Issue #4376: ctypes now supports nested structures in a endian different than
983 the parent structure. Patch by Vlad Riscutia.
984
985 - Raise ValueError when attempting to set the _CHUNK_SIZE attribute of a
986 TextIOWrapper to a huge value, not TypeError.
224 987
225 - Issue #12504: Close file handles in a timely manner in packaging.database. 988 - Issue #12504: Close file handles in a timely manner in packaging.database.
226 This fixes a bug with the remove (uninstall) feature on Windows. 989 This fixes a bug with the remove (uninstall) feature on Windows.
227 990
228 - Issues #12169 and #10510: Factor out code used by various packaging commands 991 - Issues #12169 and #10510: Factor out code used by various packaging commands
229 to make HTTP POST requests, and make sure it uses CRLF. 992 to make HTTP POST requests, and make sure it uses CRLF.
230 993
231 - Issue #12016: Multibyte CJK decoders now resynchronize faster. They only 994 - Issue #12016: Multibyte CJK decoders now resynchronize faster. They only
232 ignore the first byte of an invalid byte sequence. For example, 995 ignore the first byte of an invalid byte sequence. For example,
233 b'\xff\n'.decode('gb2312', 'replace') gives '\ufffd\n' instead of '\ufffd'. 996 b'\xff\n'.decode('gb2312', 'replace') gives '\ufffd\n' instead of '\ufffd'.
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
430 - Issue #12070: Fix the Makefile parser of the sysconfig module to handle 1193 - Issue #12070: Fix the Makefile parser of the sysconfig module to handle
431 correctly references to "bogus variable" (e.g. "prefix=$/opt/python"). 1194 correctly references to "bogus variable" (e.g. "prefix=$/opt/python").
432 1195
433 - Issue #12100: Don't reset incremental encoders of CJK codecs at each call to 1196 - Issue #12100: Don't reset incremental encoders of CJK codecs at each call to
434 their encode() method anymore, but continue to call the reset() method if the 1197 their encode() method anymore, but continue to call the reset() method if the
435 final argument is True. 1198 final argument is True.
436 1199
437 - Issue #12049: Add RAND_bytes() and RAND_pseudo_bytes() functions to the ssl 1200 - Issue #12049: Add RAND_bytes() and RAND_pseudo_bytes() functions to the ssl
438 module. 1201 module.
439 1202
440 - Issue #12125: fixed the failures under Solaris due to improper test cleanup.
441
442 - Issue #6501: os.device_encoding() returns None on Windows if the application 1203 - Issue #6501: os.device_encoding() returns None on Windows if the application
443 has no console. 1204 has no console.
444
445 - Issue #12132: Skip test_build_ext in case the xxmodule is not found.
446 1205
447 - Issue #12105: Add O_CLOEXEC to the os module. 1206 - Issue #12105: Add O_CLOEXEC to the os module.
448 1207
449 - Issue #12079: Decimal('Infinity').fma(Decimal('0'), (3.91224318126786e+19+0j)) 1208 - Issue #12079: Decimal('Infinity').fma(Decimal('0'), (3.91224318126786e+19+0j))
450 now raises TypeError (reflecting the invalid type of the 3rd argument) rather 1209 now raises TypeError (reflecting the invalid type of the 3rd argument) rather
451 than Decimal.InvalidOperation. 1210 than Decimal.InvalidOperation.
452 1211
453 - Issue #12124: zipimport doesn't keep a reference to zlib.decompress() anymore 1212 - Issue #12124: zipimport doesn't keep a reference to zlib.decompress() anymore
454 to be able to unload the module. 1213 to be able to unload the module.
455 1214
(...skipping 485 matching lines...) Expand 10 before | Expand all | Expand 10 after
941 1700
942 - Issue #8982: Improve the documentation for the argparse Namespace object. 1701 - Issue #8982: Improve the documentation for the argparse Namespace object.
943 1702
944 - Issue #9343: Document that argparse parent parsers must be configured before 1703 - Issue #9343: Document that argparse parent parsers must be configured before
945 their children. 1704 their children.
946 1705
947 - Issue #9026: Fix order of argparse sub-commands in help messages. 1706 - Issue #9026: Fix order of argparse sub-commands in help messages.
948 1707
949 - Issue #9347: Fix formatting for tuples in argparse type= error messages. 1708 - Issue #9347: Fix formatting for tuples in argparse type= error messages.
950 1709
1710 - Issue #12191: Added shutil.chown() to change user and/or group owner of a
1711 given path also specifying their names.
1712
951 Build 1713 Build
952 ----- 1714 -----
1715
1716 - Issue #13326: Clean __pycache__ directories correctly on OpenBSD.
1717
1718 - PEP 393: the configure option --with-wide-unicode is removed.
1719
1720 - Issue #12852: Set _XOPEN_SOURCE to 700, instead of 600, to get POSIX 2008
1721 functions on OpenBSD (e.g. fdopendir).
953 1722
954 - Issue #11863: Remove support for legacy systems deprecated in Python 3.2 1723 - Issue #11863: Remove support for legacy systems deprecated in Python 3.2
955 (following PEP 11). These systems are systems using Mach C Threads, 1724 (following PEP 11). These systems are systems using Mach C Threads,
956 SunOS lightweight processes, GNU pth threads and IRIX threads. 1725 SunOS lightweight processes, GNU pth threads and IRIX threads.
957 1726
958 - Issue #8746: Correct faulty configure checks so that os.chflags() and 1727 - Issue #8746: Correct faulty configure checks so that os.chflags() and
959 os.lchflags() are once again built on systems that support these 1728 os.lchflags() are once again built on systems that support these
960 functions (*BSD and OS X). Also add new stat file flags for OS X 1729 functions (*BSD and OS X). Also add new stat file flags for OS X
961 (UF_HIDDEN and UF_COMPRESSED). 1730 (UF_HIDDEN and UF_COMPRESSED).
962 1731
(...skipping 19 matching lines...) Expand all
982 1751
983 IDLE 1752 IDLE
984 ---- 1753 ----
985 1754
986 - Issue #11718: IDLE's open module dialog couldn't find the __init__.py 1755 - Issue #11718: IDLE's open module dialog couldn't find the __init__.py
987 file in a package. 1756 file in a package.
988 1757
989 Tools/Demos 1758 Tools/Demos
990 ----------- 1759 -----------
991 1760
1761 - Issue #13628: python-gdb.py is now able to retrieve more frames in the Python
1762 traceback if Python is optimized.
1763
992 - Issue #11996: libpython (gdb), replace "py-bt" command by "py-bt-full" and 1764 - Issue #11996: libpython (gdb), replace "py-bt" command by "py-bt-full" and
993 add a smarter "py-bt" command printing a classic Python traceback. 1765 add a smarter "py-bt" command printing a classic Python traceback.
994 1766
995 - Issue #11179: Make ccbench work under Python 3.1 and 2.7 again. 1767 - Issue #11179: Make ccbench work under Python 3.1 and 2.7 again.
996 1768
1769 - Issue #10639: reindent.py no longer converts newlines and will raise
1770 an error if attempting to convert a file with mixed newlines.
1771 "--newline" option added to specify new line character.
1772
997 Extension Modules 1773 Extension Modules
998 ----------------- 1774 -----------------
999 1775
1000 - Issue #12221: Replace pyexpat.__version__ with the Python version. 1776 - Issue #9975: socket: Fix incorrect use of flowinfo and scope_id. Patch by
1777 Vilmos Nebehaj.
1778
1779 - Issue #7777: socket: Add Reliable Datagram Sockets (PF_RDS) support.
1780
1781 - Issue #13159: FileIO and BZ2Compressor/BZ2Decompressor now use a linear-time
1782 buffer growth strategy instead of a quadratic-time one.
1783
1784 - Issue #10141: socket: Add SocketCAN (PF_CAN) support. Initial patch by
1785 Matthias Fuchs, updated by Tiago Gonçalves.
1786
1787 - Issue #13070: Fix a crash when a TextIOWrapper caught in a reference cycle
1788 would be finalized after the reference to its underlying BufferedRWPair's
1789 writer got cleared by the GC.
1790
1791 - Issue #12881: ctypes: Fix segfault with large structure field names.
1792
1793 - Issue #13058: ossaudiodev: fix a file descriptor leak on error. Patch by
1794 Thomas Jarosch.
1795
1796 - Issue #13013: ctypes: Fix a reference leak in PyCArrayType_from_ctype.
1797 Thanks to Suman Saha for finding the bug and providing a patch.
1798
1799 - Issue #13022: Fix: _multiprocessing.recvfd() doesn't check that
1800 file descriptor was actually received.
1801
1802 - Issue #1172711: Add 'long long' support to the array module.
1803 Initial patch by Oren Tirosh and Hirokazu Yamamoto.
1804
1805 - Issue #12483: ctypes: Fix a crash when the destruction of a callback
1806 object triggers the garbage collector.
1807
1808 - Issue #12950: Fix passing file descriptors in multiprocessing, under
1809 OpenIndiana/Illumos.
1810
1811 - Issue #12764: Fix a crash in ctypes when the name of a Structure field is not
1812 a string.
1813
1814 - Issue #11241: subclasses of ctypes.Array can now be subclassed.
1815
1816 - Issue #9651: Fix a crash when ctypes.create_string_buffer(0) was passed to
1817 some functions like file.write().
1818
1819 - Issue #10309: Define _GNU_SOURCE so that mremap() gets the proper
1820 signature. Without this, architectures where sizeof void* != sizeof int are
1821 broken. Patch given by Hallvard B Furuseth.
1001 1822
1002 - Issue #12051: Fix segfault in json.dumps() while encoding highly-nested 1823 - Issue #12051: Fix segfault in json.dumps() while encoding highly-nested
1003 objects using the C accelerations. 1824 objects using the C accelerations.
1004 1825
1005 - Issue #12017: Fix segfault in json.loads() while decoding highly-nested 1826 - Issue #12017: Fix segfault in json.loads() while decoding highly-nested
1006 objects using the C accelerations. 1827 objects using the C accelerations.
1007 1828
1008 - Issue #1838: Prevent segfault in ctypes, when _as_parameter_ on a class is set 1829 - Issue #1838: Prevent segfault in ctypes, when _as_parameter_ on a class is set
1009 to an instance of the class. 1830 to an instance of the class.
1010 1831
1011 Tests 1832 Tests
1012 ----- 1833 -----
1013 1834
1835 - Issue #13304: Skip test case if user site-packages disabled (-s or
1836 PYTHONNOUSERSITE). (Patch by Carl Meyer)
1837
1838 - Issue #5661: Add a test for ECONNRESET/EPIPE handling to test_asyncore. Patch
1839 by Xavier de Gaye.
1840
1841 - Issue #13218: Fix test_ssl failures on Debian/Ubuntu.
1842
1843 - Re-enable lib2to3's test_parser.py tests, though with an expected failure
1844 (see issue 13125).
1845
1846 - Issue #12656: Add tests for IPv6 and Unix sockets to test_asyncore.
1847
1848 - Issue #6484: Add unit tests for mailcap module (patch by Gregory Nofi)
1849
1850 - Issue #11651: Improve the Makefile test targets to run more of the test suite
1851 more quickly. The --multiprocess option is now enabled by default, reducing
1852 the amount of time needed to run the tests. "make test" and "make quicktest"
1853 now include some resource-intensive tests, but no longer run the test suite
1854 twice to check for bugs in .pyc generation. Tools/scripts/run_test.py provides
1855 an easy platform-independent way to run test suite with sensible defaults.
1856
1857 - Issue #12331: The test suite for the packaging module can now run from an
1858 installed Python.
1859
1860 - Issue #12331: The test suite for lib2to3 can now run from an installed
1861 Python.
1862
1863 - Issue #12626: In regrtest, allow to filter tests using a glob filter
1864 with the ``-m`` (or ``--match``) option. This works with all test cases
1865 using the unittest module. This is useful with long test suites
1866 such as test_io or test_subprocess.
1867
1868 - Issue #12624: It is now possible to fail after the first failure when
1869 running in verbose mode (``-v`` or ``-W``), by using the ``--failfast``
1870 (or ``-G``) option to regrtest. This is useful with long test suites
1871 such as test_io or test_subprocess.
1872
1873 - Issue #12587: Correct faulty test file and reference in test_tokenize.
1874 (Patch by Robert Xiao)
1875
1876 - Issue #12573: Add resource checks for dangling Thread and Process objects.
1877
1878 - Issue #12549: Correct test_platform to not fail when OS X returns 'x86_64'
1879 as the processor type on some Mac systems.
1880
1014 - Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary 1881 - Skip network tests when getaddrinfo() returns EAI_AGAIN, meaning a temporary
1015 failure in name resolution. 1882 failure in name resolution.
1883
1884 - Issue #11812: Solve transient socket failure to connect to 'localhost'
1885 in test_telnetlib.py.
1886
1887 - Solved a potential deadlock in test_telnetlib.py. Related to issue #11812.
1016 1888
1017 - Avoid failing in test_robotparser when mueblesmoraleda.com is flaky and 1889 - Avoid failing in test_robotparser when mueblesmoraleda.com is flaky and
1018 an overzealous DNS service (e.g. OpenDNS) redirects to a placeholder 1890 an overzealous DNS service (e.g. OpenDNS) redirects to a placeholder
1019 Web site. 1891 Web site.
1020 1892
1021 - Avoid failing in test_urllibnet.test_bad_address when some overzealous 1893 - Avoid failing in test_urllibnet.test_bad_address when some overzealous
1022 DNS service (e.g. OpenDNS) resolves a non-existent domain name. The test 1894 DNS service (e.g. OpenDNS) resolves a non-existent domain name. The test
1023 is now skipped instead. 1895 is now skipped instead.
1024 1896
1025 - Issue #12440: When testing whether some bits in SSLContext.options can be 1897 - Issue #12440: When testing whether some bits in SSLContext.options can be
(...skipping 28 matching lines...) Expand all
1054 run outside of a build directory. 1926 run outside of a build directory.
1055 1927
1056 - Issue #8746: Add additional tests for os.chflags() and os.lchflags(). 1928 - Issue #8746: Add additional tests for os.chflags() and os.lchflags().
1057 Patch by Garrett Cooper. 1929 Patch by Garrett Cooper.
1058 1930
1059 - Issue #10736: Fix test_ttk test_widgets failures with Cocoa Tk 8.5.9 1931 - Issue #10736: Fix test_ttk test_widgets failures with Cocoa Tk 8.5.9
1060 2.8 + on Mac OS X. (Patch by Ronald Oussoren) 1932 2.8 + on Mac OS X. (Patch by Ronald Oussoren)
1061 1933
1062 - Issue #12057: Add tests for ISO 2022 codecs (iso2022_jp, iso2022_jp_2, 1934 - Issue #12057: Add tests for ISO 2022 codecs (iso2022_jp, iso2022_jp_2,
1063 iso2022_kr). 1935 iso2022_kr).
1064
1065 - Issue #12180: Fixed a few remaining errors in test_packaging when no
1066 threading.
1067
1068 - Issue #12120, #12119: skip a test in packaging and distutils
1069 if sys.dont_write_bytecode is set to True.
1070 1936
1071 - Issue #12096: Fix a race condition in test_threading.test_waitfor(). Patch 1937 - Issue #12096: Fix a race condition in test_threading.test_waitfor(). Patch
1072 written by Charles-François Natali. 1938 written by Charles-François Natali.
1073 1939
1074 - Issue #11614: import __hello__ prints "Hello World!". Patch written by 1940 - Issue #11614: import __hello__ prints "Hello World!". Patch written by
1075 Andreas Stührk. 1941 Andreas Stührk.
1076 1942
1077 - Issue #5723: Improve json tests to be executed with and without accelerations. 1943 - Issue #5723: Improve json tests to be executed with and without accelerations.
1078 1944
1079 - Issue #12041: Make test_wait3 more robust. 1945 - Issue #12041: Make test_wait3 more robust.
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
1154 - Issue #10992: Make tests pass under coverage. 2020 - Issue #10992: Make tests pass under coverage.
1155 2021
1156 - Issue #10826: Prevent sporadic failure in test_subprocess on Solaris due 2022 - Issue #10826: Prevent sporadic failure in test_subprocess on Solaris due
1157 to open door files. 2023 to open door files.
1158 2024
1159 - Issue #10990: Prevent tests from clobbering a set trace function. 2025 - Issue #10990: Prevent tests from clobbering a set trace function.
1160 2026
1161 C-API 2027 C-API
1162 ----- 2028 -----
1163 2029
2030 - Issue #10542: Add 4 macros to work with surrogates: Py_UNICODE_IS_SURROGATE,
2031 Py_UNICODE_IS_HIGH_SURROGATE, Py_UNICODE_IS_LOW_SURROGATE,
2032 Py_UNICODE_JOIN_SURROGATES.
2033
2034 - Issue #12724: Add Py_RETURN_NOTIMPLEMENTED macro for returning NotImplemented.
2035
1164 - PY_PATCHLEVEL_REVISION has been removed, since it's meaningless with 2036 - PY_PATCHLEVEL_REVISION has been removed, since it's meaningless with
1165 Mercurial. 2037 Mercurial.
1166 2038
1167 - Issue #12173: The first argument of PyImport_ImportModuleLevel is now `const 2039 - Issue #12173: The first argument of PyImport_ImportModuleLevel is now `const
1168 char *` instead of `char *`. 2040 char *` instead of `char *`.
1169 2041
2042 - Issue #12380: PyArg_ParseTuple now accepts a bytearray for the 'c' format.
2043
1170 Documentation 2044 Documentation
1171 ------------- 2045 -------------
2046
2047 - Issue #13513: Fix io.IOBase documentation to correctly link to the
2048 io.IOBase.readline method instead of the readline module.
2049
2050 - Issue #13237: Reorganise subprocess documentation to emphasise convenience
2051 functions and the most commonly needed arguments to Popen.
2052
2053 - Issue #13141: Demonstrate recommended style for socketserver examples.
1172 2054
1173 - Issue #11818: Fix tempfile examples for Python 3. 2055 - Issue #11818: Fix tempfile examples for Python 3.
1174 2056
1175 2057
1176 What's New in Python 3.2? 2058 What's New in Python 3.2?
1177 ========================= 2059 =========================
1178 2060
1179 *Release date: 20-Feb-2011* 2061 *Release date: 20-Feb-2011*
1180 2062
1181 Core and Builtins 2063 Core and Builtins
(...skipping 920 matching lines...) Expand 10 before | Expand all | Expand 10 after
2102 - Issue #10095: fp_setreadl() doesn't reopen the file, instead reuse the file 2984 - Issue #10095: fp_setreadl() doesn't reopen the file, instead reuse the file
2103 descriptor. 2985 descriptor.
2104 2986
2105 - Issue #9418: Moved private string methods ``_formatter_parser`` and 2987 - Issue #9418: Moved private string methods ``_formatter_parser`` and
2106 ``_formatter_field_name_split`` into a new ``_string`` module. 2988 ``_formatter_field_name_split`` into a new ``_string`` module.
2107 2989
2108 - Issue #9992: Remove PYTHONFSENCODING environment variable. 2990 - Issue #9992: Remove PYTHONFSENCODING environment variable.
2109 2991
2110 Library 2992 Library
2111 ------- 2993 -------
2994
2995 - Issue #12943: python -m tokenize support has been added to tokenize.
2112 2996
2113 - Issue #10465: fix broken delegating of attributes by gzip._PaddedFile. 2997 - Issue #10465: fix broken delegating of attributes by gzip._PaddedFile.
2114 2998
2115 - Issue #10356: Decimal.__hash__(-1) should return -2. 2999 - Issue #10356: Decimal.__hash__(-1) should return -2.
2116 3000
2117 - Issue #1553375: logging: Added stack_info kwarg to display stack information. 3001 - Issue #1553375: logging: Added stack_info kwarg to display stack information.
2118 3002
2119 - Issue #5111: IPv6 Host in the Header is wrapped inside [ ]. Patch by Chandru. 3003 - Issue #5111: IPv6 Host in the Header is wrapped inside [ ]. Patch by Chandru.
2120 3004
2121 - Fix Fraction.__hash__ so that Fraction.__hash__(-1) is -2. (See also issue 3005 - Fix Fraction.__hash__ so that Fraction.__hash__(-1) is -2. (See also issue
(...skipping 4437 matching lines...) Expand 10 before | Expand all | Expand 10 after
6559 from test support, which does the conversion. 7443 from test support, which does the conversion.
6560 7444
6561 - Issue #5083: New 'gui' resource for regrtest. 7445 - Issue #5083: New 'gui' resource for regrtest.
6562 7446
6563 7447
6564 Docs 7448 Docs
6565 ---- 7449 ----
6566 7450
6567 7451
6568 **(For information about older versions, consult the HISTORY file.)** 7452 **(For information about older versions, consult the HISTORY file.)**
LEFTRIGHT

RSS Feeds Recent Issues | This issue
This is Rietveld 894c83f36cb7+