• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. bpo: 29781
2.. date: 2017-09-05-15-26-30
3.. nonce: LwYtBP
4.. release date: 2017-09-19
5.. section: Security
6
7SSLObject.version() now correctly returns None when handshake over BIO has
8not been performed yet.
9
10..
11
12.. bpo: 29505
13.. date: 2017-08-23-17-02-55
14.. nonce: BL6Yt8
15.. section: Security
16
17Add fuzz tests for float(str), int(str), unicode(str); for oss-fuzz.
18
19..
20
21.. bpo: 30947
22.. date: 2017-08-16-16-35-59
23.. nonce: iNMmm4
24.. section: Security
25
26Upgrade libexpat embedded copy from version 2.2.1 to 2.2.3 to get security
27fixes.
28
29..
30
31.. bpo: 30730
32.. date: 0347
33.. nonce: rJsyTH
34.. original section: Library
35.. section: Security
36
37Prevent environment variables injection in subprocess on Windows.  Prevent
38passing other environment variables and command arguments.
39
40..
41
42.. bpo: 30694
43.. date: 0344
44.. nonce: WkMWM_
45.. original section: Library
46.. section: Security
47
48Upgrade expat copy from 2.2.0 to 2.2.1 to get fixes of multiple security
49vulnerabilities including: CVE-2017-9233 (External entity infinite loop
50DoS), CVE-2016-9063 (Integer overflow, re-fix), CVE-2016-0718 (Fix
51regression bugs from 2.2.0's fix to CVE-2016-0718) and CVE-2012-0876
52(Counter hash flooding with SipHash). Note: the CVE-2016-5300 (Use
53os-specific entropy sources like getrandom) doesn't impact Python, since Python
54already gets entropy from the OS to set the expat secret using
55``XML_SetHashSalt()``.
56
57..
58
59.. bpo: 30500
60.. date: 0342
61.. nonce: 1VG7R-
62.. original section: Library
63.. section: Security
64
65Fix urllib.parse.splithost() to correctly parse fragments. For example,
66``splithost('//127.0.0.1#@evil.com/')`` now correctly returns the
67``127.0.0.1`` host, instead of treating ``@evil.com`` as the host in an
68authentication (``login@host``).
69
70..
71
72.. bpo: 29591
73.. date: 0338
74.. nonce: ExKblw
75.. original section: Library
76.. section: Security
77
78Update expat copy from 2.1.1 to 2.2.0 to get fixes of CVE-2016-0718 and
79CVE-2016-4472. See https://sourceforge.net/p/expat/bugs/537/ for more
80information.
81
82..
83
84.. bpo: 31490
85.. date: 2017-09-16-13-32-35
86.. nonce: r7m2sj
87.. section: Core and Builtins
88
89Fix an assertion failure in `ctypes` class definition, in case the class has
90an attribute whose name is specified in ``_anonymous_`` but not in
91``_fields_``. Patch by Oren Milman.
92
93..
94
95.. bpo: 31471
96.. date: 2017-09-14-19-47-57
97.. nonce: 0yiA5Q
98.. section: Core and Builtins
99
100Fix an assertion failure in `subprocess.Popen()` on Windows, in case the env
101argument has a bad keys() method. Patch by Oren Milman.
102
103..
104
105.. bpo: 31418
106.. date: 2017-09-13-13-03-52
107.. nonce: rS-FlC
108.. section: Core and Builtins
109
110Fix an assertion failure in `PyErr_WriteUnraisable()` in case of an
111exception with a bad ``__module__`` attribute. Patch by Oren Milman.
112
113..
114
115.. bpo: 31416
116.. date: 2017-09-11-12-54-35
117.. nonce: 2hlQFd
118.. section: Core and Builtins
119
120Fix assertion failures in case of a bad warnings.filters or
121warnings.defaultaction. Patch by Oren Milman.
122
123..
124
125.. bpo: 28411
126.. date: 2017-09-11-09-24-21
127.. nonce: 12SpAm
128.. section: Core and Builtins
129
130Change direct usage of PyInterpreterState.modules to
131PyImport_GetModuleDict(). Also introduce more uniformity in other code that
132deals with sys.modules. This helps reduce complications when working on
133sys.modules.
134
135..
136
137.. bpo: 28411
138.. date: 2017-09-11-09-11-20
139.. nonce: Ax91lz
140.. section: Core and Builtins
141
142Switch to the abstract API when dealing with ``PyInterpreterState.modules``.
143This allows later support for all dict subclasses and other Mapping
144implementations.  Also add a ``PyImport_GetModule()`` function to reduce a
145bunch of duplicated code.
146
147..
148
149.. bpo: 31411
150.. date: 2017-09-11-08-50-41
151.. nonce: HZz82I
152.. section: Core and Builtins
153
154Raise a TypeError instead of SystemError in case warnings.onceregistry is
155not a dictionary. Patch by Oren Milman.
156
157..
158
159.. bpo: 31344
160.. date: 2017-09-06-20-25-47
161.. nonce: XpFs-q
162.. section: Core and Builtins
163
164For finer control of tracing behaviour when testing the interpreter, two new
165frame attributes have been added to control the emission of particular trace
166events: ``f_trace_lines`` (``True`` by default) to turn off per-line trace
167events; and ``f_trace_opcodes`` (``False`` by default) to turn on per-opcode
168trace events.
169
170..
171
172.. bpo: 31373
173.. date: 2017-09-06-15-25-59
174.. nonce: dC4jd4
175.. section: Core and Builtins
176
177Fix several possible instances of undefined behavior due to floating-point
178demotions.
179
180..
181
182.. bpo: 30465
183.. date: 2017-09-06-10-47-29
184.. nonce: oe-3GD
185.. section: Core and Builtins
186
187Location information (``lineno`` and ``col_offset``) in f-strings is now
188(mostly) correct.  This fixes tools like flake8 from showing warnings on the
189wrong line (typically the first line of the file).
190
191..
192
193.. bpo: 30860
194.. date: 2017-09-05-13-47-49
195.. nonce: MROpZw
196.. section: Core and Builtins
197
198Consolidate CPython's global runtime state under a single struct.  This
199improves discoverability of the runtime state.
200
201..
202
203.. bpo: 31347
204.. date: 2017-09-04-16-35-06
205.. nonce: KDuf2w
206.. section: Core and Builtins
207
208Fix possible undefined behavior in _PyObject_FastCall_Prepend.
209
210..
211
212.. bpo: 31343
213.. date: 2017-09-04-14-57-27
214.. nonce: Kl_fS5
215.. section: Core and Builtins
216
217Include sys/sysmacros.h for major(), minor(), and makedev(). GNU C libray
218plans to remove the functions from sys/types.h.
219
220..
221
222.. bpo: 31291
223.. date: 2017-08-28-11-51-29
224.. nonce: t8QggK
225.. section: Core and Builtins
226
227Fix an assertion failure in `zipimport.zipimporter.get_data` on Windows,
228when the return value of ``pathname.replace('/','\\')`` isn't a string.
229Patch by Oren Milman.
230
231..
232
233.. bpo: 31271
234.. date: 2017-08-25-20-43-22
235.. nonce: YMduKF
236.. section: Core and Builtins
237
238Fix an assertion failure in the write() method of `io.TextIOWrapper`, when
239the encoder doesn't return a bytes object. Patch by Oren Milman.
240
241..
242
243.. bpo: 31243
244.. date: 2017-08-24-13-34-49
245.. nonce: dRJzqR
246.. section: Core and Builtins
247
248Fix a crash in some methods of `io.TextIOWrapper`, when the decoder's state
249is invalid. Patch by Oren Milman.
250
251..
252
253.. bpo: 30721
254.. date: 2017-08-18-15-15-20
255.. nonce: Hmc56z
256.. section: Core and Builtins
257
258``print`` now shows correct usage hint for using Python 2 redirection
259syntax.  Patch by Sanyam Khurana.
260
261..
262
263.. bpo: 31070
264.. date: 2017-08-09-09-40-54
265.. nonce: oDyLiI
266.. section: Core and Builtins
267
268Fix a race condition in importlib _get_module_lock().
269
270..
271
272.. bpo: 30747
273.. date: 2017-08-08-12-00-29
274.. nonce: g2kZRT
275.. section: Core and Builtins
276
277Add a non-dummy implementation of _Py_atomic_store and _Py_atomic_load on
278MSVC.
279
280..
281
282.. bpo: 31095
283.. date: 2017-08-01-18-48-30
284.. nonce: bXWZDb
285.. section: Core and Builtins
286
287Fix potential crash during GC caused by ``tp_dealloc`` which doesn't call
288``PyObject_GC_UnTrack()``.
289
290..
291
292.. bpo: 31071
293.. date: 2017-07-31-13-28-53
294.. nonce: P9UBDy
295.. section: Core and Builtins
296
297Avoid masking original TypeError in call with * unpacking when other
298arguments are passed.
299
300..
301
302.. bpo: 30978
303.. date: 2017-07-21-07-39-05
304.. nonce: f0jODc
305.. section: Core and Builtins
306
307str.format_map() now passes key lookup exceptions through. Previously any
308exception was replaced with a KeyError exception.
309
310..
311
312.. bpo: 30808
313.. date: 2017-07-17-12-12-59
314.. nonce: bA3zOv
315.. section: Core and Builtins
316
317Use _Py_atomic API for concurrency-sensitive signal state.
318
319..
320
321.. bpo: 30876
322.. date: 2017-07-11-06-31-32
323.. nonce: x35jZX
324.. section: Core and Builtins
325
326Relative import from unloaded package now reimports the package instead of
327failing with SystemError.  Relative import from non-package now fails with
328ImportError rather than SystemError.
329
330..
331
332.. bpo: 30703
333.. date: 2017-06-28-21-07-32
334.. nonce: ULCdFp
335.. section: Core and Builtins
336
337Improve signal delivery.
338Avoid using Py_AddPendingCall from signal handler, to avoid calling
339signal-unsafe functions. The tests I'm adding here fail without the rest of the
340patch, on Linux and OS X. This means our signal delivery logic had defects
341(some signals could be lost).
342
343..
344
345.. bpo: 30765
346.. date: 2017-06-26-14-29-50
347.. nonce: Q5iBmf
348.. section: Core and Builtins
349
350Avoid blocking in pthread_mutex_lock() when PyThread_acquire_lock() is asked
351not to block.
352
353..
354
355.. bpo: 31161
356.. date: 0470
357.. nonce: FcUAA0
358.. section: Core and Builtins
359
360Make sure the 'Missing parentheses' syntax error message is only applied to
361SyntaxError, not to subclasses. Patch by Martijn Pieters.
362
363..
364
365.. bpo: 30814
366.. date: 0469
367.. nonce: HcYsfM
368.. section: Core and Builtins
369
370Fixed a race condition when import a submodule from a package.
371
372..
373
374.. bpo: 30736
375.. date: 0468
376.. nonce: kA4J9v
377.. section: Core and Builtins
378
379The internal unicodedata database has been upgraded to Unicode 10.0.
380
381..
382
383.. bpo: 30604
384.. date: 0467
385.. nonce: zGPGoX
386.. section: Core and Builtins
387
388Move co_extra_freefuncs from per-thread to per-interpreter to avoid crashes.
389
390..
391
392.. bpo: 30597
393.. date: 0466
394.. nonce: 7erHiP
395.. section: Core and Builtins
396
397``print`` now shows expected input in custom error message when used as a
398Python 2 statement. Patch by Sanyam Khurana.
399
400..
401
402.. bpo: 30682
403.. date: 0465
404.. nonce: zZm88E
405.. section: Core and Builtins
406
407Removed a too-strict assertion that failed for certain f-strings, such as
408eval("f'\\\n'") and eval("f'\\\r'").
409
410..
411
412.. bpo: 30501
413.. date: 0464
414.. nonce: BWJByG
415.. section: Core and Builtins
416
417The compiler now produces more optimal code for complex condition
418expressions in the "if", "while" and "assert" statement, the "if"
419expression, and generator expressions and comprehensions.
420
421..
422
423.. bpo: 28180
424.. date: 0463
425.. nonce: f_IHor
426.. section: Core and Builtins
427
428Implement :pep:`538` (legacy C locale coercion). This means that when a
429suitable coercion target locale is available, both the core interpreter and
430locale-aware C extensions will assume the use of UTF-8 as the default text
431encoding, rather than ASCII.
432
433..
434
435.. bpo: 30486
436.. date: 0462
437.. nonce: KZi3nB
438.. section: Core and Builtins
439
440Allows setting cell values for __closure__. Patch by Lisa Roach.
441
442..
443
444.. bpo: 30537
445.. date: 0461
446.. nonce: sGC27r
447.. section: Core and Builtins
448
449itertools.islice now accepts integer-like objects (having an __index__
450method) as start, stop, and slice arguments
451
452..
453
454.. bpo: 25324
455.. date: 0460
456.. nonce: l12VjO
457.. section: Core and Builtins
458
459Tokens needed for parsing in Python moved to C. ``COMMENT``, ``NL`` and
460``ENCODING``. This way the tokens and tok_names in the token module don't
461get changed when you import the tokenize module.
462
463..
464
465.. bpo: 29104
466.. date: 0459
467.. nonce: u26yCx
468.. section: Core and Builtins
469
470Fixed parsing backslashes in f-strings.
471
472..
473
474.. bpo: 27945
475.. date: 0458
476.. nonce: p29r3O
477.. section: Core and Builtins
478
479Fixed various segfaults with dict when input collections are mutated during
480searching, inserting or comparing.  Based on patches by Duane Griffin and
481Tim Mitchell.
482
483..
484
485.. bpo: 25794
486.. date: 0457
487.. nonce: xfPwqm
488.. section: Core and Builtins
489
490Fixed type.__setattr__() and type.__delattr__() for non-interned attribute
491names.  Based on patch by Eryk Sun.
492
493..
494
495.. bpo: 30039
496.. date: 0456
497.. nonce: e0u4DG
498.. section: Core and Builtins
499
500If a KeyboardInterrupt happens when the interpreter is in the middle of
501resuming a chain of nested 'yield from' or 'await' calls, it's now correctly
502delivered to the innermost frame.
503
504..
505
506.. bpo: 28974
507.. date: 0455
508.. nonce: jVewS0
509.. section: Core and Builtins
510
511``object.__format__(x, '')`` is now equivalent to ``str(x)`` rather than
512``format(str(self), '')``.
513
514..
515
516.. bpo: 30024
517.. date: 0454
518.. nonce: kSOlED
519.. section: Core and Builtins
520
521Circular imports involving absolute imports with binding a submodule to a
522name are now supported.
523
524..
525
526.. bpo: 12414
527.. date: 0453
528.. nonce: T9ix8O
529.. section: Core and Builtins
530
531sys.getsizeof() on a code object now returns the sizes which includes the
532code struct and sizes of objects which it references. Patch by Dong-hee Na.
533
534..
535
536.. bpo: 29839
537.. date: 0452
538.. nonce: rUmfay
539.. section: Core and Builtins
540
541len() now raises ValueError rather than OverflowError if __len__() returned
542a large negative integer.
543
544..
545
546.. bpo: 11913
547.. date: 0451
548.. nonce: 5uiMX9
549.. section: Core and Builtins
550
551README.rst is now included in the list of distutils standard READMEs and
552therefore included in source distributions.
553
554..
555
556.. bpo: 29914
557.. date: 0450
558.. nonce: nqFSRR
559.. section: Core and Builtins
560
561Fixed default implementations of __reduce__ and __reduce_ex__().
562object.__reduce__() no longer takes arguments, object.__reduce_ex__() now
563requires one argument.
564
565..
566
567.. bpo: 29949
568.. date: 0449
569.. nonce: DevGPS
570.. section: Core and Builtins
571
572Fix memory usage regression of set and frozenset object.
573
574..
575
576.. bpo: 29935
577.. date: 0448
578.. nonce: vgjdJo
579.. section: Core and Builtins
580
581Fixed error messages in the index() method of tuple, list and deque when
582pass indices of wrong type.
583
584..
585
586.. bpo: 29816
587.. date: 0447
588.. nonce: 0H75Nl
589.. section: Core and Builtins
590
591Shift operation now has less opportunity to raise OverflowError. ValueError
592always is raised rather than OverflowError for negative counts. Shifting
593zero with non-negative count always returns zero.
594
595..
596
597.. bpo: 24821
598.. date: 0446
599.. nonce: 4DINGV
600.. section: Core and Builtins
601
602Fixed the slowing down to 25 times in the searching of some unlucky Unicode
603characters.
604
605..
606
607.. bpo: 29102
608.. date: 0445
609.. nonce: AW4YPj
610.. section: Core and Builtins
611
612Add a unique ID to PyInterpreterState.  This makes it easier to identify
613each subinterpreter.
614
615..
616
617.. bpo: 29894
618.. date: 0444
619.. nonce: Vev6t-
620.. section: Core and Builtins
621
622The deprecation warning is emitted if __complex__ returns an instance of a
623strict subclass of complex.  In a future versions of Python this can be an
624error.
625
626..
627
628.. bpo: 29859
629.. date: 0443
630.. nonce: Z1MLcA
631.. section: Core and Builtins
632
633Show correct error messages when any of the pthread_* calls in
634thread_pthread.h fails.
635
636..
637
638.. bpo: 29849
639.. date: 0442
640.. nonce: hafvBD
641.. section: Core and Builtins
642
643Fix a memory leak when an ImportError is raised during from import.
644
645..
646
647.. bpo: 28856
648.. date: 0441
649.. nonce: AFRmo4
650.. section: Core and Builtins
651
652Fix an oversight that %b format for bytes should support objects follow the
653buffer protocol.
654
655..
656
657.. bpo: 29723
658.. date: 0440
659.. nonce: M5omgP
660.. section: Core and Builtins
661
662The ``sys.path[0]`` initialization change for bpo-29139 caused a regression
663by revealing an inconsistency in how sys.path is initialized when executing
664``__main__`` from a zipfile, directory, or other import location. The
665interpreter now consistently avoids ever adding the import location's parent
666directory to ``sys.path``, and ensures no other ``sys.path`` entries are
667inadvertently modified when inserting the import location named on the
668command line.
669
670..
671
672.. bpo: 29568
673.. date: 0439
674.. nonce: 3EtOC-
675.. section: Core and Builtins
676
677Escaped percent "%%" in the format string for classic string formatting no
678longer allows any characters between two percents.
679
680..
681
682.. bpo: 29714
683.. date: 0438
684.. nonce: z-BhVd
685.. section: Core and Builtins
686
687Fix a regression that bytes format may fail when containing zero bytes
688inside.
689
690..
691
692.. bpo: 29695
693.. date: 0437
694.. nonce: z75xXa
695.. section: Core and Builtins
696
697bool(), float(), list() and tuple() no longer take keyword arguments. The
698first argument of int() can now be passes only as positional argument.
699
700..
701
702.. bpo: 28893
703.. date: 0436
704.. nonce: WTKnpj
705.. section: Core and Builtins
706
707Set correct __cause__ for errors about invalid awaitables returned from
708__aiter__ and __anext__.
709
710..
711
712.. bpo: 28876
713.. date: 0435
714.. nonce: cU-sGT
715.. section: Core and Builtins
716
717``bool(range)`` works even if ``len(range)`` raises :exc:`OverflowError`.
718
719..
720
721.. bpo: 29683
722.. date: 0434
723.. nonce: G5iS-P
724.. section: Core and Builtins
725
726Fixes to memory allocation in _PyCode_SetExtra.  Patch by Brian Coleman.
727
728..
729
730.. bpo: 29684
731.. date: 0433
732.. nonce: wTgEoh
733.. section: Core and Builtins
734
735Fix minor regression of PyEval_CallObjectWithKeywords. It should raise
736TypeError when kwargs is not a dict.  But it might cause segv when args=NULL
737and kwargs is not a dict.
738
739..
740
741.. bpo: 28598
742.. date: 0432
743.. nonce: QxbzQn
744.. section: Core and Builtins
745
746Support __rmod__ for subclasses of str being called before str.__mod__.
747Patch by Martijn Pieters.
748
749..
750
751.. bpo: 29607
752.. date: 0431
753.. nonce: 7NvBA1
754.. section: Core and Builtins
755
756Fix stack_effect computation for CALL_FUNCTION_EX. Patch by Matthieu
757Dartiailh.
758
759..
760
761.. bpo: 29602
762.. date: 0430
763.. nonce: qyyskC
764.. section: Core and Builtins
765
766Fix incorrect handling of signed zeros in complex constructor for complex
767subclasses and for inputs having a __complex__ method. Patch by Serhiy
768Storchaka.
769
770..
771
772.. bpo: 29347
773.. date: 0429
774.. nonce: 1RPPGN
775.. section: Core and Builtins
776
777Fixed possibly dereferencing undefined pointers when creating weakref
778objects.
779
780..
781
782.. bpo: 29463
783.. date: 0428
784.. nonce: h2bg8A
785.. section: Core and Builtins
786
787Add ``docstring`` field to Module, ClassDef, FunctionDef, and
788AsyncFunctionDef ast nodes.  docstring is not first stmt in their body
789anymore.  It affects ``co_firstlineno`` and ``co_lnotab`` of code object for
790module and class. (Reverted in :issue:`32911`.)
791
792..
793
794.. bpo: 29438
795.. date: 0427
796.. nonce: IKxD6I
797.. section: Core and Builtins
798
799Fixed use-after-free problem in key sharing dict.
800
801..
802
803.. bpo: 29546
804.. date: 0426
805.. nonce: PS1I1T
806.. section: Core and Builtins
807
808Set the 'path' and 'name' attribute on ImportError for ``from ... import
809...``.
810
811..
812
813.. bpo: 29546
814.. date: 0425
815.. nonce: O1rmG_
816.. section: Core and Builtins
817
818Improve from-import error message with location
819
820..
821
822.. bpo: 29478
823.. date: 0424
824.. nonce: rTQ-qy
825.. section: Core and Builtins
826
827If max_line_length=None is specified while using the Compat32 policy, it is
828no longer ignored.  Patch by Mircea Cosbuc.
829
830..
831
832.. bpo: 29319
833.. date: 0423
834.. nonce: KLDUZf
835.. section: Core and Builtins
836
837Prevent RunMainFromImporter overwriting sys.path[0].
838
839..
840
841.. bpo: 29337
842.. date: 0422
843.. nonce: bjX8AE
844.. section: Core and Builtins
845
846Fixed possible BytesWarning when compare the code objects. Warnings could be
847emitted at compile time.
848
849..
850
851.. bpo: 29327
852.. date: 0421
853.. nonce: XXQarW
854.. section: Core and Builtins
855
856Fixed a crash when pass the iterable keyword argument to sorted().
857
858..
859
860.. bpo: 29034
861.. date: 0420
862.. nonce: 7-uEDT
863.. section: Core and Builtins
864
865Fix memory leak and use-after-free in os module (path_converter).
866
867..
868
869.. bpo: 29159
870.. date: 0419
871.. nonce: gEn_kP
872.. section: Core and Builtins
873
874Fix regression in bytes(x) when x.__index__() raises Exception.
875
876..
877
878.. bpo: 29049
879.. date: 0418
880.. nonce: KpVXBw
881.. section: Core and Builtins
882
883Call _PyObject_GC_TRACK() lazily when calling Python function. Calling
884function is up to 5% faster.
885
886..
887
888.. bpo: 28927
889.. date: 0417
890.. nonce: 9fxf6y
891.. section: Core and Builtins
892
893bytes.fromhex() and bytearray.fromhex() now ignore all ASCII whitespace, not
894only spaces.  Patch by Robert Xiao.
895
896..
897
898.. bpo: 28932
899.. date: 0416
900.. nonce: QnLx8A
901.. section: Core and Builtins
902
903Do not include <sys/random.h> if it does not exist.
904
905..
906
907.. bpo: 25677
908.. date: 0415
909.. nonce: RWhZrb
910.. section: Core and Builtins
911
912Correct the positioning of the syntax error caret for indented blocks. Based
913on patch by Michael Layzell.
914
915..
916
917.. bpo: 29000
918.. date: 0414
919.. nonce: K6wQ-3
920.. section: Core and Builtins
921
922Fixed bytes formatting of octals with zero padding in alternate form.
923
924..
925
926.. bpo: 18896
927.. date: 0413
928.. nonce: Pqe0bg
929.. section: Core and Builtins
930
931Python function can now have more than 255 parameters.
932collections.namedtuple() now supports tuples with more than 255 elements.
933
934..
935
936.. bpo: 28596
937.. date: 0412
938.. nonce: snIJRd
939.. section: Core and Builtins
940
941The preferred encoding is UTF-8 on Android. Patch written by Chi Hsuan Yen.
942
943..
944
945.. bpo: 22257
946.. date: 0411
947.. nonce: 2a8zxB
948.. section: Core and Builtins
949
950Clean up interpreter startup (see :pep:`432`).
951
952..
953
954.. bpo: 26919
955.. date: 0410
956.. nonce: Cm7MSa
957.. section: Core and Builtins
958
959On Android, operating system data is now always encoded/decoded to/from
960UTF-8, instead of the locale encoding to avoid inconsistencies with
961os.fsencode() and os.fsdecode() which are already using UTF-8.
962
963..
964
965.. bpo: 28991
966.. date: 0409
967.. nonce: lGA0FK
968.. section: Core and Builtins
969
970functools.lru_cache() was susceptible to an obscure reentrancy bug
971triggerable by a monkey-patched len() function.
972
973..
974
975.. bpo: 28147
976.. date: 0408
977.. nonce: CnK_xf
978.. section: Core and Builtins
979
980Fix a memory leak in split-table dictionaries: setattr() must not convert
981combined table into split table. Patch written by INADA Naoki.
982
983..
984
985.. bpo: 28739
986.. date: 0407
987.. nonce: w1fvhk
988.. section: Core and Builtins
989
990f-string expressions are no longer accepted as docstrings and by
991ast.literal_eval() even if they do not include expressions.
992
993..
994
995.. bpo: 28512
996.. date: 0406
997.. nonce: i-pv6d
998.. section: Core and Builtins
999
1000Fixed setting the offset attribute of SyntaxError by
1001PyErr_SyntaxLocationEx() and PyErr_SyntaxLocationObject().
1002
1003..
1004
1005.. bpo: 28918
1006.. date: 0405
1007.. nonce: SFVuPz
1008.. section: Core and Builtins
1009
1010Fix the cross compilation of xxlimited when Python has been built with
1011Py_DEBUG defined.
1012
1013..
1014
1015.. bpo: 23722
1016.. date: 0404
1017.. nonce: e8BH5h
1018.. section: Core and Builtins
1019
1020Rather than silently producing a class that doesn't support zero-argument
1021``super()`` in methods, failing to pass the new ``__classcell__`` namespace
1022entry up to ``type.__new__`` now results in a ``DeprecationWarning`` and a
1023class that supports zero-argument ``super()``.
1024
1025..
1026
1027.. bpo: 28797
1028.. date: 0403
1029.. nonce: _A0_Z5
1030.. section: Core and Builtins
1031
1032Modifying the class __dict__ inside the __set_name__ method of a descriptor
1033that is used inside that class no longer prevents calling the __set_name__
1034method of other descriptors.
1035
1036..
1037
1038.. bpo: 28799
1039.. date: 0402
1040.. nonce: cP6V1N
1041.. section: Core and Builtins
1042
1043Remove the ``PyEval_GetCallStats()`` function and deprecate the untested and
1044undocumented ``sys.callstats()`` function. Remove the ``CALL_PROFILE``
1045special build: use the :func:`sys.setprofile` function, :mod:`cProfile` or
1046:mod:`profile` to profile function calls.
1047
1048..
1049
1050.. bpo: 12844
1051.. date: 0401
1052.. nonce: pdr3gY
1053.. section: Core and Builtins
1054
1055More than 255 arguments can now be passed to a function.
1056
1057..
1058
1059.. bpo: 28782
1060.. date: 0400
1061.. nonce: foJV_E
1062.. section: Core and Builtins
1063
1064Fix a bug in the implementation ``yield from`` when checking if the next
1065instruction is YIELD_FROM. Regression introduced by WORDCODE (issue #26647).
1066
1067..
1068
1069.. bpo: 28774
1070.. date: 0399
1071.. nonce: cEehAr
1072.. section: Core and Builtins
1073
1074Fix error position of the unicode error in ASCII and Latin1 encoders when a
1075string returned by the error handler contains multiple non-encodable
1076characters (non-ASCII for the ASCII codec, characters out of the
1077U+0000-U+00FF range for Latin1).
1078
1079..
1080
1081.. bpo: 28731
1082.. date: 0398
1083.. nonce: oNF59u
1084.. section: Core and Builtins
1085
1086Optimize _PyDict_NewPresized() to create correct size dict. Improve speed of
1087dict literal with constant keys up to 30%.
1088
1089..
1090
1091.. bpo: 28532
1092.. date: 0397
1093.. nonce: KEYJny
1094.. section: Core and Builtins
1095
1096Show sys.version when -V option is supplied twice.
1097
1098..
1099
1100.. bpo: 27100
1101.. date: 0396
1102.. nonce: poVjXq
1103.. section: Core and Builtins
1104
1105The with-statement now checks for __enter__ before it checks for __exit__.
1106This gives less confusing error messages when both methods are missing.
1107Patch by Jonathan Ellington.
1108
1109..
1110
1111.. bpo: 28746
1112.. date: 0395
1113.. nonce: r5MXdB
1114.. section: Core and Builtins
1115
1116Fix the set_inheritable() file descriptor method on platforms that do not
1117have the ioctl FIOCLEX and FIONCLEX commands.
1118
1119..
1120
1121.. bpo: 26920
1122.. date: 0394
1123.. nonce: 1URwGb
1124.. section: Core and Builtins
1125
1126Fix not getting the locale's charset upon initializing the interpreter, on
1127platforms that do not have langinfo.
1128
1129..
1130
1131.. bpo: 28648
1132.. date: 0393
1133.. nonce: z7B52W
1134.. section: Core and Builtins
1135
1136Fixed crash in Py_DecodeLocale() in debug build on Mac OS X when decode
1137astral characters.  Patch by Xiang Zhang.
1138
1139..
1140
1141.. bpo: 28665
1142.. date: 0392
1143.. nonce: v4nx86
1144.. section: Core and Builtins
1145
1146Improve speed of the STORE_DEREF opcode by 40%.
1147
1148..
1149
1150.. bpo: 19398
1151.. date: 0391
1152.. nonce: RYbEGH
1153.. section: Core and Builtins
1154
1155Extra slash no longer added to sys.path components in case of empty
1156compile-time PYTHONPATH components.
1157
1158..
1159
1160.. bpo: 28621
1161.. date: 0390
1162.. nonce: eCD7n-
1163.. section: Core and Builtins
1164
1165Sped up converting int to float by reusing faster bits counting
1166implementation.  Patch by Adrian Wielgosik.
1167
1168..
1169
1170.. bpo: 28580
1171.. date: 0389
1172.. nonce: 8bqBmG
1173.. section: Core and Builtins
1174
1175Optimize iterating split table values. Patch by Xiang Zhang.
1176
1177..
1178
1179.. bpo: 28583
1180.. date: 0388
1181.. nonce: F-QAx1
1182.. section: Core and Builtins
1183
1184PyDict_SetDefault didn't combine split table when needed. Patch by Xiang
1185Zhang.
1186
1187..
1188
1189.. bpo: 28128
1190.. date: 0387
1191.. nonce: Lc2sFu
1192.. section: Core and Builtins
1193
1194Deprecation warning for invalid str and byte escape sequences now prints
1195better information about where the error occurs. Patch by Serhiy Storchaka
1196and Eric Smith.
1197
1198..
1199
1200.. bpo: 28509
1201.. date: 0386
1202.. nonce: _Fa4Uq
1203.. section: Core and Builtins
1204
1205dict.update() no longer allocate unnecessary large memory.
1206
1207..
1208
1209.. bpo: 28426
1210.. date: 0385
1211.. nonce: E_quyK
1212.. section: Core and Builtins
1213
1214Fixed potential crash in PyUnicode_AsDecodedObject() in debug build.
1215
1216..
1217
1218.. bpo: 28517
1219.. date: 0384
1220.. nonce: ExPkm9
1221.. section: Core and Builtins
1222
1223Fixed of-by-one error in the peephole optimizer that caused keeping
1224unreachable code.
1225
1226..
1227
1228.. bpo: 28214
1229.. date: 0383
1230.. nonce: 6ECJox
1231.. section: Core and Builtins
1232
1233Improved exception reporting for problematic __set_name__ attributes.
1234
1235..
1236
1237.. bpo: 23782
1238.. date: 0382
1239.. nonce: lonDzj
1240.. section: Core and Builtins
1241
1242Fixed possible memory leak in _PyTraceback_Add() and exception loss in
1243PyTraceBack_Here().
1244
1245..
1246
1247.. bpo: 28183
1248.. date: 0381
1249.. nonce: MJZeNd
1250.. section: Core and Builtins
1251
1252Optimize and cleanup dict iteration.
1253
1254..
1255
1256.. bpo: 26081
1257.. date: 0380
1258.. nonce: _x5vjl
1259.. section: Core and Builtins
1260
1261Added C implementation of asyncio.Future. Original patch by Yury Selivanov.
1262
1263..
1264
1265.. bpo: 28379
1266.. date: 0379
1267.. nonce: DuXlco
1268.. section: Core and Builtins
1269
1270Added sanity checks and tests for PyUnicode_CopyCharacters(). Patch by Xiang
1271Zhang.
1272
1273..
1274
1275.. bpo: 28376
1276.. date: 0378
1277.. nonce: oPD-5D
1278.. section: Core and Builtins
1279
1280The type of long range iterator is now registered as Iterator. Patch by Oren
1281Milman.
1282
1283..
1284
1285.. bpo: 28376
1286.. date: 0377
1287.. nonce: yTEhEo
1288.. section: Core and Builtins
1289
1290Creating instances of range_iterator by calling range_iterator type now is
1291disallowed.  Calling iter() on range instance is the only way. Patch by Oren
1292Milman.
1293
1294..
1295
1296.. bpo: 26906
1297.. date: 0376
1298.. nonce: YBjcwI
1299.. section: Core and Builtins
1300
1301Resolving special methods of uninitialized type now causes implicit
1302initialization of the type instead of a fail.
1303
1304..
1305
1306.. bpo: 18287
1307.. date: 0375
1308.. nonce: k6jffS
1309.. section: Core and Builtins
1310
1311PyType_Ready() now checks that tp_name is not NULL. Original patch by Niklas
1312Koep.
1313
1314..
1315
1316.. bpo: 24098
1317.. date: 0374
1318.. nonce: XqlP_1
1319.. section: Core and Builtins
1320
1321Fixed possible crash when AST is changed in process of compiling it.
1322
1323..
1324
1325.. bpo: 28201
1326.. date: 0373
1327.. nonce: GWUxAy
1328.. section: Core and Builtins
1329
1330Dict reduces possibility of 2nd conflict in hash table when hashes have same
1331lower bits.
1332
1333..
1334
1335.. bpo: 28350
1336.. date: 0372
1337.. nonce: 8M5Eg9
1338.. section: Core and Builtins
1339
1340String constants with null character no longer interned.
1341
1342..
1343
1344.. bpo: 26617
1345.. date: 0371
1346.. nonce: Gh5LvN
1347.. section: Core and Builtins
1348
1349Fix crash when GC runs during weakref callbacks.
1350
1351..
1352
1353.. bpo: 27942
1354.. date: 0370
1355.. nonce: ZGuhns
1356.. section: Core and Builtins
1357
1358String constants now interned recursively in tuples and frozensets.
1359
1360..
1361
1362.. bpo: 28289
1363.. date: 0369
1364.. nonce: l1kHlV
1365.. section: Core and Builtins
1366
1367ImportError.__init__ now resets not specified attributes.
1368
1369..
1370
1371.. bpo: 21578
1372.. date: 0368
1373.. nonce: GI1bhj
1374.. section: Core and Builtins
1375
1376Fixed misleading error message when ImportError called with invalid keyword
1377args.
1378
1379..
1380
1381.. bpo: 28203
1382.. date: 0367
1383.. nonce: LRn5vp
1384.. section: Core and Builtins
1385
1386Fix incorrect type in complex(1.0, {2:3}) error message. Patch by Soumya
1387Sharma.
1388
1389..
1390
1391.. bpo: 28086
1392.. date: 0366
1393.. nonce: JsQPMQ
1394.. section: Core and Builtins
1395
1396Single var-positional argument of tuple subtype was passed unscathed to the
1397C-defined function.  Now it is converted to exact tuple.
1398
1399..
1400
1401.. bpo: 28214
1402.. date: 0365
1403.. nonce: zQF8Em
1404.. section: Core and Builtins
1405
1406Now __set_name__ is looked up on the class instead of the instance.
1407
1408..
1409
1410.. bpo: 27955
1411.. date: 0364
1412.. nonce: HC4pZ4
1413.. section: Core and Builtins
1414
1415Fallback on reading /dev/urandom device when the getrandom() syscall fails
1416with EPERM, for example when blocked by SECCOMP.
1417
1418..
1419
1420.. bpo: 28192
1421.. date: 0363
1422.. nonce: eR6stU
1423.. section: Core and Builtins
1424
1425Don't import readline in isolated mode.
1426
1427..
1428
1429.. bpo: 27441
1430.. date: 0362
1431.. nonce: scPKax
1432.. section: Core and Builtins
1433
1434Remove some redundant assignments to ob_size in longobject.c. Thanks Oren
1435Milman.
1436
1437..
1438
1439.. bpo: 27222
1440.. date: 0361
1441.. nonce: 74PvFk
1442.. section: Core and Builtins
1443
1444Clean up redundant code in long_rshift function. Thanks Oren Milman.
1445
1446..
1447
1448.. bpo: 0
1449.. date: 0360
1450.. nonce: 9EbOiD
1451.. section: Core and Builtins
1452
1453Upgrade internal unicode databases to Unicode version 9.0.0.
1454
1455..
1456
1457.. bpo: 28131
1458.. date: 0359
1459.. nonce: owq0wW
1460.. section: Core and Builtins
1461
1462Fix a regression in zipimport's compile_source().  zipimport should use the
1463same optimization level as the interpreter.
1464
1465..
1466
1467.. bpo: 28126
1468.. date: 0358
1469.. nonce: Qf6-uQ
1470.. section: Core and Builtins
1471
1472Replace Py_MEMCPY with memcpy(). Visual Studio can properly optimize
1473memcpy().
1474
1475..
1476
1477.. bpo: 28120
1478.. date: 0357
1479.. nonce: e5xc1i
1480.. section: Core and Builtins
1481
1482Fix dict.pop() for splitted dictionary when trying to remove a "pending key"
1483(Not yet inserted in split-table). Patch by Xiang Zhang.
1484
1485..
1486
1487.. bpo: 26182
1488.. date: 0356
1489.. nonce: jYlqTO
1490.. section: Core and Builtins
1491
1492Raise DeprecationWarning when async and await keywords are used as
1493variable/attribute/class/function name.
1494
1495..
1496
1497.. bpo: 26182
1498.. date: 0355
1499.. nonce: a8JXK2
1500.. section: Core and Builtins
1501
1502Fix a refleak in code that raises DeprecationWarning.
1503
1504..
1505
1506.. bpo: 28721
1507.. date: 0354
1508.. nonce: BO9BUF
1509.. section: Core and Builtins
1510
1511Fix asynchronous generators aclose() and athrow() to handle
1512StopAsyncIteration propagation properly.
1513
1514..
1515
1516.. bpo: 26110
1517.. date: 0353
1518.. nonce: KRaID6
1519.. section: Core and Builtins
1520
1521Speed-up method calls: add LOAD_METHOD and CALL_METHOD opcodes.
1522
1523..
1524
1525.. bpo: 31499
1526.. date: 2017-09-18-10-57-04
1527.. nonce: BydYhf
1528.. section: Library
1529
1530xml.etree: Fix a crash when a parser is part of a reference cycle.
1531
1532..
1533
1534.. bpo: 31482
1535.. date: 2017-09-16-01-53-11
1536.. nonce: 39s5dS
1537.. section: Library
1538
1539``random.seed()`` now works with bytes in version=1
1540
1541..
1542
1543.. bpo: 28556
1544.. date: 2017-09-14-11-02-56
1545.. nonce: EUOiYs
1546.. section: Library
1547
1548typing.get_type_hints now finds the right globalns for classes and modules
1549by default (when no ``globalns`` was specified by the caller).
1550
1551..
1552
1553.. bpo: 28556
1554.. date: 2017-09-13-23-27-39
1555.. nonce: UmTQvv
1556.. section: Library
1557
1558Speed improvements to the ``typing`` module.  Original PRs by Ivan
1559Levkivskyi and Mitar.
1560
1561..
1562
1563.. bpo: 31544
1564.. date: 2017-09-13-19-55-35
1565.. nonce: beTh6t
1566.. section: Library
1567
1568The C accelerator module of ElementTree ignored exceptions raised when
1569looking up TreeBuilder target methods in XMLParser().
1570
1571..
1572
1573.. bpo: 31234
1574.. date: 2017-09-13-18-05-56
1575.. nonce: lGkcPg
1576.. section: Library
1577
1578socket.create_connection() now fixes manually a reference cycle: clear the
1579variable storing the last exception on success.
1580
1581..
1582
1583.. bpo: 31457
1584.. date: 2017-09-13-13-33-39
1585.. nonce: bIVBtI
1586.. section: Library
1587
1588LoggerAdapter objects can now be nested.
1589
1590..
1591
1592.. bpo: 31431
1593.. date: 2017-09-13-07-37-20
1594.. nonce: dj994R
1595.. section: Library
1596
1597SSLContext.check_hostname now automatically sets SSLContext.verify_mode to
1598ssl.CERT_REQUIRED instead of failing with a ValueError.
1599
1600..
1601
1602.. bpo: 31233
1603.. date: 2017-09-13-02-17-11
1604.. nonce: r-IPIu
1605.. section: Library
1606
1607socketserver.ThreadingMixIn now keeps a list of non-daemonic threads to wait
1608until all these threads complete in server_close().
1609
1610..
1611
1612.. bpo: 28638
1613.. date: 2017-09-08-14-31-15
1614.. nonce: lfbVyH
1615.. section: Library
1616
1617Changed the implementation strategy for collections.namedtuple() to
1618substantially reduce the use of exec() in favor of precomputed methods. As a
1619result, the *verbose* parameter and *_source* attribute are no longer
1620supported.  The benefits include 1) having a smaller memory footprint for
1621applications using multiple named tuples, 2) faster creation of the named
1622tuple class (approx 4x to 6x depending on how it is measured), and 3) minor
1623speed-ups for instance creation using __new__, _make, and _replace.  (The
1624primary patch contributor is Jelle Zijlstra with further improvements by
1625INADA Naoki, Serhiy Storchaka, and Raymond Hettinger.)
1626
1627..
1628
1629.. bpo: 31400
1630.. date: 2017-09-08-14-19-57
1631.. nonce: YOTPKi
1632.. section: Library
1633
1634Improves SSL error handling to avoid losing error numbers.
1635
1636..
1637
1638.. bpo: 27629
1639.. date: 2017-09-07-12-15-56
1640.. nonce: 7xJXEy
1641.. section: Library
1642
1643Make return types of SSLContext.wrap_bio() and SSLContext.wrap_socket()
1644customizable.
1645
1646..
1647
1648.. bpo: 28958
1649.. date: 2017-09-06-19-41-01
1650.. nonce: x4-K5F
1651.. section: Library
1652
1653ssl.SSLContext() now uses OpenSSL error information when a context cannot be
1654instantiated.
1655
1656..
1657
1658.. bpo: 28182
1659.. date: 2017-09-06-18-49-16
1660.. nonce: hRP8Bk
1661.. section: Library
1662
1663The SSL module now raises SSLCertVerificationError when OpenSSL fails to
1664verify the peer's certificate. The exception contains more information about
1665the error.
1666
1667..
1668
1669.. bpo: 27340
1670.. date: 2017-09-06-06-50-41
1671.. nonce: GgekV5
1672.. section: Library
1673
1674SSLSocket.sendall() now uses memoryview to create slices of data. This fixes
1675support for all bytes-like object. It is also more efficient and avoids
1676costly copies.
1677
1678..
1679
1680.. bpo: 14191
1681.. date: 2017-09-05-17-43-00
1682.. nonce: vhh2xx
1683.. section: Library
1684
1685A new function ``argparse.ArgumentParser.parse_intermixed_args`` provides
1686the ability to parse command lines where there user intermixes options and
1687positional arguments.
1688
1689..
1690
1691.. bpo: 31178
1692.. date: 2017-09-05-14-55-28
1693.. nonce: JrSFo7
1694.. section: Library
1695
1696Fix string concatenation bug in rare error path in the subprocess module
1697
1698..
1699
1700.. bpo: 31350
1701.. date: 2017-09-05-10-30-48
1702.. nonce: dXJ-7N
1703.. section: Library
1704
1705Micro-optimize :func:`asyncio._get_running_loop` to become up to 10% faster.
1706
1707..
1708
1709.. bpo: 31170
1710.. date: 2017-09-04-23-41-35
1711.. nonce: QGmJ1t
1712.. section: Library
1713
1714expat: Update libexpat from 2.2.3 to 2.2.4. Fix copying of partial
1715characters for UTF-8 input (libexpat bug 115):
1716https://github.com/libexpat/libexpat/issues/115
1717
1718..
1719
1720.. bpo: 29136
1721.. date: 2017-09-04-16-39-49
1722.. nonce: vSn1oR
1723.. section: Library
1724
1725Add TLS 1.3 cipher suites and OP_NO_TLSv1_3.
1726
1727..
1728
1729.. bpo: 1198569
1730.. date: 2017-09-04-10-53-06
1731.. nonce: vhh2nY
1732.. section: Library
1733
1734``string.Template`` subclasses can optionally define ``braceidpattern`` if
1735they want to specify different placeholder patterns inside and outside the
1736braces.  If None (the default) it falls back to ``idpattern``.
1737
1738..
1739
1740.. bpo: 31326
1741.. date: 2017-09-01-18-48-06
1742.. nonce: TB05tV
1743.. section: Library
1744
1745concurrent.futures.ProcessPoolExecutor.shutdown() now explicitly closes the
1746call queue. Moreover, shutdown(wait=True) now also join the call queue
1747thread, to prevent leaking a dangling thread.
1748
1749..
1750
1751.. bpo: 27144
1752.. date: 2017-08-30-11-26-14
1753.. nonce: PEDJsE
1754.. section: Library
1755
1756The ``map()`` and ``as_completed()`` iterators in ``concurrent.futures`` now
1757avoid keeping a reference to yielded objects.
1758
1759..
1760
1761.. bpo: 31281
1762.. date: 2017-08-29-07-14-14
1763.. nonce: DcFyNs
1764.. section: Library
1765
1766Fix ``fileinput.FileInput(files, inplace=True)`` when ``files`` contain
1767``pathlib.Path`` objects.
1768
1769..
1770
1771.. bpo: 10746
1772.. date: 2017-08-28-13-01-05
1773.. nonce: nmAvfu
1774.. section: Library
1775
1776Fix ctypes producing wrong :pep:`3118` type codes for integer types.
1777
1778..
1779
1780.. bpo: 27584
1781.. date: 2017-08-24-14-03-14
1782.. nonce: r11JHZ
1783.. section: Library
1784
1785``AF_VSOCK`` has been added to the socket interface which allows
1786communication between virtual machines and their host.
1787
1788..
1789
1790.. bpo: 22536
1791.. date: 2017-08-23
1792.. nonce: _narf_
1793.. section: Library
1794
1795The subprocess module now sets the filename when FileNotFoundError is raised
1796on POSIX systems due to the executable or cwd not being found.
1797
1798..
1799
1800.. bpo: 29741
1801.. date: 2017-08-23-00-31-32
1802.. nonce: EBn_DM
1803.. section: Library
1804
1805Update some methods in the _pyio module to also accept integer types. Patch
1806by Oren Milman.
1807
1808..
1809
1810.. bpo: 31249
1811.. date: 2017-08-22-12-44-48
1812.. nonce: STPbb9
1813.. section: Library
1814
1815concurrent.futures: WorkItem.run() used by ThreadPoolExecutor now breaks a
1816reference cycle between an exception object and the WorkItem object.
1817
1818..
1819
1820.. bpo: 31247
1821.. date: 2017-08-21-17-50-27
1822.. nonce: 8S3zJp
1823.. section: Library
1824
1825xmlrpc.server now explicitly breaks reference cycles when using
1826sys.exc_info() in code handling exceptions.
1827
1828..
1829
1830.. bpo: 23835
1831.. date: 2017-08-21-16-06-19
1832.. nonce: da_4Kz
1833.. section: Library
1834
1835configparser: reading defaults in the ``ConfigParser()`` constructor is now
1836using ``read_dict()``, making its behavior consistent with the rest of the
1837parser.  Non-string keys and values in the defaults dictionary are now being
1838implicitly converted to strings.  Patch by James Tocknell.
1839
1840..
1841
1842.. bpo: 31238
1843.. date: 2017-08-21-12-31-53
1844.. nonce: Gg0LRH
1845.. section: Library
1846
1847pydoc: the stop() method of the private ServerThread class now waits until
1848DocServer.serve_until_quit() completes and then explicitly sets its
1849docserver attribute to None to break a reference cycle.
1850
1851..
1852
1853.. bpo: 5001
1854.. date: 2017-08-18-17-16-38
1855.. nonce: gwnthq
1856.. section: Library
1857
1858Many asserts in `multiprocessing` are now more informative, and some error
1859types have been changed to more specific ones.
1860
1861..
1862
1863.. bpo: 31109
1864.. date: 2017-08-17-20-29-45
1865.. nonce: 7qtC64
1866.. section: Library
1867
1868Convert zipimport to use Argument Clinic.
1869
1870..
1871
1872.. bpo: 30102
1873.. date: 2017-08-16-21-14-31
1874.. nonce: 1sPqmc
1875.. section: Library
1876
1877The ssl and hashlib modules now call OPENSSL_add_all_algorithms_noconf() on
1878OpenSSL < 1.1.0. The function detects CPU features and enables optimizations
1879on some CPU architectures such as POWER8. Patch is based on research from
1880Gustavo Serra Scalet.
1881
1882..
1883
1884.. bpo: 18966
1885.. date: 2017-08-16-20-28-06
1886.. nonce: mjHWk2
1887.. section: Library
1888
1889Non-daemonic threads created by a multiprocessing.Process are now joined on
1890child exit.
1891
1892..
1893
1894.. bpo: 31183
1895.. date: 2017-08-13-09-17-01
1896.. nonce: -2_YGj
1897.. section: Library
1898
1899`dis` now works with asynchronous generator and coroutine objects. Patch by
1900George Collins based on diagnosis by Luciano Ramalho.
1901
1902..
1903
1904.. bpo: 5001
1905.. date: 2017-08-12-09-25-55
1906.. nonce: huQi2Y
1907.. section: Library
1908
1909There are a number of uninformative asserts in the `multiprocessing` module,
1910as noted in issue 5001. This change fixes two of the most potentially
1911problematic ones, since they are in error-reporting code, in the
1912`multiprocessing.managers.convert_to_error` function. (It also makes more
1913informative a ValueError message.) The only potentially problematic change
1914is that the AssertionError is now a TypeError; however, this should also
1915help distinguish it from an AssertionError being *reported* by the
1916function/its caller (such as in issue 31169). - Patch by Allen W. Smith
1917(drallensmith on github).
1918
1919..
1920
1921.. bpo: 31185
1922.. date: 2017-08-11-19-30-00
1923.. nonce: i6TPgL
1924.. section: Library
1925
1926Fixed miscellaneous errors in asyncio speedup module.
1927
1928..
1929
1930.. bpo: 31151
1931.. date: 2017-08-10-13-20-02
1932.. nonce: 730VBI
1933.. section: Library
1934
1935socketserver.ForkingMixIn.server_close() now waits until all child processes
1936completed to prevent leaking zombie processes.
1937
1938..
1939
1940.. bpo: 31072
1941.. date: 2017-08-09-13-45-23
1942.. nonce: NLXDPV
1943.. section: Library
1944
1945Add an ``include_file`` parameter to ``zipapp.create_archive()``
1946
1947..
1948
1949.. bpo: 24700
1950.. date: 2017-08-08-15-14-34
1951.. nonce: 44mvNV
1952.. section: Library
1953
1954Optimize array.array comparison. It is now from 10x up to 70x faster when
1955comparing arrays holding values of the same integer type.
1956
1957..
1958
1959.. bpo: 31135
1960.. date: 2017-08-08-14-44-37
1961.. nonce: HH94xR
1962.. section: Library
1963
1964ttk: fix the destroy() method of LabeledScale and OptionMenu classes. Call
1965the parent destroy() method even if the used attribute doesn't exist. The
1966LabeledScale.destroy() method now also explicitly clears label and scale
1967attributes to help the garbage collector to destroy all widgets.
1968
1969..
1970
1971.. bpo: 31107
1972.. date: 2017-08-02-12-48-15
1973.. nonce: 1t2hn5
1974.. section: Library
1975
1976Fix `copyreg._slotnames()` mangled attribute calculation for classes whose
1977name begins with an underscore. Patch by Shane Harvey.
1978
1979..
1980
1981.. bpo: 31080
1982.. date: 2017-08-01-18-26-55
1983.. nonce: 2CFVCO
1984.. section: Library
1985
1986Allow `logging.config.fileConfig` to accept kwargs and/or args.
1987
1988..
1989
1990.. bpo: 30897
1991.. date: 2017-08-01-15-56-50
1992.. nonce: OuT1-Y
1993.. section: Library
1994
1995``pathlib.Path`` objects now include an ``is_mount()`` method (only
1996implemented on POSIX).  This is similar to ``os.path.ismount(p)``. Patch by
1997Cooper Ry Lees.
1998
1999..
2000
2001.. bpo: 31061
2002.. date: 2017-08-01-09-32-58
2003.. nonce: husAYX
2004.. section: Library
2005
2006Fixed a crash when using asyncio and threads.
2007
2008..
2009
2010.. bpo: 30987
2011.. date: 2017-07-30-22-00-12
2012.. nonce: 228rW0
2013.. section: Library
2014
2015Added support for CAN ISO-TP protocol in the socket module.
2016
2017..
2018
2019.. bpo: 30522
2020.. date: 2017-07-30-10-07-58
2021.. nonce: gAX1N-
2022.. section: Library
2023
2024Added a ``setStream`` method to ``logging.StreamHandler`` to allow the
2025stream to be set after creation.
2026
2027..
2028
2029.. bpo: 30502
2030.. date: 2017-07-27-11-33-58
2031.. nonce: GJlfU8
2032.. section: Library
2033
2034Fix handling of long oids in ssl.  Based on patch by Christian Heimes.
2035
2036..
2037
2038.. bpo: 5288
2039.. date: 2017-07-26-13-18-29
2040.. nonce: o_xEGj
2041.. section: Library
2042
2043Support tzinfo objects with sub-minute offsets.
2044
2045..
2046
2047.. bpo: 30919
2048.. date: 2017-07-23-11-33-10
2049.. nonce: 5dYRru
2050.. section: Library
2051
2052Fix shared memory performance regression in multiprocessing in 3.x.
2053Shared memory used anonymous memory mappings in 2.x, while 3.x mmaps actual
2054files. Try to be careful to do as little disk I/O as possible.
2055
2056..
2057
2058.. bpo: 26732
2059.. date: 2017-07-22-12-12-42
2060.. nonce: lYLWBH
2061.. section: Library
2062
2063Fix too many fds in processes started with the "forkserver" method.
2064A child process would inherit as many fds as the number of still-running
2065children.
2066
2067..
2068
2069.. bpo: 29403
2070.. date: 2017-07-20-02-29-49
2071.. nonce: 3RinCV
2072.. section: Library
2073
2074Fix ``unittest.mock``'s autospec to not fail on method-bound builtin
2075functions.  Patch by Aaron Gallagher.
2076
2077..
2078
2079.. bpo: 30961
2080.. date: 2017-07-18-23-47-51
2081.. nonce: 064jz0
2082.. section: Library
2083
2084Fix decrementing a borrowed reference in tracemalloc.
2085
2086..
2087
2088.. bpo: 19896
2089.. date: 2017-07-18-13-24-50
2090.. nonce: -S0IWu
2091.. section: Library
2092
2093Fix multiprocessing.sharedctypes to recognize typecodes ``'q'`` and ``'Q'``.
2094
2095..
2096
2097.. bpo: 30946
2098.. date: 2017-07-17-12-32-47
2099.. nonce: DUo-uA
2100.. section: Library
2101
2102Remove obsolete code in readline module for platforms where GNU readline is
2103older than 2.1 or where select() is not available.
2104
2105..
2106
2107.. bpo: 25684
2108.. date: 2017-07-17-11-35-00
2109.. nonce: usELVx
2110.. section: Library
2111
2112Change ``ttk.OptionMenu`` radiobuttons to be unique across instances of
2113``OptionMenu``.
2114
2115..
2116
2117.. bpo: 30886
2118.. date: 2017-07-10-12-14-22
2119.. nonce: nqQj34
2120.. section: Library
2121
2122Fix multiprocessing.Queue.join_thread(): it now waits until the thread
2123completes, even if the thread was started by the same process which created
2124the queue.
2125
2126..
2127
2128.. bpo: 29854
2129.. date: 2017-07-07-02-18-57
2130.. nonce: J8wKb_
2131.. section: Library
2132
2133Fix segfault in readline when using readline's history-size option.  Patch
2134by Nir Soffer.
2135
2136..
2137
2138.. bpo: 30794
2139.. date: 2017-07-04-22-00-20
2140.. nonce: qFwozm
2141.. section: Library
2142
2143Added multiprocessing.Process.kill method to terminate using the SIGKILL
2144signal on Unix.
2145
2146..
2147
2148.. bpo: 30319
2149.. date: 2017-07-04-13-48-21
2150.. nonce: hg_3TX
2151.. section: Library
2152
2153socket.close() now ignores ECONNRESET error.
2154
2155..
2156
2157.. bpo: 30828
2158.. date: 2017-07-04-13-10-52
2159.. nonce: CLvEvV
2160.. section: Library
2161
2162Fix out of bounds write in `asyncio.CFuture.remove_done_callback()`.
2163
2164..
2165
2166.. bpo: 30302
2167.. date: 2017-06-30-23-05-47
2168.. nonce: itwK_k
2169.. section: Library
2170
2171Use keywords in the ``repr`` of ``datetime.timedelta``.
2172
2173..
2174
2175.. bpo: 30807
2176.. date: 2017-06-29-22-04-44
2177.. nonce: sLtjY-
2178.. section: Library
2179
2180signal.setitimer() may disable the timer when passed a tiny value.
2181Tiny values (such as 1e-6) are valid non-zero values for setitimer(), which
2182is specified as taking microsecond-resolution intervals. However, on some
2183platform, our conversion routine could convert 1e-6 into a zero interval,
2184therefore disabling the timer instead of (re-)scheduling it.
2185
2186..
2187
2188.. bpo: 30441
2189.. date: 2017-06-29-14-25-14
2190.. nonce: 3Wh9kc
2191.. section: Library
2192
2193Fix bug when modifying os.environ while iterating over it
2194
2195..
2196
2197.. bpo: 29585
2198.. date: 2017-06-29-00-17-38
2199.. nonce: x2V0my
2200.. section: Library
2201
2202Avoid importing ``sysconfig`` from ``site`` to improve startup speed. Python
2203startup is about 5% faster on Linux and 30% faster on macOS.
2204
2205..
2206
2207.. bpo: 29293
2208.. date: 2017-06-29-00-07-22
2209.. nonce: Z6WZjD
2210.. section: Library
2211
2212Add missing parameter "n" on multiprocessing.Condition.notify().
2213The doc claims multiprocessing.Condition behaves like threading.Condition,
2214but its notify() method lacked the optional "n" argument (to specify the
2215number of sleepers to wake up) that threading.Condition.notify() accepts.
2216
2217..
2218
2219.. bpo: 30532
2220.. date: 2017-06-26-11-01-59
2221.. nonce: qTeL1o
2222.. section: Library
2223
2224Fix email header value parser dropping folding white space in certain cases.
2225
2226..
2227
2228.. bpo: 30596
2229.. date: 2017-06-24-18-55-58
2230.. nonce: VhB8iG
2231.. section: Library
2232
2233Add a ``close()`` method to ``multiprocessing.Process``.
2234
2235..
2236
2237.. bpo: 9146
2238.. date: 2017-05-24-00-00-00
2239.. nonce: pinky_
2240.. section: Library
2241
2242Fix a segmentation fault in _hashopenssl when standard hash functions such
2243as md5 are not available in the linked OpenSSL library.  As in some special
2244FIPS-140 build environments.
2245
2246..
2247
2248.. bpo: 29169
2249.. date: 0352
2250.. nonce: 8ypApm
2251.. section: Library
2252
2253Update zlib to 1.2.11.
2254
2255..
2256
2257.. bpo: 30119
2258.. date: 0351
2259.. nonce: 4UMLNh
2260.. section: Library
2261
2262ftplib.FTP.putline() now throws ValueError on commands that contains CR or
2263LF. Patch by Dong-hee Na.
2264
2265..
2266
2267.. bpo: 30879
2268.. date: 0350
2269.. nonce: N3KI-o
2270.. section: Library
2271
2272os.listdir() and os.scandir() now emit bytes names when called with
2273bytes-like argument.
2274
2275..
2276
2277.. bpo: 30746
2278.. date: 0349
2279.. nonce: 7drQI0
2280.. section: Library
2281
2282Prohibited the '=' character in environment variable names in
2283``os.putenv()`` and ``os.spawn*()``.
2284
2285..
2286
2287.. bpo: 30664
2288.. date: 0348
2289.. nonce: oyqiUl
2290.. section: Library
2291
2292The description of a unittest subtest now preserves the order of keyword
2293arguments of TestCase.subTest().
2294
2295..
2296
2297.. bpo: 21071
2298.. date: 0346
2299.. nonce: Sw37rs
2300.. section: Library
2301
2302struct.Struct.format type is now :class:`str` instead of :class:`bytes`.
2303
2304..
2305
2306.. bpo: 29212
2307.. date: 0345
2308.. nonce: HmTdef
2309.. section: Library
2310
2311Fix concurrent.futures.thread.ThreadPoolExecutor threads to have a non
2312repr() based thread name by default when no thread_name_prefix is supplied.
2313They will now identify themselves as "ThreadPoolExecutor-y_n".
2314
2315..
2316
2317.. bpo: 29755
2318.. date: 0343
2319.. nonce: diQcY_
2320.. section: Library
2321
2322Fixed the lgettext() family of functions in the gettext module. They now
2323always return bytes.
2324
2325..
2326
2327.. bpo: 30616
2328.. date: 0341
2329.. nonce: I2mDTz
2330.. section: Library
2331
2332Functional API of enum allows to create empty enums. Patched by Dong-hee Na
2333
2334..
2335
2336.. bpo: 30038
2337.. date: 0340
2338.. nonce: vb4DWk
2339.. section: Library
2340
2341Fix race condition between signal delivery and wakeup file descriptor. Patch
2342by Nathaniel Smith.
2343
2344..
2345
2346.. bpo: 23894
2347.. date: 0339
2348.. nonce: k2pADV
2349.. section: Library
2350
2351lib2to3 now recognizes ``rb'...'`` and ``f'...'`` strings.
2352
2353..
2354
2355.. bpo: 24744
2356.. date: 0337
2357.. nonce: NKxUj3
2358.. section: Library
2359
2360pkgutil.walk_packages function now raises ValueError if *path* is a string.
2361Patch by Sanyam Khurana.
2362
2363..
2364
2365.. bpo: 24484
2366.. date: 0336
2367.. nonce: vFem8K
2368.. section: Library
2369
2370Avoid race condition in multiprocessing cleanup.
2371
2372..
2373
2374.. bpo: 30589
2375.. date: 0335
2376.. nonce: xyZGM0
2377.. section: Library
2378
2379Fix multiprocessing.Process.exitcode to return the opposite of the signal
2380number when the process is killed by a signal (instead of 255) when using
2381the "forkserver" method.
2382
2383..
2384
2385.. bpo: 28994
2386.. date: 0334
2387.. nonce: 9vzun1
2388.. section: Library
2389
2390The traceback no longer displayed for SystemExit raised in a callback
2391registered by atexit.
2392
2393..
2394
2395.. bpo: 30508
2396.. date: 0333
2397.. nonce: wNWRS2
2398.. section: Library
2399
2400Don't log exceptions if Task/Future "cancel()" method was called.
2401
2402..
2403
2404.. bpo: 30645
2405.. date: 0332
2406.. nonce: xihJ4Y
2407.. section: Library
2408
2409Fix path calculation in `imp.load_package()`, fixing it for cases when a
2410package is only shipped with bytecodes. Patch by Alexandru Ardelean.
2411
2412..
2413
2414.. bpo: 11822
2415.. date: 0331
2416.. nonce: GQmKw3
2417.. section: Library
2418
2419The dis.dis() function now is able to disassemble nested code objects.
2420
2421..
2422
2423.. bpo: 30624
2424.. date: 0330
2425.. nonce: g5oVSn
2426.. section: Library
2427
2428selectors does not take KeyboardInterrupt and SystemExit into account,
2429leaving a fd in a bad state in case of error. Patch by Giampaolo Rodola'.
2430
2431..
2432
2433.. bpo: 30595
2434.. date: 0329
2435.. nonce: d0nRRA
2436.. section: Library
2437
2438multiprocessing.Queue.get() with a timeout now polls its reader in
2439non-blocking mode if it succeeded to acquire the lock but the acquire took
2440longer than the timeout.
2441
2442..
2443
2444.. bpo: 28556
2445.. date: 0328
2446.. nonce: mESP7G
2447.. section: Library
2448
2449Updates to typing module: Add generic AsyncContextManager, add support for
2450ContextManager on all versions. Original PRs by Jelle Zijlstra and Ivan
2451Levkivskyi
2452
2453..
2454
2455.. bpo: 30605
2456.. date: 0327
2457.. nonce: XqGz1r
2458.. section: Library
2459
2460re.compile() no longer raises a BytesWarning when compiling a bytes instance
2461with misplaced inline modifier.  Patch by Roy Williams.
2462
2463..
2464
2465.. bpo: 29870
2466.. date: 0326
2467.. nonce: p960Ih
2468.. section: Library
2469
2470Fix ssl sockets leaks when connection is aborted in asyncio/ssl
2471implementation. Patch by Michaël Sghaïer.
2472
2473..
2474
2475.. bpo: 29743
2476.. date: 0325
2477.. nonce: en2P4s
2478.. section: Library
2479
2480Closing transport during handshake process leaks open socket. Patch by
2481Nikolay Kim
2482
2483..
2484
2485.. bpo: 27585
2486.. date: 0324
2487.. nonce: 0Ugqqu
2488.. section: Library
2489
2490Fix waiter cancellation in asyncio.Lock. Patch by Mathieu Sornay.
2491
2492..
2493
2494.. bpo: 30014
2495.. date: 0323
2496.. nonce: x7Yx6o
2497.. section: Library
2498
2499modify() method of poll(), epoll() and devpoll() based classes of selectors
2500module is around 10% faster.  Patch by Giampaolo Rodola'.
2501
2502..
2503
2504.. bpo: 30418
2505.. date: 0322
2506.. nonce: EwISQm
2507.. section: Library
2508
2509On Windows, subprocess.Popen.communicate() now also ignore EINVAL on
2510stdin.write() if the child process is still running but closed the pipe.
2511
2512..
2513
2514.. bpo: 30463
2515.. date: 0321
2516.. nonce: CdOuSl
2517.. section: Library
2518
2519Addded empty __slots__ to abc.ABC.  This allows subclassers to deny __dict__
2520and __weakref__ creation.  Patch by Aaron Hall.
2521
2522..
2523
2524.. bpo: 30520
2525.. date: 0320
2526.. nonce: VYzaSn
2527.. section: Library
2528
2529Loggers are now pickleable.
2530
2531..
2532
2533.. bpo: 30557
2534.. date: 0319
2535.. nonce: uykrLf
2536.. section: Library
2537
2538faulthandler now correctly filters and displays exception codes on Windows
2539
2540..
2541
2542.. bpo: 30526
2543.. date: 0318
2544.. nonce: 7zTG30
2545.. section: Library
2546
2547Add TextIOWrapper.reconfigure() and a TextIOWrapper.write_through attribute.
2548
2549..
2550
2551.. bpo: 30245
2552.. date: 0317
2553.. nonce: Xoa_8Y
2554.. section: Library
2555
2556Fix possible overflow when organize struct.pack_into error message.  Patch
2557by Yuan Liu.
2558
2559..
2560
2561.. bpo: 30378
2562.. date: 0316
2563.. nonce: R_19_5
2564.. section: Library
2565
2566Fix the problem that logging.handlers.SysLogHandler cannot handle IPv6
2567addresses.
2568
2569..
2570
2571.. bpo: 16500
2572.. date: 0315
2573.. nonce: 9ypo9k
2574.. section: Library
2575
2576Allow registering at-fork handlers.
2577
2578..
2579
2580.. bpo: 30470
2581.. date: 0314
2582.. nonce: wAYhUc
2583.. section: Library
2584
2585Deprecate invalid ctypes call protection on Windows.  Patch by Mariatta
2586Wijaya.
2587
2588..
2589
2590.. bpo: 30414
2591.. date: 0313
2592.. nonce: jGl1Lb
2593.. section: Library
2594
2595multiprocessing.Queue._feed background running thread do not break from main
2596loop on exception.
2597
2598..
2599
2600.. bpo: 30003
2601.. date: 0312
2602.. nonce: BOl9HE
2603.. section: Library
2604
2605Fix handling escape characters in HZ codec.  Based on patch by Ma Lin.
2606
2607..
2608
2609.. bpo: 30149
2610.. date: 0311
2611.. nonce: hE649r
2612.. section: Library
2613
2614inspect.signature() now supports callables with variable-argument parameters
2615wrapped with partialmethod. Patch by Dong-hee Na.
2616
2617..
2618
2619.. bpo: 30436
2620.. date: 0310
2621.. nonce: b3zqE7
2622.. section: Library
2623
2624importlib.find_spec() raises ModuleNotFoundError instead of AttributeError
2625if the specified parent module is not a package (i.e. lacks a __path__
2626attribute).
2627
2628..
2629
2630.. bpo: 30301
2631.. date: 0309
2632.. nonce: ywOkjN
2633.. section: Library
2634
2635Fix AttributeError when using SimpleQueue.empty() under *spawn* and
2636*forkserver* start methods.
2637
2638..
2639
2640.. bpo: 30375
2641.. date: 0308
2642.. nonce: 9c8qM7
2643.. section: Library
2644
2645Warnings emitted when compile a regular expression now always point to the
2646line in the user code.  Previously they could point into inners of the re
2647module if emitted from inside of groups or conditionals.
2648
2649..
2650
2651.. bpo: 30329
2652.. date: 0307
2653.. nonce: EuT36N
2654.. section: Library
2655
2656imaplib and poplib now catch the Windows socket WSAEINVAL error (code 10022)
2657on shutdown(SHUT_RDWR): An invalid operation was attempted. This error
2658occurs sometimes on SSL connections.
2659
2660..
2661
2662.. bpo: 29196
2663.. date: 0306
2664.. nonce: qBq9eB
2665.. section: Library
2666
2667Removed previously deprecated in Python 2.4 classes Plist, Dict and
2668_InternalDict in the plistlib module.  Dict values in the result of
2669functions readPlist() and readPlistFromBytes() are now normal dicts.  You no
2670longer can use attribute access to access items of these dictionaries.
2671
2672..
2673
2674.. bpo: 9850
2675.. date: 0305
2676.. nonce: c6SMxt
2677.. section: Library
2678
2679The :mod:`macpath` is now deprecated and will be removed in Python 3.8.
2680
2681..
2682
2683.. bpo: 30299
2684.. date: 0304
2685.. nonce: O-5d4A
2686.. section: Library
2687
2688Compiling regular expression in debug mode on CPython now displays the
2689compiled bytecode in human readable form.
2690
2691..
2692
2693.. bpo: 30048
2694.. date: 0303
2695.. nonce: ELRx8R
2696.. section: Library
2697
2698Fixed ``Task.cancel()`` can be ignored when the task is running coroutine
2699and the coroutine returned without any more ``await``.
2700
2701..
2702
2703.. bpo: 30266
2704.. date: 0302
2705.. nonce: YJzHAH
2706.. section: Library
2707
2708contextlib.AbstractContextManager now supports anti-registration by setting
2709__enter__ = None or __exit__ = None, following the pattern introduced in
2710bpo-25958. Patch by Jelle Zijlstra.
2711
2712..
2713
2714.. bpo: 30340
2715.. date: 0301
2716.. nonce: kvtGm-
2717.. section: Library
2718
2719Enhanced regular expressions optimization. This increased the performance of
2720matching some patterns up to 25 times.
2721
2722..
2723
2724.. bpo: 30298
2725.. date: 0300
2726.. nonce: ZN-bWo
2727.. section: Library
2728
2729Weaken the condition of deprecation warnings for inline modifiers. Now
2730allowed several subsequential inline modifiers at the start of the pattern
2731(e.g. ``'(?i)(?s)...'``).  In verbose mode whitespaces and comments now are
2732allowed before and between inline modifiers (e.g. ``'(?x) (?i) (?s)...'``).
2733
2734..
2735
2736.. bpo: 30285
2737.. date: 0299
2738.. nonce: s1vpsO
2739.. section: Library
2740
2741Optimized case-insensitive matching and searching of regular expressions.
2742
2743..
2744
2745.. bpo: 29990
2746.. date: 0298
2747.. nonce: HWV6KE
2748.. section: Library
2749
2750Fix range checking in GB18030 decoder.  Original patch by Ma Lin.
2751
2752..
2753
2754.. bpo: 29979
2755.. date: 0297
2756.. nonce: jGBMyE
2757.. section: Library
2758
2759rewrite cgi.parse_multipart, reusing the FieldStorage class and making its
2760results consistent with those of FieldStorage for multipart/form-data
2761requests. Patch by Pierre Quentel.
2762
2763..
2764
2765.. bpo: 30243
2766.. date: 0296
2767.. nonce: RHQt0v
2768.. section: Library
2769
2770Removed the __init__ methods of _json's scanner and encoder. Misusing them
2771could cause memory leaks or crashes.  Now scanner and encoder objects are
2772completely initialized in the __new__ methods.
2773
2774..
2775
2776.. bpo: 30215
2777.. date: 0295
2778.. nonce: SY8738
2779.. section: Library
2780
2781Compiled regular expression objects with the re.LOCALE flag no longer depend
2782on the locale at compile time.  Only the locale at matching time affects the
2783result of matching.
2784
2785..
2786
2787.. bpo: 30185
2788.. date: 0294
2789.. nonce: Tiu1n8
2790.. section: Library
2791
2792Avoid KeyboardInterrupt tracebacks in forkserver helper process when Ctrl-C
2793is received.
2794
2795..
2796
2797.. bpo: 30103
2798.. date: 0293
2799.. nonce: mmPjf5
2800.. section: Library
2801
2802binascii.b2a_uu() and uu.encode() now support using ``'`'`` as zero instead
2803of space.
2804
2805..
2806
2807.. bpo: 28556
2808.. date: 0292
2809.. nonce: 51gjbP
2810.. section: Library
2811
2812Various updates to typing module: add typing.NoReturn type, use
2813WrapperDescriptorType, minor bug-fixes.  Original PRs by Jim
2814Fasarakis-Hilliard and Ivan Levkivskyi.
2815
2816..
2817
2818.. bpo: 30205
2819.. date: 0291
2820.. nonce: BsxO34
2821.. section: Library
2822
2823Fix getsockname() for unbound AF_UNIX sockets on Linux.
2824
2825..
2826
2827.. bpo: 30228
2828.. date: 0290
2829.. nonce: nF8Ov4
2830.. section: Library
2831
2832The seek() and tell() methods of io.FileIO now set the internal seekable
2833attribute to avoid one syscall on open() (in buffered or text mode).
2834
2835..
2836
2837.. bpo: 30190
2838.. date: 0289
2839.. nonce: 5E7Hyb
2840.. section: Library
2841
2842unittest's assertAlmostEqual and assertNotAlmostEqual provide a better
2843message in case of failure which includes the difference between left and
2844right arguments.  (patch by Giampaolo Rodola')
2845
2846..
2847
2848.. bpo: 30101
2849.. date: 0288
2850.. nonce: hxUqSL
2851.. section: Library
2852
2853Add support for curses.A_ITALIC.
2854
2855..
2856
2857.. bpo: 29822
2858.. date: 0287
2859.. nonce: G7dX13
2860.. section: Library
2861
2862inspect.isabstract() now works during __init_subclass__.  Patch by Nate
2863Soares.
2864
2865..
2866
2867.. bpo: 29960
2868.. date: 0286
2869.. nonce: g0wr3r
2870.. section: Library
2871
2872Preserve generator state when _random.Random.setstate() raises an exception.
2873Patch by Bryan Olson.
2874
2875..
2876
2877.. bpo: 30070
2878.. date: 0285
2879.. nonce: XM_B41
2880.. section: Library
2881
2882Fixed leaks and crashes in errors handling in the parser module.
2883
2884..
2885
2886.. bpo: 22352
2887.. date: 0284
2888.. nonce: gIQ5qC
2889.. section: Library
2890
2891Column widths in the output of dis.dis() are now adjusted for large line
2892numbers and instruction offsets.
2893
2894..
2895
2896.. bpo: 30061
2897.. date: 0283
2898.. nonce: 2w_dX9
2899.. section: Library
2900
2901Fixed crashes in IOBase methods __next__() and readlines() when readline()
2902or __next__() respectively return non-sizeable object. Fixed possible other
2903errors caused by not checking results of PyObject_Size(), PySequence_Size(),
2904or PyMapping_Size().
2905
2906..
2907
2908.. bpo: 30218
2909.. date: 0282
2910.. nonce: ab5oIg
2911.. section: Library
2912
2913Fix PathLike support for shutil.unpack_archive. Patch by Jelle Zijlstra.
2914
2915..
2916
2917.. bpo: 10076
2918.. date: 0281
2919.. nonce: qCnwly
2920.. section: Library
2921
2922Compiled regular expression and match objects in the re module now support
2923copy.copy() and copy.deepcopy() (they are considered atomic).
2924
2925..
2926
2927.. bpo: 30068
2928.. date: 0280
2929.. nonce: n4q47r
2930.. section: Library
2931
2932_io._IOBase.readlines will check if it's closed first when hint is present.
2933
2934..
2935
2936.. bpo: 29694
2937.. date: 0279
2938.. nonce: LWKxb1
2939.. section: Library
2940
2941Fixed race condition in pathlib mkdir with flags parents=True.  Patch by
2942Armin Rigo.
2943
2944..
2945
2946.. bpo: 29692
2947.. date: 0278
2948.. nonce: oyWrAE
2949.. section: Library
2950
2951Fixed arbitrary unchaining of RuntimeError exceptions in
2952contextlib.contextmanager.  Patch by Siddharth Velankar.
2953
2954..
2955
2956.. bpo: 26187
2957.. date: 0277
2958.. nonce: aViyiR
2959.. section: Library
2960
2961Test that sqlite3 trace callback is not called multiple times when schema is
2962changing.  Indirectly fixed by switching to use sqlite3_prepare_v2() in
2963bpo-9303.  Patch by Aviv Palivoda.
2964
2965..
2966
2967.. bpo: 30017
2968.. date: 0276
2969.. nonce: cKBuhU
2970.. section: Library
2971
2972Allowed calling the close() method of the zip entry writer object multiple
2973times.  Writing to a closed writer now always produces a ValueError.
2974
2975..
2976
2977.. bpo: 29998
2978.. date: 0275
2979.. nonce: poeIKD
2980.. section: Library
2981
2982Pickling and copying ImportError now preserves name and path attributes.
2983
2984..
2985
2986.. bpo: 29995
2987.. date: 0274
2988.. nonce: b3mOqx
2989.. section: Library
2990
2991re.escape() now escapes only regex special characters.
2992
2993..
2994
2995.. bpo: 29962
2996.. date: 0273
2997.. nonce: r-ibsN
2998.. section: Library
2999
3000Add math.remainder operation, implementing remainder as specified in IEEE
3001754.
3002
3003..
3004
3005.. bpo: 29649
3006.. date: 0272
3007.. nonce: 2eIxQ8
3008.. section: Library
3009
3010Improve struct.pack_into() exception messages for problems with the buffer
3011size and offset.  Patch by Andrew Nester.
3012
3013..
3014
3015.. bpo: 29654
3016.. date: 0271
3017.. nonce: xRFPge
3018.. section: Library
3019
3020Support If-Modified-Since HTTP header (browser cache).  Patch by Pierre
3021Quentel.
3022
3023..
3024
3025.. bpo: 29931
3026.. date: 0270
3027.. nonce: tfcTwK
3028.. section: Library
3029
3030Fixed comparison check for ipaddress.ip_interface objects. Patch by Sanjay
3031Sundaresan.
3032
3033..
3034
3035.. bpo: 29953
3036.. date: 0269
3037.. nonce: Q1hSt-
3038.. section: Library
3039
3040Fixed memory leaks in the replace() method of datetime and time objects when
3041pass out of bound fold argument.
3042
3043..
3044
3045.. bpo: 29942
3046.. date: 0268
3047.. nonce: CsGNuT
3048.. section: Library
3049
3050Fix a crash in itertools.chain.from_iterable when encountering long runs of
3051empty iterables.
3052
3053..
3054
3055.. bpo: 10030
3056.. date: 0267
3057.. nonce: ZdhU3k
3058.. section: Library
3059
3060Sped up reading encrypted ZIP files by 2 times.
3061
3062..
3063
3064.. bpo: 29204
3065.. date: 0266
3066.. nonce: 8Hbqn2
3067.. section: Library
3068
3069Element.getiterator() and the html parameter of XMLParser() were deprecated
3070only in the documentation (since Python 3.2 and 3.4 correspondingly). Now
3071using them emits a deprecation warning.
3072
3073..
3074
3075.. bpo: 27863
3076.. date: 0265
3077.. nonce: pPYHHI
3078.. section: Library
3079
3080Fixed multiple crashes in ElementTree caused by race conditions and wrong
3081types.
3082
3083..
3084
3085.. bpo: 25996
3086.. date: 0264
3087.. nonce: L2_giP
3088.. section: Library
3089
3090Added support of file descriptors in os.scandir() on Unix. os.fwalk() is
3091sped up by 2 times by using os.scandir().
3092
3093..
3094
3095.. bpo: 28699
3096.. date: 0263
3097.. nonce: wZztZP
3098.. section: Library
3099
3100Fixed a bug in pools in multiprocessing.pool that raising an exception at
3101the very first of an iterable may swallow the exception or make the program
3102hang. Patch by Davin Potts and Xiang Zhang.
3103
3104..
3105
3106.. bpo: 23890
3107.. date: 0262
3108.. nonce: GCFAAZ
3109.. section: Library
3110
3111unittest.TestCase.assertRaises() now manually breaks a reference cycle to
3112not keep objects alive longer than expected.
3113
3114..
3115
3116.. bpo: 29901
3117.. date: 0261
3118.. nonce: QdgMvW
3119.. section: Library
3120
3121The zipapp module now supports general path-like objects, not just
3122pathlib.Path.
3123
3124..
3125
3126.. bpo: 25803
3127.. date: 0260
3128.. nonce: CPDR0W
3129.. section: Library
3130
3131Avoid incorrect errors raised by Path.mkdir(exist_ok=True) when the OS gives
3132priority to errors such as EACCES over EEXIST.
3133
3134..
3135
3136.. bpo: 29861
3137.. date: 0259
3138.. nonce: t2ZoRK
3139.. section: Library
3140
3141Release references to tasks, their arguments and their results as soon as
3142they are finished in multiprocessing.Pool.
3143
3144..
3145
3146.. bpo: 19930
3147.. date: 0258
3148.. nonce: QCjO6A
3149.. section: Library
3150
3151The mode argument of os.makedirs() no longer affects the file permission
3152bits of newly-created intermediate-level directories.
3153
3154..
3155
3156.. bpo: 29884
3157.. date: 0257
3158.. nonce: kWXR8W
3159.. section: Library
3160
3161faulthandler: Restore the old sigaltstack during teardown. Patch by
3162Christophe Zeitouny.
3163
3164..
3165
3166.. bpo: 25455
3167.. date: 0256
3168.. nonce: ZsahHN
3169.. section: Library
3170
3171Fixed crashes in repr of recursive buffered file-like objects.
3172
3173..
3174
3175.. bpo: 29800
3176.. date: 0255
3177.. nonce: d2xASa
3178.. section: Library
3179
3180Fix crashes in partial.__repr__ if the keys of partial.keywords are not
3181strings.  Patch by Michael Seifert.
3182
3183..
3184
3185.. bpo: 8256
3186.. date: 0254
3187.. nonce: jAwGQH
3188.. section: Library
3189
3190Fixed possible failing or crashing input() if attributes "encoding" or
3191"errors" of sys.stdin or sys.stdout are not set or are not strings.
3192
3193..
3194
3195.. bpo: 28692
3196.. date: 0253
3197.. nonce: CDt-Gb
3198.. section: Library
3199
3200Using non-integer value for selecting a plural form in gettext is now
3201deprecated.
3202
3203..
3204
3205.. bpo: 26121
3206.. date: 0252
3207.. nonce: LX-pQA
3208.. section: Library
3209
3210Use C library implementation for math functions erf() and erfc().
3211
3212..
3213
3214.. bpo: 29619
3215.. date: 0251
3216.. nonce: WIGVxO
3217.. section: Library
3218
3219os.stat() and os.DirEntry.inode() now convert inode (st_ino) using unsigned
3220integers.
3221
3222..
3223
3224.. bpo: 28298
3225.. date: 0250
3226.. nonce: PNOPsT
3227.. section: Library
3228
3229Fix a bug that prevented array 'Q', 'L' and 'I' from accepting big intables
3230(objects that have __int__) as elements.
3231
3232..
3233
3234.. bpo: 29645
3235.. date: 0249
3236.. nonce: XCxTHM
3237.. section: Library
3238
3239Speed up importing the webbrowser module.  webbrowser.register() is now
3240thread-safe.
3241
3242..
3243
3244.. bpo: 28231
3245.. date: 0248
3246.. nonce: MG1X09
3247.. section: Library
3248
3249The zipfile module now accepts path-like objects for external paths.
3250
3251..
3252
3253.. bpo: 26915
3254.. date: 0247
3255.. nonce: qShJZO
3256.. section: Library
3257
3258index() and count() methods of collections.abc.Sequence now check identity
3259before checking equality when do comparisons.
3260
3261..
3262
3263.. bpo: 28682
3264.. date: 0246
3265.. nonce: hUxdej
3266.. section: Library
3267
3268Added support for bytes paths in os.fwalk().
3269
3270..
3271
3272.. bpo: 29728
3273.. date: 0245
3274.. nonce: 37jMwb
3275.. section: Library
3276
3277Add new :data:`socket.TCP_NOTSENT_LOWAT` (Linux 3.12) constant. Patch by
3278Nathaniel J. Smith.
3279
3280..
3281
3282.. bpo: 29623
3283.. date: 0244
3284.. nonce: D3-NP2
3285.. section: Library
3286
3287Allow use of path-like object as a single argument in ConfigParser.read().
3288Patch by David Ellis.
3289
3290..
3291
3292.. bpo: 9303
3293.. date: 0243
3294.. nonce: kDZRSd
3295.. section: Library
3296
3297Migrate sqlite3 module to _v2 API.  Patch by Aviv Palivoda.
3298
3299..
3300
3301.. bpo: 28963
3302.. date: 0242
3303.. nonce: tPl8dq
3304.. section: Library
3305
3306Fix out of bound iteration in asyncio.Future.remove_done_callback
3307implemented in C.
3308
3309..
3310
3311.. bpo: 29704
3312.. date: 0241
3313.. nonce: WHbx27
3314.. section: Library
3315
3316asyncio.subprocess.SubprocessStreamProtocol no longer closes before all
3317pipes are closed.
3318
3319..
3320
3321.. bpo: 29271
3322.. date: 0240
3323.. nonce: y8Vj2v
3324.. section: Library
3325
3326Fix Task.current_task and Task.all_tasks implemented in C to accept None
3327argument as their pure Python implementation.
3328
3329..
3330
3331.. bpo: 29703
3332.. date: 0239
3333.. nonce: ZdsPCR
3334.. section: Library
3335
3336Fix asyncio to support instantiation of new event loops in child processes.
3337
3338..
3339
3340.. bpo: 29615
3341.. date: 0238
3342.. nonce: OpFKzg
3343.. section: Library
3344
3345SimpleXMLRPCDispatcher no longer chains KeyError (or any other exception) to
3346exception(s) raised in the dispatched methods. Patch by Petr Motejlek.
3347
3348..
3349
3350.. bpo: 7769
3351.. date: 0237
3352.. nonce: xGRJWh
3353.. section: Library
3354
3355Method register_function() of xmlrpc.server.SimpleXMLRPCDispatcher and its
3356subclasses can now be used as a decorator.
3357
3358..
3359
3360.. bpo: 29376
3361.. date: 0236
3362.. nonce: rrJhJy
3363.. section: Library
3364
3365Fix assertion error in threading._DummyThread.is_alive().
3366
3367..
3368
3369.. bpo: 28624
3370.. date: 0235
3371.. nonce: 43TJib
3372.. section: Library
3373
3374Add a test that checks that cwd parameter of Popen() accepts PathLike
3375objects.  Patch by Sayan Chowdhury.
3376
3377..
3378
3379.. bpo: 28518
3380.. date: 0234
3381.. nonce: o-Q2Nw
3382.. section: Library
3383
3384Start a transaction implicitly before a DML statement. Patch by Aviv
3385Palivoda.
3386
3387..
3388
3389.. bpo: 29742
3390.. date: 0233
3391.. nonce: 8hqfEO
3392.. section: Library
3393
3394get_extra_info() raises exception if get called on closed ssl transport.
3395Patch by Nikolay Kim.
3396
3397..
3398
3399.. bpo: 16285
3400.. date: 0232
3401.. nonce: 4f5gbp
3402.. section: Library
3403
3404urllib.parse.quote is now based on RFC 3986 and hence includes '~' in the
3405set of characters that is not quoted by default. Patch by Christian Theune
3406and Ratnadeep Debnath.
3407
3408..
3409
3410.. bpo: 29532
3411.. date: 0231
3412.. nonce: YCwVQn
3413.. section: Library
3414
3415Altering a kwarg dictionary passed to functools.partial() no longer affects
3416a partial object after creation.
3417
3418..
3419
3420.. bpo: 29110
3421.. date: 0230
3422.. nonce: wmE-_T
3423.. section: Library
3424
3425Fix file object leak in aifc.open() when file is given as a filesystem path
3426and is not in valid AIFF format. Patch by Anthony Zhang.
3427
3428..
3429
3430.. bpo: 22807
3431.. date: 0229
3432.. nonce: VmoSkZ
3433.. section: Library
3434
3435Add uuid.SafeUUID and uuid.UUID.is_safe to relay information from the
3436platform about whether generated UUIDs are generated with a multiprocessing
3437safe method.
3438
3439..
3440
3441.. bpo: 29576
3442.. date: 0228
3443.. nonce: F-b8_5
3444.. section: Library
3445
3446Improve some deprecations in importlib. Some deprecated methods now emit
3447DeprecationWarnings and have better descriptive messages.
3448
3449..
3450
3451.. bpo: 29534
3452.. date: 0227
3453.. nonce: Ug3HPU
3454.. section: Library
3455
3456Fixed different behaviour of Decimal.from_float() for _decimal and
3457_pydecimal. Thanks Andrew Nester.
3458
3459..
3460
3461.. bpo: 10379
3462.. date: 0226
3463.. nonce: mRlZsT
3464.. section: Library
3465
3466locale.format_string now supports the 'monetary' keyword argument, and
3467locale.format is deprecated.
3468
3469..
3470
3471.. bpo: 29851
3472.. date: 0225
3473.. nonce: jqs_5s
3474.. section: Library
3475
3476importlib.reload() now raises ModuleNotFoundError if the module lacks a
3477spec.
3478
3479..
3480
3481.. bpo: 28556
3482.. date: 0224
3483.. nonce: p6967e
3484.. section: Library
3485
3486Various updates to typing module: typing.Counter, typing.ChainMap, improved
3487ABC caching, etc. Original PRs by Jelle Zijlstra, Ivan Levkivskyi, Manuel
3488Krebber, and Łukasz Langa.
3489
3490..
3491
3492.. bpo: 29100
3493.. date: 0223
3494.. nonce: LAAERS
3495.. section: Library
3496
3497Fix datetime.fromtimestamp() regression introduced in Python 3.6.0: check
3498minimum and maximum years.
3499
3500..
3501
3502.. bpo: 29416
3503.. date: 0222
3504.. nonce: KJGyI_
3505.. section: Library
3506
3507Prevent infinite loop in pathlib.Path.mkdir
3508
3509..
3510
3511.. bpo: 29444
3512.. date: 0221
3513.. nonce: cEwgmk
3514.. section: Library
3515
3516Fixed out-of-bounds buffer access in the group() method of the match object.
3517Based on patch by WGH.
3518
3519..
3520
3521.. bpo: 29377
3522.. date: 0220
3523.. nonce: 4AvSrC
3524.. section: Library
3525
3526Add WrapperDescriptorType, MethodWrapperType, and MethodDescriptorType
3527built-in types to types module. Original patch by Manuel Krebber.
3528
3529..
3530
3531.. bpo: 29218
3532.. date: 0219
3533.. nonce: -Qoti0
3534.. section: Library
3535
3536Unused install_misc command is now removed.  It has been documented as
3537unused since 2000.  Patch by Eric N. Vander Weele.
3538
3539..
3540
3541.. bpo: 29368
3542.. date: 0218
3543.. nonce: nTtA_V
3544.. section: Library
3545
3546The extend() method is now called instead of the append() method when
3547unpickle collections.deque and other list-like objects. This can speed up
3548unpickling to 2 times.
3549
3550..
3551
3552.. bpo: 29338
3553.. date: 0217
3554.. nonce: EpvQJl
3555.. section: Library
3556
3557The help of a builtin or extension class now includes the constructor
3558signature if __text_signature__ is provided for the class.
3559
3560..
3561
3562.. bpo: 29335
3563.. date: 0216
3564.. nonce: _KC7IK
3565.. section: Library
3566
3567Fix subprocess.Popen.wait() when the child process has exited to a stopped
3568instead of terminated state (ex: when under ptrace).
3569
3570..
3571
3572.. bpo: 29290
3573.. date: 0215
3574.. nonce: XBqptF
3575.. section: Library
3576
3577Fix a regression in argparse that help messages would wrap at non-breaking
3578spaces.
3579
3580..
3581
3582.. bpo: 28735
3583.. date: 0214
3584.. nonce: admHLO
3585.. section: Library
3586
3587Fixed the comparison of mock.MagickMock with mock.ANY.
3588
3589..
3590
3591.. bpo: 29197
3592.. date: 0213
3593.. nonce: sZssFZ
3594.. section: Library
3595
3596Removed deprecated function ntpath.splitunc().
3597
3598..
3599
3600.. bpo: 29210
3601.. date: 0212
3602.. nonce: y1UHWf
3603.. section: Library
3604
3605Removed support of deprecated argument "exclude" in tarfile.TarFile.add().
3606
3607..
3608
3609.. bpo: 29219
3610.. date: 0211
3611.. nonce: kxui7t
3612.. section: Library
3613
3614Fixed infinite recursion in the repr of uninitialized ctypes.CDLL instances.
3615
3616..
3617
3618.. bpo: 29192
3619.. date: 0210
3620.. nonce: mY31H8
3621.. section: Library
3622
3623Removed deprecated features in the http.cookies module.
3624
3625..
3626
3627.. bpo: 29193
3628.. date: 0209
3629.. nonce: CgcjEx
3630.. section: Library
3631
3632A format string argument for string.Formatter.format() is now
3633positional-only.
3634
3635..
3636
3637.. bpo: 29195
3638.. date: 0208
3639.. nonce: vK5LjU
3640.. section: Library
3641
3642Removed support of deprecated undocumented keyword arguments in methods of
3643regular expression objects.
3644
3645..
3646
3647.. bpo: 28969
3648.. date: 0207
3649.. nonce: j3HJYO
3650.. section: Library
3651
3652Fixed race condition in C implementation of functools.lru_cache. KeyError
3653could be raised when cached function with full cache was simultaneously
3654called from different threads with the same uncached arguments.
3655
3656..
3657
3658.. bpo: 20804
3659.. date: 0206
3660.. nonce: XyZhvi
3661.. section: Library
3662
3663The unittest.mock.sentinel attributes now preserve their identity when they
3664are copied or pickled.
3665
3666..
3667
3668.. bpo: 29142
3669.. date: 0205
3670.. nonce: xo6kAv
3671.. section: Library
3672
3673In urllib.request, suffixes in no_proxy environment variable with leading
3674dots could match related hostnames again (e.g. .b.c matches a.b.c). Patch by
3675Milan Oberkirch.
3676
3677..
3678
3679.. bpo: 28961
3680.. date: 0204
3681.. nonce: Rt93vg
3682.. section: Library
3683
3684Fix unittest.mock._Call helper: don't ignore the name parameter anymore.
3685Patch written by Jiajun Huang.
3686
3687..
3688
3689.. bpo: 15812
3690.. date: 0203
3691.. nonce: R1U-Ec
3692.. section: Library
3693
3694inspect.getframeinfo() now correctly shows the first line of a context.
3695Patch by Sam Breese.
3696
3697..
3698
3699.. bpo: 28985
3700.. date: 0202
3701.. nonce: TMWJFg
3702.. section: Library
3703
3704Update authorizer constants in sqlite3 module. Patch by Dingyuan Wang.
3705
3706..
3707
3708.. bpo: 29079
3709.. date: 0201
3710.. nonce: g4YLix
3711.. section: Library
3712
3713Prevent infinite loop in pathlib.resolve() on Windows
3714
3715..
3716
3717.. bpo: 13051
3718.. date: 0200
3719.. nonce: YzC1Te
3720.. section: Library
3721
3722Fixed recursion errors in large or resized curses.textpad.Textbox.  Based on
3723patch by Tycho Andersen.
3724
3725..
3726
3727.. bpo: 9770
3728.. date: 0199
3729.. nonce: WJJnwP
3730.. section: Library
3731
3732curses.ascii predicates now work correctly with negative integers.
3733
3734..
3735
3736.. bpo: 28427
3737.. date: 0198
3738.. nonce: vUd-va
3739.. section: Library
3740
3741old keys should not remove new values from WeakValueDictionary when
3742collecting from another thread.
3743
3744..
3745
3746.. bpo: 28923
3747.. date: 0197
3748.. nonce: naVULD
3749.. section: Library
3750
3751Remove editor artifacts from Tix.py.
3752
3753..
3754
3755.. bpo: 28871
3756.. date: 0196
3757.. nonce: cPMXCJ
3758.. section: Library
3759
3760Fixed a crash when deallocate deep ElementTree.
3761
3762..
3763
3764.. bpo: 19542
3765.. date: 0195
3766.. nonce: 5tCkaK
3767.. section: Library
3768
3769Fix bugs in WeakValueDictionary.setdefault() and WeakValueDictionary.pop()
3770when a GC collection happens in another thread.
3771
3772..
3773
3774.. bpo: 20191
3775.. date: 0194
3776.. nonce: Q7uZCS
3777.. section: Library
3778
3779Fixed a crash in resource.prlimit() when passing a sequence that doesn't own
3780its elements as limits.
3781
3782..
3783
3784.. bpo: 16255
3785.. date: 0193
3786.. nonce: p2YA85
3787.. section: Library
3788
3789subprocess.Popen uses /system/bin/sh on Android as the shell, instead of
3790/bin/sh.
3791
3792..
3793
3794.. bpo: 28779
3795.. date: 0192
3796.. nonce: t-mjED
3797.. section: Library
3798
3799multiprocessing.set_forkserver_preload() would crash the forkserver process
3800if a preloaded module instantiated some multiprocessing objects such as
3801locks.
3802
3803..
3804
3805.. bpo: 26937
3806.. date: 0191
3807.. nonce: c9kgiA
3808.. section: Library
3809
3810The chown() method of the tarfile.TarFile class does not fail now when the
3811grp module cannot be imported, as for example on Android platforms.
3812
3813..
3814
3815.. bpo: 28847
3816.. date: 0190
3817.. nonce: GiWd9w
3818.. section: Library
3819
3820dbm.dumb now supports reading read-only files and no longer writes the index
3821file when it is not changed.  A deprecation warning is now emitted if the
3822index file is missed and recreated in the 'r' and 'w' modes (will be an
3823error in future Python releases).
3824
3825..
3826
3827.. bpo: 27030
3828.. date: 0189
3829.. nonce: GoGlFH
3830.. section: Library
3831
3832Unknown escapes consisting of ``'\'`` and an ASCII letter in re.sub()
3833replacement templates regular expressions now are errors.
3834
3835..
3836
3837.. bpo: 28835
3838.. date: 0188
3839.. nonce: iWBYH7
3840.. section: Library
3841
3842Fix a regression introduced in warnings.catch_warnings(): call
3843warnings.showwarning() if it was overridden inside the context manager.
3844
3845..
3846
3847.. bpo: 27172
3848.. date: 0187
3849.. nonce: mVKfLT
3850.. section: Library
3851
3852To assist with upgrades from 2.7, the previously documented deprecation of
3853``inspect.getfullargspec()`` has been reversed. This decision may be
3854revisited again after the Python 2.7 branch is no longer officially
3855supported.
3856
3857..
3858
3859.. bpo: 28740
3860.. date: 0186
3861.. nonce: rY8kz-
3862.. section: Library
3863
3864Add sys.getandroidapilevel(): return the build time API version of Android
3865as an integer. Function only available on Android.
3866
3867..
3868
3869.. bpo: 26273
3870.. date: 0185
3871.. nonce: ilNIWN
3872.. section: Library
3873
3874Add new :data:`socket.TCP_CONGESTION` (Linux 2.6.13) and
3875:data:`socket.TCP_USER_TIMEOUT` (Linux 2.6.37) constants. Patch written by
3876Omar Sandoval.
3877
3878..
3879
3880.. bpo: 28752
3881.. date: 0184
3882.. nonce: Q-4oRE
3883.. section: Library
3884
3885Restored the __reduce__() methods of datetime objects.
3886
3887..
3888
3889.. bpo: 28727
3890.. date: 0183
3891.. nonce: ubZP_b
3892.. section: Library
3893
3894Regular expression patterns, _sre.SRE_Pattern objects created by
3895re.compile(), become comparable (only x==y and x!=y operators). This change
3896should fix the issue #18383: don't duplicate warning filters when the
3897warnings module is reloaded (thing usually only done in unit tests).
3898
3899..
3900
3901.. bpo: 20572
3902.. date: 0182
3903.. nonce: NCRmvz
3904.. section: Library
3905
3906Remove the subprocess.Popen.wait endtime parameter.  It was deprecated in
39073.4 and undocumented prior to that.
3908
3909..
3910
3911.. bpo: 25659
3912.. date: 0181
3913.. nonce: lE2IlT
3914.. section: Library
3915
3916In ctypes, prevent a crash calling the from_buffer() and from_buffer_copy()
3917methods on abstract classes like Array.
3918
3919..
3920
3921.. bpo: 28548
3922.. date: 0180
3923.. nonce: IeNrnG
3924.. section: Library
3925
3926In the "http.server" module, parse the protocol version if possible, to
3927avoid using HTTP 0.9 in some error responses.
3928
3929..
3930
3931.. bpo: 19717
3932.. date: 0179
3933.. nonce: HXCAIz
3934.. section: Library
3935
3936Makes Path.resolve() succeed on paths that do not exist. Patch by Vajrasky
3937Kok
3938
3939..
3940
3941.. bpo: 28563
3942.. date: 0178
3943.. nonce: iweEiw
3944.. section: Library
3945
3946Fixed possible DoS and arbitrary code execution when handle plural form
3947selections in the gettext module.  The expression parser now supports exact
3948syntax supported by GNU gettext.
3949
3950..
3951
3952.. bpo: 28387
3953.. date: 0177
3954.. nonce: 1clJu7
3955.. section: Library
3956
3957Fixed possible crash in _io.TextIOWrapper deallocator when the garbage
3958collector is invoked in other thread.  Based on patch by Sebastian Cufre.
3959
3960..
3961
3962.. bpo: 27517
3963.. date: 0176
3964.. nonce: 1CYM8A
3965.. section: Library
3966
3967LZMA compressor and decompressor no longer raise exceptions if given empty
3968data twice.  Patch by Benjamin Fogle.
3969
3970..
3971
3972.. bpo: 28549
3973.. date: 0175
3974.. nonce: ShnM2y
3975.. section: Library
3976
3977Fixed segfault in curses's addch() with ncurses6.
3978
3979..
3980
3981.. bpo: 28449
3982.. date: 0174
3983.. nonce: 5JK6ES
3984.. section: Library
3985
3986tarfile.open() with mode "r" or "r:" now tries to open a tar file with
3987compression before trying to open it without compression.  Otherwise it had
398850% chance failed with ignore_zeros=True.
3989
3990..
3991
3992.. bpo: 23262
3993.. date: 0173
3994.. nonce: 6EVB7N
3995.. section: Library
3996
3997The webbrowser module now supports Firefox 36+ and derived browsers.  Based
3998on patch by Oleg Broytman.
3999
4000..
4001
4002.. bpo: 24241
4003.. date: 0172
4004.. nonce: y7N12p
4005.. section: Library
4006
4007The webbrowser in an X environment now prefers using the default browser
4008directly. Also, the webbrowser register() function now has a documented
4009'preferred' argument, to specify browsers to be returned by get() with no
4010arguments. Patch by David Steele
4011
4012..
4013
4014.. bpo: 27939
4015.. date: 0171
4016.. nonce: mTfADV
4017.. section: Library
4018
4019Fixed bugs in tkinter.ttk.LabeledScale and tkinter.Scale caused by
4020representing the scale as float value internally in Tk.  tkinter.IntVar now
4021works if float value is set to underlying Tk variable.
4022
4023..
4024
4025.. bpo: 28255
4026.. date: 0170
4027.. nonce: G3iOPm
4028.. section: Library
4029
4030calendar.TextCalendar.prweek() no longer prints a space after a weeks's
4031calendar.  calendar.TextCalendar.pryear() no longer prints redundant newline
4032after a year's calendar.  Based on patch by Xiang Zhang.
4033
4034..
4035
4036.. bpo: 28255
4037.. date: 0169
4038.. nonce: fHNZu0
4039.. section: Library
4040
4041calendar.TextCalendar.prmonth() no longer prints a space at the start of new
4042line after printing a month's calendar.  Patch by Xiang Zhang.
4043
4044..
4045
4046.. bpo: 20491
4047.. date: 0168
4048.. nonce: ObgnQ2
4049.. section: Library
4050
4051The textwrap.TextWrapper class now honors non-breaking spaces. Based on
4052patch by Kaarle Ritvanen.
4053
4054..
4055
4056.. bpo: 28353
4057.. date: 0167
4058.. nonce: sKGbLL
4059.. section: Library
4060
4061os.fwalk() no longer fails on broken links.
4062
4063..
4064
4065.. bpo: 28430
4066.. date: 0166
4067.. nonce: 4MiEYT
4068.. section: Library
4069
4070Fix iterator of C implemented asyncio.Future doesn't accept non-None value
4071is passed to it.send(val).
4072
4073..
4074
4075.. bpo: 27025
4076.. date: 0165
4077.. nonce: foAViS
4078.. section: Library
4079
4080Generated names for Tkinter widgets now start by the "!" prefix for
4081readability.
4082
4083..
4084
4085.. bpo: 25464
4086.. date: 0164
4087.. nonce: HDUTCu
4088.. section: Library
4089
4090Fixed HList.header_exists() in tkinter.tix module by addin a workaround to
4091Tix library bug.
4092
4093..
4094
4095.. bpo: 28488
4096.. date: 0163
4097.. nonce: TgO112
4098.. section: Library
4099
4100shutil.make_archive() no longer adds entry "./" to ZIP archive.
4101
4102..
4103
4104.. bpo: 25953
4105.. date: 0162
4106.. nonce: EKKJAQ
4107.. section: Library
4108
4109re.sub() now raises an error for invalid numerical group reference in
4110replacement template even if the pattern is not found in the string.  Error
4111message for invalid group reference now includes the group index and the
4112position of the reference. Based on patch by SilentGhost.
4113
4114..
4115
4116.. bpo: 28469
4117.. date: 0161
4118.. nonce: QZW1Np
4119.. section: Library
4120
4121timeit now uses the sequence 1, 2, 5, 10, 20, 50,... instead of 1, 10,
4122100,... for autoranging.
4123
4124..
4125
4126.. bpo: 28115
4127.. date: 0160
4128.. nonce: 4FIjIE
4129.. section: Library
4130
4131Command-line interface of the zipfile module now uses argparse. Added
4132support of long options.
4133
4134..
4135
4136.. bpo: 18219
4137.. date: 0159
4138.. nonce: 1ANQN1
4139.. section: Library
4140
4141Optimize csv.DictWriter for large number of columns. Patch by Mariatta
4142Wijaya.
4143
4144..
4145
4146.. bpo: 28448
4147.. date: 0158
4148.. nonce: 5bduWe
4149.. section: Library
4150
4151Fix C implemented asyncio.Future didn't work on Windows.
4152
4153..
4154
4155.. bpo: 23214
4156.. date: 0157
4157.. nonce: -4Q5Z7
4158.. section: Library
4159
4160In the "io" module, the argument to BufferedReader and BytesIO's read1()
4161methods is now optional and can be -1, matching the BufferedIOBase
4162specification.
4163
4164..
4165
4166.. bpo: 28480
4167.. date: 0156
4168.. nonce: 9lHw6m
4169.. section: Library
4170
4171Fix error building socket module when multithreading is disabled.
4172
4173..
4174
4175.. bpo: 28240
4176.. date: 0155
4177.. nonce: hqzQvS
4178.. section: Library
4179
4180timeit: remove ``-c/--clock`` and ``-t/--time`` command line options which
4181were deprecated since Python 3.3.
4182
4183..
4184
4185.. bpo: 28240
4186.. date: 0154
4187.. nonce: IwQMgd
4188.. section: Library
4189
4190timeit now repeats the benchmarks 5 times instead of only 3 to make
4191benchmarks more reliable.
4192
4193..
4194
4195.. bpo: 28240
4196.. date: 0153
4197.. nonce: cXljq-
4198.. section: Library
4199
4200timeit autorange now uses a single loop iteration if the benchmark takes
4201less than 10 seconds, instead of 10 iterations. "python3 -m timeit -s
4202'import time' 'time.sleep(1)'" now takes 4 seconds instead of 40 seconds.
4203
4204..
4205
4206.. bpo: 0
4207.. date: 0152
4208.. nonce: 5Y0ngw
4209.. section: Library
4210
4211Distutils.sdist now looks for README and setup.py files with case
4212sensitivity. This behavior matches that found in Setuptools 6.0 and later.
4213See `setuptools 100 <https://github.com/pypa/setuptools/issues/100>`_ for
4214rationale.
4215
4216..
4217
4218.. bpo: 24452
4219.. date: 0151
4220.. nonce: pVsjt0
4221.. section: Library
4222
4223Make webbrowser support Chrome on Mac OS X. Patch by Ned Batchelder.
4224
4225..
4226
4227.. bpo: 20766
4228.. date: 0150
4229.. nonce: 4kvCzx
4230.. section: Library
4231
4232Fix references leaked by pdb in the handling of SIGINT handlers.
4233
4234..
4235
4236.. bpo: 27998
4237.. date: 0149
4238.. nonce: CPhy4H
4239.. section: Library
4240
4241Fixed bytes path support in os.scandir() on Windows. Patch by Eryk Sun.
4242
4243..
4244
4245.. bpo: 28317
4246.. date: 0148
4247.. nonce: LgHleA
4248.. section: Library
4249
4250The disassembler now decodes FORMAT_VALUE argument.
4251
4252..
4253
4254.. bpo: 28380
4255.. date: 0147
4256.. nonce: jKPMzH
4257.. section: Library
4258
4259unittest.mock Mock autospec functions now properly support assert_called,
4260assert_not_called, and assert_called_once.
4261
4262..
4263
4264.. bpo: 28229
4265.. date: 0146
4266.. nonce: BKAxcS
4267.. section: Library
4268
4269lzma module now supports pathlib.
4270
4271..
4272
4273.. bpo: 28321
4274.. date: 0145
4275.. nonce: bQ-IIX
4276.. section: Library
4277
4278Fixed writing non-BMP characters with binary format in plistlib.
4279
4280..
4281
4282.. bpo: 28225
4283.. date: 0144
4284.. nonce: 6N28nu
4285.. section: Library
4286
4287bz2 module now supports pathlib.  Initial patch by Ethan Furman.
4288
4289..
4290
4291.. bpo: 28227
4292.. date: 0143
4293.. nonce: 7lUz8i
4294.. section: Library
4295
4296gzip now supports pathlib.  Patch by Ethan Furman.
4297
4298..
4299
4300.. bpo: 28332
4301.. date: 0142
4302.. nonce: Ed8fNk
4303.. section: Library
4304
4305Deprecated silent truncations in socket.htons and socket.ntohs. Original
4306patch by Oren Milman.
4307
4308..
4309
4310.. bpo: 27358
4311.. date: 0141
4312.. nonce: t288Iv
4313.. section: Library
4314
4315Optimized merging var-keyword arguments and improved error message when
4316passing a non-mapping as a var-keyword argument.
4317
4318..
4319
4320.. bpo: 28257
4321.. date: 0140
4322.. nonce: SVD_IH
4323.. section: Library
4324
4325Improved error message when passing a non-iterable as a var-positional
4326argument.  Added opcode BUILD_TUPLE_UNPACK_WITH_CALL.
4327
4328..
4329
4330.. bpo: 28322
4331.. date: 0139
4332.. nonce: l9hzap
4333.. section: Library
4334
4335Fixed possible crashes when unpickle itertools objects from incorrect pickle
4336data.  Based on patch by John Leitch.
4337
4338..
4339
4340.. bpo: 28228
4341.. date: 0138
4342.. nonce: 1qBwdM
4343.. section: Library
4344
4345imghdr now supports pathlib.
4346
4347..
4348
4349.. bpo: 28226
4350.. date: 0137
4351.. nonce: nMXiwU
4352.. section: Library
4353
4354compileall now supports pathlib.
4355
4356..
4357
4358.. bpo: 28314
4359.. date: 0136
4360.. nonce: N7YrkN
4361.. section: Library
4362
4363Fix function declaration (C flags) for the getiterator() method of
4364xml.etree.ElementTree.Element.
4365
4366..
4367
4368.. bpo: 28148
4369.. date: 0135
4370.. nonce: Flzndx
4371.. section: Library
4372
4373Stop using localtime() and gmtime() in the time module.
4374Introduced platform independent _PyTime_localtime API that is similar to
4375POSIX localtime_r, but available on all platforms.  Patch by Ed Schouten.
4376
4377..
4378
4379.. bpo: 28253
4380.. date: 0134
4381.. nonce: aLfmhe
4382.. section: Library
4383
4384Fixed calendar functions for extreme months: 0001-01 and 9999-12.
4385Methods itermonthdays() and itermonthdays2() are reimplemented so that they
4386don't call itermonthdates() which can cause datetime.date under/overflow.
4387
4388..
4389
4390.. bpo: 28275
4391.. date: 0133
4392.. nonce: EhWIsz
4393.. section: Library
4394
4395Fixed possible use after free in the decompress() methods of the
4396LZMADecompressor and BZ2Decompressor classes. Original patch by John Leitch.
4397
4398..
4399
4400.. bpo: 27897
4401.. date: 0132
4402.. nonce: I0Ppmx
4403.. section: Library
4404
4405Fixed possible crash in sqlite3.Connection.create_collation() if pass
4406invalid string-like object as a name.  Patch by Xiang Zhang.
4407
4408..
4409
4410.. bpo: 18844
4411.. date: 0131
4412.. nonce: fQsEdn
4413.. section: Library
4414
4415random.choices() now has k as a keyword-only argument to improve the
4416readability of common cases and come into line with the signature used in
4417other languages.
4418
4419..
4420
4421.. bpo: 18893
4422.. date: 0130
4423.. nonce: osiX5c
4424.. section: Library
4425
4426Fix invalid exception handling in Lib/ctypes/macholib/dyld.py. Patch by
4427Madison May.
4428
4429..
4430
4431.. bpo: 27611
4432.. date: 0129
4433.. nonce: A_ArH_
4434.. section: Library
4435
4436Fixed support of default root window in the tkinter.tix module. Added the
4437master parameter in the DisplayStyle constructor.
4438
4439..
4440
4441.. bpo: 27348
4442.. date: 0128
4443.. nonce: tDx7Vw
4444.. section: Library
4445
4446In the traceback module, restore the formatting of exception messages like
4447"Exception: None".  This fixes a regression introduced in 3.5a2.
4448
4449..
4450
4451.. bpo: 25651
4452.. date: 0127
4453.. nonce: 3UhyPo
4454.. section: Library
4455
4456Allow falsy values to be used for msg parameter of subTest().
4457
4458..
4459
4460.. bpo: 27778
4461.. date: 0126
4462.. nonce: Yyo1aP
4463.. section: Library
4464
4465Fix a memory leak in os.getrandom() when the getrandom() is interrupted by a
4466signal and a signal handler raises a Python exception.
4467
4468..
4469
4470.. bpo: 28200
4471.. date: 0125
4472.. nonce: 4IEbr7
4473.. section: Library
4474
4475Fix memory leak on Windows in the os module (fix path_converter() function).
4476
4477..
4478
4479.. bpo: 25400
4480.. date: 0124
4481.. nonce: d9Qn0E
4482.. section: Library
4483
4484RobotFileParser now correctly returns default values for crawl_delay and
4485request_rate.  Initial patch by Peter Wirtz.
4486
4487..
4488
4489.. bpo: 27932
4490.. date: 0123
4491.. nonce: mtgl-6
4492.. section: Library
4493
4494Prevent memory leak in win32_ver().
4495
4496..
4497
4498.. bpo: 0
4499.. date: 0122
4500.. nonce: iPpjqX
4501.. section: Library
4502
4503Fix UnboundLocalError in socket._sendfile_use_sendfile.
4504
4505..
4506
4507.. bpo: 28075
4508.. date: 0121
4509.. nonce: aLiUs9
4510.. section: Library
4511
4512Check for ERROR_ACCESS_DENIED in Windows implementation of os.stat().  Patch
4513by Eryk Sun.
4514
4515..
4516
4517.. bpo: 22493
4518.. date: 0120
4519.. nonce: Mv_hZf
4520.. section: Library
4521
4522Warning message emitted by using inline flags in the middle of regular
4523expression now contains a (truncated) regex pattern. Patch by Tim Graham.
4524
4525..
4526
4527.. bpo: 25270
4528.. date: 0119
4529.. nonce: jrZruM
4530.. section: Library
4531
4532Prevent codecs.escape_encode() from raising SystemError when an empty
4533bytestring is passed.
4534
4535..
4536
4537.. bpo: 28181
4538.. date: 0118
4539.. nonce: NGc4Yv
4540.. section: Library
4541
4542Get antigravity over HTTPS. Patch by Kaartic Sivaraam.
4543
4544..
4545
4546.. bpo: 25895
4547.. date: 0117
4548.. nonce: j92qoQ
4549.. section: Library
4550
4551Enable WebSocket URL schemes in urllib.parse.urljoin. Patch by Gergely Imreh
4552and Markus Holtermann.
4553
4554..
4555
4556.. bpo: 28114
4557.. date: 0116
4558.. nonce: gmFXsA
4559.. section: Library
4560
4561Fix a crash in parse_envlist() when env contains byte strings. Patch by Eryk
4562Sun.
4563
4564..
4565
4566.. bpo: 27599
4567.. date: 0115
4568.. nonce: itvm8T
4569.. section: Library
4570
4571Fixed buffer overrun in binascii.b2a_qp() and binascii.a2b_qp().
4572
4573..
4574
4575.. bpo: 27906
4576.. date: 0114
4577.. nonce: TBBXrv
4578.. section: Library
4579
4580Fix socket accept exhaustion during high TCP traffic. Patch by Kevin Conway.
4581
4582..
4583
4584.. bpo: 28174
4585.. date: 0113
4586.. nonce: CV1UdI
4587.. section: Library
4588
4589Handle when SO_REUSEPORT isn't properly supported. Patch by Seth Michael
4590Larson.
4591
4592..
4593
4594.. bpo: 26654
4595.. date: 0112
4596.. nonce: XtzTE9
4597.. section: Library
4598
4599Inspect functools.partial in asyncio.Handle.__repr__. Patch by iceboy.
4600
4601..
4602
4603.. bpo: 26909
4604.. date: 0111
4605.. nonce: ASiakT
4606.. section: Library
4607
4608Fix slow pipes IO in asyncio. Patch by INADA Naoki.
4609
4610..
4611
4612.. bpo: 28176
4613.. date: 0110
4614.. nonce: sU8R6L
4615.. section: Library
4616
4617Fix callbacks race in asyncio.SelectorLoop.sock_connect.
4618
4619..
4620
4621.. bpo: 27759
4622.. date: 0109
4623.. nonce: qpMDGq
4624.. section: Library
4625
4626Fix selectors incorrectly retain invalid file descriptors. Patch by Mark
4627Williams.
4628
4629..
4630
4631.. bpo: 28325
4632.. date: 0108
4633.. nonce: wAHmnK
4634.. section: Library
4635
4636Remove vestigial MacOS 9 macurl2path module and its tests.
4637
4638..
4639
4640.. bpo: 28368
4641.. date: 0107
4642.. nonce: n594X4
4643.. section: Library
4644
4645Refuse monitoring processes if the child watcher has no loop attached. Patch
4646by Vincent Michel.
4647
4648..
4649
4650.. bpo: 28369
4651.. date: 0106
4652.. nonce: 8DTANe
4653.. section: Library
4654
4655Raise RuntimeError when transport's FD is used with add_reader, add_writer,
4656etc.
4657
4658..
4659
4660.. bpo: 28370
4661.. date: 0105
4662.. nonce: 18jBuZ
4663.. section: Library
4664
4665Speedup asyncio.StreamReader.readexactly. Patch by Коренберг Марк.
4666
4667..
4668
4669.. bpo: 28371
4670.. date: 0104
4671.. nonce: U9Zqdk
4672.. section: Library
4673
4674Deprecate passing asyncio.Handles to run_in_executor.
4675
4676..
4677
4678.. bpo: 28372
4679.. date: 0103
4680.. nonce: njcIPk
4681.. section: Library
4682
4683Fix asyncio to support formatting of non-python coroutines.
4684
4685..
4686
4687.. bpo: 28399
4688.. date: 0102
4689.. nonce: QKIqRX
4690.. section: Library
4691
4692Remove UNIX socket from FS before binding. Patch by Коренберг Марк.
4693
4694..
4695
4696.. bpo: 27972
4697.. date: 0101
4698.. nonce: ZK-GFm
4699.. section: Library
4700
4701Prohibit Tasks to await on themselves.
4702
4703..
4704
4705.. bpo: 24142
4706.. date: 0100
4707.. nonce: IrZnFs
4708.. section: Library
4709
4710Reading a corrupt config file left configparser in an invalid state.
4711Original patch by Florian Höch.
4712
4713..
4714
4715.. bpo: 29581
4716.. date: 0099
4717.. nonce: gHCrxP
4718.. section: Library
4719
4720ABCMeta.__new__ now accepts ``**kwargs``, allowing abstract base classes to
4721use keyword parameters in __init_subclass__. Patch by Nate Soares.
4722
4723..
4724
4725.. bpo: 25532
4726.. date: 0098
4727.. nonce: ey4Yez
4728.. section: Library
4729
4730inspect.unwrap() will now only try to unwrap an object
4731sys.getrecursionlimit() times, to protect against objects which create a new
4732object on every attribute access.
4733
4734..
4735
4736.. bpo: 30177
4737.. date: 0097
4738.. nonce: JGIJNL
4739.. section: Library
4740
4741path.resolve(strict=False) no longer cuts the path after the first element
4742not present in the filesystem.  Patch by Antoine Pietri.
4743
4744..
4745
4746.. bpo: 31294
4747.. date: 2017-09-07-20-49-09
4748.. nonce: WgI18w
4749.. section: Documentation
4750
4751Fix incomplete code snippet in the ZeroMQSocketListener and
4752ZeroMQSocketHandler examples and adapt them to Python 3.
4753
4754..
4755
4756.. bpo: 21649
4757.. date: 2017-09-06-10-11-57
4758.. nonce: EUvqA9
4759.. section: Documentation
4760
4761Add RFC 7525 and Mozilla server side TLS links to SSL documentation.
4762
4763..
4764
4765.. bpo: 31128
4766.. date: 2017-08-31
4767.. nonce: uoa3cr
4768.. section: Documentation
4769
4770Allow the pydoc server to bind to arbitrary hostnames.
4771
4772..
4773
4774.. bpo: 30803
4775.. date: 2017-07-29-14-55-50
4776.. nonce: 6hutqQ
4777.. section: Documentation
4778
4779Clarify doc on truth value testing. Original patch by Peter Thomassen.
4780
4781..
4782
4783.. bpo: 30176
4784.. date: 0060
4785.. nonce: VivmCg
4786.. section: Documentation
4787
4788Add missing attribute related constants in curses documentation.
4789
4790..
4791
4792.. bpo: 30052
4793.. date: 0059
4794.. nonce: TpmpaF
4795.. section: Documentation
4796
4797the link targets for :func:`bytes` and :func:`bytearray` are now their
4798respective type definitions, rather than the corresponding builtin function
4799entries. Use :ref:`bytes <func-bytes>` and :ref:`bytearray <func-bytearray>`
4800to reference the latter.
4801In order to ensure this and future cross-reference updates are applied
4802automatically, the daily documentation builds now disable the default output
4803caching features in Sphinx.
4804
4805..
4806
4807.. bpo: 26985
4808.. date: 0058
4809.. nonce: NB5_9S
4810.. section: Documentation
4811
4812Add missing info of code object in inspect documentation.
4813
4814..
4815
4816.. bpo: 19824
4817.. date: 0057
4818.. nonce: We9an6
4819.. section: Documentation
4820
4821Improve the documentation for, and links to, template strings by emphasizing
4822their utility for internationalization, and by clarifying some usage
4823constraints. (See also: bpo-20314, bpo-12518)
4824
4825..
4826
4827.. bpo: 28929
4828.. date: 0056
4829.. nonce: Md7kb0
4830.. section: Documentation
4831
4832Link the documentation to its source file on GitHub.
4833
4834..
4835
4836.. bpo: 25008
4837.. date: 0055
4838.. nonce: CeIzyU
4839.. section: Documentation
4840
4841Document smtpd.py as effectively deprecated and add a pointer to aiosmtpd, a
4842third-party asyncio-based replacement.
4843
4844..
4845
4846.. bpo: 26355
4847.. date: 0054
4848.. nonce: SDq_8Y
4849.. section: Documentation
4850
4851Add canonical header link on each page to corresponding major version of the
4852documentation. Patch by Matthias Bussonnier.
4853
4854..
4855
4856.. bpo: 29349
4857.. date: 0053
4858.. nonce: PjSo-t
4859.. section: Documentation
4860
4861Fix Python 2 syntax in code for building the documentation.
4862
4863..
4864
4865.. bpo: 23722
4866.. date: 0052
4867.. nonce: nFjY3C
4868.. section: Documentation
4869
4870The data model reference and the porting section in the 3.6 What's New guide
4871now cover the additional ``__classcell__`` handling needed for custom
4872metaclasses to fully support :pep:`487` and zero-argument ``super()``.
4873
4874..
4875
4876.. bpo: 28513
4877.. date: 0051
4878.. nonce: L3joAz
4879.. section: Documentation
4880
4881Documented command-line interface of zipfile.
4882
4883..
4884
4885.. bpo: 29639
4886.. date: 2017-09-08-15-59-07
4887.. nonce: yIZecp
4888.. section: Tests
4889
4890test.support.HOST is now "localhost", a new HOSTv4 constant has been added
4891for your ``127.0.0.1`` needs, similar to the existing HOSTv6 constant.
4892
4893..
4894
4895.. bpo: 31320
4896.. date: 2017-09-05-14-23-35
4897.. nonce: JRDHx7
4898.. section: Tests
4899
4900Silence traceback in test_ssl
4901
4902..
4903
4904.. bpo: 31346
4905.. date: 2017-09-04-16-21-18
4906.. nonce: xni1VR
4907.. section: Tests
4908
4909Prefer PROTOCOL_TLS_CLIENT and PROTOCOL_TLS_SERVER protocols for SSLContext.
4910
4911..
4912
4913.. bpo: 25674
4914.. date: 2017-09-04-13-03-55
4915.. nonce: whVTXh
4916.. section: Tests
4917
4918Remove sha256.tbs-internet.com ssl test
4919
4920..
4921
4922.. bpo: 30715
4923.. date: 2017-07-25-15-27-44
4924.. nonce: Sp7bTF
4925.. section: Tests
4926
4927Address ALPN callback changes for OpenSSL 1.1.0f. The latest version behaves
4928like OpenSSL 1.0.2 and no longer aborts handshake.
4929
4930..
4931
4932.. bpo: 30822
4933.. date: 2017-07-20-14-29-54
4934.. nonce: X0wREo
4935.. section: Tests
4936
4937regrtest: Exclude tzdata from regrtest --all. When running the test suite
4938using --use=all / -u all, exclude tzdata since it makes test_datetime too
4939slow (15-20 min on some buildbots) which then times out on some buildbots.
4940Fix also regrtest command line parser to allow passing -u extralargefile to
4941run test_zipfile64.
4942
4943..
4944
4945.. bpo: 30695
4946.. date: 2017-06-30-11-20-20
4947.. nonce: lo7FQX
4948.. section: Tests
4949
4950Add the `set_nomemory(start, stop)` and `remove_mem_hooks()` functions to
4951the _testcapi module.
4952
4953..
4954
4955.. bpo: 30357
4956.. date: 0012
4957.. nonce: n4CPEa
4958.. section: Tests
4959
4960test_thread: setUp() now uses support.threading_setup() and
4961support.threading_cleanup() to wait until threads complete to avoid random
4962side effects on following tests. Initial patch written by Grzegorz Grzywacz.
4963
4964..
4965
4966.. bpo: 30197
4967.. date: 0011
4968.. nonce: c5wRfu
4969.. section: Tests
4970
4971Enhanced functions swap_attr() and swap_item() in the test.support module.
4972They now work when delete replaced attribute or item inside the with
4973statement.  The old value of the attribute or item (or None if it doesn't
4974exist) now will be assigned to the target of the "as" clause, if there is
4975one.
4976
4977..
4978
4979.. bpo: 24932
4980.. date: 0010
4981.. nonce: XLTzvR
4982.. section: Tests
4983
4984Use proper command line parsing in _testembed
4985
4986..
4987
4988.. bpo: 28950
4989.. date: 0009
4990.. nonce: 1W8Glo
4991.. section: Tests
4992
4993Disallow -j0 to be combined with -T/-l in regrtest command line arguments.
4994
4995..
4996
4997.. bpo: 28683
4998.. date: 0008
4999.. nonce: Fp-Hdq
5000.. section: Tests
5001
5002Fix the tests that bind() a unix socket and raise PermissionError on Android
5003for a non-root user.
5004
5005..
5006
5007.. bpo: 26936
5008.. date: 0007
5009.. nonce: XSZSVS
5010.. section: Tests
5011
5012Fix the test_socket failures on Android - getservbyname(),  getservbyport()
5013and getaddrinfo() are broken on some Android API levels.
5014
5015..
5016
5017.. bpo: 28666
5018.. date: 0006
5019.. nonce: RtTk-4
5020.. section: Tests
5021
5022Now test.support.rmtree is able to remove unwritable or unreadable
5023directories.
5024
5025..
5026
5027.. bpo: 23839
5028.. date: 0005
5029.. nonce: zsT_L9
5030.. section: Tests
5031
5032Various caches now are cleared before running every test file.
5033
5034..
5035
5036.. bpo: 26944
5037.. date: 0004
5038.. nonce: ChZ_BO
5039.. section: Tests
5040
5041Fix test_posix for Android where 'id -G' is entirely wrong or missing the
5042effective gid.
5043
5044..
5045
5046.. bpo: 28409
5047.. date: 0003
5048.. nonce: Q2IlxJ
5049.. section: Tests
5050
5051regrtest: fix the parser of command line arguments.
5052
5053..
5054
5055.. bpo: 28217
5056.. date: 0002
5057.. nonce: Y37OKV
5058.. section: Tests
5059
5060Adds _testconsole module to test console input.
5061
5062..
5063
5064.. bpo: 26939
5065.. date: 0001
5066.. nonce: 7j_W5R
5067.. section: Tests
5068
5069Add the support.setswitchinterval() function to fix test_functools hanging
5070on the Android armv7 qemu emulator.
5071
5072..
5073
5074.. bpo: 31354
5075.. date: 2017-09-08-11-48-11
5076.. nonce: 4f-VJK
5077.. section: Build
5078
5079Allow --with-lto to be used on all builds, not just `make profile-opt`.
5080
5081..
5082
5083.. bpo: 31370
5084.. date: 2017-09-06-23-14-08
5085.. nonce: -j4kN4
5086.. section: Build
5087
5088Remove support for building --without-threads.
5089This option is not really useful anymore in the 21st century. Removing lots
5090of conditional paths allows us to simplify the code base, including in
5091difficult to maintain low-level internal code.
5092
5093..
5094
5095.. bpo: 31341
5096.. date: 2017-09-04-14-43-46
5097.. nonce: XLuZFk
5098.. section: Build
5099
5100Per :pep:`11`, support for the IRIX operating system was removed.
5101
5102..
5103
5104.. bpo: 30854
5105.. date: 2017-07-05-16-54-59
5106.. nonce: sPADRI
5107.. section: Build
5108
5109Fix compile error when compiling --without-threads. Patch by Masayuki
5110Yamamoto.
5111
5112..
5113
5114.. bpo: 30687
5115.. date: 0050
5116.. nonce: 8mqHnu
5117.. section: Build
5118
5119Locate msbuild.exe on Windows when building rather than vcvarsall.bat
5120
5121..
5122
5123.. bpo: 20210
5124.. date: 0049
5125.. nonce: MN_n-r
5126.. section: Build
5127
5128Support the *disabled* marker in Setup files. Extension modules listed after
5129this marker are not built at all, neither by the Makefile nor by setup.py.
5130
5131..
5132
5133.. bpo: 29941
5134.. date: 0048
5135.. nonce: ylh45A
5136.. section: Build
5137
5138Add ``--with-assertions`` configure flag to explicitly enable C ``assert()``
5139checks. Defaults to off. ``--with-pydebug`` implies ``--with-assertions``.
5140
5141..
5142
5143.. bpo: 28787
5144.. date: 0047
5145.. nonce: vhH_6a
5146.. section: Build
5147
5148Fix out-of-tree builds of Python when configured with ``--with--dtrace``.
5149
5150..
5151
5152.. bpo: 29243
5153.. date: 0046
5154.. nonce: WDK4hT
5155.. section: Build
5156
5157Prevent unnecessary rebuilding of Python during ``make test``, ``make
5158install`` and some other make targets when configured with
5159``--enable-optimizations``.
5160
5161..
5162
5163.. bpo: 23404
5164.. date: 0045
5165.. nonce: PdYVWg
5166.. section: Build
5167
5168Don't regenerate generated files based on file modification time anymore:
5169the action is now explicit. Replace ``make touch`` with ``make regen-all``.
5170
5171..
5172
5173.. bpo: 29643
5174.. date: 0044
5175.. nonce: 4WLIJQ
5176.. section: Build
5177
5178Fix ``--enable-optimization`` didn't work.
5179
5180..
5181
5182.. bpo: 27593
5183.. date: 0043
5184.. nonce: v87xEr
5185.. section: Build
5186
5187sys.version and the platform module python_build(), python_branch(), and
5188python_revision() functions now use git information rather than hg when
5189building from a repo.
5190
5191..
5192
5193.. bpo: 29572
5194.. date: 0042
5195.. nonce: iZ1XKK
5196.. section: Build
5197
5198Update Windows build and OS X installers to use OpenSSL 1.0.2k.
5199
5200..
5201
5202.. bpo: 27659
5203.. date: 0041
5204.. nonce: i8UzRC
5205.. section: Build
5206
5207Prohibit implicit C function declarations: use
5208``-Werror=implicit-function-declaration`` when possible (GCC and Clang,
5209but it depends on the compiler version). Patch written by Chi Hsuan Yen.
5210
5211..
5212
5213.. bpo: 29384
5214.. date: 0040
5215.. nonce: v3IqBE
5216.. section: Build
5217
5218Remove old Be OS helper scripts.
5219
5220..
5221
5222.. bpo: 26851
5223.. date: 0039
5224.. nonce: R5243g
5225.. section: Build
5226
5227Set Android compilation and link flags.
5228
5229..
5230
5231.. bpo: 28768
5232.. date: 0038
5233.. nonce: b9_a6E
5234.. section: Build
5235
5236Fix implicit declaration of function _setmode. Patch by Masayuki Yamamoto
5237
5238..
5239
5240.. bpo: 29080
5241.. date: 0037
5242.. nonce: b3qLQT
5243.. section: Build
5244
5245Removes hard dependency on hg.exe from PCBuild/build.bat
5246
5247..
5248
5249.. bpo: 23903
5250.. date: 0036
5251.. nonce: JXJ889
5252.. section: Build
5253
5254Added missed names to PC/python3.def.
5255
5256..
5257
5258.. bpo: 28762
5259.. date: 0035
5260.. nonce: Ru0YN_
5261.. section: Build
5262
5263lockf() is available on Android API level 24, but the F_LOCK macro is not
5264defined in android-ndk-r13.
5265
5266..
5267
5268.. bpo: 28538
5269.. date: 0034
5270.. nonce: FqtN7v
5271.. section: Build
5272
5273Fix the compilation error that occurs because if_nameindex() is available on
5274Android API level 24, but the if_nameindex structure is not defined.
5275
5276..
5277
5278.. bpo: 20211
5279.. date: 0033
5280.. nonce: gpNptI
5281.. section: Build
5282
5283Do not add the directory for installing C header files and the directory for
5284installing object code libraries to the cross compilation search paths.
5285Original patch by Thomas Petazzoni.
5286
5287..
5288
5289.. bpo: 28849
5290.. date: 0032
5291.. nonce: AzRRF5
5292.. section: Build
5293
5294Do not define sys.implementation._multiarch on Android.
5295
5296..
5297
5298.. bpo: 10656
5299.. date: 0031
5300.. nonce: pR8FFU
5301.. section: Build
5302
5303Fix out-of-tree building on AIX.  Patch by Tristan Carel and Michael
5304Haubenwallner.
5305
5306..
5307
5308.. bpo: 26359
5309.. date: 0030
5310.. nonce: CLz6qy
5311.. section: Build
5312
5313Rename --with-optimiations to --enable-optimizations.
5314
5315..
5316
5317.. bpo: 28444
5318.. date: 0029
5319.. nonce: zkc9nT
5320.. section: Build
5321
5322Fix missing extensions modules when cross compiling.
5323
5324..
5325
5326.. bpo: 28208
5327.. date: 0028
5328.. nonce: DtoP1i
5329.. section: Build
5330
5331Update Windows build and OS X installers to use SQLite 3.14.2.
5332
5333..
5334
5335.. bpo: 28248
5336.. date: 0027
5337.. nonce: KY_-en
5338.. section: Build
5339
5340Update Windows build and OS X installers to use OpenSSL 1.0.2j.
5341
5342..
5343
5344.. bpo: 21124
5345.. date: 0026
5346.. nonce: 1bbArU
5347.. section: Build
5348
5349Fix building the _struct module on Cygwin by passing ``NULL`` instead of
5350``&PyType_Type`` to PyVarObject_HEAD_INIT.  Patch by Masayuki Yamamoto.
5351
5352..
5353
5354.. bpo: 13756
5355.. date: 0025
5356.. nonce: sslhpC
5357.. section: Build
5358
5359Fix building extensions modules on Cygwin.  Patch by Roumen Petrov, based on
5360original patch by Jason Tishler.
5361
5362..
5363
5364.. bpo: 21085
5365.. date: 0024
5366.. nonce: 2VvyUF
5367.. section: Build
5368
5369Add configure check for siginfo_t.si_band, which Cygwin does not provide.
5370Patch by Masayuki Yamamoto with review and rebase by Erik Bray.
5371
5372..
5373
5374.. bpo: 28258
5375.. date: 0023
5376.. nonce: iKtAHd
5377.. section: Build
5378
5379Fixed build with Estonian locale (python-config and distclean targets in
5380Makefile).  Patch by Arfrever Frehtes Taifersar Arahesis.
5381
5382..
5383
5384.. bpo: 26661
5385.. date: 0022
5386.. nonce: Z_HNbs
5387.. section: Build
5388
5389setup.py now detects system libffi with multiarch wrapper.
5390
5391..
5392
5393.. bpo: 27979
5394.. date: 0021
5395.. nonce: fR0KgM
5396.. section: Build
5397
5398A full copy of libffi is no longer bundled for use when building _ctypes on
5399non-OSX UNIX platforms.  An installed copy of libffi is now required when
5400building _ctypes on such platforms.
5401
5402..
5403
5404.. bpo: 15819
5405.. date: 0020
5406.. nonce: QVDr3E
5407.. section: Build
5408
5409Remove redundant include search directory option for building outside the
5410source tree.
5411
5412..
5413
5414.. bpo: 28676
5415.. date: 0019
5416.. nonce: Wxf6Ds
5417.. section: Build
5418
5419Prevent missing 'getentropy' declaration warning on macOS. Patch by Gareth
5420Rees.
5421
5422..
5423
5424.. bpo: 31392
5425.. date: 2017-09-07-20-09-04
5426.. nonce: h92bWF
5427.. section: Windows
5428
5429Update Windows build to use OpenSSL 1.1.0f
5430
5431..
5432
5433.. bpo: 30389
5434.. date: 2017-09-06-17-14-54
5435.. nonce: 9Dizrx
5436.. section: Windows
5437
5438Adds detection of Visual Studio 2017 to distutils on Windows.
5439
5440..
5441
5442.. bpo: 31358
5443.. date: 2017-09-05-19-46-52
5444.. nonce: n1Fjxc
5445.. section: Windows
5446
5447zlib is no longer bundled in the CPython source, instead it is downloaded on
5448demand just like bz2, lzma, OpenSSL, Tcl/Tk, and SQLite.
5449
5450..
5451
5452.. bpo: 31340
5453.. date: 2017-09-04-13-19-05
5454.. nonce: MbkzLi
5455.. section: Windows
5456
5457Change to building with MSVC v141 (included with Visual Studio 2017)
5458
5459..
5460
5461.. bpo: 30581
5462.. date: 2017-08-04-10-05-19
5463.. nonce: OQhR7l
5464.. section: Windows
5465
5466os.cpu_count() now returns the correct number of processors on Windows when
5467the number of logical processors is greater than 64.
5468
5469..
5470
5471.. bpo: 30916
5472.. date: 2017-07-15-00-40-12
5473.. nonce: BpCrro
5474.. section: Windows
5475
5476Pre-build OpenSSL, Tcl and Tk and include the binaries in the build.
5477
5478..
5479
5480.. bpo: 30731
5481.. date: 2017-07-13-11-22-53
5482.. nonce: nmMDwI
5483.. section: Windows
5484
5485Add a missing xmlns to python.manifest so that it matches the schema.
5486
5487..
5488
5489.. bpo: 30291
5490.. date: 2017-06-28-03-20-48
5491.. nonce: zBpOl6
5492.. section: Windows
5493
5494Allow requiring 64-bit interpreters from py.exe using -64 suffix.
5495Contributed by Steve (Gadget) Barnes.
5496
5497..
5498
5499.. bpo: 30362
5500.. date: 2017-06-28-03-08-22
5501.. nonce: XxeVMB
5502.. section: Windows
5503
5504Adds list options (-0, -0p) to py.exe launcher. Contributed by Steve Barnes.
5505
5506..
5507
5508.. bpo: 23451
5509.. date: 2017-06-27-07-04-06
5510.. nonce: bl_QOB
5511.. section: Windows
5512
5513Fix socket deprecation warnings in socketmodule.c. Patch by Segev Finer.
5514
5515..
5516
5517.. bpo: 30450
5518.. date: 0088
5519.. nonce: qsaK8y
5520.. section: Windows
5521
5522The build process on Windows no longer depends on Subversion, instead
5523pulling external code from GitHub via a Python script.  If Python 3.6 is not
5524found on the system (via ``py -3.6``), NuGet is used to download a copy of
552532-bit Python.
5526
5527..
5528
5529.. bpo: 29579
5530.. date: 0087
5531.. nonce: 07B-FQ
5532.. section: Windows
5533
5534Removes readme.txt from the installer.
5535
5536..
5537
5538.. bpo: 25778
5539.. date: 0086
5540.. nonce: 8uKJ82
5541.. section: Windows
5542
5543winreg does not truncate string correctly (Patch by Eryk Sun)
5544
5545..
5546
5547.. bpo: 28896
5548.. date: 0085
5549.. nonce: qOcBBL
5550.. section: Windows
5551
5552Deprecate WindowsRegistryFinder and disable it by default
5553
5554..
5555
5556.. bpo: 28522
5557.. date: 0084
5558.. nonce: XHMQa7
5559.. section: Windows
5560
5561Fixes mishandled buffer reallocation in getpathp.c
5562
5563..
5564
5565.. bpo: 28402
5566.. date: 0083
5567.. nonce: v9zETJ
5568.. section: Windows
5569
5570Adds signed catalog files for stdlib on Windows.
5571
5572..
5573
5574.. bpo: 28333
5575.. date: 0082
5576.. nonce: KnpeO4
5577.. section: Windows
5578
5579Enables Unicode for ps1/ps2 and input() prompts. (Patch by Eryk Sun)
5580
5581..
5582
5583.. bpo: 28251
5584.. date: 0081
5585.. nonce: tR_AFs
5586.. section: Windows
5587
5588Improvements to help manuals on Windows.
5589
5590..
5591
5592.. bpo: 28110
5593.. date: 0080
5594.. nonce: cnkP5F
5595.. section: Windows
5596
5597launcher.msi has different product codes between 32-bit and 64-bit
5598
5599..
5600
5601.. bpo: 28161
5602.. date: 0079
5603.. nonce: hF91LI
5604.. section: Windows
5605
5606Opening CON for write access fails
5607
5608..
5609
5610.. bpo: 28162
5611.. date: 0078
5612.. nonce: 3FHPVD
5613.. section: Windows
5614
5615WindowsConsoleIO readall() fails if first line starts with Ctrl+Z
5616
5617..
5618
5619.. bpo: 28163
5620.. date: 0077
5621.. nonce: -DUgJw
5622.. section: Windows
5623
5624WindowsConsoleIO fileno() passes wrong flags to _open_osfhandle
5625
5626..
5627
5628.. bpo: 28164
5629.. date: 0076
5630.. nonce: 5MfN0J
5631.. section: Windows
5632
5633_PyIO_get_console_type fails for various paths
5634
5635..
5636
5637.. bpo: 28137
5638.. date: 0075
5639.. nonce: C1uvzY
5640.. section: Windows
5641
5642Renames Windows path file to ._pth
5643
5644..
5645
5646.. bpo: 28138
5647.. date: 0074
5648.. nonce: pNdv64
5649.. section: Windows
5650
5651Windows ._pth file should allow import site
5652
5653..
5654
5655.. bpo: 31493
5656.. date: 2017-09-16-23-43-39
5657.. nonce: nmHMCR
5658.. section: IDLE
5659
5660IDLE code context -- fix code update and font update timers.
5661Canceling timers prevents a warning message when test_idle completes.
5662
5663..
5664
5665.. bpo: 31488
5666.. date: 2017-09-16-01-21-20
5667.. nonce: 0rtXIT
5668.. section: IDLE
5669
5670IDLE - Update non-key options in former extension classes. When applying
5671configdialog changes, call .reload for each feature class. Change ParenMatch
5672so updated options affect existing instances attached to existing editor
5673windows.
5674
5675..
5676
5677.. bpo: 31477
5678.. date: 2017-09-15-12-38-47
5679.. nonce: n__6sa
5680.. section: IDLE
5681
5682IDLE - Improve rstrip entry in doc. Strip trailing whitespace strips more
5683than blank spaces.  Multiline string literals are not skipped.
5684
5685..
5686
5687.. bpo: 31480
5688.. date: 2017-09-14-17-53-53
5689.. nonce: 4WJ0pl
5690.. section: IDLE
5691
5692IDLE - make tests pass with zzdummy extension disabled by default.
5693
5694..
5695
5696.. bpo: 31421
5697.. date: 2017-09-12-08-38-27
5698.. nonce: mYfQNq
5699.. section: IDLE
5700
5701Document how IDLE runs tkinter programs. IDLE calls tcl/tk update in the
5702background in order to make live
5703interaction and experimentation with tkinter applications much easier.
5704
5705..
5706
5707.. bpo: 31414
5708.. date: 2017-09-11-15-46-05
5709.. nonce: wiepgK
5710.. section: IDLE
5711
5712IDLE -- fix tk entry box tests by deleting first. Adding to an int entry is
5713not the same as deleting and inserting because int('') will fail.
5714
5715..
5716
5717.. bpo: 31051
5718.. date: 2017-08-30-00-06-58
5719.. nonce: 50Jp_Q
5720.. section: IDLE
5721
5722Rearrange IDLE configdialog GenPage into Window, Editor, and Help sections.
5723
5724..
5725
5726.. bpo: 30617
5727.. date: 2017-08-27-16-49-36
5728.. nonce: UHnswr
5729.. section: IDLE
5730
5731IDLE - Add docstrings and tests for outwin subclass of editor.
5732Move some data and functions from the class to module level. Patch by Cheryl
5733Sabella.
5734
5735..
5736
5737.. bpo: 31287
5738.. date: 2017-08-27-15-31-33
5739.. nonce: aZERfI
5740.. section: IDLE
5741
5742IDLE - Do not modify tkinter.message in test_configdialog.
5743
5744..
5745
5746.. bpo: 27099
5747.. date: 2017-08-24-13-48-16
5748.. nonce: rENefC
5749.. section: IDLE
5750
5751Convert IDLE's built-in 'extensions' to regular features.
5752About 10 IDLE features were implemented as supposedly optional extensions.
5753Their different behavior could be confusing or worse for users and not good
5754for maintenance.  Hence the conversion.
5755The main difference for users is that user configurable key bindings for
5756builtin features are now handled uniformly.  Now, editing a binding in a
5757keyset only affects its value in the keyset.  All bindings are defined
5758together in the system-specific default keysets in config-extensions.def.
5759All custom keysets are saved as a whole in config-extension.cfg.  All take
5760effect as soon as one clicks Apply or Ok.
5761The affected events are '<<force-open-completions>>', '<<expand-word>>',
5762'<<force-open-calltip>>', '<<flash-paren>>', '<<format-paragraph>>',
5763'<<run-module>>', '<<check-module>>', and '<<zoom-height>>'.  Any (global)
5764customizations made before 3.6.3 will not affect their keyset-specific
5765customization after 3.6.3. and vice versa.
5766Initial patch by Charles Wohlganger.
5767
5768..
5769
5770.. bpo: 31206
5771.. date: 2017-08-18-14-13-42
5772.. nonce: F1-tKK
5773.. section: IDLE
5774
5775IDLE: Factor HighPage(Frame) class from ConfigDialog. Patch by Cheryl
5776Sabella.
5777
5778..
5779
5780.. bpo: 31001
5781.. date: 2017-08-17-15-00-20
5782.. nonce: KLxYHC
5783.. section: IDLE
5784
5785Add tests for configdialog highlight tab.  Patch by Cheryl Sabella.
5786
5787..
5788
5789.. bpo: 31205
5790.. date: 2017-08-15-12-58-23
5791.. nonce: iuziZ5
5792.. section: IDLE
5793
5794IDLE: Factor KeysPage(Frame) class from ConfigDialog.  The slightly modified
5795tests continue to pass.  Patch by Cheryl Sabella.
5796
5797..
5798
5799.. bpo: 31130
5800.. date: 2017-08-07-14-02-56
5801.. nonce: FbsC7f
5802.. section: IDLE
5803
5804IDLE -- stop leaks in test_configdialog. Initial patch by Victor Stinner.
5805
5806..
5807
5808.. bpo: 31002
5809.. date: 2017-08-03-17-54-02
5810.. nonce: kUSgTE
5811.. section: IDLE
5812
5813Add tests for configdialog keys tab. Patch by Cheryl Sabella.
5814
5815..
5816
5817.. bpo: 19903
5818.. date: 2017-08-03-14-08-42
5819.. nonce: sqE1FS
5820.. section: IDLE
5821
5822IDLE: Calltips use `inspect.signature` instead of `inspect.getfullargspec`.
5823This improves calltips for builtins converted to use Argument Clinic. Patch
5824by Louie Lu.
5825
5826..
5827
5828.. bpo: 31083
5829.. date: 2017-07-31-23-20-51
5830.. nonce: 991FXm
5831.. section: IDLE
5832
5833IDLE - Add an outline of a TabPage class in configdialog. Update existing
5834classes to match outline. Initial patch by Cheryl Sabella.
5835
5836..
5837
5838.. bpo: 31050
5839.. date: 2017-07-30-17-39-59
5840.. nonce: AXR3kP
5841.. section: IDLE
5842
5843Factor GenPage(Frame) class from ConfigDialog. The slightly modified tests
5844continue to pass. Patch by Cheryl Sabella.
5845
5846..
5847
5848.. bpo: 31004
5849.. date: 2017-07-30-01-00-58
5850.. nonce: m8cc1t
5851.. section: IDLE
5852
5853IDLE - Factor FontPage(Frame) class from ConfigDialog.
5854Slightly modified tests continue to pass. Fix General tests. Patch mostly by
5855Cheryl Sabella.
5856
5857..
5858
5859.. bpo: 30781
5860.. date: 2017-07-28-18-59-06
5861.. nonce: ud5m18
5862.. section: IDLE
5863
5864IDLE - Use ttk widgets in ConfigDialog. Patches by Terry Jan Reedy and
5865Cheryl Sabella.
5866
5867..
5868
5869.. bpo: 31060
5870.. date: 2017-07-27-14-48-42
5871.. nonce: GdY_VY
5872.. section: IDLE
5873
5874IDLE - Finish rearranging methods of ConfigDialog Grouping methods
5875pertaining to each tab and the buttons will aid writing tests and improving
5876the tabs and will enable splitting the groups into classes.
5877
5878..
5879
5880.. bpo: 30853
5881.. date: 2017-07-27-10-01-14
5882.. nonce: enPvvc
5883.. section: IDLE
5884
5885IDLE -- Factor a VarTrace class out of ConfigDialog.
5886Instance tracers manages pairs consisting of a tk variable and a callback
5887function.  When tracing is turned on, setting the variable calls the
5888function.  Test coverage for the new class is 100%.
5889
5890..
5891
5892.. bpo: 31003
5893.. date: 2017-07-25-01-28-35
5894.. nonce: bYINVH
5895.. section: IDLE
5896
5897IDLE: Add more tests for General tab.
5898
5899..
5900
5901.. bpo: 30993
5902.. date: 2017-07-22-18-08-41
5903.. nonce: 34vJkB
5904.. section: IDLE
5905
5906IDLE - Improve configdialog font page and tests.
5907In configdialog: Document causal pathways in create_font_tab docstring.
5908Simplify some attribute names. Move set_samples calls to var_changed_font
5909(idea from Cheryl Sabella).  Move related functions to positions after the
5910create widgets function.
5911In test_configdialog: Fix test_font_set so not order dependent.  Fix renamed
5912test_indent_scale so it tests the widget.  Adjust tests for movement of
5913set_samples call.  Add tests for load functions.  Put all font tests in one
5914class and tab indent tests in another.  Except for two lines, these tests
5915completely cover the related functions.
5916
5917..
5918
5919.. bpo: 30981
5920.. date: 2017-07-21-01-55-14
5921.. nonce: ZFvQPt
5922.. section: IDLE
5923
5924IDLE -- Add more configdialog font page tests.
5925
5926..
5927
5928.. bpo: 28523
5929.. date: 2017-07-21-00-54-52
5930.. nonce: OPcqYJ
5931.. section: IDLE
5932
5933IDLE: replace 'colour' with 'color' in configdialog.
5934
5935..
5936
5937.. bpo: 30917
5938.. date: 2017-07-17-23-35-57
5939.. nonce: hSiuuO
5940.. section: IDLE
5941
5942Add tests for idlelib.config.IdleConf. Increase coverage from 46% to 96%.
5943Patch by Louie Lu.
5944
5945..
5946
5947.. bpo: 30934
5948.. date: 2017-07-15-22-26-57
5949.. nonce: BanuSB
5950.. section: IDLE
5951
5952Document coverage details for idlelib tests.
5953Add section to idlelib/idle-test/README.txt.
5954Include check that branches are taken both ways.
5955Exclude IDLE-specific code that does not run during unit tests.
5956
5957..
5958
5959.. bpo: 30913
5960.. date: 2017-07-13-23-07-33
5961.. nonce: aezn_e
5962.. section: IDLE
5963
5964IDLE: Document ConfigDialog tk Vars, methods, and widgets in docstrings This
5965will facilitate improving the dialog and splitting up the class. Original
5966patch by Cheryl Sabella.
5967
5968..
5969
5970.. bpo: 30899
5971.. date: 2017-07-11-02-26-17
5972.. nonce: SQmVO8
5973.. section: IDLE
5974
5975IDLE: Add tests for ConfigParser subclasses in config. Patch by Louie Lu.
5976
5977..
5978
5979.. bpo: 30881
5980.. date: 2017-07-11-02-21-42
5981.. nonce: 4KAq_9
5982.. section: IDLE
5983
5984IDLE: Add docstrings to browser.py. Patch by Cheryl Sabella.
5985
5986..
5987
5988.. bpo: 30851
5989.. date: 2017-07-09-23-53-00
5990.. nonce: AHXBYa
5991.. section: IDLE
5992
5993IDLE: Remove unused variables in configdialog.  One is a duplicate, one is
5994set but cannot be altered by users. Patch by Cheryl Sabella.
5995
5996..
5997
5998.. bpo: 30870
5999.. date: 2017-07-08-17-57-04
6000.. nonce: IcR2pf
6001.. section: IDLE
6002
6003IDLE: In Settings dialog, select font with Up, Down keys as well as mouse.
6004Initial patch by Louie Lu.
6005
6006..
6007
6008.. bpo: 8231
6009.. date: 2017-07-07-21-10-55
6010.. nonce: yEge3L
6011.. section: IDLE
6012
6013IDLE: call config.IdleConf.GetUserCfgDir only once.
6014
6015..
6016
6017.. bpo: 30779
6018.. date: 2017-07-07-20-26-37
6019.. nonce: 8KXEXN
6020.. section: IDLE
6021
6022IDLE: Factor ConfigChanges class from configdialog, put in config; test. *
6023In config, put dump test code in a function; run it and unittest in   'if
6024__name__ == '__main__'. * Add class config.ConfigChanges based on
6025changes_class_v4.py on bpo issue. * Add class test_config.ChangesTest,
6026partly using configdialog_tests_v1.py. * Revise configdialog to use
6027ConfigChanges; see tracker msg297804. * Revise test_configdialog to match
6028configdialog changes. * Remove configdialog functions unused or moved to
6029ConfigChanges. Cheryl Sabella contributed parts of the patch.
6030
6031..
6032
6033.. bpo: 30777
6034.. date: 2017-07-04-22-45-46
6035.. nonce: uxzlMB
6036.. section: IDLE
6037
6038IDLE: configdialog - Add docstrings and fix comments. Patch by Cheryl
6039Sabella.
6040
6041..
6042
6043.. bpo: 30495
6044.. date: 2017-06-29-18-23-06
6045.. nonce: qIWgc4
6046.. section: IDLE
6047
6048IDLE: Improve textview with docstrings, PEP8 names, and more tests. Patch by
6049Cheryl Sabella.
6050
6051..
6052
6053.. bpo: 30723
6054.. date: 2017-06-27-19-05-40
6055.. nonce: rQh06y
6056.. section: IDLE
6057
6058IDLE: Make several improvements to parenmatch. Add 'parens' style to
6059highlight both opener and closer. Make 'default' style, which is not
6060default, a synonym for 'opener'. Make time-delay work the same with all
6061styles. Add help for config dialog extensions tab, including help for
6062parenmatch. Add new tests.  Original patch by Charles Wohlganger.
6063
6064..
6065
6066.. bpo: 30674
6067.. date: 2017-06-27-01-40-34
6068.. nonce: ppK_q8
6069.. section: IDLE
6070
6071IDLE: add docstrings to grep module. Patch by Cheryl Sabella
6072
6073..
6074
6075.. bpo: 21519
6076.. date: 2017-06-27-00-29-56
6077.. nonce: fTj9T0
6078.. section: IDLE
6079
6080IDLE's basic custom key entry dialog now detects duplicates properly.
6081Original patch by Saimadhav Heblikar.
6082
6083..
6084
6085.. bpo: 29910
6086.. date: 2017-06-26-22-45-27
6087.. nonce: mqHh7u
6088.. section: IDLE
6089
6090IDLE no longer deletes a character after commenting out a region by a key
6091shortcut.  Add ``return 'break'`` for this and other potential conflicts
6092between IDLE and default key bindings.
6093
6094..
6095
6096.. bpo: 30728
6097.. date: 2017-06-26-15-47-13
6098.. nonce: qH4TGL
6099.. section: IDLE
6100
6101Review and change idlelib.configdialog names. Lowercase method and attribute
6102names. Replace 'colour' with 'color', expand overly cryptic names, delete
6103unneeded underscores. Replace ``import *`` with specific imports. Patches by
6104Cheryl Sabella.
6105
6106..
6107
6108.. bpo: 6739
6109.. date: 2017-06-26-00-28-59
6110.. nonce: x5MfhB
6111.. section: IDLE
6112
6113IDLE: Verify user-entered key sequences by trying to bind them with tk. Add
6114tests for all 3 validation functions. Original patch by G Polo.  Tests added
6115by Cheryl Sabella.
6116
6117..
6118
6119.. bpo: 15786
6120.. date: 0096
6121.. nonce: _XRbaR
6122.. section: IDLE
6123
6124Fix several problems with IDLE's autocompletion box. The following should
6125now work: clicking on selection box items; using the scrollbar; selecting an
6126item by hitting Return. Hangs on MacOSX should no longer happen. Patch by
6127Louie Lu.
6128
6129..
6130
6131.. bpo: 25514
6132.. date: 0095
6133.. nonce: 882pXa
6134.. section: IDLE
6135
6136Add doc subsubsection about IDLE failure to start. Popup no-connection
6137message directs users to this section.
6138
6139..
6140
6141.. bpo: 30642
6142.. date: 0094
6143.. nonce: 3Zujzt
6144.. section: IDLE
6145
6146Fix reference leaks in IDLE tests. Patches by Louie Lu and Terry Jan Reedy.
6147
6148..
6149
6150.. bpo: 30495
6151.. date: 0093
6152.. nonce: I3i5vL
6153.. section: IDLE
6154
6155Add docstrings for textview.py and use PEP8 names. Patches by Cheryl Sabella
6156and Terry Jan Reedy.
6157
6158..
6159
6160.. bpo: 30290
6161.. date: 0092
6162.. nonce: fZ3kod
6163.. section: IDLE
6164
6165Help-about: use pep8 names and add tests. Increase coverage to 100%. Patches
6166by Louie Lu, Cheryl Sabella, and Terry Jan Reedy.
6167
6168..
6169
6170.. bpo: 30303
6171.. date: 0091
6172.. nonce: 2L2F-4
6173.. section: IDLE
6174
6175Add _utest option to textview; add new tests. Increase coverage to 100%.
6176Patches by Louie Lu and Terry Jan Reedy.
6177
6178..
6179
6180.. bpo: 29071
6181.. date: 0090
6182.. nonce: FCOpJn
6183.. section: IDLE
6184
6185IDLE colors f-string prefixes (but not invalid ur prefixes).
6186
6187..
6188
6189.. bpo: 28572
6190.. date: 0089
6191.. nonce: 1_duKY
6192.. section: IDLE
6193
6194Add 10% to coverage of IDLE's test_configdialog. Update and augment
6195description of the configuration system.
6196
6197..
6198
6199.. bpo: 30983
6200.. date: 2017-08-18-17-19-23
6201.. nonce: ggGz9z
6202.. section: Tools/Demos
6203
6204gdb integration commands (py-bt, etc.) work on optimized shared builds now,
6205too.  :pep:`523` introduced _PyEval_EvalFrameDefault which inlines
6206PyEval_EvalFrameEx on non-debug shared builds.  This broke the ability to
6207use py-bt, py-up, and a few other Python-specific gdb integrations. The
6208problem is fixed by only looking for _PyEval_EvalFrameDefault frames in
6209python-gdb.py.  Original patch by Bruno "Polaco" Penteado.
6210
6211..
6212
6213.. bpo: 29748
6214.. date: 0018
6215.. nonce: 6pV6s9
6216.. section: Tools/Demos
6217
6218Added the slice index converter in Argument Clinic.
6219
6220..
6221
6222.. bpo: 24037
6223.. date: 0017
6224.. nonce: KPFC7o
6225.. section: Tools/Demos
6226
6227Argument Clinic now uses the converter `bool(accept={int})` rather than
6228`int` for semantical booleans.  This avoids repeating the default value for
6229Python and C and will help in converting to `bool` in future.
6230
6231..
6232
6233.. bpo: 29367
6234.. date: 0016
6235.. nonce: 4dOKL0
6236.. section: Tools/Demos
6237
6238python-gdb.py now supports also ``method-wrapper`` (``wrapperobject``)
6239objects.
6240
6241..
6242
6243.. bpo: 28023
6244.. date: 0015
6245.. nonce: 4gzSGp
6246.. section: Tools/Demos
6247
6248Fix python-gdb.py didn't support new dict implementation.
6249
6250..
6251
6252.. bpo: 15369
6253.. date: 0014
6254.. nonce: bdZ3n-
6255.. section: Tools/Demos
6256
6257The pybench and pystone microbenchmark have been removed from Tools. Please
6258use the new Python benchmark suite https://github.com/python/performance
6259which is more reliable and includes a portable version of pybench working on
6260Python 2 and Python 3.
6261
6262..
6263
6264.. bpo: 28102
6265.. date: 0013
6266.. nonce: 5fKaek
6267.. section: Tools/Demos
6268
6269The zipfile module CLI now prints usage to stderr. Patch by Stephen J.
6270Turnbull.
6271
6272..
6273
6274.. bpo: 31338
6275.. date: 2017-09-05-17-51-12
6276.. nonce: LjA43Y
6277.. section: C API
6278
6279Added the ``Py_UNREACHABLE()`` macro for code paths which are never expected
6280to be reached.  This and a few other useful macros are now documented in the
6281C API manual.
6282
6283..
6284
6285.. bpo: 30832
6286.. date: 2017-07-03-17-25-40
6287.. nonce: PcTAEP
6288.. section: C API
6289
6290Remove own implementation for thread-local storage.
6291CPython has provided the own implementation for thread-local storage (TLS)
6292on Python/thread.c, it's used in the case which a platform has not supplied
6293native TLS.  However, currently all supported platforms (Windows and
6294pthreads) have provided native TLS and defined the Py_HAVE_NATIVE_TLS macro
6295with unconditional in any case.
6296
6297..
6298
6299.. bpo: 30708
6300.. date: 0073
6301.. nonce: np-l1j
6302.. section: C API
6303
6304PyUnicode_AsWideCharString() now raises a ValueError if the second argument
6305is NULL and the wchar_t\* string contains null characters.
6306
6307..
6308
6309.. bpo: 16500
6310.. date: 0072
6311.. nonce: lRpooa
6312.. section: C API
6313
6314Deprecate PyOS_AfterFork() and add PyOS_BeforeFork(),
6315PyOS_AfterFork_Parent() and PyOS_AfterFork_Child().
6316
6317..
6318
6319.. bpo: 6532
6320.. date: 0071
6321.. nonce: qcH6k1
6322.. section: C API
6323
6324The type of results of PyThread_start_new_thread() and
6325PyThread_get_thread_ident(), and the id parameter of
6326PyThreadState_SetAsyncExc() changed from "long" to "unsigned long".
6327
6328..
6329
6330.. bpo: 27867
6331.. date: 0070
6332.. nonce: J-8CGo
6333.. section: C API
6334
6335Function PySlice_GetIndicesEx() is deprecated and replaced with a macro if
6336Py_LIMITED_API is not set or set to the value between 0x03050400 and
63370x03060000 (not including) or 0x03060100 or higher.  Added functions
6338PySlice_Unpack() and PySlice_AdjustIndices().
6339
6340..
6341
6342.. bpo: 29083
6343.. date: 0069
6344.. nonce: tGTjr_
6345.. section: C API
6346
6347Fixed the declaration of some public API functions. PyArg_VaParse() and
6348PyArg_VaParseTupleAndKeywords() were not available in limited API.
6349PyArg_ValidateKeywordArguments(), PyArg_UnpackTuple() and Py_BuildValue()
6350were not available in limited API of version < 3.3 when PY_SSIZE_T_CLEAN is
6351defined.
6352
6353..
6354
6355.. bpo: 28769
6356.. date: 0068
6357.. nonce: Ecmtn8
6358.. section: C API
6359
6360The result of PyUnicode_AsUTF8AndSize() and PyUnicode_AsUTF8() is now of
6361type ``const char *`` rather of ``char *``.
6362
6363..
6364
6365.. bpo: 29058
6366.. date: 0067
6367.. nonce: 0wNVP8
6368.. section: C API
6369
6370All stable API extensions added after Python 3.2 are now available only when
6371Py_LIMITED_API is set to the PY_VERSION_HEX value of the minimum Python
6372version supporting this API.
6373
6374..
6375
6376.. bpo: 28822
6377.. date: 0066
6378.. nonce: gMqwvb
6379.. section: C API
6380
6381The index parameters *start* and *end* of PyUnicode_FindChar() are now
6382adjusted to behave like ``str[start:end]``.
6383
6384..
6385
6386.. bpo: 28808
6387.. date: 0065
6388.. nonce: A03X6r
6389.. section: C API
6390
6391PyUnicode_CompareWithASCIIString() now never raises exceptions.
6392
6393..
6394
6395.. bpo: 28761
6396.. date: 0064
6397.. nonce: iOgCoX
6398.. section: C API
6399
6400The fields name and doc of structures PyMemberDef, PyGetSetDef,
6401PyStructSequence_Field, PyStructSequence_Desc, and wrapperbase are now of
6402type ``const char *`` rather of ``char *``.
6403
6404..
6405
6406.. bpo: 28748
6407.. date: 0063
6408.. nonce: AMgb_G
6409.. section: C API
6410
6411Private variable _Py_PackageContext is now of type ``const char *`` rather
6412of ``char *``.
6413
6414..
6415
6416.. bpo: 19569
6417.. date: 0062
6418.. nonce: IPke0J
6419.. section: C API
6420
6421Compiler warnings are now emitted if use most of deprecated functions.
6422
6423..
6424
6425.. bpo: 28426
6426.. date: 0061
6427.. nonce: zPwvbI
6428.. section: C API
6429
6430Deprecated undocumented functions PyUnicode_AsEncodedObject(),
6431PyUnicode_AsDecodedObject(), PyUnicode_AsDecodedUnicode() and
6432PyUnicode_AsEncodedUnicode().
6433