• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. bpo: 35746
2.. date: 2019-01-15-18-16-05
3.. nonce: nMSd0j
4.. release date: 2019-02-03
5.. section: Security
6
7[CVE-2019-5010] Fix a NULL pointer deref in ssl module. The cert parser did
8not handle CRL distribution points with empty DP or URI correctly. A
9malicious or buggy certificate can result into segfault. Vulnerability
10(TALOS-2018-0758) reported by Colin Read and Nicolas Edet of Cisco.
11
12..
13
14.. bpo: 34812
15.. date: 2018-11-23-15-00-23
16.. nonce: 84VQnb
17.. section: Security
18
19The :option:`-I` command line option (run Python in isolated mode) is now
20also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when
21spawning child processes. Previously, only :option:`-E` and :option:`-s`
22options (enabled by :option:`-I`) were copied.
23
24..
25
26.. bpo: 34791
27.. date: 2018-09-24-18-49-25
28.. nonce: 78GmIG
29.. section: Security
30
31The xml.sax and xml.dom.domreg no longer use environment variables to
32override parser implementations when sys.flags.ignore_environment is set by
33-E or -I arguments.
34
35..
36
37.. bpo: 17239
38.. date: 2018-09-11-18-30-55
39.. nonce: kOpwK2
40.. section: Security
41
42The xml.sax and xml.dom.minidom parsers no longer processes external
43entities by default. External DTD and ENTITY declarations no longer load
44files or create network connections.
45
46..
47
48.. bpo: 34623
49.. date: 2018-09-10-16-05-39
50.. nonce: Ua9jMv
51.. section: Security
52
53CVE-2018-14647: The C accelerated _elementtree module now initializes hash
54randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG.
55
56..
57
58.. bpo: 34405
59.. date: 2018-08-15-12-12-47
60.. nonce: qbHTH_
61.. section: Security
62
63Updated to OpenSSL 1.1.0i for Windows builds.
64
65..
66
67.. bpo: 33871
68.. date: 2018-06-26-19-35-33
69.. nonce: S4HR9n
70.. section: Security
71
72Fixed sending the part of the file in :func:`os.sendfile` on macOS.  Using
73the *trailers* argument could cause sending more bytes from the input file
74than was specified.
75
76..
77
78.. bpo: 32533
79.. date: 2018-05-28-08-55-30
80.. nonce: IzwkBI
81.. section: Security
82
83Fixed thread-safety of error handling in _ssl.
84
85..
86
87.. bpo: 33136
88.. date: 2018-03-25-12-05-43
89.. nonce: TzSN4x
90.. section: Security
91
92Harden ssl module against LibreSSL CVE-2018-8970.
93X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test
94ensures that NULL bytes are not allowed.
95
96..
97
98.. bpo: 33001
99.. date: 2018-03-05-10-09-51
100.. nonce: elj4Aa
101.. section: Security
102
103Minimal fix to prevent buffer overrun in os.symlink on Windows
104
105..
106
107.. bpo: 32981
108.. date: 2018-03-02-10-24-52
109.. nonce: O_qDyj
110.. section: Security
111
112Regexes in difflib and poplib were vulnerable to catastrophic backtracking.
113These regexes formed potential DOS vectors (REDOS). They have been
114refactored. This resolves CVE-2018-1060 and CVE-2018-1061. Patch by Jamie
115Davis.
116
117..
118
119.. bpo: 28414
120.. date: 2017-08-06-14-43-45
121.. nonce: mzZ6vD
122.. section: Security
123
124The ssl module now allows users to perform their own IDN en/decoding when
125using SNI.
126
127..
128
129.. bpo: 35877
130.. date: 2019-02-01-22-38-11
131.. nonce: Jrse8f
132.. section: Core and Builtins
133
134Make parenthesis optional for named expressions in while statement. Patch by
135Karthikeyan Singaravelan.
136
137..
138
139.. bpo: 35814
140.. date: 2019-01-24-13-25-21
141.. nonce: r_MjA6
142.. section: Core and Builtins
143
144Allow same right hand side expressions in annotated assignments as in normal
145ones. In particular, ``x: Tuple[int, int] = 1, 2`` (without parentheses on
146the right) is now allowed.
147
148..
149
150.. bpo: 35766
151.. date: 2019-01-22-19-17-27
152.. nonce: gh1tHZ
153.. section: Core and Builtins
154
155Add the option to parse PEP 484 type comments in the ast module. (Off by
156default.) This is merging the key functionality of the third party fork
157thereof, [typed_ast](https://github.com/python/typed_ast).
158
159..
160
161.. bpo: 35713
162.. date: 2019-01-22-18-50-21
163.. nonce: bTeUsa
164.. section: Core and Builtins
165
166Reorganize Python initialization to get working exceptions and sys.stderr
167earlier.
168
169..
170
171.. bpo: 33416
172.. date: 2019-01-19-19-41-53
173.. nonce: VDeOU5
174.. section: Core and Builtins
175
176Add end line and end column position information to the Python AST nodes.
177This is a C-level backwards incompatible change.
178
179..
180
181.. bpo: 35720
182.. date: 2019-01-12-23-33-04
183.. nonce: LELKQx
184.. section: Core and Builtins
185
186Fixed a minor memory leak in pymain_parse_cmdline_impl function in
187Modules/main.c
188
189..
190
191.. bpo: 35634
192.. date: 2019-01-05-18-39-49
193.. nonce: nVP_gs
194.. section: Core and Builtins
195
196``func(**kwargs)`` will now raise an error when ``kwargs`` is a mapping
197containing multiple entries with the same key. An error was already raised
198when other keyword arguments are passed before ``**kwargs`` since Python
1993.6.
200
201..
202
203.. bpo: 35623
204.. date: 2018-12-31-02-37-20
205.. nonce: 24AQhY
206.. section: Core and Builtins
207
208Fix a crash when sorting very long lists. Patch by Stephan Hohe.
209
210..
211
212.. bpo: 35214
213.. date: 2018-12-30-15-36-23
214.. nonce: GWDQcv
215.. section: Core and Builtins
216
217clang Memory Sanitizer build instrumentation was added to work around false
218positives from posix, socket, time, test_io, and test_faulthandler.
219
220..
221
222.. bpo: 35560
223.. date: 2018-12-22-22-19-51
224.. nonce: 9vMWSP
225.. section: Core and Builtins
226
227Fix an assertion error in :func:`format` in debug build for floating point
228formatting with "n" format, zero padding and small width. Release build is
229not impacted. Patch by Karthikeyan Singaravelan.
230
231..
232
233.. bpo: 35552
234.. date: 2018-12-21-13-29-30
235.. nonce: 1DzQQc
236.. section: Core and Builtins
237
238Format characters ``%s`` and ``%V`` in :c:func:`PyUnicode_FromFormat` and
239``%s`` in :c:func:`PyBytes_FromFormat` no longer read memory past the limit
240if *precision* is specified.
241
242..
243
244.. bpo: 35504
245.. date: 2018-12-15-14-01-45
246.. nonce: JtKczP
247.. section: Core and Builtins
248
249Fix segfaults and :exc:`SystemError`\ s when deleting certain attributes.
250Patch by Zackery Spytz.
251
252..
253
254.. bpo: 35504
255.. date: 2018-12-15-00-47-41
256.. nonce: 9gVuen
257.. section: Core and Builtins
258
259Fixed a SystemError when delete the characters_written attribute of an
260OSError.
261
262..
263
264.. bpo: 35494
265.. date: 2018-12-14-18-02-34
266.. nonce: IWOPtb
267.. section: Core and Builtins
268
269Improved syntax error messages for unbalanced parentheses in f-string.
270
271..
272
273.. bpo: 35444
274.. date: 2018-12-09-13-09-39
275.. nonce: 9kYn4V
276.. section: Core and Builtins
277
278Fixed error handling in pickling methods when fail to look up builtin
279"getattr". Sped up pickling iterators.
280
281..
282
283.. bpo: 35436
284.. date: 2018-12-07-02-38-01
285.. nonce: 0VW7p9
286.. section: Core and Builtins
287
288Fix various issues with memory allocation error handling.  Patch by Zackery
289Spytz.
290
291..
292
293.. bpo: 35423
294.. date: 2018-12-05-16-24-05
295.. nonce: UIie_O
296.. section: Core and Builtins
297
298Separate the signal handling trigger in the eval loop from the "pending
299calls" machinery. There is no semantic change and the difference in
300performance is insignificant.
301
302..
303
304.. bpo: 35357
305.. date: 2018-12-03-21-20-24
306.. nonce: rhhoiC
307.. section: Core and Builtins
308
309Internal attributes' names of unittest.mock._Call and
310unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with
311_mock_ in order to prevent clashes with widely used object attributes. Fixed
312minor typo in test function name.
313
314..
315
316.. bpo: 35372
317.. date: 2018-12-01-19-20-53
318.. nonce: RwVJjZ
319.. section: Core and Builtins
320
321Fixed the code page decoder for input longer than 2 GiB containing
322undecodable bytes.
323
324..
325
326.. bpo: 35336
327.. date: 2018-11-29-23-59-52
328.. nonce: 8LOz4F
329.. section: Core and Builtins
330
331Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale if
332the LC_CTYPE locale is "C".
333
334..
335
336.. bpo: 31241
337.. date: 2018-11-21-14-05-51
338.. nonce: Kin10-
339.. section: Core and Builtins
340
341The *lineno* and *col_offset* attributes of AST nodes for list
342comprehensions, generator expressions and tuples are now point to the
343opening parenthesis or square brace. For tuples without parenthesis they
344point to the position of the first item.
345
346..
347
348.. bpo: 33954
349.. date: 2018-11-20-22-33-38
350.. nonce: RzSngM
351.. section: Core and Builtins
352
353For :meth:`str.format`, :meth:`float.__format__` and
354:meth:`complex.__format__` methods for non-ASCII decimal point when using
355the "n" formatter.
356
357..
358
359.. bpo: 35269
360.. date: 2018-11-17-10-18-29
361.. nonce: gjm1LO
362.. section: Core and Builtins
363
364Fix a possible segfault involving a newly-created coroutine.  Patch by
365Zackery Spytz.
366
367..
368
369.. bpo: 35224
370.. date: 2018-11-13-14-26-54
371.. nonce: F0B6UQ
372.. section: Core and Builtins
373
374Implement :pep:`572` (assignment expressions). Patch by Emily Morehouse.
375
376..
377
378.. bpo: 32492
379.. date: 2018-11-13-01-03-10
380.. nonce: voIdcp
381.. section: Core and Builtins
382
383Speed up :class:`namedtuple` attribute access by 1.6x using a C fast-path
384for the name descriptors. Patch by Pablo Galindo.
385
386..
387
388.. bpo: 35214
389.. date: 2018-11-13-00-40-35
390.. nonce: OQBjph
391.. section: Core and Builtins
392
393Fixed an out of bounds memory access when parsing a truncated unicode escape
394sequence at the end of a string such as ``'\N'``.  It would read one byte
395beyond the end of the memory allocation.
396
397..
398
399.. bpo: 35214
400.. date: 2018-11-12-11-38-06
401.. nonce: PCHKbX
402.. section: Core and Builtins
403
404The interpreter and extension modules have had annotations added so that
405they work properly under clang's Memory Sanitizer.  A new configure flag
406--with-memory-sanitizer has been added to make test builds of this nature
407easier to perform.
408
409..
410
411.. bpo: 35193
412.. date: 2018-11-08-15-00-58
413.. nonce: HzPS6R
414.. section: Core and Builtins
415
416Fix an off by one error in the bytecode peephole optimizer where it could
417read bytes beyond the end of bounds of an array when removing unreachable
418code. This bug was present in every release of Python 3.6 and 3.7 until now.
419
420..
421
422.. bpo: 35169
423.. date: 2018-11-05-21-19-05
424.. nonce: _FyPI2
425.. section: Core and Builtins
426
427Improved error messages for forbidden assignments.
428
429..
430
431.. bpo: 34022
432.. date: 2018-11-04-18-13-40
433.. nonce: U3btVj
434.. section: Core and Builtins
435
436Fix handling of hash-based bytecode files in :mod:`zipimport`. Patch by
437Elvis Pranskevichus.
438
439..
440
441.. bpo: 28401
442.. date: 2018-11-03-10-37-29
443.. nonce: RprDIg
444.. section: Core and Builtins
445
446Debug builds will no longer to attempt to import extension modules built for
447the ABI as they were never compatible to begin with. Patch by Stefano
448Rivera.
449
450..
451
452.. bpo: 29341
453.. date: 2018-10-25-20-53-32
454.. nonce: jH-AMF
455.. section: Core and Builtins
456
457Clarify in the docstrings of :mod:`os` methods that path-like objects are
458also accepted as input parameters.
459
460..
461
462.. bpo: 35050
463.. date: 2018-10-23-15-03-53
464.. nonce: 49wraS
465.. section: Core and Builtins
466
467:mod:`socket`: Fix off-by-one bug in length check for ``AF_ALG`` name and
468type.
469
470..
471
472.. bpo: 29743
473.. date: 2018-10-21-17-43-48
474.. nonce: aeCcKR
475.. section: Core and Builtins
476
477Raise :exc:`ValueError` instead of :exc:`OverflowError` in case of a
478negative ``_length_`` in a :class:`ctypes.Array` subclass.  Also raise
479:exc:`TypeError` instead of :exc:`AttributeError` for non-integer
480``_length_``. Original patch by Oren Milman.
481
482..
483
484.. bpo: 16806
485.. date: 2018-10-20-18-05-58
486.. nonce: zr3A9N
487.. section: Core and Builtins
488
489Fix ``lineno`` and ``col_offset`` for multi-line string tokens.
490
491..
492
493.. bpo: 35029
494.. date: 2018-10-20-10-26-15
495.. nonce: t4tZcQ
496.. section: Core and Builtins
497
498:exc:`SyntaxWarning` raised as an exception at code generation time will be
499now replaced with a :exc:`SyntaxError` for better error reporting.
500
501..
502
503.. bpo: 34983
504.. date: 2018-10-14-17-26-41
505.. nonce: l8XaZd
506.. section: Core and Builtins
507
508Expose :meth:`symtable.Symbol.is_nonlocal` in the symtable module. Patch by
509Pablo Galindo.
510
511..
512
513.. bpo: 34974
514.. date: 2018-10-13-22-24-19
515.. nonce: 7LgTc2
516.. section: Core and Builtins
517
518:class:`bytes` and :class:`bytearray` constructors no longer convert
519unexpected exceptions (e.g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`)
520to :exc:`TypeError`.
521
522..
523
524.. bpo: 34939
525.. date: 2018-10-13-17-40-15
526.. nonce: 0gpxlJ
527.. section: Core and Builtins
528
529Allow annotated names in module namespace that are declared global before
530the annotation happens. Patch by Pablo Galindo.
531
532..
533
534.. bpo: 34973
535.. date: 2018-10-13-16-42-03
536.. nonce: B5M-3g
537.. section: Core and Builtins
538
539Fixed crash in :func:`bytes` when the :class:`list` argument is mutated
540while it is iterated.
541
542..
543
544.. bpo: 34876
545.. date: 2018-10-06-14-02-51
546.. nonce: oBKBA4
547.. section: Core and Builtins
548
549The *lineno* and *col_offset* attributes of the AST for decorated function
550and class refer now to the position of the corresponding ``def``, ``async
551def`` and ``class`` instead of the position of the first decorator. This
552leads to more correct line reporting in tracing. This is the only case when
553the position of child AST nodes can precede the position of the parent AST
554node.
555
556..
557
558.. bpo: 34879
559.. date: 2018-10-02-22-55-11
560.. nonce: 7VNH2a
561.. section: Core and Builtins
562
563Fix a possible null pointer dereference in bytesobject.c.  Patch by Zackery
564Spytz.
565
566..
567
568.. bpo: 34784
569.. date: 2018-10-02-09-10-47
570.. nonce: 07hdgD
571.. section: Core and Builtins
572
573Fix the implementation of PyStructSequence_NewType in order to create heap
574allocated StructSequences.
575
576..
577
578.. bpo: 32912
579.. date: 2018-10-01-10-41-53
580.. nonce: JeIOdM
581.. section: Core and Builtins
582
583A :exc:`SyntaxWarning` is now emitted instead of a :exc:`DeprecationWarning`
584for invalid escape sequences in string and bytes literals.
585
586..
587
588.. bpo: 34854
589.. date: 2018-09-30-19-27-13
590.. nonce: 6TKTcB
591.. section: Core and Builtins
592
593Fixed a crash in compiling string annotations containing a lambda with a
594keyword-only argument that doesn't have a default value.
595
596..
597
598.. bpo: 34850
599.. date: 2018-09-30-11-19-55
600.. nonce: CbgDwb
601.. section: Core and Builtins
602
603The compiler now produces a :exc:`SyntaxWarning` when identity checks
604(``is`` and ``is not``) are used with certain types of literals (e.g.
605strings, ints).  These can often work by accident in CPython, but are not
606guaranteed by the language spec.  The warning advises users to use equality
607tests (``==`` and ``!=``) instead.
608
609..
610
611.. bpo: 34824
612.. date: 2018-09-27-11-10-02
613.. nonce: VLlCaU
614.. section: Core and Builtins
615
616Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery
617Spytz.
618
619..
620
621.. bpo: 30156
622.. date: 2018-09-24-17-51-15
623.. nonce: pH0j5j
624.. section: Core and Builtins
625
626The C function ``property_descr_get()`` uses a "cached" tuple to optimize
627function calls. But this tuple can be discovered in debug mode with
628:func:`sys.getobjects()`. Remove the optimization, it's not really worth it
629and it causes 3 different crashes last years.
630
631..
632
633.. bpo: 34762
634.. date: 2018-09-21-11-06-56
635.. nonce: 1nN53m
636.. section: Core and Builtins
637
638Fix contextvars C API to use PyObject* pointer types.
639
640..
641
642.. bpo: 34751
643.. date: 2018-09-20-15-41-58
644.. nonce: Yiv0pV
645.. section: Core and Builtins
646
647The hash function for tuples is now based on xxHash which gives better
648collision results on (formerly) pathological cases. Additionally, on 64-bit
649systems it improves tuple hashes in general. Patch by Jeroen Demeyer with
650substantial contributions by Tim Peters.
651
652..
653
654.. bpo: 34735
655.. date: 2018-09-19-06-57-34
656.. nonce: -3mrSJ
657.. section: Core and Builtins
658
659Fix a memory leak in Modules/timemodule.c.  Patch by Zackery Spytz.
660
661..
662
663.. bpo: 34683
664.. date: 2018-09-15-19-32-34
665.. nonce: msCiQE
666.. section: Core and Builtins
667
668Fixed a bug where some SyntaxError error pointed to locations that were
669off-by-one.
670
671..
672
673.. bpo: 34651
674.. date: 2018-09-13-12-21-08
675.. nonce: v-bUeV
676.. section: Core and Builtins
677
678Only allow the main interpreter to fork.  The avoids the possibility of
679affecting the main interpreter, which is critical to operation of the
680runtime.
681
682..
683
684.. bpo: 34653
685.. date: 2018-09-13-12-06-09
686.. nonce: z8NE-i
687.. section: Core and Builtins
688
689Remove unused function PyParser_SimpleParseStringFilename.
690
691..
692
693.. bpo: 32236
694.. date: 2018-09-11-23-50-40
695.. nonce: 3RupnN
696.. section: Core and Builtins
697
698Warn that line buffering is not supported if :func:`open` is called with
699binary mode and ``buffering=1``.
700
701..
702
703.. bpo: 34641
704.. date: 2018-09-11-23-12-33
705.. nonce: gFBCc9
706.. section: Core and Builtins
707
708Further restrict the syntax of the left-hand side of keyword arguments in
709function calls. In particular, ``f((keyword)=arg)`` is now disallowed.
710
711..
712
713.. bpo: 34637
714.. date: 2018-09-11-17-25-44
715.. nonce: HSLqY4
716.. section: Core and Builtins
717
718Make the *start* argument to *sum()* visible as a keyword argument.
719
720..
721
722.. bpo: 1621
723.. date: 2018-09-11-15-19-37
724.. nonce: 7o19yG
725.. section: Core and Builtins
726
727Do not assume signed integer overflow behavior (C undefined behavior) when
728performing set hash table resizing.
729
730..
731
732.. bpo: 34588
733.. date: 2018-09-05-22-56-52
734.. nonce: UIuPmL
735.. section: Core and Builtins
736
737Fix an off-by-one in the recursive call pruning feature of traceback
738formatting.
739
740..
741
742.. bpo: 34485
743.. date: 2018-08-29-11-04-19
744.. nonce: c2AFdp
745.. section: Core and Builtins
746
747On Windows, the LC_CTYPE is now set to the user preferred locale at startup.
748Previously, the LC_CTYPE locale was "C" at startup, but changed when calling
749setlocale(LC_CTYPE, "") or setlocale(LC_ALL, "").
750
751..
752
753.. bpo: 34485
754.. date: 2018-08-29-09-27-47
755.. nonce: 5aJCmw
756.. section: Core and Builtins
757
758Standard streams like sys.stdout now use the "surrogateescape" error
759handler, instead of "strict", on the POSIX locale (when the C locale is not
760coerced and the UTF-8 Mode is disabled).
761
762..
763
764.. bpo: 34485
765.. date: 2018-08-28-23-01-14
766.. nonce: dq1Kqk
767.. section: Core and Builtins
768
769Fix the error handler of standard streams like sys.stdout:
770PYTHONIOENCODING=":" is now ignored instead of setting the error handler to
771"strict".
772
773..
774
775.. bpo: 34485
776.. date: 2018-08-28-17-48-40
777.. nonce: aFwck2
778.. section: Core and Builtins
779
780Python now gets the locale encoding with C code to initialize the encoding
781of standard streams like sys.stdout. Moreover, the encoding is now
782initialized to the Python codec name to get a normalized encoding name and
783to ensure that the codec is loaded. The change avoids importing _bootlocale
784and _locale modules at startup by default.
785
786..
787
788.. bpo: 34527
789.. date: 2018-08-28-11-53-39
790.. nonce: aBEX9b
791.. section: Core and Builtins
792
793On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the
794ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE
795locale is "C".
796
797..
798
799.. bpo: 34527
800.. date: 2018-08-28-11-52-13
801.. nonce: sh5MQJ
802.. section: Core and Builtins
803
804The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the
805"C" locale.
806
807..
808
809.. bpo: 34403
810.. date: 2018-08-28-10-49-55
811.. nonce: 4Q3LzP
812.. section: Core and Builtins
813
814On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns
815"ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C
816locale is not coerced).
817
818..
819
820.. bpo: 34523
821.. date: 2018-08-28-01-45-01
822.. nonce: aUUkc3
823.. section: Core and Builtins
824
825The Python filesystem encoding is now read earlier during the Python
826initialization.
827
828..
829
830.. bpo: 12458
831.. date: 2018-08-15-20-46-49
832.. nonce: ApHbx5
833.. section: Core and Builtins
834
835Tracebacks show now correct line number for subexpressions in multiline
836expressions. Tracebacks show now the line number of the first line for
837multiline expressions instead of the line number of the last subexpression.
838
839..
840
841.. bpo: 34408
842.. date: 2018-08-14-22-35-19
843.. nonce: aomWYW
844.. section: Core and Builtins
845
846Prevent a null pointer dereference and resource leakage in
847``PyInterpreterState_New()``.
848
849..
850
851.. bpo: 34400
852.. date: 2018-08-14-03-52-43
853.. nonce: AJD0bz
854.. section: Core and Builtins
855
856Fix undefined behavior in parsetok.c.  Patch by Zackery Spytz.
857
858..
859
860.. bpo: 33073
861.. date: 2018-08-12-16-03-58
862.. nonce: XWu1Jh
863.. section: Core and Builtins
864
865Added as_integer_ratio to ints to make them more interoperable with floats.
866
867..
868
869.. bpo: 34377
870.. date: 2018-08-10-15-05-00
871.. nonce: EJMMY4
872.. section: Core and Builtins
873
874Update valgrind suppression list to use
875``_PyObject_Free``/``_PyObject_Realloc`` instead of
876``PyObject_Free``/``PyObject_Realloc``.
877
878..
879
880.. bpo: 34353
881.. date: 2018-08-09-18-42-49
882.. nonce: GIOm_8
883.. section: Core and Builtins
884
885Added the "socket" option in the `stat.filemode()` Python implementation to
886match the C implementation.
887
888..
889
890.. bpo: 34320
891.. date: 2018-08-02-22-34-59
892.. nonce: hNshAA
893.. section: Core and Builtins
894
895Fix ``dict(od)`` didn't copy iteration order of OrderedDict.
896
897..
898
899.. bpo: 34113
900.. date: 2018-07-28-10-34-00
901.. nonce: eZ5FWV
902.. section: Core and Builtins
903
904Fixed crash on debug builds when opcode stack was adjusted with negative
905numbers. Patch by Constantin Petrisor.
906
907..
908
909.. bpo: 34100
910.. date: 2018-07-27-20-04-52
911.. nonce: ypJQX1
912.. section: Core and Builtins
913
914Compiler now merges constants in tuples and frozensets recursively. Code
915attributes like ``co_names`` are merged too.
916
917..
918
919.. bpo: 34151
920.. date: 2018-07-25-20-26-02
921.. nonce: Q2pK9Q
922.. section: Core and Builtins
923
924Performance of list concatenation, repetition and slicing operations is
925slightly improved. Patch by Sergey Fedoseev.
926
927..
928
929.. bpo: 34170
930.. date: 2018-07-25-19-23-33
931.. nonce: v1h_H2
932.. section: Core and Builtins
933
934-X dev: it is now possible to override the memory allocator using
935PYTHONMALLOC even if the developer mode is enabled.
936
937..
938
939.. bpo: 33237
940.. date: 2018-07-24-12-54-57
941.. nonce: O95mps
942.. section: Core and Builtins
943
944Improved :exc:`AttributeError` message for partially initialized module.
945
946..
947
948.. bpo: 34149
949.. date: 2018-07-23-21-49-05
950.. nonce: WSV-_g
951.. section: Core and Builtins
952
953Fix min and max functions to get default behavior when key is None.
954
955..
956
957.. bpo: 34125
958.. date: 2018-07-23-16-34-03
959.. nonce: jCl2Q2
960.. section: Core and Builtins
961
962Profiling of unbound built-in methods now works when ``**kwargs`` is given.
963
964..
965
966.. bpo: 34141
967.. date: 2018-07-18-08-36-58
968.. nonce: Fo7Q5r
969.. section: Core and Builtins
970
971Optimized pickling atomic types (None, bool, int, float, bytes, str).
972
973..
974
975.. bpo: 34126
976.. date: 2018-07-16-20-55-29
977.. nonce: mBVmgc
978.. section: Core and Builtins
979
980Fix crashes when profiling certain invalid calls of unbound methods. Patch
981by Jeroen Demeyer.
982
983..
984
985.. bpo: 24618
986.. date: 2018-07-14-14-01-37
987.. nonce: iTKjD_
988.. section: Core and Builtins
989
990Fixed reading invalid memory when create the code object with too small
991varnames tuple or too large argument counts.
992
993..
994
995.. bpo: 34068
996.. date: 2018-07-14-08-58-46
997.. nonce: 9xfM55
998.. section: Core and Builtins
999
1000In :meth:`io.IOBase.close`, ensure that the :attr:`~io.IOBase.closed`
1001attribute is not set with a live exception.  Patch by Zackery Spytz and
1002Serhiy Storchaka.
1003
1004..
1005
1006.. bpo: 34087
1007.. date: 2018-07-13-22-09-55
1008.. nonce: I1Bxfc
1009.. section: Core and Builtins
1010
1011Fix buffer overflow while converting unicode to numeric values.
1012
1013..
1014
1015.. bpo: 34080
1016.. date: 2018-07-10-11-24-16
1017.. nonce: 8t7PtO
1018.. section: Core and Builtins
1019
1020Fixed a memory leak in the compiler when it raised some uncommon errors
1021during tokenizing.
1022
1023..
1024
1025.. bpo: 34066
1026.. date: 2018-07-07-20-15-34
1027.. nonce: y9vs6s
1028.. section: Core and Builtins
1029
1030Disabled interruption by Ctrl-C between calling ``open()`` and entering a
1031**with** block in ``with open()``.
1032
1033..
1034
1035.. bpo: 34042
1036.. date: 2018-07-05-15-51-29
1037.. nonce: Gr9XUH
1038.. section: Core and Builtins
1039
1040Fix dict.copy() to maintain correct total refcount (as reported by
1041sys.gettotalrefcount()).
1042
1043..
1044
1045.. bpo: 33418
1046.. date: 2018-07-03-19-00-10
1047.. nonce: cfGm3n
1048.. section: Core and Builtins
1049
1050Fix potential memory leak in function object when it creates reference
1051cycle.
1052
1053..
1054
1055.. bpo: 33985
1056.. date: 2018-06-27-18-56-41
1057.. nonce: ILJ3Af
1058.. section: Core and Builtins
1059
1060Implement contextvars.ContextVar.name attribute.
1061
1062..
1063
1064.. bpo: 33956
1065.. date: 2018-06-25-20-42-44
1066.. nonce: 1qoTwD
1067.. section: Core and Builtins
1068
1069Update vendored Expat library copy to version 2.2.5.
1070
1071..
1072
1073.. bpo: 24596
1074.. date: 2018-06-25-16-54-05
1075.. nonce: Rkwova
1076.. section: Core and Builtins
1077
1078Decref the module object in :c:func:`PyRun_SimpleFileExFlags` before calling
1079:c:func:`PyErr_Print()`.  Patch by Zackery Spytz.
1080
1081..
1082
1083.. bpo: 33451
1084.. date: 2018-06-23-15-32-02
1085.. nonce: sWN-1l
1086.. section: Core and Builtins
1087
1088Close directly executed pyc files before calling ``PyEval_EvalCode()``.
1089
1090..
1091
1092.. bpo: 1617161
1093.. date: 2018-06-21-21-42-15
1094.. nonce: tSo2yM
1095.. section: Core and Builtins
1096
1097The hash of :class:`BuiltinMethodType` instances (methods of built-in
1098classes) now depends on the hash of the identity of *__self__* instead of
1099its value. The hash and equality of :class:`ModuleType` and
1100:class:`MethodWrapperType` instances (methods of user-defined classes and
1101some methods of built-in classes like ``str.__add__``) now depend on the
1102hash and equality of the identity of *__self__* instead of its value.
1103:class:`MethodWrapperType` instances no longer support ordering.
1104
1105..
1106
1107.. bpo: 33824
1108.. date: 2018-06-15-19-39-06
1109.. nonce: DfWHT3
1110.. section: Core and Builtins
1111
1112Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the
1113encoding changes after reading the Python configuration.
1114
1115..
1116
1117.. bpo: 33803
1118.. date: 2018-06-07-20-18-38
1119.. nonce: n-Nq6_
1120.. section: Core and Builtins
1121
1122Fix a crash in hamt.c caused by enabling GC tracking for an object that
1123hadn't all of its fields set to NULL.
1124
1125..
1126
1127.. bpo: 33738
1128.. date: 2018-06-07-18-34-19
1129.. nonce: ODZS7a
1130.. section: Core and Builtins
1131
1132Seven macro incompatibilities with the Limited API were fixed, and the
1133macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and
1134:c:func:`PyExceptionClass_Name` were added as functions. A script for
1135automatic macro checks was added.
1136
1137..
1138
1139.. bpo: 33786
1140.. date: 2018-06-06-23-24-40
1141.. nonce: lBvT8z
1142.. section: Core and Builtins
1143
1144Fix asynchronous generators to handle GeneratorExit in athrow() correctly
1145
1146..
1147
1148.. bpo: 30167
1149.. date: 2018-06-05-15-49-02
1150.. nonce: e956hA
1151.. section: Core and Builtins
1152
1153``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition
1154to ``__file__``.
1155
1156..
1157
1158.. bpo: 33706
1159.. date: 2018-05-31-14-50-04
1160.. nonce: ztlH04
1161.. section: Core and Builtins
1162
1163Fix a crash in Python initialization when parsing the command line options.
1164Thanks Christoph Gohlke for the bug report and the fix!
1165
1166..
1167
1168.. bpo: 33597
1169.. date: 2018-05-28-21-17-31
1170.. nonce: r0ToM4
1171.. section: Core and Builtins
1172
1173Reduce ``PyGC_Head`` size from 3 words to 2 words.
1174
1175..
1176
1177.. bpo: 30654
1178.. date: 2018-05-28-12-28-53
1179.. nonce: 9fDJye
1180.. section: Core and Builtins
1181
1182Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even
1183when there was a custom handler set previously. Patch by Philipp Kerling.
1184
1185..
1186
1187.. bpo: 33622
1188.. date: 2018-05-23-20-46-14
1189.. nonce: xPucO9
1190.. section: Core and Builtins
1191
1192Fixed a leak when the garbage collector fails to add an object with the
1193``__del__`` method or referenced by it into the :data:`gc.garbage` list.
1194:c:func:`PyGC_Collect` can now be called when an exception is set and
1195preserves it.
1196
1197..
1198
1199.. bpo: 33462
1200.. date: 2018-05-23-17-18-02
1201.. nonce: gurbpbrhe
1202.. section: Core and Builtins
1203
1204Make dict and dict views reversible. Patch by Rémi Lapeyre.
1205
1206..
1207
1208.. bpo: 23722
1209.. date: 2018-05-17-13-06-36
1210.. nonce: xisqZk
1211.. section: Core and Builtins
1212
1213A :exc:`RuntimeError` is now raised when the custom metaclass doesn't
1214provide the ``__classcell__`` entry in the namespace passed to
1215``type.__new__``.  A :exc:`DeprecationWarning` was emitted in Python
12163.6--3.7.
1217
1218..
1219
1220.. bpo: 33499
1221.. date: 2018-05-15-10-48-47
1222.. nonce: uBEc06
1223.. section: Core and Builtins
1224
1225Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :option:`-X`
1226``pycache_prefix`` command-line option to set an alternate root directory
1227for writing module bytecode cache files.
1228
1229..
1230
1231.. bpo: 25711
1232.. date: 2018-05-14-18-54-03
1233.. nonce: 9xfq-v
1234.. section: Core and Builtins
1235
1236The :mod:`zipimport` module has been rewritten in pure Python.
1237
1238..
1239
1240.. bpo: 33509
1241.. date: 2018-05-14-17-31-02
1242.. nonce: pIUfTd
1243.. section: Core and Builtins
1244
1245Fix module_globals parameter of warnings.warn_explicit(): don't crash if
1246module_globals is not a dict.
1247
1248..
1249
1250.. bpo: 31849
1251.. date: 2018-05-14-11-00-00
1252.. nonce: EmHaH4
1253.. section: Core and Builtins
1254
1255Fix signed/unsigned comparison warning in pyhash.c.
1256
1257..
1258
1259.. bpo: 33475
1260.. date: 2018-05-13-01-26-18
1261.. nonce: rI0y1U
1262.. section: Core and Builtins
1263
1264Fixed miscellaneous bugs in converting annotations to strings and optimized
1265parentheses in the string representation.
1266
1267..
1268
1269.. bpo: 20104
1270.. date: 2018-05-05-23-26-58
1271.. nonce: tDBciE
1272.. section: Core and Builtins
1273
1274Added support for the `setpgroup`, `resetids`, `setsigmask`, `setsigdef` and
1275`scheduler` parameters of `posix_spawn`. Patch by Pablo Galindo.
1276
1277..
1278
1279.. bpo: 33391
1280.. date: 2018-05-02-08-36-03
1281.. nonce: z4a7rb
1282.. section: Core and Builtins
1283
1284Fix a leak in set_symmetric_difference().
1285
1286..
1287
1288.. bpo: 33363
1289.. date: 2018-04-26-22-48-28
1290.. nonce: 8RCnN2
1291.. section: Core and Builtins
1292
1293Raise a SyntaxError for ``async with`` and ``async for`` statements outside
1294of async functions.
1295
1296..
1297
1298.. bpo: 28055
1299.. date: 2018-04-25-20-44-42
1300.. nonce: f49kfC
1301.. section: Core and Builtins
1302
1303Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer.
1304
1305..
1306
1307.. bpo: 33128
1308.. date: 2018-04-24-22-31-04
1309.. nonce: g2yLuf
1310.. section: Core and Builtins
1311
1312Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by
1313Pablo Galindo Salgado.
1314
1315..
1316
1317.. bpo: 33331
1318.. date: 2018-04-22-13-41-59
1319.. nonce: s_DxdL
1320.. section: Core and Builtins
1321
1322Modules imported last are now cleared first at interpreter shutdown.
1323
1324..
1325
1326.. bpo: 33312
1327.. date: 2018-04-19-08-30-07
1328.. nonce: mDe2iL
1329.. section: Core and Builtins
1330
1331Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by
1332adjusting how the internal struct _dictkeysobject shared keys structure is
1333declared.
1334
1335..
1336
1337.. bpo: 33305
1338.. date: 2018-04-18-14-17-44
1339.. nonce: 9z3dDH
1340.. section: Core and Builtins
1341
1342Improved syntax error messages for invalid numerical literals.
1343
1344..
1345
1346.. bpo: 33306
1347.. date: 2018-04-18-12-23-30
1348.. nonce: tSM3cp
1349.. section: Core and Builtins
1350
1351Improved syntax error messages for unbalanced parentheses.
1352
1353..
1354
1355.. bpo: 33234
1356.. date: 2018-04-17-01-24-51
1357.. nonce: l9IDtp
1358.. section: Core and Builtins
1359
1360The list constructor will pre-size and not over-allocate when the input
1361length is known.
1362
1363..
1364
1365.. bpo: 33270
1366.. date: 2018-04-14-13-12-50
1367.. nonce: UmVV6i
1368.. section: Core and Builtins
1369
1370Intern the names for all anonymous code objects.  Patch by Zackery Spytz.
1371
1372..
1373
1374.. bpo: 30455
1375.. date: 2018-04-14-11-02-57
1376.. nonce: ANRwjo
1377.. section: Core and Builtins
1378
1379The C and Python code and the documentation related to tokens are now
1380generated from a single source file :file:`Grammar/Tokens`.
1381
1382..
1383
1384.. bpo: 33176
1385.. date: 2018-04-13-22-31-09
1386.. nonce: PB9com
1387.. section: Core and Builtins
1388
1389Add a ``toreadonly()`` method to memoryviews.
1390
1391..
1392
1393.. bpo: 33231
1394.. date: 2018-04-05-22-20-44
1395.. nonce: 3Jmo0q
1396.. section: Core and Builtins
1397
1398Fix potential memory leak in ``normalizestring()``.
1399
1400..
1401
1402.. bpo: 33205
1403.. date: 2018-04-03-00-58-41
1404.. nonce: lk2F3r
1405.. section: Core and Builtins
1406
1407Change dict growth function from
1408``round_up_to_power_2(used*2+hashtable_size/2)`` to
1409``round_up_to_power_2(used*3)``.  Previously, dict is shrinked only when
1410``used == 0``. Now dict has more chance to be shrinked.
1411
1412..
1413
1414.. bpo: 29922
1415.. date: 2018-04-03-00-30-25
1416.. nonce: CdLuMl
1417.. section: Core and Builtins
1418
1419Improved error messages in 'async with' when ``__aenter__()`` or
1420``__aexit__()`` return non-awaitable object.
1421
1422..
1423
1424.. bpo: 33199
1425.. date: 2018-04-02-09-32-40
1426.. nonce: TPnxQu
1427.. section: Core and Builtins
1428
1429Fix ``ma_version_tag`` in dict implementation is uninitialized when copying
1430from key-sharing dict.
1431
1432..
1433
1434.. bpo: 33053
1435.. date: 2018-03-25-19-49-06
1436.. nonce: V3xlsH
1437.. section: Core and Builtins
1438
1439When using the -m switch, sys.path[0] is now explicitly expanded as the
1440*starting* working directory, rather than being left as the empty path
1441(which allows imports from the current working directory at the time of the
1442import)
1443
1444..
1445
1446.. bpo: 33138
1447.. date: 2018-03-25-19-25-14
1448.. nonce: aSqudH
1449.. section: Core and Builtins
1450
1451Changed standard error message for non-pickleable and non-copyable types. It
1452now says "cannot pickle" instead of "can't pickle" or "cannot serialize".
1453
1454..
1455
1456.. bpo: 33018
1457.. date: 2018-03-22-23-09-06
1458.. nonce: 0ncEJV
1459.. section: Core and Builtins
1460
1461Improve consistency of errors raised by ``issubclass()`` when called with a
1462non-class and an abstract base class as the first and second arguments,
1463respectively. Patch by Josh Bronson.
1464
1465..
1466
1467.. bpo: 33083
1468.. date: 2018-03-19-00-59-20
1469.. nonce: Htztjl
1470.. section: Core and Builtins
1471
1472``math.factorial`` no longer accepts arguments that are not int-like. Patch
1473by Pablo Galindo.
1474
1475..
1476
1477.. bpo: 33041
1478.. date: 2018-03-18-13-56-14
1479.. nonce: XwPhI2
1480.. section: Core and Builtins
1481
1482Added new opcode :opcode:`END_ASYNC_FOR` and fixes the following issues:
1483
1484* Setting global :exc:`StopAsyncIteration` no longer breaks ``async for``
1485  loops.
1486* Jumping into an ``async for`` loop is now disabled.
1487* Jumping out of an ``async for`` loop no longer corrupts the stack.
1488
1489..
1490
1491.. bpo: 25750
1492.. date: 2018-03-14-21-42-17
1493.. nonce: lxgkQz
1494.. section: Core and Builtins
1495
1496Fix rare Python crash due to bad refcounting in ``type_getattro()`` if a
1497descriptor deletes itself from the class. Patch by Jeroen Demeyer.
1498
1499..
1500
1501.. bpo: 33041
1502.. date: 2018-03-10-15-16-40
1503.. nonce: -ak5Fk
1504.. section: Core and Builtins
1505
1506Fixed bytecode generation for "async for" with a complex target. A
1507StopAsyncIteration raised on assigning or unpacking will be now propagated
1508instead of stopping the iteration.
1509
1510..
1511
1512.. bpo: 33026
1513.. date: 2018-03-08-09-48-38
1514.. nonce: QZA3Ba
1515.. section: Core and Builtins
1516
1517Fixed jumping out of "with" block by setting f_lineno.
1518
1519..
1520
1521.. bpo: 33005
1522.. date: 2018-03-06-12-19-19
1523.. nonce: LP-V2U
1524.. section: Core and Builtins
1525
1526Fix a crash on fork when using a custom memory allocator (ex: using
1527PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable()
1528now use the default RAW memory allocator to allocate a new interpreters
1529mutex on fork.
1530
1531..
1532
1533.. bpo: 32911
1534.. date: 2018-02-27-20-57-00
1535.. nonce: cmKfco
1536.. section: Core and Builtins
1537
1538Due to unexpected compatibility issues discovered during downstream beta
1539testing, reverted :issue:`29463`. ``docstring`` field is removed from
1540Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was
1541added in 3.7a1.  Docstring expression is restored as a first statement in
1542their body. Based on patch by Inada Naoki.
1543
1544..
1545
1546.. bpo: 17288
1547.. date: 2018-02-27-13-36-21
1548.. nonce: Gdj24S
1549.. section: Core and Builtins
1550
1551Prevent jumps from 'return' and 'exception' trace events.
1552
1553..
1554
1555.. bpo: 32946
1556.. date: 2018-02-25-10-52-40
1557.. nonce: Lo09rG
1558.. section: Core and Builtins
1559
1560Importing names from already imported module with "from ... import ..." is
1561now 30% faster if the module is not a package.
1562
1563..
1564
1565.. bpo: 32932
1566.. date: 2018-02-24-21-51-42
1567.. nonce: 2cz31L
1568.. section: Core and Builtins
1569
1570Make error message more revealing when there are non-str objects in
1571``__all__``.
1572
1573..
1574
1575.. bpo: 32925
1576.. date: 2018-02-24-00-07-05
1577.. nonce: e-7Ufh
1578.. section: Core and Builtins
1579
1580Optimized iterating and containing test for literal lists consisting of
1581non-constants: ``x in [a, b]`` and ``for x in [a, b]``. The case of all
1582constant elements already was optimized.
1583
1584..
1585
1586.. bpo: 32889
1587.. date: 2018-02-20-21-53-48
1588.. nonce: J6eWy5
1589.. section: Core and Builtins
1590
1591Update Valgrind suppression list to account for the rename of
1592``Py_ADDRESS_IN_RANG`` to ``address_in_range``.
1593
1594..
1595
1596.. bpo: 32836
1597.. date: 2018-02-14-12-35-47
1598.. nonce: bThJnx
1599.. section: Core and Builtins
1600
1601Don't use temporary variables in cases of list/dict/set comprehensions
1602
1603..
1604
1605.. bpo: 31356
1606.. date: 2018-02-02-08-50-46
1607.. nonce: MNwUOQ
1608.. section: Core and Builtins
1609
1610Remove the new API added in bpo-31356 (gc.ensure_disabled() context
1611manager).
1612
1613..
1614
1615.. bpo: 32305
1616.. date: 2018-02-01-10-56-41
1617.. nonce: dkU9Qa
1618.. section: Core and Builtins
1619
1620For namespace packages, ensure that both ``__file__`` and
1621``__spec__.origin`` are set to None.
1622
1623..
1624
1625.. bpo: 32303
1626.. date: 2018-02-01-10-16-28
1627.. nonce: VsvhSl
1628.. section: Core and Builtins
1629
1630Make sure ``__spec__.loader`` matches ``__loader__`` for namespace packages.
1631
1632..
1633
1634.. bpo: 32711
1635.. date: 2018-01-29-14-36-37
1636.. nonce: 8hQFJP
1637.. section: Core and Builtins
1638
1639Fix the warning messages for Python/ast_unparse.c. Patch by Stéphane Wirtel
1640
1641..
1642
1643.. bpo: 32583
1644.. date: 2018-01-26-21-20-21
1645.. nonce: Fh3fau
1646.. section: Core and Builtins
1647
1648Fix possible crashing in builtin Unicode decoders caused by write
1649out-of-bound errors when using customized decode error handlers.
1650
1651..
1652
1653.. bpo: 32489
1654.. date: 2018-01-03-23-12-43
1655.. nonce: SDEPHB
1656.. section: Core and Builtins
1657
1658A :keyword:`continue` statement is now allowed in the :keyword:`finally`
1659clause.
1660
1661..
1662
1663.. bpo: 17611
1664.. date: 2017-12-24-19-48-59
1665.. nonce: P85kWL
1666.. section: Core and Builtins
1667
1668Simplified the interpreter loop by moving the logic of unrolling the stack
1669of blocks into the compiler. The compiler emits now explicit instructions
1670for adjusting the stack of values and calling the cleaning up code for
1671:keyword:`break`, :keyword:`continue` and :keyword:`return`.
1672
1673Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`,
1674:opcode:`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes
1675:opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and
1676:opcode:`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and
1677:opcode:`WITH_CLEANUP_START`.
1678
1679..
1680
1681.. bpo: 32285
1682.. date: 2017-12-12-13-43-13
1683.. nonce: LzKSwz
1684.. section: Core and Builtins
1685
1686New function unicodedata.is_normalized, which can check whether a string is
1687in a specific normal form.
1688
1689..
1690
1691.. bpo: 10544
1692.. date: 2017-11-26-00-59-22
1693.. nonce: fHOM3V
1694.. section: Core and Builtins
1695
1696Yield expressions are now disallowed in comprehensions and generator
1697expressions except the expression for the outermost iterable.
1698
1699..
1700
1701.. bpo: 32117
1702.. date: 2017-11-22-15-43-14
1703.. nonce: -vloh8
1704.. section: Core and Builtins
1705
1706Iterable unpacking is now allowed without parentheses in yield and return
1707statements, e.g. ``yield 1, 2, 3, *rest``. Thanks to David Cuthbert for the
1708change and Jordan Chapman for added tests.
1709
1710..
1711
1712.. bpo: 31902
1713.. date: 2017-10-30-12-44-50
1714.. nonce: a07fa57
1715.. section: Core and Builtins
1716
1717Fix the ``col_offset`` attribute for ast nodes ``ast.AsyncFor``,
1718``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, ``col_offset``
1719pointed to the keyword after ``async``.
1720
1721..
1722
1723.. bpo: 25862
1724.. date: 2017-10-07-10-13-15
1725.. nonce: FPYBA5
1726.. section: Core and Builtins
1727
1728Fix assertion failures in the ``tell()`` method of ``io.TextIOWrapper``.
1729Patch by Zackery Spytz.
1730
1731..
1732
1733.. bpo: 21983
1734.. date: 2017-10-02-21-02-14
1735.. nonce: UoC319
1736.. section: Core and Builtins
1737
1738Fix a crash in `ctypes.cast()` in case the type argument is a ctypes
1739structured data type. Patch by Eryk Sun and Oren Milman.
1740
1741..
1742
1743.. bpo: 31577
1744.. date: 2017-09-25-20-36-24
1745.. nonce: jgYsSA
1746.. section: Core and Builtins
1747
1748Fix a crash in `os.utime()` in case of a bad ns argument. Patch by Oren
1749Milman.
1750
1751..
1752
1753.. bpo: 29832
1754.. date: 2017-09-12-08-11-01
1755.. nonce: Kuf2M7
1756.. section: Core and Builtins
1757
1758Remove references to 'getsockaddrarg' from various socket error messages.
1759Patch by Oren Milman.
1760
1761..
1762
1763.. bpo: 35845
1764.. date: 2019-02-02-00-04-01
1765.. nonce: 1jx2wk
1766.. section: Library
1767
1768Add 'order' parameter to memoryview.tobytes().
1769
1770..
1771
1772.. bpo: 35864
1773.. date: 2019-01-30-20-22-36
1774.. nonce: ig9KnG
1775.. section: Library
1776
1777The _asdict() method for collections.namedtuple now returns a regular dict
1778instead of an OrderedDict.
1779
1780..
1781
1782.. bpo: 35537
1783.. date: 2019-01-29-17-24-52
1784.. nonce: Q0ktFC
1785.. section: Library
1786
1787An ExitStack is now used internally within subprocess.POpen to clean up pipe
1788file handles. No behavior change in normal operation. But if closing one
1789handle were ever to cause an exception, the others will now be closed
1790instead of leaked.  (patch by Giampaolo Rodola)
1791
1792..
1793
1794.. bpo: 35847
1795.. date: 2019-01-29-09-11-09
1796.. nonce: eiSi4t
1797.. section: Library
1798
1799RISC-V needed the CTYPES_PASS_BY_REF_HACK.  Fixes ctypes Structure
1800test_pass_by_value.
1801
1802..
1803
1804.. bpo: 35813
1805.. date: 2019-01-23-22-44-37
1806.. nonce: Yobj-Y
1807.. section: Library
1808
1809Shared memory submodule added to multiprocessing to avoid need for
1810serialization between processes
1811
1812..
1813
1814.. bpo: 35780
1815.. date: 2019-01-19-17-01-43
1816.. nonce: CLf7fT
1817.. section: Library
1818
1819Fix lru_cache() errors arising in recursive, reentrant, or multi-threaded
1820code. These errors could result in orphan links and in the cache being
1821trapped in a state with fewer than the specified maximum number of links.
1822Fix handling of negative maxsize which should have been treated as zero. Fix
1823errors in toggling the "full" status flag. Fix misordering of links when
1824errors are encountered.  Sync-up the C code and pure Python code for the
1825space saving path in functions with a single positional argument. In this
1826common case, the space overhead of an lru cache entry is reduced by almost
1827half.  Fix counting of cache misses. In error cases, the miss count was out
1828of sync with the actual number of times the underlying user function was
1829called.
1830
1831..
1832
1833.. bpo: 35537
1834.. date: 2019-01-18-13-44-13
1835.. nonce: R1lbTl
1836.. section: Library
1837
1838:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid*
1839parameter.
1840
1841..
1842
1843.. bpo: 23846
1844.. date: 2019-01-15-13-31-30
1845.. nonce: LT_qL8
1846.. section: Library
1847
1848:class:`asyncio.ProactorEventLoop` now catches and logs send errors when the
1849self-pipe is full.
1850
1851..
1852
1853.. bpo: 34323
1854.. date: 2019-01-14-17-34-36
1855.. nonce: CRErrt
1856.. section: Library
1857
1858:mod:`asyncio`: Enhance ``IocpProactor.close()`` log: wait 1 second before
1859the first log, then log every second. Log also the number of seconds since
1860``close()`` was called.
1861
1862..
1863
1864.. bpo: 35674
1865.. date: 2019-01-14-14-13-08
1866.. nonce: kamWqz
1867.. section: Library
1868
1869Add a new :func:`os.posix_spawnp` function. Patch by Joannah Nanjekye.
1870
1871..
1872
1873.. bpo: 35733
1874.. date: 2019-01-13-18-42-41
1875.. nonce: eFfLiv
1876.. section: Library
1877
1878``ast.Constant(boolean)`` no longer an instance of :class:`ast.Num`.  Patch
1879by Anthony Sottile.
1880
1881..
1882
1883.. bpo: 35726
1884.. date: 2019-01-13-01-33-00
1885.. nonce: dasdas
1886.. section: Library
1887
1888QueueHandler.prepare() now makes a copy of the record before modifying and
1889enqueueing it, to avoid affecting other handlers in the chain.
1890
1891..
1892
1893.. bpo: 35719
1894.. date: 2019-01-11-20-21-59
1895.. nonce: qyRcpE
1896.. section: Library
1897
1898Sped up multi-argument :mod:`math` functions atan2(), copysign(),
1899remainder() and hypot() by 1.3--2.5 times.
1900
1901..
1902
1903.. bpo: 35717
1904.. date: 2019-01-11-17-56-15
1905.. nonce: 6TDTB_
1906.. section: Library
1907
1908Fix KeyError exception raised when using enums and compile. Patch
1909contributed by Rémi Lapeyre.
1910
1911..
1912
1913.. bpo: 35699
1914.. date: 2019-01-11-07-09-25
1915.. nonce: VDiENF
1916.. section: Library
1917
1918Fixed detection of Visual Studio Build Tools 2017 in distutils
1919
1920..
1921
1922.. bpo: 32710
1923.. date: 2019-01-10-15-55-10
1924.. nonce: KwECPu
1925.. section: Library
1926
1927Fix memory leaks in asyncio ProactorEventLoop on overlapped operation
1928failure.
1929
1930..
1931
1932.. bpo: 35702
1933.. date: 2019-01-10-14-03-12
1934.. nonce: _ct_0H
1935.. section: Library
1936
1937The :data:`time.CLOCK_UPTIME_RAW` constant is now available for macOS 10.12.
1938
1939..
1940
1941.. bpo: 32710
1942.. date: 2019-01-08-14-00-52
1943.. nonce: Sn5Ujj
1944.. section: Library
1945
1946Fix a memory leak in asyncio in the ProactorEventLoop when ``ReadFile()`` or
1947``WSASend()`` overlapped operation fail immediately: release the internal
1948buffer.
1949
1950..
1951
1952.. bpo: 35682
1953.. date: 2019-01-08-01-54-02
1954.. nonce: KDM9lk
1955.. section: Library
1956
1957Fix ``asyncio.ProactorEventLoop.sendfile()``: don't attempt to set the
1958result of an internal future if it's already done.
1959
1960..
1961
1962.. bpo: 35283
1963.. date: 2019-01-07-17-17-16
1964.. nonce: WClosC
1965.. section: Library
1966
1967Add a deprecated warning for the :meth:`threading.Thread.isAlive` method.
1968Patch by Dong-hee Na.
1969
1970..
1971
1972.. bpo: 35664
1973.. date: 2019-01-04-22-18-25
1974.. nonce: Z-Gyyj
1975.. section: Library
1976
1977Improve operator.itemgetter() performance by 33% with optimized argument
1978handling and with adding a fast path for the common case of a single
1979non-negative integer index into a tuple (which is the typical use case in
1980the standard library).
1981
1982..
1983
1984.. bpo: 35643
1985.. date: 2019-01-02-20-04-49
1986.. nonce: DaMiaV
1987.. section: Library
1988
1989Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py.
1990Patch by Mickaël Schoentgen.
1991
1992..
1993
1994.. bpo: 35619
1995.. date: 2018-12-30-19-50-36
1996.. nonce: ZRXdhy
1997.. section: Library
1998
1999Improved support of custom data descriptors in :func:`help` and
2000:mod:`pydoc`.
2001
2002..
2003
2004.. bpo: 28503
2005.. date: 2018-12-30-14-56-33
2006.. nonce: V4kNN3
2007.. section: Library
2008
2009The `crypt` module now internally uses the `crypt_r()` library function
2010instead of `crypt()` when available.
2011
2012..
2013
2014.. bpo: 35614
2015.. date: 2018-12-30-01-10-50
2016.. nonce: cnkM4f
2017.. section: Library
2018
2019Fixed help() on metaclasses. Patch by Sanyam Khurana.
2020
2021..
2022
2023.. bpo: 35568
2024.. date: 2018-12-27-19-23-00
2025.. nonce: PutiOC
2026.. section: Library
2027
2028Expose ``raise(signum)`` as `raise_signal`
2029
2030..
2031
2032.. bpo: 35588
2033.. date: 2018-12-26-10-55-59
2034.. nonce: PSR6Ez
2035.. section: Library
2036
2037The floor division and modulo operations and the :func:`divmod` function on
2038:class:`fractions.Fraction` types are 2--4x faster. Patch by Stefan Behnel.
2039
2040..
2041
2042.. bpo: 35585
2043.. date: 2018-12-26-02-28-00
2044.. nonce: Lkzd3Z
2045.. section: Library
2046
2047Speed-up building enums by value, e.g. http.HTTPStatus(200).
2048
2049..
2050
2051.. bpo: 30561
2052.. date: 2018-12-23-22-27-59
2053.. nonce: PSRQ2w
2054.. section: Library
2055
2056random.gammavariate(1.0, beta) now computes the same result as
2057random.expovariate(1.0 / beta).  This synchronizes the two algorithms and
2058eliminates some idiosyncrasies in the old implementation.  It does however
2059produce a difference stream of random variables than it used to.
2060
2061..
2062
2063.. bpo: 35537
2064.. date: 2018-12-20-16-24-51
2065.. nonce: z4E7aA
2066.. section: Library
2067
2068The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function
2069in some cases for better performance.
2070
2071..
2072
2073.. bpo: 35526
2074.. date: 2018-12-18-21-12-25
2075.. nonce: fYvo6H
2076.. section: Library
2077
2078Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0
2079
2080..
2081
2082.. bpo: 35523
2083.. date: 2018-12-18-13-52-13
2084.. nonce: SkoMno
2085.. section: Library
2086
2087Remove :mod:`ctypes` callback workaround: no longer create a callback at
2088startup. Avoid SELinux alert on ``import ctypes`` and ``import uuid``.
2089
2090..
2091
2092.. bpo: 31784
2093.. date: 2018-12-17-11-43-11
2094.. nonce: W0gDjC
2095.. section: Library
2096
2097:func:`uuid.uuid1` now calls :func:`time.time_ns` rather than
2098``int(time.time() * 1e9)``.
2099
2100..
2101
2102.. bpo: 35513
2103.. date: 2018-12-16-23-28-49
2104.. nonce: pn-Zh3
2105.. section: Library
2106
2107:class:`~unittest.runner.TextTestRunner` of :mod:`unittest.runner` now uses
2108:func:`time.perf_counter` rather than :func:`time.time` to measure the
2109execution time of a test: :func:`time.time` can go backwards, whereas
2110:func:`time.perf_counter` is monotonic.
2111
2112..
2113
2114.. bpo: 35502
2115.. date: 2018-12-14-23-56-48
2116.. nonce: gLHuFS
2117.. section: Library
2118
2119Fixed reference leaks in :class:`xml.etree.ElementTree.TreeBuilder` in case
2120of unfinished building of the tree (in particular when an error was raised
2121during parsing XML).
2122
2123..
2124
2125.. bpo: 35348
2126.. date: 2018-12-14-13-27-45
2127.. nonce: u3Y2an
2128.. section: Library
2129
2130Make :func:`platform.architecture` parsing of ``file`` command output more
2131reliable: add the ``-b`` option to the ``file`` command to omit the
2132filename, force the usage of the C locale, and search also the "shared
2133object" pattern.
2134
2135..
2136
2137.. bpo: 35491
2138.. date: 2018-12-14-12-12-15
2139.. nonce: jHsNOU
2140.. section: Library
2141
2142:mod:`multiprocessing`: Add ``Pool.__repr__()`` and enhance
2143``BaseProcess.__repr__()`` (add pid and parent pid) to ease debugging. Pool
2144state constant values are now strings instead of integers, for example
2145``RUN`` value becomes ``'RUN'`` instead of ``0``.
2146
2147..
2148
2149.. bpo: 35477
2150.. date: 2018-12-13-00-10-51
2151.. nonce: hHyy06
2152.. section: Library
2153
2154:meth:`multiprocessing.Pool.__enter__` now fails if the pool is not running:
2155``with pool:`` fails if used more than once.
2156
2157..
2158
2159.. bpo: 31446
2160.. date: 2018-12-12-22-52-34
2161.. nonce: l--Fjz
2162.. section: Library
2163
2164Copy command line that was passed to CreateProcessW since this function can
2165change the content of the input buffer.
2166
2167..
2168
2169.. bpo: 35471
2170.. date: 2018-12-12-16-25-21
2171.. nonce: SK8jFC
2172.. section: Library
2173
2174Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in
2175Python 3.7. The module is now removed.
2176
2177..
2178
2179.. bpo: 23057
2180.. date: 2018-12-12-16-24-55
2181.. nonce: OB4Z1Y
2182.. section: Library
2183
2184Unblock Proactor event loop when keyboard interrupt is received on Windows
2185
2186..
2187
2188.. bpo: 35052
2189.. date: 2018-12-10-09-48-27
2190.. nonce: xE1ymg
2191.. section: Library
2192
2193Fix xml.dom.minidom cloneNode() on a document with an entity: pass the
2194correct arguments to the user data handler of an entity.
2195
2196..
2197
2198.. bpo: 20239
2199.. date: 2018-12-09-21-35-49
2200.. nonce: V4mWBL
2201.. section: Library
2202
2203Allow repeated assignment deletion of :class:`unittest.mock.Mock`
2204attributes. Patch by Pablo Galindo.
2205
2206..
2207
2208.. bpo: 17185
2209.. date: 2018-12-09-17-04-15
2210.. nonce: SfSCJF
2211.. section: Library
2212
2213Set ``__signature__`` on mock for :mod:`inspect` to get signature. Patch by
2214Karthikeyan Singaravelan.
2215
2216..
2217
2218.. bpo: 35445
2219.. date: 2018-12-09-14-35-49
2220.. nonce: LjvtsC
2221.. section: Library
2222
2223Memory errors during creating posix.environ no longer ignored.
2224
2225..
2226
2227.. bpo: 35415
2228.. date: 2018-12-06-14-44-21
2229.. nonce: -HoK3d
2230.. section: Library
2231
2232Validate fileno= argument to socket.socket().
2233
2234..
2235
2236.. bpo: 35424
2237.. date: 2018-12-06-02-02-28
2238.. nonce: gXxOJU
2239.. section: Library
2240
2241:class:`multiprocessing.Pool` destructor now emits :exc:`ResourceWarning` if
2242the pool is still running.
2243
2244..
2245
2246.. bpo: 35330
2247.. date: 2018-12-06-00-43-13
2248.. nonce: abB4BN
2249.. section: Library
2250
2251When a :class:`Mock` instance was used to wrap an object, if `side_effect`
2252is used in one of the mocks of it methods, don't call the original
2253implementation and return the result of using the side effect the same way
2254that it is done with return_value.
2255
2256..
2257
2258.. bpo: 35346
2259.. date: 2018-12-05-22-52-21
2260.. nonce: Okm9-S
2261.. section: Library
2262
2263Drop Mac OS 9 and Rhapsody support from the :mod:`platform` module. Rhapsody
2264last release was in 2000. Mac OS 9 last release was in 2001.
2265
2266..
2267
2268.. bpo: 10496
2269.. date: 2018-12-05-17-42-49
2270.. nonce: laV_IE
2271.. section: Library
2272
2273:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catches
2274:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME``
2275environment variable in this case.
2276
2277..
2278
2279.. bpo: 10496
2280.. date: 2018-12-05-13-37-39
2281.. nonce: VH-1Lp
2282.. section: Library
2283
2284:func:`posixpath.expanduser` now returns the input *path* unchanged if the
2285``HOME`` environment variable is not set and the current user has no home
2286directory (if the current user identifier doesn't exist in the password
2287database). This change fix the :mod:`site` module if the current user
2288doesn't exist in the password database (if the user has no home directory).
2289
2290..
2291
2292.. bpo: 35389
2293.. date: 2018-12-04-12-46-05
2294.. nonce: CTZ9iA
2295.. section: Library
2296
2297:func:`platform.libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if
2298available and the *executable* parameter is not set.
2299
2300..
2301
2302.. bpo: 35394
2303.. date: 2018-12-04-12-17-08
2304.. nonce: fuTVDk
2305.. section: Library
2306
2307Add empty slots to asyncio abstract protocols.
2308
2309..
2310
2311.. bpo: 35310
2312.. date: 2018-12-03-19-45-00
2313.. nonce: 9k28gR
2314.. section: Library
2315
2316Fix a bug in :func:`select.select` where, in some cases, the file descriptor
2317sequences were returned unmodified after a signal interruption, even though
2318the file descriptors might not be ready yet.  :func:`select.select` will now
2319always return empty lists if a timeout has occurred.  Patch by Oran Avraham.
2320
2321..
2322
2323.. bpo: 35380
2324.. date: 2018-12-03-14-41-11
2325.. nonce: SdRF9l
2326.. section: Library
2327
2328Enable TCP_NODELAY on Windows for proactor asyncio event loop.
2329
2330..
2331
2332.. bpo: 35341
2333.. date: 2018-12-02-13-50-52
2334.. nonce: 32E8T_
2335.. section: Library
2336
2337Add generic version of ``collections.OrderedDict`` to the ``typing`` module.
2338Patch by Ismo Toijala.
2339
2340..
2341
2342.. bpo: 35371
2343.. date: 2018-12-01-13-44-12
2344.. nonce: fTAwlX
2345.. section: Library
2346
2347Fixed possible crash in ``os.utime()`` on Windows when pass incorrect
2348arguments.
2349
2350..
2351
2352.. bpo: 35346
2353.. date: 2018-11-29-12-42-13
2354.. nonce: OmTY5c
2355.. section: Library
2356
2357:func:`platform.uname` now redirects ``stderr`` to :data:`os.devnull` when
2358running external programs like ``cmd /c ver``.
2359
2360..
2361
2362.. bpo: 35066
2363.. date: 2018-11-29-09-38-40
2364.. nonce: Nwej2s
2365.. section: Library
2366
2367Previously, calling the strftime() method on a datetime object with a
2368trailing '%' in the format string would result in an exception. However,
2369this only occurred when the datetime C module was being used; the python
2370implementation did not match this behavior. Datetime is now PEP-399
2371compliant, and will not throw an exception on a trailing '%'.
2372
2373..
2374
2375.. bpo: 35345
2376.. date: 2018-11-29-00-55-33
2377.. nonce: vepCSJ
2378.. section: Library
2379
2380The function `platform.popen` has been removed, it was deprecated since
2381Python 3.3: use :func:`os.popen` instead.
2382
2383..
2384
2385.. bpo: 35344
2386.. date: 2018-11-29-00-23-25
2387.. nonce: 4QOPJQ
2388.. section: Library
2389
2390On macOS, :func:`platform.platform` now uses :func:`platform.mac_ver`, if it
2391returns a non-empty release string, to get the macOS version rather than the
2392darwin version.
2393
2394..
2395
2396.. bpo: 35312
2397.. date: 2018-11-25-20-05-33
2398.. nonce: wbw0zO
2399.. section: Library
2400
2401Make ``lib2to3.pgen2.parse.ParseError`` round-trip pickle-able.  Patch by
2402Anthony Sottile.
2403
2404..
2405
2406.. bpo: 35308
2407.. date: 2018-11-24-10-33-42
2408.. nonce: 9--2iy
2409.. section: Library
2410
2411Fix regression in ``webbrowser`` where default browsers may be preferred
2412over browsers in the ``BROWSER`` environment variable.
2413
2414..
2415
2416.. bpo: 24746
2417.. date: 2018-11-22-15-22-56
2418.. nonce: eSLKBE
2419.. section: Library
2420
2421Avoid stripping trailing whitespace in doctest fancy diff. Original patch by
2422R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana.
2423
2424..
2425
2426.. bpo: 28604
2427.. date: 2018-11-20-13-34-01
2428.. nonce: iiih5h
2429.. section: Library
2430
2431:func:`locale.localeconv` now sets temporarily the ``LC_CTYPE`` locale to
2432the ``LC_MONETARY`` locale if the two locales are different and monetary
2433strings are non-ASCII. This temporary change affects other threads.
2434
2435..
2436
2437.. bpo: 35277
2438.. date: 2018-11-19-07-22-04
2439.. nonce: dsD-2E
2440.. section: Library
2441
2442Update ensurepip to install pip 18.1 and setuptools 40.6.2.
2443
2444..
2445
2446.. bpo: 24209
2447.. date: 2018-11-18-18-44-40
2448.. nonce: p3YWOf
2449.. section: Library
2450
2451Adds IPv6 support when invoking http.server directly.
2452
2453..
2454
2455.. bpo: 35226
2456.. date: 2018-11-15-07-14-32
2457.. nonce: wJPEEe
2458.. section: Library
2459
2460Recursively check arguments when testing for equality of
2461:class:`unittest.mock.call` objects and add note that tracking of parameters
2462used to create ancestors of mocks in ``mock_calls`` is not possible.
2463
2464..
2465
2466.. bpo: 29564
2467.. date: 2018-11-12-17-40-04
2468.. nonce: SFNBT5
2469.. section: Library
2470
2471The warnings module now suggests to enable tracemalloc if the source is
2472specified, the tracemalloc module is available, but tracemalloc is not
2473tracing memory allocations.
2474
2475..
2476
2477.. bpo: 35189
2478.. date: 2018-11-09-13-35-36
2479.. nonce: gog-sl
2480.. section: Library
2481
2482Modify the following fnctl function to retry if interrupted by a signal
2483(EINTR): flock, lockf, fnctl
2484
2485..
2486
2487.. bpo: 30064
2488.. date: 2018-11-09-01-18-51
2489.. nonce: IF5mH6
2490.. section: Library
2491
2492Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer
2493early on calcellation.
2494
2495..
2496
2497.. bpo: 35186
2498.. date: 2018-11-08-14-22-29
2499.. nonce: 5m22Mj
2500.. section: Library
2501
2502Removed the "built with" comment added when ``setup.py upload`` is used with
2503either ``bdist_rpm`` or ``bdist_dumb``.
2504
2505..
2506
2507.. bpo: 35152
2508.. date: 2018-11-03-10-12-04
2509.. nonce: xpqskp
2510.. section: Library
2511
2512Allow sending more than 2 GB at once on a multiprocessing connection on
2513non-Windows systems.
2514
2515..
2516
2517.. bpo: 35062
2518.. date: 2018-10-29-23-09-24
2519.. nonce: dQS1ng
2520.. section: Library
2521
2522Fix incorrect parsing of :class:`_io.IncrementalNewlineDecoder`'s
2523*translate* argument.
2524
2525..
2526
2527.. bpo: 35065
2528.. date: 2018-10-29-10-18-31
2529.. nonce: CulMN8
2530.. section: Library
2531
2532Remove `StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader`
2533is currently performed too soon, causing the protocol to forget about the
2534reader before `connection_lost` can run and feed the EOF to the reader.
2535
2536..
2537
2538.. bpo: 34160
2539.. date: 2018-10-27-21-11-42
2540.. nonce: UzyPZf
2541.. section: Library
2542
2543ElementTree and minidom now preserve the attribute order specified by the
2544user.
2545
2546..
2547
2548.. bpo: 35079
2549.. date: 2018-10-26-22-53-16
2550.. nonce: Tm5jvF
2551.. section: Library
2552
2553Improve difflib.SequenceManager.get_matching_blocks doc by adding
2554'non-overlapping' and changing '!=' to '<'.
2555
2556..
2557
2558.. bpo: 33710
2559.. date: 2018-10-26-21-12-55
2560.. nonce: Q5oXc6
2561.. section: Library
2562
2563Deprecated ``l*gettext()`` functions and methods in the :mod:`gettext`
2564module. They return encoded bytes instead of Unicode strings and are
2565artifacts from Python 2 times. Also deprecated functions and methods related
2566to setting the charset for ``l*gettext()`` functions and methods.
2567
2568..
2569
2570.. bpo: 35017
2571.. date: 2018-10-26-00-11-21
2572.. nonce: 6Ez4Cv
2573.. section: Library
2574
2575:meth:`socketserver.BaseServer.serve_forever` now exits immediately if it's
2576:meth:`~socketserver.BaseServer.shutdown` method is called while it is
2577polling for new events.
2578
2579..
2580
2581.. bpo: 35024
2582.. date: 2018-10-25-15-43-32
2583.. nonce: ltSrtr
2584.. section: Library
2585
2586`importlib` no longer logs `wrote <bytecode path>` redundantly after
2587`(created|could not create) <bytecode path>` is already logged. Patch by
2588Quentin Agren.
2589
2590..
2591
2592.. bpo: 35047
2593.. date: 2018-10-25-09-59-00
2594.. nonce: abbaa
2595.. section: Library
2596
2597``unittest.mock`` now includes mock calls in exception messages if
2598``assert_not_called``, ``assert_called_once``, or
2599``assert_called_once_with`` fails. Patch by Petter Strandmark.
2600
2601..
2602
2603.. bpo: 31047
2604.. date: 2018-10-25-09-37-03
2605.. nonce: kBbX8r
2606.. section: Library
2607
2608Fix ``ntpath.abspath`` regression where it didn't remove a trailing
2609separator on Windows. Patch by Tim Graham.
2610
2611..
2612
2613.. bpo: 35053
2614.. date: 2018-10-23-18-58-12
2615.. nonce: G82qwh
2616.. section: Library
2617
2618tracemalloc now tries to update the traceback when an object is reused from
2619a "free list" (optimization for faster object creation, used by the builtin
2620list type for example).
2621
2622..
2623
2624.. bpo: 31553
2625.. date: 2018-10-23-14-46-47
2626.. nonce: JxRkAW
2627.. section: Library
2628
2629Add the --json-lines option to json.tool. Patch by hongweipeng.
2630
2631..
2632
2633.. bpo: 34794
2634.. date: 2018-10-21-14-53-19
2635.. nonce: yt3R4-
2636.. section: Library
2637
2638Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to
2639Tcl/Tk.
2640
2641..
2642
2643.. bpo: 34909
2644.. date: 2018-10-20-00-29-43
2645.. nonce: Ew_8DC
2646.. section: Library
2647
2648Enum: fix grandchildren subclassing when parent mixed with concrete data
2649types.
2650
2651..
2652
2653.. bpo: 35022
2654.. date: 2018-10-18-17-57-28
2655.. nonce: KeEF4T
2656.. section: Library
2657
2658:class:`unittest.mock.MagicMock` now supports the ``__fspath__`` method
2659(from :class:`os.PathLike`).
2660
2661..
2662
2663.. bpo: 35008
2664.. date: 2018-10-17-11-54-04
2665.. nonce: dotef_
2666.. section: Library
2667
2668Fixed references leaks when call the ``__setstate__()`` method of
2669:class:`xml.etree.ElementTree.Element` in the C implementation for already
2670initialized element.
2671
2672..
2673
2674.. bpo: 23420
2675.. date: 2018-10-17-11-00-00
2676.. nonce: Lq74Uu
2677.. section: Library
2678
2679Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert
2680Kuska
2681
2682..
2683
2684.. bpo: 33947
2685.. date: 2018-10-17-02-15-23
2686.. nonce: SRuq3T
2687.. section: Library
2688
2689dataclasses now handle recursive reprs without raising RecursionError.
2690
2691..
2692
2693.. bpo: 34890
2694.. date: 2018-10-15-23-10-41
2695.. nonce: 77E770
2696.. section: Library
2697
2698Make :func:`inspect.iscoroutinefunction`,
2699:func:`inspect.isgeneratorfunction` and :func:`inspect.isasyncgenfunction`
2700work with :func:`functools.partial`. Patch by Pablo Galindo.
2701
2702..
2703
2704.. bpo: 34521
2705.. date: 2018-10-13-19-15-23
2706.. nonce: YPaiTK
2707.. section: Library
2708
2709Use :func:`socket.CMSG_SPACE` to calculate ancillary data size instead of
2710:func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction.recvfds` as
2711:rfc:`3542` requires the use of the former for portable applications.
2712
2713..
2714
2715.. bpo: 31522
2716.. date: 2018-10-13-18-16-20
2717.. nonce: rWBb43
2718.. section: Library
2719
2720The `mailbox.mbox.get_string` function *from_* parameter can now
2721successfully be set to a non-default value.
2722
2723..
2724
2725.. bpo: 34970
2726.. date: 2018-10-13-11-14-13
2727.. nonce: SrJTY7
2728.. section: Library
2729
2730Protect tasks weak set manipulation in ``asyncio.all_tasks()``
2731
2732..
2733
2734.. bpo: 34969
2735.. date: 2018-10-13-07-46-50
2736.. nonce: Mfnhjb
2737.. section: Library
2738
2739gzip: Add --fast, --best on the gzip CLI, these parameters will be used for
2740the fast compression method (quick) or the best method compress (slower, but
2741smaller file). Also, change the default compression level to 6 (tradeoff).
2742
2743..
2744
2745.. bpo: 16965
2746.. date: 2018-10-12-20-30-42
2747.. nonce: xo5LAr
2748.. section: Library
2749
2750The :term:`2to3` :2to3fixer:`execfile` fixer now opens the file with mode
2751``'rb'``.  Patch by Zackery Spytz.
2752
2753..
2754
2755.. bpo: 34966
2756.. date: 2018-10-12-18-57-52
2757.. nonce: WZeBHO
2758.. section: Library
2759
2760:mod:`pydoc` now supports aliases not only to methods defined in the end
2761class, but also to inherited methods.  The docstring is not duplicated for
2762aliases.
2763
2764..
2765
2766.. bpo: 34926
2767.. date: 2018-10-10-00-22-57
2768.. nonce: CA0rqd
2769.. section: Library
2770
2771:meth:`mimetypes.MimeTypes.guess_type` now accepts :term:`path-like object`
2772in addition to url strings. Patch by Mayank Asthana.
2773
2774..
2775
2776.. bpo: 23831
2777.. date: 2018-10-09-15-44-04
2778.. nonce: 2CL7lL
2779.. section: Library
2780
2781Add ``moveto()`` method to the ``tkinter.Canvas`` widget. Patch by Juliette
2782Monsel.
2783
2784..
2785
2786.. bpo: 34941
2787.. date: 2018-10-09-14-42-16
2788.. nonce: 1Q5QKv
2789.. section: Library
2790
2791Methods ``find()``, ``findtext()`` and ``findall()`` of the ``Element``
2792class in the :mod:`xml.etree.ElementTree` module are now able to find
2793children which are instances of ``Element`` subclasses.
2794
2795..
2796
2797.. bpo: 32680
2798.. date: 2018-10-09-14-25-36
2799.. nonce: z2FbOp
2800.. section: Library
2801
2802:class:`smtplib.SMTP` objects now always have a `sock` attribute present
2803
2804..
2805
2806.. bpo: 34769
2807.. date: 2018-10-09-11-01-16
2808.. nonce: cSkkZt
2809.. section: Library
2810
2811Fix for async generators not finalizing when event loop is in debug mode and
2812garbage collector runs in another thread.
2813
2814..
2815
2816.. bpo: 34936
2817.. date: 2018-10-08-21-05-11
2818.. nonce: 3tRqdq
2819.. section: Library
2820
2821Fix ``TclError`` in ``tkinter.Spinbox.selection_element()``. Patch by
2822Juliette Monsel.
2823
2824..
2825
2826.. bpo: 34829
2827.. date: 2018-10-08-16-04-36
2828.. nonce: B7v7D0
2829.. section: Library
2830
2831Add methods ``selection_from``, ``selection_range``, ``selection_present``
2832and ``selection_to`` to the ``tkinter.Spinbox`` for consistency with the
2833``tkinter.Entry`` widget. Patch by Juliette Monsel.
2834
2835..
2836
2837.. bpo: 34911
2838.. date: 2018-10-08-15-22-02
2839.. nonce: hCy0Fv
2840.. section: Library
2841
2842Added *secure_protocols* argument to *http.cookiejar.DefaultCookiePolicy* to
2843allow for tweaking of protocols and also to add support by default for
2844*wss*, the secure websocket protocol.
2845
2846..
2847
2848.. bpo: 34922
2849.. date: 2018-10-07-21-18-52
2850.. nonce: 37IdsA
2851.. section: Library
2852
2853Fixed integer overflow in the :meth:`~hashlib.shake.digest()` and
2854:meth:`~hashlib.shake.hexdigest()` methods for the SHAKE algorithm in the
2855:mod:`hashlib` module.
2856
2857..
2858
2859.. bpo: 34925
2860.. date: 2018-10-07-20-37-02
2861.. nonce: KlkZ-Y
2862.. section: Library
2863
286425% speedup in argument parsing for the functions in the bisect module.
2865
2866..
2867
2868.. bpo: 34900
2869.. date: 2018-10-05-05-55-53
2870.. nonce: 8RNiFu
2871.. section: Library
2872
2873Fixed :meth:`unittest.TestCase.debug` when used to call test methods with
2874subtests.  Patch by Bruno Oliveira.
2875
2876..
2877
2878.. bpo: 34844
2879.. date: 2018-10-04-20-44-45
2880.. nonce: Hnuxav
2881.. section: Library
2882
2883logging.Formatter enhancement - Ensure styles and fmt matches in
2884logging.Formatter - Added validate method in each format style class:
2885StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called
2886in the constructor of logging.Formatter class - Also re-raise the KeyError
2887in the format method of each style class, so it would a bit clear that it's
2888an error with the invalid format fields.
2889
2890..
2891
2892.. bpo: 34897
2893.. date: 2018-10-04-20-25-35
2894.. nonce: rNE2Cy
2895.. section: Library
2896
2897Adjust test.support.missing_compiler_executable check so that a nominal
2898command name of "" is ignored. Patch by Michael Felt.
2899
2900..
2901
2902.. bpo: 34871
2903.. date: 2018-10-04-18-46-54
2904.. nonce: t3X-dB
2905.. section: Library
2906
2907Fix inspect module polluted ``sys.modules`` when parsing
2908``__text_signature__`` of callable.
2909
2910..
2911
2912.. bpo: 34898
2913.. date: 2018-10-04-17-23-43
2914.. nonce: Wo2PoJ
2915.. section: Library
2916
2917Add `mtime` argument to `gzip.compress` for reproducible output. Patch by
2918Guo Ci Teo.
2919
2920..
2921
2922.. bpo: 28441
2923.. date: 2018-10-04-15-53-14
2924.. nonce: 2sQENe
2925.. section: Library
2926
2927On Cygwin and MinGW, ensure that ``sys.executable`` always includes the full
2928filename in the path, including the ``.exe`` suffix (unless it is a symbolic
2929link).
2930
2931..
2932
2933.. bpo: 34866
2934.. date: 2018-10-03-11-07-28
2935.. nonce: ML6KpJ
2936.. section: Library
2937
2938Adding ``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder
2939by limiting the number of ``MiniFieldStorage`` objects created by
2940``FieldStorage``.
2941
2942..
2943
2944.. bpo: 34711
2945.. date: 2018-10-03-09-25-02
2946.. nonce: HeOmKR
2947.. section: Library
2948
2949http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends
2950with "/" and is not a directory, even if the underlying OS (e.g. AIX)
2951accepts such paths as a valid file reference. Patch by Michael Felt.
2952
2953..
2954
2955.. bpo: 34872
2956.. date: 2018-10-02-19-36-34
2957.. nonce: yWZRhI
2958.. section: Library
2959
2960Fix self-cancellation in C implementation of asyncio.Task
2961
2962..
2963
2964.. bpo: 34849
2965.. date: 2018-09-30-08-08-14
2966.. nonce: NXK9Ff
2967.. section: Library
2968
2969Don't log waiting for ``selector.select`` in asyncio loop iteration. The
2970waiting is pretty normal for any asyncio program, logging its time just adds
2971a noise to logs without any useful information provided.
2972
2973..
2974
2975.. bpo: 34022
2976.. date: 2018-09-27-13-14-15
2977.. nonce: E2cl0r
2978.. section: Library
2979
2980The :envvar:`SOURCE_DATE_EPOCH` environment variable no longer overrides the
2981value of the *invalidation_mode* argument to :func:`py_compile.compile`, and
2982determines its default value instead.
2983
2984..
2985
2986.. bpo: 34819
2987.. date: 2018-09-27-09-45-00
2988.. nonce: 9ZaFyO
2989.. section: Library
2990
2991Use a monotonic clock to compute timeouts in :meth:`Executor.map` and
2992:func:`as_completed`, in order to prevent timeouts from deviating when the
2993system clock is adjusted.
2994
2995..
2996
2997.. bpo: 34758
2998.. date: 2018-09-26-14-09-34
2999.. nonce: bRBfAi
3000.. section: Library
3001
3002Add .wasm -> application/wasm to list of recognized file types and content
3003type headers
3004
3005..
3006
3007.. bpo: 34789
3008.. date: 2018-09-25-15-48-50
3009.. nonce: rPOEj5
3010.. section: Library
3011
3012:func:`xml.sax.make_parser` now accepts any iterable as its *parser_list*
3013argument.  Patch by Andrés Delfino.
3014
3015..
3016
3017.. bpo: 34334
3018.. date: 2018-09-25-08-42-34
3019.. nonce: rSPBW9
3020.. section: Library
3021
3022In :class:`QueueHandler`, clear `exc_text` from :class:`LogRecord` to
3023prevent traceback from being written twice.
3024
3025..
3026
3027.. bpo: 34687
3028.. date: 2018-09-24-17-14-57
3029.. nonce: Fku_8S
3030.. section: Library
3031
3032On Windows, asyncio now uses ProactorEventLoop, instead of
3033SelectorEventLoop, by default.
3034
3035..
3036
3037.. bpo: 5950
3038.. date: 2018-09-24-14-21-58
3039.. nonce: xH0ekQ
3040.. section: Library
3041
3042Support reading zip files with archive comments in :mod:`zipimport`.
3043
3044..
3045
3046.. bpo: 32892
3047.. date: 2018-09-20-17-35-05
3048.. nonce: TOUBdg
3049.. section: Library
3050
3051The parser now represents all constants as :class:`ast.Constant` instead of
3052using specific constant AST types (``Num``, ``Str``, ``Bytes``,
3053``NameConstant`` and ``Ellipsis``). These classes are considered deprecated
3054and will be removed in future Python versions.
3055
3056..
3057
3058.. bpo: 34728
3059.. date: 2018-09-20-16-55-43
3060.. nonce: CUE8LU
3061.. section: Library
3062
3063Add deprecation warning when `loop` is used in methods: `asyncio.sleep`,
3064`asyncio.wait` and `asyncio.wait_for`.
3065
3066..
3067
3068.. bpo: 34738
3069.. date: 2018-09-19-16-51-04
3070.. nonce: Pr3-iG
3071.. section: Library
3072
3073ZIP files created by :mod:`distutils` will now include entries for
3074directories.
3075
3076..
3077
3078.. bpo: 34659
3079.. date: 2018-09-16-17-04-16
3080.. nonce: CWemzH
3081.. section: Library
3082
3083Add an optional *initial* argument to itertools.accumulate().
3084
3085..
3086
3087.. bpo: 29577
3088.. date: 2018-09-14-20-00-47
3089.. nonce: RzwKFD
3090.. section: Library
3091
3092Support multiple mixin classes when creating Enums.
3093
3094..
3095
3096.. bpo: 34670
3097.. date: 2018-09-14-14-29-45
3098.. nonce: 17XwGB
3099.. section: Library
3100
3101Add SSLContext.post_handshake_auth and
3102SSLSocket.verify_client_post_handshake for TLS 1.3's post handshake
3103authentication feature.
3104
3105..
3106
3107.. bpo: 32718
3108.. date: 2018-09-14-12-38-49
3109.. nonce: ICYQbt
3110.. section: Library
3111
3112The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now
3113available under all operating systems.
3114
3115..
3116
3117.. bpo: 31177
3118.. date: 2018-09-14-10-38-18
3119.. nonce: Sv91TN
3120.. section: Library
3121
3122Fix bug that prevented using :meth:`reset_mock
3123<unittest.mock.Mock.reset_mock>` on mock instances with deleted attributes
3124
3125..
3126
3127.. bpo: 34672
3128.. date: 2018-09-13-21-04-23
3129.. nonce: BYuKKS
3130.. section: Library
3131
3132Add a workaround, so the ``'Z'`` :func:`time.strftime` specifier on the musl
3133C library can work in some cases.
3134
3135..
3136
3137.. bpo: 34666
3138.. date: 2018-09-13-11-49-52
3139.. nonce: 3uLtWv
3140.. section: Library
3141
3142Implement ``asyncio.StreamWriter.awrite`` and
3143``asyncio.StreamWriter.aclose()`` coroutines.  Methods are needed for
3144providing a consistent stream API with control flow switched on by default.
3145
3146..
3147
3148.. bpo: 6721
3149.. date: 2018-09-13-10-09-19
3150.. nonce: ZUL_F3
3151.. section: Library
3152
3153Acquire the logging module's commonly used internal locks while fork()ing to
3154avoid deadlocks in the child process.
3155
3156..
3157
3158.. bpo: 34658
3159.. date: 2018-09-13-03-59-43
3160.. nonce: ykZ-ia
3161.. section: Library
3162
3163Fix a rare interpreter unhandled exception state SystemError only seen when
3164using subprocess with a preexec_fn while an after_parent handler has been
3165registered with os.register_at_fork and the fork system call fails.
3166
3167..
3168
3169.. bpo: 34652
3170.. date: 2018-09-12-14-46-51
3171.. nonce: Rt1m1b
3172.. section: Library
3173
3174Ensure :func:`os.lchmod` is never defined on Linux.
3175
3176..
3177
3178.. bpo: 34638
3179.. date: 2018-09-12-10-33-44
3180.. nonce: xaeZX5
3181.. section: Library
3182
3183Store a weak reference to stream reader to break strong references loop
3184between reader and protocol.  It allows to detect and close the socket if
3185the stream is deleted (garbage collected) without ``close()`` call.
3186
3187..
3188
3189.. bpo: 34536
3190.. date: 2018-09-11-15-49-09
3191.. nonce: 3IPIH5
3192.. section: Library
3193
3194`Enum._missing_`:  raise `ValueError` if None returned and `TypeError` if
3195non-member is returned.
3196
3197..
3198
3199.. bpo: 34636
3200.. date: 2018-09-11-15-04-05
3201.. nonce: capCmt
3202.. section: Library
3203
3204Speed up re scanning of many non-matching characters for \s \w and \d within
3205bytes objects. (microoptimization)
3206
3207..
3208
3209.. bpo: 24412
3210.. date: 2018-09-11-10-51-16
3211.. nonce: i-F_E5
3212.. section: Library
3213
3214Add :func:`~unittest.addModuleCleanup()` and
3215:meth:`~unittest.TestCase.addClassCleanup()` to unittest to support cleanups
3216for :func:`~unittest.setUpModule()` and
3217:meth:`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach.
3218
3219..
3220
3221.. bpo: 34630
3222.. date: 2018-09-11-10-00-53
3223.. nonce: YbqUS6
3224.. section: Library
3225
3226Don't log SSL certificate errors in asyncio code (connection error logging
3227is skipped already).
3228
3229..
3230
3231.. bpo: 32490
3232.. date: 2018-09-11-01-25-35
3233.. nonce: ROIDO1
3234.. section: Library
3235
3236Prevent filename duplication in :mod:`subprocess` exception messages.  Patch
3237by Zackery Spytz.
3238
3239..
3240
3241.. bpo: 34363
3242.. date: 2018-09-10-21-09-34
3243.. nonce: YuSb0T
3244.. section: Library
3245
3246dataclasses.asdict() and .astuple() now handle namedtuples correctly.
3247
3248..
3249
3250.. bpo: 34625
3251.. date: 2018-09-10-17-46-51
3252.. nonce: D2YfDz
3253.. section: Library
3254
3255Update vendorized expat library version to 2.2.6.
3256
3257..
3258
3259.. bpo: 32270
3260.. date: 2018-09-10-14-15-53
3261.. nonce: wSJjuD
3262.. section: Library
3263
3264The subprocess module no longer mistakenly closes redirected fds even when
3265they were in pass_fds when outside of the default {0, 1, 2} set.
3266
3267..
3268
3269.. bpo: 34622
3270.. date: 2018-09-10-13-04-40
3271.. nonce: tpv_rN
3272.. section: Library
3273
3274Create a dedicated ``asyncio.CancelledError``, ``asyncio.InvalidStateError``
3275and ``asyncio.TimeoutError`` exception classes.  Inherit them from
3276corresponding exceptions from ``concurrent.futures`` package. Extract
3277``asyncio`` exceptions into a separate file.
3278
3279..
3280
3281.. bpo: 34610
3282.. date: 2018-09-08-12-57-07
3283.. nonce: wmoP5j
3284.. section: Library
3285
3286Fixed iterator of :class:`multiprocessing.managers.DictProxy`.
3287
3288..
3289
3290.. bpo: 34421
3291.. date: 2018-09-07-10-57-00
3292.. nonce: AKJISD
3293.. section: Library
3294
3295Fix distutils logging for non-ASCII strings.  This caused installation
3296issues on Windows.
3297
3298..
3299
3300.. bpo: 34604
3301.. date: 2018-09-07-10-16-34
3302.. nonce: xL7-kG
3303.. section: Library
3304
3305Fix possible mojibake in the error message of `pwd.getpwnam` and
3306`grp.getgrnam` using string representation because of invisible characters
3307or trailing whitespaces. Patch by William Grzybowski.
3308
3309..
3310
3311.. bpo: 30977
3312.. date: 2018-09-06-10-07-46
3313.. nonce: bP661V
3314.. section: Library
3315
3316Make uuid.UUID use ``__slots__`` to reduce its memory footprint. Based on
3317original patch by Wouter Bolsterlee.
3318
3319..
3320
3321.. bpo: 34574
3322.. date: 2018-09-04-09-32-54
3323.. nonce: X4RwYI
3324.. section: Library
3325
3326OrderedDict iterators are not exhausted during pickling anymore. Patch by
3327Sergey Fedoseev.
3328
3329..
3330
3331.. bpo: 8110
3332.. date: 2018-09-03-23-54-35
3333.. nonce: FExWI_
3334.. section: Library
3335
3336Refactored :mod:`subprocess` to check for Windows-specific modules rather
3337than ``sys.platform == 'win32'``.
3338
3339..
3340
3341.. bpo: 34530
3342.. date: 2018-09-03-23-23-32
3343.. nonce: h_Xsu7
3344.. section: Library
3345
3346``distutils.spawn.find_executable()`` now falls back on :data:`os.defpath`
3347if the ``PATH`` environment variable is not set.
3348
3349..
3350
3351.. bpo: 34563
3352.. date: 2018-09-01-20-43-10
3353.. nonce: 7NQK7B
3354.. section: Library
3355
3356On Windows, fix multiprocessing.Connection for very large read: fix
3357_winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX
3358(usually 2^31-1).
3359
3360..
3361
3362.. bpo: 34558
3363.. date: 2018-08-31-19-26-55
3364.. nonce: MHv582
3365.. section: Library
3366
3367Correct typo in Lib/ctypes/_aix.py
3368
3369..
3370
3371.. bpo: 34282
3372.. date: 2018-08-31-06-28-03
3373.. nonce: ztyXH8
3374.. section: Library
3375
3376Move ``Enum._convert`` to ``EnumMeta._convert_`` and fix enum members
3377getting shadowed by parent attributes.
3378
3379..
3380
3381.. bpo: 22872
3382.. date: 2018-08-30-14-44-11
3383.. nonce: NhIaZ9
3384.. section: Library
3385
3386When the queue is closed, :exc:`ValueError` is now raised by
3387:meth:`multiprocessing.Queue.put` and :meth:`multiprocessing.Queue.get`
3388instead of :exc:`AssertionError` and :exc:`OSError`, respectively. Patch by
3389Zackery Spytz.
3390
3391..
3392
3393.. bpo: 34515
3394.. date: 2018-08-27-16-01-22
3395.. nonce: S0Irst
3396.. section: Library
3397
3398Fix parsing non-ASCII identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP
33993131).
3400
3401..
3402
3403.. bpo: 13312
3404.. date: 2018-08-24-17-31-27
3405.. nonce: 6hA5La
3406.. section: Library
3407
3408Avoids a possible integer underflow (undefined behavior) in the time
3409module's year handling code when passed a very low negative year value.
3410
3411..
3412
3413.. bpo: 34472
3414.. date: 2018-08-23-09-25-08
3415.. nonce: cGyYrO
3416.. section: Library
3417
3418Improved compatibility for streamed files in :mod:`zipfile`. Previously an
3419optional signature was not being written and certain ZIP applications were
3420not supported. Patch by Silas Sewell.
3421
3422..
3423
3424.. bpo: 34454
3425.. date: 2018-08-22-21-59-08
3426.. nonce: z7uG4b
3427.. section: Library
3428
3429Fix the .fromisoformat() methods of datetime types crashing when given
3430unicode with non-UTF-8-encodable code points.  Specifically,
3431datetime.fromisoformat() now accepts surrogate unicode code points used as
3432the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle.
3433
3434..
3435
3436.. bpo: 6700
3437.. date: 2018-08-22-17-43-52
3438.. nonce: hp7C4B
3439.. section: Library
3440
3441Fix inspect.getsourcelines for module level frames/tracebacks. Patch by
3442Vladimir Matveev.
3443
3444..
3445
3446.. bpo: 34171
3447.. date: 2018-08-21-00-29-01
3448.. nonce: 6LkWav
3449.. section: Library
3450
3451Running the :mod:`trace` module no longer creates the ``trace.cover`` file.
3452
3453..
3454
3455.. bpo: 34441
3456.. date: 2018-08-20-16-48-32
3457.. nonce: _zx9lU
3458.. section: Library
3459
3460Fix crash when an ``ABC``-derived class with invalid ``__subclasses__`` is
3461passed as the second argument to :func:`issubclass()`. Patch by Alexey
3462Izbyshev.
3463
3464..
3465
3466.. bpo: 34427
3467.. date: 2018-08-20-13-53-10
3468.. nonce: tMRQjl
3469.. section: Library
3470
3471Fix infinite loop in ``a.extend(a)`` for ``MutableSequence`` subclasses.
3472
3473..
3474
3475.. bpo: 34412
3476.. date: 2018-08-16-19-07-05
3477.. nonce: NF5Jm2
3478.. section: Library
3479
3480Make :func:`signal.strsignal` work on HP-UX. Patch by Michael Osipov.
3481
3482..
3483
3484.. bpo: 20849
3485.. date: 2018-08-16-16-47-15
3486.. nonce: YWJECC
3487.. section: Library
3488
3489shutil.copytree now accepts a new ``dirs_exist_ok`` keyword argument. Patch
3490by Josh Bronson.
3491
3492..
3493
3494.. bpo: 31715
3495.. date: 2018-08-15-16-22-30
3496.. nonce: Iw8jS8
3497.. section: Library
3498
3499Associate ``.mjs`` file extension with ``application/javascript`` MIME Type.
3500
3501..
3502
3503.. bpo: 34384
3504.. date: 2018-08-12-08-43-21
3505.. nonce: yjofCv
3506.. section: Library
3507
3508:func:`os.readlink` now accepts :term:`path-like <path-like object>` and
3509:class:`bytes` objects on Windows.
3510
3511..
3512
3513.. bpo: 22602
3514.. date: 2018-08-12-00-14-54
3515.. nonce: ybG9K8
3516.. section: Library
3517
3518The UTF-7 decoder now raises :exc:`UnicodeDecodeError` for ill-formed
3519sequences starting with "+" (as specified in RFC 2152).  Patch by Zackery
3520Spytz.
3521
3522..
3523
3524.. bpo: 2122
3525.. date: 2018-08-06-21-47-03
3526.. nonce: GWdmrm
3527.. section: Library
3528
3529The :meth:`mmap.flush() <mmap.mmap.flush>` method now returns ``None`` on
3530success, raises an exception on error under all platforms.
3531
3532..
3533
3534.. bpo: 34341
3535.. date: 2018-08-06-11-01-18
3536.. nonce: E0b9p2
3537.. section: Library
3538
3539Appending to the ZIP archive with the ZIP64 extension no longer grows the
3540size of extra fields of existing entries.
3541
3542..
3543
3544.. bpo: 34333
3545.. date: 2018-08-04-00-06-28
3546.. nonce: 5NHG93
3547.. section: Library
3548
3549Fix %-formatting in :meth:`pathlib.PurePath.with_suffix` when formatting an
3550error message.
3551
3552..
3553
3554.. bpo: 18540
3555.. date: 2018-08-02-21-28-38
3556.. nonce: AryoYY
3557.. section: Library
3558
3559The :class:`imaplib.IMAP4` and :class:`imaplib.IMAP4_SSL` classes now
3560resolve to the local host IP correctly when the default value of *host*
3561parameter (``''``) is used.
3562
3563..
3564
3565.. bpo: 26502
3566.. date: 2018-08-02-20-39-32
3567.. nonce: eGXr_k
3568.. section: Library
3569
3570Implement ``traceback.FrameSummary.__len__()`` method to preserve
3571compatibility with the old tuple API.
3572
3573..
3574
3575.. bpo: 34318
3576.. date: 2018-08-02-14-43-42
3577.. nonce: GneiXs
3578.. section: Library
3579
3580:func:`~unittest.TestCase.assertRaises`,
3581:func:`~unittest.TestCase.assertRaisesRegex`,
3582:func:`~unittest.TestCase.assertWarns` and
3583:func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed
3584callable is None. They no longer ignore unknown keyword arguments in the
3585context manager mode. A DeprecationWarning was raised in these cases since
3586Python 3.5.
3587
3588..
3589
3590.. bpo: 9372
3591.. date: 2018-08-01-21-26-17
3592.. nonce: V8Ou3K
3593.. section: Library
3594
3595Deprecate :meth:`__getitem__` methods of
3596:class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper`
3597and :class:`fileinput.FileInput`.
3598
3599..
3600
3601.. bpo: 33613
3602.. date: 2018-07-31-23-33-06
3603.. nonce: Cdnt0i
3604.. section: Library
3605
3606Fix a race condition in ``multiprocessing.semaphore_tracker`` when the
3607tracker receives SIGINT before it can register signal handlers for ignoring
3608it.
3609
3610..
3611
3612.. bpo: 34248
3613.. date: 2018-07-31-23-00-09
3614.. nonce: 5U6wwc
3615.. section: Library
3616
3617Report filename in the exception raised when the database file cannot be
3618opened by :func:`dbm.gnu.open` and :func:`dbm.ndbm.open` due to OS-related
3619error. Patch by Zsolt Cserna.
3620
3621..
3622
3623.. bpo: 33089
3624.. date: 2018-07-29-21-53-15
3625.. nonce: hxbp3g
3626.. section: Library
3627
3628Add math.dist() to compute the Euclidean distance between two points.
3629
3630..
3631
3632.. bpo: 34246
3633.. date: 2018-07-29-15-25-15
3634.. nonce: xiKq-Q
3635.. section: Library
3636
3637:meth:`smtplib.SMTP.send_message` no longer modifies the content of the
3638*mail_options* argument. Patch by Pablo S. Blum de Aguiar.
3639
3640..
3641
3642.. bpo: 31047
3643.. date: 2018-07-29-14-12-23
3644.. nonce: FSarLs
3645.. section: Library
3646
3647Fix ``ntpath.abspath`` for invalid paths on windows. Patch by Franz
3648Woellert.
3649
3650..
3651
3652.. bpo: 32321
3653.. date: 2018-07-29-13-50-32
3654.. nonce: hDoNKC
3655.. section: Library
3656
3657Add pure Python fallback for functools.reduce. Patch by Robert Wright.
3658
3659..
3660
3661.. bpo: 34270
3662.. date: 2018-07-29-11-32-56
3663.. nonce: aL6P-3
3664.. section: Library
3665
3666The default asyncio task class now always has a name which can be get or set
3667using two new methods (:meth:`~asyncio.Task.get_name()` and
3668:meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output.
3669An initial name can also be set using the new ``name`` keyword argument to
3670:func:`asyncio.create_task` or the
3671:meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. If
3672no initial name is set, the default Task implementation generates a name
3673like ``Task-1`` using a monotonic counter.
3674
3675..
3676
3677.. bpo: 34263
3678.. date: 2018-07-28-17-00-36
3679.. nonce: zUfRsu
3680.. section: Library
3681
3682asyncio's event loop will not pass timeouts longer than one day to
3683epoll/select etc.
3684
3685..
3686
3687.. bpo: 34035
3688.. date: 2018-07-28-15-00-31
3689.. nonce: 75nW0H
3690.. section: Library
3691
3692Fix several AttributeError in zipfile seek() methods. Patch by Mickaël
3693Schoentgen.
3694
3695..
3696
3697.. bpo: 32215
3698.. date: 2018-07-28-12-08-53
3699.. nonce: EU68SY
3700.. section: Library
3701
3702Fix performance regression in :mod:`sqlite3` when a DML statement appeared
3703in a different line than the rest of the SQL query.
3704
3705..
3706
3707.. bpo: 34075
3708.. date: 2018-07-28-11-49-21
3709.. nonce: 9u1bO-
3710.. section: Library
3711
3712Deprecate passing non-ThreadPoolExecutor instances to
3713:meth:`AbstractEventLoop.set_default_executor`.
3714
3715..
3716
3717.. bpo: 34251
3718.. date: 2018-07-28-11-47-10
3719.. nonce: q3elQ6
3720.. section: Library
3721
3722Restore ``msilib.Win64`` to preserve backwards compatibility since it's
3723already used by :mod:`distutils`' ``bdist_msi`` command.
3724
3725..
3726
3727.. bpo: 19891
3728.. date: 2018-07-26-08-45-49
3729.. nonce: Y-3IiB
3730.. section: Library
3731
3732Ignore errors caused by missing / non-writable homedir while writing history
3733during exit of an interactive session.  Patch by Anthony Sottile.
3734
3735..
3736
3737.. bpo: 33089
3738.. date: 2018-07-25-22-38-54
3739.. nonce: C3CB7e
3740.. section: Library
3741
3742Enhanced math.hypot() to support more than two dimensions.
3743
3744..
3745
3746.. bpo: 34228
3747.. date: 2018-07-25-19-02-39
3748.. nonce: 0Ibztw
3749.. section: Library
3750
3751tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0
3752command line option are now allowed to disable explicitly tracemalloc at
3753startup.
3754
3755..
3756
3757.. bpo: 13041
3758.. date: 2018-07-25-12-08-48
3759.. nonce: lNmgDz
3760.. section: Library
3761
3762Use :func:`shutil.get_terminal_size` to calculate the terminal width
3763correctly in the ``argparse.HelpFormatter`` class.  Initial patch by Zbyszek
3764Jędrzejewski-Szmek.
3765
3766..
3767
3768.. bpo: 34213
3769.. date: 2018-07-25-00-40-14
3770.. nonce: O15MgP
3771.. section: Library
3772
3773Allow frozen dataclasses to have a field named "object". Previously this
3774conflicted with an internal use of "object".
3775
3776..
3777
3778.. bpo: 34052
3779.. date: 2018-07-24-16-37-40
3780.. nonce: VbbFAE
3781.. section: Library
3782
3783:meth:`sqlite3.Connection.create_aggregate`,
3784:meth:`sqlite3.Connection.create_function`,
3785:meth:`sqlite3.Connection.set_authorizer`,
3786:meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError
3787when unhashable objects are passed as callable. These methods now don't pass
3788such objects to SQLite API. Previous behavior could lead to segfaults. Patch
3789by Sergey Fedoseev.
3790
3791..
3792
3793.. bpo: 34197
3794.. date: 2018-07-23-14-12-28
3795.. nonce: 7yFSP5
3796.. section: Library
3797
3798Attributes *skipinitialspace*, *doublequote* and *strict* of the *dialect*
3799attribute of the :mod:`csv` reader are now :class:`bool` instances instead
3800of integers 0 or 1.
3801
3802..
3803
3804.. bpo: 32788
3805.. date: 2018-07-23-12-20-02
3806.. nonce: R2jSiK
3807.. section: Library
3808
3809Errors other than :exc:`TypeError` raised in methods ``__adapt__()`` and
3810``__conform__()`` in the :mod:`sqlite3` module are now propagated to the
3811user.
3812
3813..
3814
3815.. bpo: 21446
3816.. date: 2018-07-22-09-05-01
3817.. nonce: w6g7tn
3818.. section: Library
3819
3820The :2to3fixer:`reload` fixer now uses :func:`importlib.reload` instead of
3821deprecated :func:`imp.reload`.
3822
3823..
3824
3825.. bpo: 940286
3826.. date: 2018-07-22-07-59-32
3827.. nonce: NZTzyc
3828.. section: Library
3829
3830pydoc's ``Helper.showtopic()`` method now prints the cross references of a
3831topic correctly.
3832
3833..
3834
3835.. bpo: 34164
3836.. date: 2018-07-20-18-06-00
3837.. nonce: fNfT-q
3838.. section: Library
3839
3840:func:`base64.b32decode` could raise UnboundLocalError or OverflowError for
3841incorrect padding.  Now it always raises :exc:`base64.Error` in these cases.
3842
3843..
3844
3845.. bpo: 33729
3846.. date: 2018-07-20-09-11-05
3847.. nonce: sO6iTb
3848.. section: Library
3849
3850Fixed issues with arguments parsing in :mod:`hashlib`.
3851
3852..
3853
3854.. bpo: 34097
3855.. date: 2018-07-13-13-42-10
3856.. nonce: F5Dk5o
3857.. section: Library
3858
3859ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using
3860a new ``strict_timestamps`` parameter at the cost of setting the timestamp
3861to the limit.
3862
3863..
3864
3865.. bpo: 34108
3866.. date: 2018-07-13-08-44-52
3867.. nonce: RjobUC
3868.. section: Library
3869
3870Remove extraneous CR in 2to3 refactor.
3871
3872..
3873
3874.. bpo: 34070
3875.. date: 2018-07-11-20-51-20
3876.. nonce: WpmFAu
3877.. section: Library
3878
3879Make sure to only check if the handle is a tty, when opening a file with
3880``buffering=-1``.
3881
3882..
3883
3884.. bpo: 27494
3885.. date: 2018-07-11-10-03-21
3886.. nonce: 04OWkW
3887.. section: Library
3888
3889Reverted :issue:`27494`. 2to3 rejects now a trailing comma in generator
3890expressions.
3891
3892..
3893
3894.. bpo: 33967
3895.. date: 2018-07-08-18-49-41
3896.. nonce: lhaAez
3897.. section: Library
3898
3899functools.singledispatch now raises TypeError instead of IndexError when no
3900positional arguments are passed.
3901
3902..
3903
3904.. bpo: 34041
3905.. date: 2018-07-06-15-06-32
3906.. nonce: 0zrKLh
3907.. section: Library
3908
3909Add the parameter *deterministic* to the
3910:meth:`sqlite3.Connection.create_function` method. Patch by Sergey Fedoseev.
3911
3912..
3913
3914.. bpo: 34056
3915.. date: 2018-07-05-22-45-46
3916.. nonce: 86isrU
3917.. section: Library
3918
3919Ensure the loader shim created by ``imp.load_module`` always returns bytes
3920from its ``get_data()`` function. This fixes using ``imp.load_module`` with
3921:pep:`552` hash-based pycs.
3922
3923..
3924
3925.. bpo: 34054
3926.. date: 2018-07-05-18-37-05
3927.. nonce: nWRS6M
3928.. section: Library
3929
3930The multiprocessing module now uses the monotonic clock
3931:func:`time.monotonic` instead of the system clock :func:`time.time` to
3932implement timeout.
3933
3934..
3935
3936.. bpo: 34043
3937.. date: 2018-07-04-21-14-35
3938.. nonce: 0YJNq9
3939.. section: Library
3940
3941Optimize tarfile uncompress performance about 15% when gzip is used.
3942
3943..
3944
3945.. bpo: 34044
3946.. date: 2018-07-04-17-14-26
3947.. nonce: KWAu4y
3948.. section: Library
3949
3950``subprocess.Popen`` now copies the *startupinfo* argument to leave it
3951unchanged: it will modify the copy, so that the same ``STARTUPINFO`` object
3952can be used multiple times.
3953
3954..
3955
3956.. bpo: 34010
3957.. date: 2018-07-04-07-36-53
3958.. nonce: VNDkde
3959.. section: Library
3960
3961Fixed a performance regression for reading streams with tarfile. The
3962buffered read should use a list, instead of appending to a bytes object.
3963
3964..
3965
3966.. bpo: 34019
3967.. date: 2018-07-02-05-59-11
3968.. nonce: ZXJIife
3969.. section: Library
3970
3971webbrowser: Correct the arguments passed to Opera Browser when opening a new
3972URL using the ``webbrowser`` module. Patch by Bumsik Kim.
3973
3974..
3975
3976.. bpo: 34003
3977.. date: 2018-06-29-13-05-01
3978.. nonce: Iu831h
3979.. section: Library
3980
3981csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael
3982Selik.
3983
3984..
3985
3986.. bpo: 33978
3987.. date: 2018-06-29-12-23-34
3988.. nonce: y4csIw
3989.. section: Library
3990
3991Closed existing logging handlers before reconfiguration via fileConfig and
3992dictConfig. Patch by Karthikeyan Singaravelan.
3993
3994..
3995
3996.. bpo: 14117
3997.. date: 2018-06-29-00-31-36
3998.. nonce: 3nvDuR
3999.. section: Library
4000
4001Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette',
4002describing what it draws.  The 'penrose' print output is reduced. The'1024'
4003output of 'tree' is eliminated.
4004
4005..
4006
4007.. bpo: 33974
4008.. date: 2018-06-28-14-56-44
4009.. nonce: SA8nNP
4010.. section: Library
4011
4012Fixed passing lists and tuples of strings containing special characters
4013``"``, ``\``, ``{``, ``}`` and ``\n`` as options to :mod:`~tkinter.ttk`
4014widgets.
4015
4016..
4017
4018.. bpo: 27500
4019.. date: 2018-06-28-13-00-12
4020.. nonce: _s1gZ5
4021.. section: Library
4022
4023Fix getaddrinfo to resolve IPv6 addresses correctly.
4024
4025..
4026
4027.. bpo: 24567
4028.. date: 2018-06-27-00-31-30
4029.. nonce: FuePyY
4030.. section: Library
4031
4032Improve random.choices() to handle subnormal input weights that could
4033occasionally trigger an IndexError.
4034
4035..
4036
4037.. bpo: 33871
4038.. date: 2018-06-26-19-03-56
4039.. nonce: XhlrGU
4040.. section: Library
4041
4042Fixed integer overflow in :func:`os.readv`, :func:`os.writev`,
4043:func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` with
4044*headers* or *trailers* arguments (on BSD-based OSes and macOS).
4045
4046..
4047
4048.. bpo: 25007
4049.. date: 2018-06-26-16-55-59
4050.. nonce: 6LQWOF
4051.. section: Library
4052
4053Add :func:`copy.copy` and :func:`copy.deepcopy` support to zlib compressors
4054and decompressors.  Patch by Zackery Spytz.
4055
4056..
4057
4058.. bpo: 33929
4059.. date: 2018-06-26-02-09-18
4060.. nonce: OcCLah
4061.. section: Library
4062
4063multiprocessing: Fix a race condition in Popen of
4064multiprocessing.popen_spawn_win32. The child process now duplicates the read
4065end of pipe instead of "stealing" it. Previously, the read end of pipe was
4066"stolen" by the child process, but it leaked a handle if the child process
4067had been terminated before it could steal the handle from the parent
4068process.
4069
4070..
4071
4072.. bpo: 33899
4073.. date: 2018-06-24-01-57-14
4074.. nonce: IaOcAr
4075.. section: Library
4076
4077Tokenize module now implicitly emits a NEWLINE when provided with input that
4078does not have a trailing new line.  This behavior now matches what the C
4079tokenizer does internally.  Contributed by Ammar Askar.
4080
4081..
4082
4083.. bpo: 33897
4084.. date: 2018-06-23-18-09-28
4085.. nonce: Hu0yvt
4086.. section: Library
4087
4088Added a 'force' keyword argument to logging.basicConfig().
4089
4090..
4091
4092.. bpo: 33695
4093.. date: 2018-06-23-12-47-37
4094.. nonce: seRTxh
4095.. section: Library
4096
4097:func:`shutil.copytree` uses :func:`os.scandir` function and all copy
4098functions depending from it use cached :func:`os.stat` values. The speedup
4099for copying a directory with 8000 files is around +9% on Linux, +20% on
4100Windows and + 30% on a Windows SMB share. Also the number of :func:`os.stat`
4101syscalls is reduced by 38% making :func:`shutil.copytree` especially faster
4102on network filesystems. (Contributed by Giampaolo Rodola' in
4103:issue:`33695`.)
4104
4105..
4106
4107.. bpo: 33916
4108.. date: 2018-06-21-11-35-47
4109.. nonce: cZgPCD
4110.. section: Library
4111
4112bz2 and lzma: When Decompressor.__init__() is called twice, free the old
4113lock to not leak memory.
4114
4115..
4116
4117.. bpo: 32568
4118.. date: 2018-06-21-09-33-02
4119.. nonce: f_meGY
4120.. section: Library
4121
4122Make select.epoll() and its documentation consistent regarding *sizehint*
4123and *flags*.
4124
4125..
4126
4127.. bpo: 33833
4128.. date: 2018-06-17-11-46-20
4129.. nonce: RnEqvM
4130.. section: Library
4131
4132Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if
4133force closed during write.
4134
4135..
4136
4137.. bpo: 33663
4138.. date: 2018-06-17-10-48-03
4139.. nonce: sUuGmq
4140.. section: Library
4141
4142Convert content length to string before putting to header.
4143
4144..
4145
4146.. bpo: 33721
4147.. date: 2018-06-14-17-53-30
4148.. nonce: 8i9_9A
4149.. section: Library
4150
4151:mod:`os.path` functions that return a boolean result like
4152:func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`,
4153:func:`~os.path.isfile`, :func:`~os.path.islink`, and
4154:func:`~os.path.ismount`, and :mod:`pathlib.Path` methods that return a
4155boolean result like :meth:`~pathlib.Path.exists()`,
4156:meth:`~pathlib.Path.is_dir()`, :meth:`~pathlib.Path.is_file()`,
4157:meth:`~pathlib.Path.is_mount()`, :meth:`~pathlib.Path.is_symlink()`,
4158:meth:`~pathlib.Path.is_block_device()`,
4159:meth:`~pathlib.Path.is_char_device()`, :meth:`~pathlib.Path.is_fifo()`,
4160:meth:`~pathlib.Path.is_socket()` now return ``False`` instead of raising
4161:exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` and
4162:exc:`UnicodeDecodeError` for paths that contain characters or bytes
4163unrepresentable at the OS level.
4164
4165..
4166
4167.. bpo: 26544
4168.. date: 2018-06-13-20-33-29
4169.. nonce: hQ1oMt
4170.. section: Library
4171
4172Fixed implementation of :func:`platform.libc_ver`. It almost always returned
4173version '2.9' for glibc.
4174
4175..
4176
4177.. bpo: 33843
4178.. date: 2018-06-12-18-59-16
4179.. nonce: qVAK8g
4180.. section: Library
4181
4182Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``.
4183
4184..
4185
4186.. bpo: 33842
4187.. date: 2018-06-12-18-34-54
4188.. nonce: RZXSGu
4189.. section: Library
4190
4191Remove ``tarfile.filemode`` which is deprecated since Python 3.3.
4192
4193..
4194
4195.. bpo: 30167
4196.. date: 2018-06-10-19-29-17
4197.. nonce: G5EgC5
4198.. section: Library
4199
4200Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber.
4201
4202..
4203
4204.. bpo: 33805
4205.. date: 2018-06-10-15-14-17
4206.. nonce: 5LAz5a
4207.. section: Library
4208
4209Improve error message of dataclasses.replace() when an InitVar is not
4210specified
4211
4212..
4213
4214.. bpo: 33687
4215.. date: 2018-06-10-14-08-52
4216.. nonce: 1zZdnA
4217.. section: Library
4218
4219Fix the call to ``os.chmod()`` for ``uu.decode()`` if a mode is given or
4220decoded. Patch by Timo Furrer.
4221
4222..
4223
4224.. bpo: 33812
4225.. date: 2018-06-10-13-26-02
4226.. nonce: frGAOr
4227.. section: Library
4228
4229Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d)
4230returning None is now treated as naive by the astimezone() method.
4231
4232..
4233
4234.. bpo: 32108
4235.. date: 2018-06-10-12-15-26
4236.. nonce: iEkvh0
4237.. section: Library
4238
4239In configparser, don't clear section when it is assigned to itself.
4240
4241..
4242
4243.. bpo: 27397
4244.. date: 2018-06-10-09-43-54
4245.. nonce: 0_fFQR
4246.. section: Library
4247
4248Make email module properly handle invalid-length base64 strings.
4249
4250..
4251
4252.. bpo: 33578
4253.. date: 2018-06-08-23-55-34
4254.. nonce: 7oSsjG
4255.. section: Library
4256
4257Implement multibyte encoder/decoder state methods
4258
4259..
4260
4261.. bpo: 30805
4262.. date: 2018-06-08-17-34-16
4263.. nonce: 3qCWa0
4264.. section: Library
4265
4266Avoid race condition with debug logging
4267
4268..
4269
4270.. bpo: 33476
4271.. date: 2018-06-08-00-29-40
4272.. nonce: R0Bhlj
4273.. section: Library
4274
4275Fix _header_value_parser.py when address group is missing final ';'.
4276Contributed by Enrique Perez-Terron
4277
4278..
4279
4280.. bpo: 33694
4281.. date: 2018-06-07-23-51-00
4282.. nonce: F1zIR1
4283.. section: Library
4284
4285asyncio: Fix a race condition causing data loss on
4286pause_reading()/resume_reading() when using the ProactorEventLoop.
4287
4288..
4289
4290.. bpo: 32493
4291.. date: 2018-06-07-18-55-35
4292.. nonce: 1Bte62
4293.. section: Library
4294
4295Correct test for ``uuid_enc_be`` availability in ``configure.ac``. Patch by
4296Michael Felt.
4297
4298..
4299
4300.. bpo: 33792
4301.. date: 2018-06-07-12-38-12
4302.. nonce: 3aKG7u
4303.. section: Library
4304
4305Add asyncio.WindowsSelectorEventLoopPolicy and
4306asyncio.WindowsProactorEventLoopPolicy.
4307
4308..
4309
4310.. bpo: 33274
4311.. date: 2018-06-06-22-01-33
4312.. nonce: teYqv8
4313.. section: Library
4314
4315W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as
4316"The Attr node that was removed." xml.dom.minidom now complies with this
4317requirement.
4318
4319..
4320
4321.. bpo: 33778
4322.. date: 2018-06-05-20-22-30
4323.. nonce: _tSAS6
4324.. section: Library
4325
4326Update ``unicodedata``'s database to Unicode version 11.0.0.
4327
4328..
4329
4330.. bpo: 33165
4331.. date: 2018-06-05-12-43-25
4332.. nonce: 9TIsVf
4333.. section: Library
4334
4335Added a stacklevel parameter to logging calls to allow use of wrapper/helper
4336functions for logging APIs.
4337
4338..
4339
4340.. bpo: 33770
4341.. date: 2018-06-05-11-29-26
4342.. nonce: oBhxxw
4343.. section: Library
4344
4345improve base64 exception message for encoded inputs of invalid length
4346
4347..
4348
4349.. bpo: 33769
4350.. date: 2018-06-04-13-46-39
4351.. nonce: D_pxYz
4352.. section: Library
4353
4354asyncio/start_tls: Fix error message; cancel callbacks in case of an
4355unhandled error; mark SSLTransport as closed if it is aborted.
4356
4357..
4358
4359.. bpo: 33767
4360.. date: 2018-06-03-22-41-59
4361.. nonce: 2e82g3
4362.. section: Library
4363
4364The concatenation (``+``) and repetition (``*``) sequence operations now
4365raise :exc:`TypeError` instead of :exc:`SystemError` when performed on
4366:class:`mmap.mmap` objects.  Patch by Zackery Spytz.
4367
4368..
4369
4370.. bpo: 33734
4371.. date: 2018-06-01-10-55-48
4372.. nonce: x1W9x0
4373.. section: Library
4374
4375asyncio/ssl: Fix AttributeError, increase default handshake timeout
4376
4377..
4378
4379.. bpo: 31014
4380.. date: 2018-05-31-06-48-55
4381.. nonce: SNY681
4382.. section: Library
4383
4384Fixed creating a controller for :mod:`webbrowser` when a user specifies a
4385path to an entry in the BROWSER environment variable.  Based on patch by
4386John Still.
4387
4388..
4389
4390.. bpo: 2504
4391.. date: 2018-05-30-16-00-06
4392.. nonce: BynUvU
4393.. section: Library
4394
4395Add gettext.pgettext() and variants.
4396
4397..
4398
4399.. bpo: 33197
4400.. date: 2018-05-30-00-26-05
4401.. nonce: XkE2kL
4402.. section: Library
4403
4404Add description property for _ParameterKind
4405
4406..
4407
4408.. bpo: 32751
4409.. date: 2018-05-29-15-32-18
4410.. nonce: oBTqr7
4411.. section: Library
4412
4413When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now
4414wait until the cancellation is complete.
4415
4416..
4417
4418.. bpo: 32684
4419.. date: 2018-05-29-12-51-18
4420.. nonce: ZEIism
4421.. section: Library
4422
4423Fix gather to propagate cancellation of itself even with return_exceptions.
4424
4425..
4426
4427.. bpo: 33654
4428.. date: 2018-05-29-01-13-39
4429.. nonce: sa81Si
4430.. section: Library
4431
4432Support protocol type switching in SSLTransport.set_protocol().
4433
4434..
4435
4436.. bpo: 33674
4437.. date: 2018-05-29-00-37-56
4438.. nonce: 2IkGhL
4439.. section: Library
4440
4441Pause the transport as early as possible to further reduce the risk of
4442data_received() being called before connection_made().
4443
4444..
4445
4446.. bpo: 33671
4447.. date: 2018-05-28-23-25-17
4448.. nonce: GIdKKi
4449.. section: Library
4450
4451:func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`,
4452:func:`shutil.copytree` and :func:`shutil.move` use platform-specific
4453fast-copy syscalls on Linux and macOS in order to copy the file
4454more efficiently. On Windows :func:`shutil.copyfile` uses a bigger default
4455buffer size (1 MiB instead of 16 KiB) and a :func:`memoryview`-based variant
4456of :func:`shutil.copyfileobj` is used. The speedup for copying a 512MiB file
4457is about +26% on Linux, +50% on macOS and +40% on Windows. Also, much less
4458CPU cycles are consumed. (Contributed by Giampaolo Rodola' in
4459:issue:`25427`.)
4460
4461..
4462
4463.. bpo: 33674
4464.. date: 2018-05-28-22-49-59
4465.. nonce: 6LFFj7
4466.. section: Library
4467
4468Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto:
4469start immediately the handshake instead of using call_soon(). Previously,
4470data_received() could be called before the handshake started, causing the
4471handshake to hang or fail.
4472
4473..
4474
4475.. bpo: 31647
4476.. date: 2018-05-28-18-40-26
4477.. nonce: s4Fad3
4478.. section: Library
4479
4480Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's
4481already closed raises AttributeError.
4482
4483..
4484
4485.. bpo: 32610
4486.. date: 2018-05-28-16-40-32
4487.. nonce: KvUAsL
4488.. section: Library
4489
4490Make asyncio.all_tasks() return only pending tasks.
4491
4492..
4493
4494.. bpo: 32410
4495.. date: 2018-05-28-16-19-35
4496.. nonce: Z1DZaF
4497.. section: Library
4498
4499Avoid blocking on file IO in sendfile fallback code
4500
4501..
4502
4503.. bpo: 33469
4504.. date: 2018-05-28-15-55-12
4505.. nonce: hmXBpY
4506.. section: Library
4507
4508Fix RuntimeError after closing loop that used run_in_executor
4509
4510..
4511
4512.. bpo: 33672
4513.. date: 2018-05-28-12-29-54
4514.. nonce: GM_Xm_
4515.. section: Library
4516
4517Fix Task.__repr__ crash with Cython's bogus coroutines
4518
4519..
4520
4521.. bpo: 33654
4522.. date: 2018-05-26-13-09-34
4523.. nonce: IbYWxA
4524.. section: Library
4525
4526Fix transport.set_protocol() to support switching between asyncio.Protocol
4527and asyncio.BufferedProtocol.  Fix loop.start_tls() to work with
4528asyncio.BufferedProtocols.
4529
4530..
4531
4532.. bpo: 33652
4533.. date: 2018-05-26-10-13-59
4534.. nonce: humFJ1
4535.. section: Library
4536
4537Pickles of type variables and subscripted generics are now future-proof and
4538compatible with older Python versions.
4539
4540..
4541
4542.. bpo: 32493
4543.. date: 2018-05-24-17-41-36
4544.. nonce: 5tAoAu
4545.. section: Library
4546
4547Fixed :func:`uuid.uuid1` on FreeBSD.
4548
4549..
4550
4551.. bpo: 33238
4552.. date: 2018-05-24-09-15-52
4553.. nonce: ooDfoo
4554.. section: Library
4555
4556Add ``InvalidStateError`` to :mod:`concurrent.futures`.
4557``Future.set_result`` and ``Future.set_exception`` now raise
4558``InvalidStateError`` if the futures are not pending or running. Patch by
4559Jason Haydaman.
4560
4561..
4562
4563.. bpo: 33618
4564.. date: 2018-05-23-20-14-34
4565.. nonce: xU39lr
4566.. section: Library
4567
4568Finalize and document preliminary and experimental TLS 1.3 support with
4569OpenSSL 1.1.1
4570
4571..
4572
4573.. bpo: 33625
4574.. date: 2018-05-23-17-07-54
4575.. nonce: nzQgD8
4576.. section: Library
4577
4578Release GIL on `grp.getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and
4579`pwd.getpwuid` if reentrant variants of these functions are available. Patch
4580by William Grzybowski.
4581
4582..
4583
4584.. bpo: 33623
4585.. date: 2018-05-23-14-58-05
4586.. nonce: wAw1cF
4587.. section: Library
4588
4589Fix possible SIGSGV when asyncio.Future is created in __del__
4590
4591..
4592
4593.. bpo: 11874
4594.. date: 2018-05-23-00-26-27
4595.. nonce: glK5iP
4596.. section: Library
4597
4598Use a better regex when breaking usage into wrappable parts. Avoids bogus
4599assertion errors from custom metavar strings.
4600
4601..
4602
4603.. bpo: 30877
4604.. date: 2018-05-22-13-05-12
4605.. nonce: JZEGjI
4606.. section: Library
4607
4608Fixed a bug in the Python implementation of the JSON decoder that prevented
4609the cache of parsed strings from clearing after finishing the decoding.
4610Based on patch by c-fos.
4611
4612..
4613
4614.. bpo: 33604
4615.. date: 2018-05-22-11-55-33
4616.. nonce: 6V4JcO
4617.. section: Library
4618
4619Remove HMAC default to md5 marked for removal in 3.8 (removal originally
4620planned in 3.6, bump to 3.8 in gh-7062).
4621
4622..
4623
4624.. bpo: 33582
4625.. date: 2018-05-19-15-58-14
4626.. nonce: qBZPmF
4627.. section: Library
4628
4629Emit a deprecation warning for inspect.formatargspec
4630
4631..
4632
4633.. bpo: 21145
4634.. date: 2018-05-18-22-52-34
4635.. nonce: AiQMDx
4636.. section: Library
4637
4638Add ``functools.cached_property`` decorator, for computed properties cached
4639for the life of the instance.
4640
4641..
4642
4643.. bpo: 33570
4644.. date: 2018-05-18-21-50-47
4645.. nonce: 7CZy4t
4646.. section: Library
4647
4648Change TLS 1.3 cipher suite settings for compatibility with OpenSSL
46491.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by
4650default.
4651
4652..
4653
4654.. bpo: 28556
4655.. date: 2018-05-17-22-53-08
4656.. nonce: C6Hnd1
4657.. section: Library
4658
4659Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]`
4660is not simplified to `Employee` at runtime. Such simplification previously
4661caused several bugs and limited possibilities for introspection.
4662
4663..
4664
4665.. bpo: 12486
4666.. date: 2018-05-17-22-14-58
4667.. nonce: HBeh62
4668.. section: Library
4669
4670:func:`tokenize.generate_tokens` is now documented as a public API to
4671tokenize unicode strings. It was previously present but undocumented.
4672
4673..
4674
4675.. bpo: 33540
4676.. date: 2018-05-16-18-10-38
4677.. nonce: wy9LRV
4678.. section: Library
4679
4680Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and
4681``ThreadingMixIn`` classes of :mod:`socketserver`.
4682
4683..
4684
4685.. bpo: 33548
4686.. date: 2018-05-16-17-05-48
4687.. nonce: xWslmx
4688.. section: Library
4689
4690tempfile._candidate_tempdir_list should consider common TEMP locations
4691
4692..
4693
4694.. bpo: 33109
4695.. date: 2018-05-16-14-57-58
4696.. nonce: nPLL_S
4697.. section: Library
4698
4699argparse subparsers are once again not required by default, reverting the
4700change in behavior introduced by bpo-26510 in 3.7.0a2.
4701
4702..
4703
4704.. bpo: 33541
4705.. date: 2018-05-16-12-32-48
4706.. nonce: kQORPE
4707.. section: Library
4708
4709Remove unused private method ``_strptime.LocaleTime.__pad`` (a.k.a.
4710``_LocaleTime__pad``).
4711
4712..
4713
4714.. bpo: 33536
4715.. date: 2018-05-16-10-07-40
4716.. nonce: _s0TE8
4717.. section: Library
4718
4719dataclasses.make_dataclass now checks for invalid field names and duplicate
4720fields. Also, added a check for invalid field specifications.
4721
4722..
4723
4724.. bpo: 33542
4725.. date: 2018-05-16-09-30-27
4726.. nonce: idNAcs
4727.. section: Library
4728
4729Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows.
4730Patch by Zvi Effron
4731
4732..
4733
4734.. bpo: 26819
4735.. date: 2018-05-16-05-24-43
4736.. nonce: taxbVT
4737.. section: Library
4738
4739Fix race condition with `ReadTransport.resume_reading` in Windows proactor
4740event loop.
4741
4742..
4743
4744.. bpo: 0
4745.. date: 2018-05-15-18-02-03
4746.. nonce: pj2Mbb
4747.. section: Library
4748
4749Fix failure in `typing.get_type_hints()` when ClassVar was provided as a
4750string forward reference.
4751
4752..
4753
4754.. bpo: 33516
4755.. date: 2018-05-15-17-06-42
4756.. nonce: ZzARe4
4757.. section: Library
4758
4759:class:`unittest.mock.MagicMock` now supports the ``__round__`` magic
4760method.
4761
4762..
4763
4764.. bpo: 28612
4765.. date: 2018-05-15-15-03-48
4766.. nonce: E9dz39
4767.. section: Library
4768
4769Added support for Site Maps to urllib's ``RobotFileParser`` as
4770:meth:`RobotFileParser.site_maps()
4771<urllib.robotparser.RobotFileParser.site_maps>`. Patch by Lady Red, based on
4772patch by Peter Wirtz.
4773
4774..
4775
4776.. bpo: 28167
4777.. date: 2018-05-15-13-49-13
4778.. nonce: p4RdQt
4779.. section: Library
4780
4781Remove platform.linux_distribution, which was deprecated since 3.5.
4782
4783..
4784
4785.. bpo: 33504
4786.. date: 2018-05-15-12-11-13
4787.. nonce: czsHFg
4788.. section: Library
4789
4790Switch the default dictionary implementation for :mod:`configparser` from
4791:class:`collections.OrderedDict` to the standard :class:`dict` type.
4792
4793..
4794
4795.. bpo: 33505
4796.. date: 2018-05-14-18-05-35
4797.. nonce: L8pAyt
4798.. section: Library
4799
4800Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster.
4801
4802..
4803
4804.. bpo: 33497
4805.. date: 2018-05-14-17-49-34
4806.. nonce: wWT6XM
4807.. section: Library
4808
4809Add errors param to cgi.parse_multipart and make an encoding in FieldStorage
4810use the given errors (needed for Twisted).  Patch by Amber Brown.
4811
4812..
4813
4814.. bpo: 29235
4815.. date: 2018-05-14-15-01-55
4816.. nonce: 47Fzwt
4817.. section: Library
4818
4819The :class:`cProfile.Profile` class can now be used as a context manager.
4820Patch by Scott Sanderson.
4821
4822..
4823
4824.. bpo: 33495
4825.. date: 2018-05-14-10-29-03
4826.. nonce: TeGTQJ
4827.. section: Library
4828
4829Change dataclasses.Fields repr to use the repr of each of its members,
4830instead of str.  This makes it more clear what each field actually
4831represents.  This is especially true for the 'type' member.
4832
4833..
4834
4835.. bpo: 26103
4836.. date: 2018-05-14-09-07-14
4837.. nonce: _zU8E2
4838.. section: Library
4839
4840Correct ``inspect.isdatadescriptor`` to look for ``__set__`` or
4841``__delete__``.  Patch by Aaron Hall.
4842
4843..
4844
4845.. bpo: 29209
4846.. date: 2018-05-12-13-06-41
4847.. nonce: h5RxYy
4848.. section: Library
4849
4850Removed the ``doctype()`` method and the *html* parameter of the constructor
4851of :class:`~xml.etree.ElementTree.XMLParser`.  The ``doctype()`` method
4852defined in a subclass will no longer be called.  Deprecated methods
4853``getchildren()`` and ``getiterator()`` in the :mod:`~xml.etree.ElementTree`
4854module emit now a :exc:`DeprecationWarning` instead of
4855:exc:`PendingDeprecationWarning`.
4856
4857..
4858
4859.. bpo: 33453
4860.. date: 2018-05-12-06-01-02
4861.. nonce: Fj-jMD
4862.. section: Library
4863
4864Fix dataclasses to work if using literal string type annotations or if using
4865PEP 563 "Postponed Evaluation of Annotations".  Only specific string
4866prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar")
4867and InitVar ("InitVar" and "dataclasses.InitVar").
4868
4869..
4870
4871.. bpo: 28556
4872.. date: 2018-05-08-16-43-42
4873.. nonce: _xr5mp
4874.. section: Library
4875
4876Minor fixes in typing module: add annotations to ``NamedTuple.__new__``,
4877pass ``*args`` and ``**kwds`` in ``Generic.__new__``.  Original PRs by
4878Paulius Šarka and Chad Dombrova.
4879
4880..
4881
4882.. bpo: 33365
4883.. date: 2018-05-08-15-01-10
4884.. nonce: SicsAd
4885.. section: Library
4886
4887Print the header values besides the header keys instead just the header keys
4888if *debuglevel* is set to >0 in :mod:`http.client`. Patch by Marco Strigl.
4889
4890..
4891
4892.. bpo: 20087
4893.. date: 2018-05-05-18-02-24
4894.. nonce: lJrvXL
4895.. section: Library
4896
4897Updated alias mapping with glibc 2.27 supported locales.
4898
4899..
4900
4901.. bpo: 33422
4902.. date: 2018-05-05-09-53-05
4903.. nonce: 4FtQ0q
4904.. section: Library
4905
4906Fix trailing quotation marks getting deleted when looking up byte/string
4907literals on pydoc. Patch by Andrés Delfino.
4908
4909..
4910
4911.. bpo: 28167
4912.. date: 2018-05-02-07-26-29
4913.. nonce: 7FwDfN
4914.. section: Library
4915
4916The function ``platform.linux_distribution`` and ``platform.dist`` now
4917trigger a ``DeprecationWarning`` and have been marked for removal in Python
49183.8
4919
4920..
4921
4922.. bpo: 33281
4923.. date: 2018-05-01-22-35-50
4924.. nonce: d4jOt4
4925.. section: Library
4926
4927Fix ctypes.util.find_library regression on macOS.
4928
4929..
4930
4931.. bpo: 33311
4932.. date: 2018-05-01-22-33-14
4933.. nonce: 8YPB-k
4934.. section: Library
4935
4936Text and html output generated by cgitb does not display parentheses if the
4937current call is done directly in the module. Patch by Stéphane Blondon.
4938
4939..
4940
4941.. bpo: 27300
4942.. date: 2018-05-01-02-24-44
4943.. nonce: LdIXvK
4944.. section: Library
4945
4946The file classes in *tempfile* now accept an *errors* parameter that
4947complements the already existing *encoding*.  Patch by Stephan Hohe.
4948
4949..
4950
4951.. bpo: 32933
4952.. date: 2018-04-30-22-43-31
4953.. nonce: M3iI_y
4954.. section: Library
4955
4956:func:`unittest.mock.mock_open` now supports iteration over the file
4957contents. Patch by Tony Flury.
4958
4959..
4960
4961.. bpo: 33217
4962.. date: 2018-04-30-13-29-47
4963.. nonce: TENDzd
4964.. section: Library
4965
4966Raise :exc:`TypeError` when looking up non-Enum objects in Enum classes and
4967Enum members.
4968
4969..
4970
4971.. bpo: 33197
4972.. date: 2018-04-29-23-56-20
4973.. nonce: dgRLqr
4974.. section: Library
4975
4976Update error message when constructing invalid inspect.Parameters Patch by
4977Dong-hee Na.
4978
4979..
4980
4981.. bpo: 33383
4982.. date: 2018-04-29-11-15-38
4983.. nonce: g32YWn
4984.. section: Library
4985
4986Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when
4987it is called with a single argument.
4988
4989..
4990
4991.. bpo: 33375
4992.. date: 2018-04-28-08-11-35
4993.. nonce: Dbq1fz
4994.. section: Library
4995
4996The warnings module now finds the Python file associated with a warning from
4997the code object, rather than the frame's global namespace. This is
4998consistent with how tracebacks and pdb find filenames, and should work
4999better for dynamically executed code.
5000
5001..
5002
5003.. bpo: 33336
5004.. date: 2018-04-27-22-18-38
5005.. nonce: T8rxn0
5006.. section: Library
5007
5008``imaplib`` now allows ``MOVE`` command in ``IMAP4.uid()`` (RFC 6851: IMAP
5009MOVE Extension) and potentially as a name of supported method of ``IMAP4``
5010object.
5011
5012..
5013
5014.. bpo: 32455
5015.. date: 2018-04-26-13-31-10
5016.. nonce: KPWg3K
5017.. section: Library
5018
5019Added *jump* parameter to :func:`dis.stack_effect`.
5020
5021..
5022
5023.. bpo: 27485
5024.. date: 2018-04-25-14-05-21
5025.. nonce: nclVSU
5026.. section: Library
5027
5028Rename and deprecate undocumented functions in :func:`urllib.parse`.
5029
5030..
5031
5032.. bpo: 33332
5033.. date: 2018-04-23-21-41-30
5034.. nonce: Y6OZ8Z
5035.. section: Library
5036
5037Add ``signal.valid_signals()`` to expose the POSIX sigfillset()
5038functionality.
5039
5040..
5041
5042.. bpo: 33251
5043.. date: 2018-04-23-18-25-36
5044.. nonce: C_K-J9
5045.. section: Library
5046
5047`ConfigParser.items()` was fixed so that key-value pairs passed in via
5048`vars` are not included in the resulting output.
5049
5050..
5051
5052.. bpo: 33329
5053.. date: 2018-04-23-13-21-39
5054.. nonce: lQ-Eod
5055.. section: Library
5056
5057Fix multiprocessing regression on newer glibcs
5058
5059..
5060
5061.. bpo: 33334
5062.. date: 2018-04-22-20-13-21
5063.. nonce: 19UMOC
5064.. section: Library
5065
5066:func:`dis.stack_effect` now supports all defined opcodes including NOP and
5067EXTENDED_ARG.
5068
5069..
5070
5071.. bpo: 991266
5072.. date: 2018-04-21-00-24-08
5073.. nonce: h93TP_
5074.. section: Library
5075
5076Fix quoting of the ``Comment`` attribute of
5077:class:`http.cookies.SimpleCookie`.
5078
5079..
5080
5081.. bpo: 33131
5082.. date: 2018-04-20-10-43-17
5083.. nonce: L2E977
5084.. section: Library
5085
5086Upgrade bundled version of pip to 10.0.1.
5087
5088..
5089
5090.. bpo: 33308
5091.. date: 2018-04-18-19-12-25
5092.. nonce: fW75xi
5093.. section: Library
5094
5095Fixed a crash in the :mod:`parser` module when converting an ST object to a
5096tree of tuples or lists with ``line_info=False`` and ``col_info=True``.
5097
5098..
5099
5100.. bpo: 23403
5101.. date: 2018-04-16-16-21-09
5102.. nonce: rxR1Q_
5103.. section: Library
5104
5105lib2to3 now uses pickle protocol 4 for pre-computed grammars.
5106
5107..
5108
5109.. bpo: 33266
5110.. date: 2018-04-16-15-59-21
5111.. nonce: w2PAm-
5112.. section: Library
5113
5114lib2to3 now recognizes ``rf'...'`` strings.
5115
5116..
5117
5118.. bpo: 11594
5119.. date: 2018-04-16-08-42-03
5120.. nonce: QLo4vv
5121.. section: Library
5122
5123Ensure line-endings are respected when using lib2to3.
5124
5125..
5126
5127.. bpo: 33254
5128.. date: 2018-04-13-15-14-47
5129.. nonce: DS4KFK
5130.. section: Library
5131
5132Have :func:`importlib.resources.contents` and
5133:meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable`
5134instead of an :term:`iterator`.
5135
5136..
5137
5138.. bpo: 33265
5139.. date: 2018-04-13-08-12-50
5140.. nonce: KPQRk0
5141.. section: Library
5142
5143``contextlib.ExitStack`` and ``contextlib.AsyncExitStack`` now use a method
5144instead of a wrapper function for exit callbacks.
5145
5146..
5147
5148.. bpo: 33263
5149.. date: 2018-04-11-20-29-19
5150.. nonce: B56Hc1
5151.. section: Library
5152
5153Fix FD leak in `_SelectorSocketTransport`  Patch by Vlad Starostin.
5154
5155..
5156
5157.. bpo: 33256
5158.. date: 2018-04-10-20-57-14
5159.. nonce: ndHkqu
5160.. section: Library
5161
5162Fix display of ``<module>`` call in the html produced by ``cgitb.html()``.
5163Patch by Stéphane Blondon.
5164
5165..
5166
5167.. bpo: 33144
5168.. date: 2018-04-10-14-50-30
5169.. nonce: iZr4et
5170.. section: Library
5171
5172``random.Random()`` and its subclassing mechanism got optimized to check
5173only once at class/subclass instantiation time whether its ``getrandbits()``
5174method can be relied on by other methods, including ``randrange()``, for the
5175generation of arbitrarily large random integers.  Patch by Wolfgang Maier.
5176
5177..
5178
5179.. bpo: 33185
5180.. date: 2018-04-08-22-54-07
5181.. nonce: Id-Ba9
5182.. section: Library
5183
5184Fixed regression when running pydoc with the :option:`-m` switch. (The
5185regression was introduced in 3.7.0b3 by the resolution of :issue:`33053`)
5186
5187This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when
5188necessary, rather than adding ``"."``.
5189
5190..
5191
5192.. bpo: 29613
5193.. date: 2018-04-07-13-49-39
5194.. nonce: r6FDnB
5195.. section: Library
5196
5197Added support for the ``SameSite`` cookie flag to the ``http.cookies``
5198module.
5199
5200..
5201
5202.. bpo: 33169
5203.. date: 2018-04-06-14-56-26
5204.. nonce: ByhDqb
5205.. section: Library
5206
5207Delete entries of ``None`` in :data:`sys.path_importer_cache` when
5208:meth:`importlib.machinery.invalidate_caches` is called.
5209
5210..
5211
5212.. bpo: 33203
5213.. date: 2018-04-05-11-09-45
5214.. nonce: Hje9Py
5215.. section: Library
5216
5217``random.Random.choice()`` now raises ``IndexError`` for empty sequences
5218consistently even when called from subclasses without a ``getrandbits()``
5219implementation.
5220
5221..
5222
5223.. bpo: 33224
5224.. date: 2018-04-04-23-41-30
5225.. nonce: pyR0jB
5226.. section: Library
5227
5228Update difflib.mdiff() for :pep:`479`.  Convert an uncaught StopIteration in
5229a generator into a return-statement.
5230
5231..
5232
5233.. bpo: 33209
5234.. date: 2018-04-03-10-37-13
5235.. nonce: 9sGWE_
5236.. section: Library
5237
5238End framing at the end of C implementation of :func:`pickle.Pickler.dump`.
5239
5240..
5241
5242.. bpo: 32861
5243.. date: 2018-04-02-20-44-54
5244.. nonce: HeBjzN
5245.. section: Library
5246
5247The urllib.robotparser's ``__str__`` representation now includes wildcard
5248entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra
5249newlines that were being appended to the end of the string. Patch by Michael
5250Lazar.
5251
5252..
5253
5254.. bpo: 23403
5255.. date: 2018-04-02-16-10-12
5256.. nonce: KG7ADV
5257.. section: Library
5258
5259``DEFAULT_PROTOCOL`` in :mod:`pickle` was bumped to 4. Protocol 4 is
5260described in :pep:`3154` and available since Python 3.4. It offers better
5261performance and smaller size compared to protocol 3 introduced in Python
52623.0.
5263
5264..
5265
5266.. bpo: 20104
5267.. date: 2018-04-01-19-21-04
5268.. nonce: -AKcGa
5269.. section: Library
5270
5271Improved error handling and fixed a reference leak in
5272:func:`os.posix_spawn()`.
5273
5274..
5275
5276.. bpo: 33106
5277.. date: 2018-03-30-01-20-35
5278.. nonce: zncfvW
5279.. section: Library
5280
5281Deleting a key from a read-only dbm database raises module specific error
5282instead of KeyError.
5283
5284..
5285
5286.. bpo: 33175
5287.. date: 2018-03-29-04-32-25
5288.. nonce: _zs1yM
5289.. section: Library
5290
5291In dataclasses, Field.__set_name__ now looks up the __set_name__ special
5292method on the class, not the instance, of the default value.
5293
5294..
5295
5296.. bpo: 32380
5297.. date: 2018-03-29-03-09-22
5298.. nonce: NhuGig
5299.. section: Library
5300
5301Create functools.singledispatchmethod to support generic single dispatch on
5302descriptors and methods.
5303
5304..
5305
5306.. bpo: 33141
5307.. date: 2018-03-26-12-33-13
5308.. nonce: 23wlxf
5309.. section: Library
5310
5311Have Field objects pass through __set_name__ to their default values, if
5312they have their own __set_name__.
5313
5314..
5315
5316.. bpo: 33096
5317.. date: 2018-03-25-13-18-16
5318.. nonce: ofdbe7
5319.. section: Library
5320
5321Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note
5322iid=0 and iid=False would be same. Patch by Garvit Khatri.
5323
5324..
5325
5326.. bpo: 32873
5327.. date: 2018-03-24-19-54-48
5328.. nonce: cHyoAm
5329.. section: Library
5330
5331Treat type variables and special typing forms as immutable by copy and
5332pickle.  This fixes several minor issues and inconsistencies, and improves
5333backwards compatibility with Python 3.6.
5334
5335..
5336
5337.. bpo: 33134
5338.. date: 2018-03-24-19-34-26
5339.. nonce: hbVeIX
5340.. section: Library
5341
5342When computing dataclass's __hash__, use the lookup table to contain the
5343function which returns the __hash__ value.  This is an improvement over
5344looking up a string, and then testing that string to see what to do.
5345
5346..
5347
5348.. bpo: 33127
5349.. date: 2018-03-24-15-08-24
5350.. nonce: olJmHv
5351.. section: Library
5352
5353The ssl module now compiles with LibreSSL 2.7.1.
5354
5355..
5356
5357.. bpo: 32505
5358.. date: 2018-03-22-16-05-56
5359.. nonce: YK1N8v
5360.. section: Library
5361
5362Raise TypeError if a member variable of a dataclass is of type Field, but
5363doesn't have a type annotation.
5364
5365..
5366
5367.. bpo: 33078
5368.. date: 2018-03-21-17-59-39
5369.. nonce: PQOniT
5370.. section: Library
5371
5372Fix the failure on OSX caused by the tests relying on sem_getvalue
5373
5374..
5375
5376.. bpo: 33116
5377.. date: 2018-03-21-16-52-26
5378.. nonce: Tvzerj
5379.. section: Library
5380
5381Add 'Field' to dataclasses.__all__.
5382
5383..
5384
5385.. bpo: 32896
5386.. date: 2018-03-20-20-53-21
5387.. nonce: ewW3Ln
5388.. section: Library
5389
5390Fix an error where subclassing a dataclass with a field that uses a
5391default_factory would generate an incorrect class.
5392
5393..
5394
5395.. bpo: 33100
5396.. date: 2018-03-19-20-47-00
5397.. nonce: chyIO4
5398.. section: Library
5399
5400Dataclasses: If a field has a default value that's a MemberDescriptorType,
5401then it's from that field being in __slots__, not an actual default value.
5402
5403..
5404
5405.. bpo: 32953
5406.. date: 2018-03-18-17-38-48
5407.. nonce: t8WAWN
5408.. section: Library
5409
5410If a non-dataclass inherits from a frozen dataclass, allow attributes to be
5411added to the derived class.  Only attributes from the frozen dataclass
5412cannot be assigned to.  Require all dataclasses in a hierarchy to be either
5413all frozen or all non-frozen.
5414
5415..
5416
5417.. bpo: 33097
5418.. date: 2018-03-18-16-48-23
5419.. nonce: Yl4gI2
5420.. section: Library
5421
5422Raise RuntimeError when ``executor.submit`` is called during interpreter
5423shutdown.
5424
5425..
5426
5427.. bpo: 32968
5428.. date: 2018-03-18-15-57-32
5429.. nonce: E4G7BO
5430.. section: Library
5431
5432Modulo and floor division involving Fraction and float should return float.
5433
5434..
5435
5436.. bpo: 33061
5437.. date: 2018-03-16-16-07-33
5438.. nonce: TRTTek
5439.. section: Library
5440
5441Add missing ``NoReturn`` to ``__all__`` in typing.py
5442
5443..
5444
5445.. bpo: 33078
5446.. date: 2018-03-15-07-38-00
5447.. nonce: RmjUF5
5448.. section: Library
5449
5450Fix the size handling in multiprocessing.Queue when a pickling error occurs.
5451
5452..
5453
5454.. bpo: 33064
5455.. date: 2018-03-12-19-58-25
5456.. nonce: LO2KIY
5457.. section: Library
5458
5459lib2to3 now properly supports trailing commas after ``*args`` and
5460``**kwargs`` in function signatures.
5461
5462..
5463
5464.. bpo: 33056
5465.. date: 2018-03-12-16-40-00
5466.. nonce: lNN9Eh
5467.. section: Library
5468
5469FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor.
5470
5471..
5472
5473.. bpo: 33021
5474.. date: 2018-03-12-00-27-56
5475.. nonce: m19B9T
5476.. section: Library
5477
5478Release the GIL during fstat() calls, avoiding hang of all threads when
5479calling mmap.mmap(), os.urandom(), and random.seed().  Patch by Nir Soffer.
5480
5481..
5482
5483.. bpo: 31804
5484.. date: 2018-03-11-19-03-52
5485.. nonce: i8KUMp
5486.. section: Library
5487
5488Avoid failing in multiprocessing.Process if the standard streams are closed
5489or None at exit.
5490
5491..
5492
5493.. bpo: 33034
5494.. date: 2018-03-11-08-44-12
5495.. nonce: bpb23d
5496.. section: Library
5497
5498Providing an explicit error message when casting the port property to
5499anything that is not an integer value using ``urlparse()`` and
5500``urlsplit()``. Patch by Matt Eaton.
5501
5502..
5503
5504.. bpo: 30249
5505.. date: 2018-03-11-00-20-26
5506.. nonce: KSkgLB
5507.. section: Library
5508
5509Improve struct.unpack_from() exception messages for problems with the buffer
5510size and offset.
5511
5512..
5513
5514.. bpo: 33037
5515.. date: 2018-03-09-23-07-07
5516.. nonce: nAJ3at
5517.. section: Library
5518
5519Skip sending/receiving data after SSL transport closing.
5520
5521..
5522
5523.. bpo: 27683
5524.. date: 2018-03-07-22-28-17
5525.. nonce: 572Rv4
5526.. section: Library
5527
5528Fix a regression in :mod:`ipaddress` that result of :meth:`hosts` is empty
5529when the network is constructed by a tuple containing an integer mask and
5530only 1 bit left for addresses.
5531
5532..
5533
5534.. bpo: 22674
5535.. date: 2018-03-07-19-37-00
5536.. nonce: 2sIMmM
5537.. section: Library
5538
5539Add the strsignal() function in the signal module that returns the system
5540description of the given signal, as returned by strsignal(3).
5541
5542..
5543
5544.. bpo: 32999
5545.. date: 2018-03-06-20-30-20
5546.. nonce: lgFXWl
5547.. section: Library
5548
5549Fix C implementation of ``ABC.__subclasscheck__(cls, subclass)`` crashed
5550when ``subclass`` is not a type object.
5551
5552..
5553
5554.. bpo: 33009
5555.. date: 2018-03-06-11-54-59
5556.. nonce: -Ekysb
5557.. section: Library
5558
5559Fix inspect.signature() for single-parameter partialmethods.
5560
5561..
5562
5563.. bpo: 32969
5564.. date: 2018-03-06-00-19-41
5565.. nonce: rGTKa0
5566.. section: Library
5567
5568Expose several missing constants in zlib and fix corresponding
5569documentation.
5570
5571..
5572
5573.. bpo: 32056
5574.. date: 2018-03-01-17-49-56
5575.. nonce: IlpfgE
5576.. section: Library
5577
5578Improved exceptions raised for invalid number of channels and sample width
5579when read an audio file in modules :mod:`aifc`, :mod:`wave` and
5580:mod:`sunau`.
5581
5582..
5583
5584.. bpo: 32970
5585.. date: 2018-02-28-18-39-48
5586.. nonce: IPWtbS
5587.. section: Library
5588
5589Improved disassembly of the MAKE_FUNCTION instruction.
5590
5591..
5592
5593.. bpo: 32844
5594.. date: 2018-02-28-13-08-00
5595.. nonce: u8tnAe
5596.. section: Library
5597
5598Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess
5599if another low descriptor is closed.
5600
5601..
5602
5603.. bpo: 32960
5604.. date: 2018-02-26-20-04-40
5605.. nonce: 48r0Ml
5606.. section: Library
5607
5608For dataclasses, disallow inheriting frozen from non-frozen classes, and
5609also disallow inheriting non-frozen from frozen classes. This restriction
5610will be relaxed at a future date.
5611
5612..
5613
5614.. bpo: 32713
5615.. date: 2018-02-26-13-16-36
5616.. nonce: 55yegW
5617.. section: Library
5618
5619Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey
5620Fuhrer.
5621
5622..
5623
5624.. bpo: 32257
5625.. date: 2018-02-26-09-08-07
5626.. nonce: 6ElnUt
5627.. section: Library
5628
5629The ssl module now contains OP_NO_RENEGOTIATION constant, available with
5630OpenSSL 1.1.0h or 1.1.1.
5631
5632..
5633
5634.. bpo: 32951
5635.. date: 2018-02-25-18-22-01
5636.. nonce: gHrCXq
5637.. section: Library
5638
5639Direct instantiation of SSLSocket and SSLObject objects is now prohibited.
5640The constructors were never documented, tested, or designed as public
5641constructors. Users were suppose to use ssl.wrap_socket() or SSLContext.
5642
5643..
5644
5645.. bpo: 32929
5646.. date: 2018-02-25-13-47-48
5647.. nonce: X2gTDH
5648.. section: Library
5649
5650Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If
5651unsafe_hash is True, add a __hash__ function, but if a __hash__ exists,
5652raise TypeError.  If unsafe_hash is False, add a __hash__ based on the
5653values of eq= and frozen=.  The unsafe_hash=False behavior is the same as
5654the old hash=None behavior.  unsafe_hash=False is the default, just as
5655hash=None used to be.
5656
5657..
5658
5659.. bpo: 32947
5660.. date: 2018-02-25-13-06-21
5661.. nonce: mqStVW
5662.. section: Library
5663
5664Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future
5665compatibility with OpenSSL 1.1.1.
5666
5667..
5668
5669.. bpo: 32146
5670.. date: 2018-02-25-10-17-23
5671.. nonce: xOzUFW
5672.. section: Library
5673
5674Document the interaction between frozen executables and the spawn and
5675forkserver start methods in multiprocessing.
5676
5677..
5678
5679.. bpo: 30622
5680.. date: 2018-02-24-21-40-42
5681.. nonce: dQjxSe
5682.. section: Library
5683
5684The ssl module now detects missing NPN support in LibreSSL.
5685
5686..
5687
5688.. bpo: 32922
5689.. date: 2018-02-23-19-12-04
5690.. nonce: u-xe0B
5691.. section: Library
5692
5693dbm.open() now encodes filename with the filesystem encoding rather than
5694default encoding.
5695
5696..
5697
5698.. bpo: 32759
5699.. date: 2018-02-23-12-21-41
5700.. nonce: M-y9GA
5701.. section: Library
5702
5703Free unused arenas in multiprocessing.heap.
5704
5705..
5706
5707.. bpo: 32859
5708.. date: 2018-02-19-17-46-31
5709.. nonce: kAT-Xp
5710.. section: Library
5711
5712In ``os.dup2``, don't check every call whether the ``dup3`` syscall exists
5713or not.
5714
5715..
5716
5717.. bpo: 32556
5718.. date: 2018-02-19-14-27-51
5719.. nonce: CsRsgr
5720.. section: Library
5721
5722nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now
5723correctly convert from bytes.
5724
5725..
5726
5727.. bpo: 21060
5728.. date: 2018-02-17-19-20-19
5729.. nonce: S1Z-x6
5730.. section: Library
5731
5732Rewrite confusing message from setup.py upload from "No dist file created in
5733earlier command" to the more helpful "Must create and upload files in one
5734command".
5735
5736..
5737
5738.. bpo: 32857
5739.. date: 2018-02-16-14-37-14
5740.. nonce: -XljAx
5741.. section: Library
5742
5743In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:`ValueError`
5744instead of canceling the first scheduled function.  Patch by Cheryl Sabella.
5745
5746..
5747
5748.. bpo: 32852
5749.. date: 2018-02-15-12-04-29
5750.. nonce: HDqIxM
5751.. section: Library
5752
5753Make sure sys.argv remains as a list when running trace.
5754
5755..
5756
5757.. bpo: 31333
5758.. date: 2018-02-15-08-18-52
5759.. nonce: 4fF-gM
5760.. section: Library
5761
5762``_abc`` module is added.  It is a speedup module with C implementations for
5763various functions and methods in ``abc``.  Creating an ABC subclass and
5764calling ``isinstance`` or ``issubclass`` with an ABC subclass are up to 1.5x
5765faster. In addition, this makes Python start-up up to 10% faster.
5766
5767Note that the new implementation hides internal registry and caches,
5768previously accessible via private attributes ``_abc_registry``,
5769``_abc_cache``, and ``_abc_negative_cache``.  There are three debugging
5770helper methods that can be used instead ``_dump_registry``,
5771``_abc_registry_clear``, and ``_abc_caches_clear``.
5772
5773..
5774
5775.. bpo: 32841
5776.. date: 2018-02-14-00-21-24
5777.. nonce: bvHDOc
5778.. section: Library
5779
5780Fixed `asyncio.Condition` issue which silently ignored cancellation after
5781notifying and cancelling a conditional lock. Patch by Bar Harel.
5782
5783..
5784
5785.. bpo: 32819
5786.. date: 2018-02-11-15-54-41
5787.. nonce: ZTRX2Q
5788.. section: Library
5789
5790ssl.match_hostname() has been simplified and no longer depends on re and
5791ipaddress module for wildcard and IP addresses. Error reporting for invalid
5792wildcards has been improved.
5793
5794..
5795
5796.. bpo: 19675
5797.. date: 2018-02-10-23-41-05
5798.. nonce: -dj35-
5799.. section: Library
5800
5801``multiprocessing.Pool`` no longer leaks processes if its initialization
5802fails.
5803
5804..
5805
5806.. bpo: 32394
5807.. date: 2018-02-10-13-51-56
5808.. nonce: dFM9SI
5809.. section: Library
5810
5811socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on
5812older version Windows during run-time.
5813
5814..
5815
5816.. bpo: 31787
5817.. date: 2018-02-09-21-41-56
5818.. nonce: owSZ2t
5819.. section: Library
5820
5821Fixed refleaks of ``__init__()`` methods in various modules. (Contributed by
5822Oren Milman)
5823
5824..
5825
5826.. bpo: 30157
5827.. date: 2018-02-09-14-44-43
5828.. nonce: lEiiAK
5829.. section: Library
5830
5831Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last
5832field is quoted.  Patch by Jake Davis.
5833
5834..
5835
5836.. bpo: 30688
5837.. date: 2018-02-08-18-59-11
5838.. nonce: zBh4TH
5839.. section: Library
5840
5841Added support of ``\N{name}`` escapes in regular expressions.  Based on
5842patch by Jonathan Eunice.
5843
5844..
5845
5846.. bpo: 32792
5847.. date: 2018-02-08-00-47-07
5848.. nonce: NtyDb4
5849.. section: Library
5850
5851collections.ChainMap() preserves the order of the underlying mappings.
5852
5853..
5854
5855.. bpo: 32775
5856.. date: 2018-02-07-19-12-10
5857.. nonce: -T77_c
5858.. section: Library
5859
5860:func:`fnmatch.translate()` no longer produces patterns which contain set
5861operations. Sets starting with '[' or containing '--', '&&', '~~' or '||'
5862will be interpreted differently in regular expressions in future versions.
5863Currently they emit warnings. fnmatch.translate() now avoids producing
5864patterns containing such sets by accident.
5865
5866..
5867
5868.. bpo: 32622
5869.. date: 2018-02-06-17-58-15
5870.. nonce: AE0Jz7
5871.. section: Library
5872
5873Implement native fast sendfile for Windows proactor event loop.
5874
5875..
5876
5877.. bpo: 32777
5878.. date: 2018-02-05-21-28-28
5879.. nonce: C-wIXF
5880.. section: Library
5881
5882Fix a rare but potential pre-exec child process deadlock in subprocess on
5883POSIX systems when marking file descriptors inheritable on exec in the child
5884process.  This bug appears to have been introduced in 3.4.
5885
5886..
5887
5888.. bpo: 32647
5889.. date: 2018-02-05-13-31-42
5890.. nonce: ktmfR_
5891.. section: Library
5892
5893The ctypes module used to depend on indirect linking for dlopen. The shared
5894extension is now explicitly linked against libdl on platforms with dl.
5895
5896..
5897
5898.. bpo: 32749
5899.. date: 2018-02-02-17-21-24
5900.. nonce: u5scIn
5901.. section: Library
5902
5903A :mod:`dbm.dumb` database opened with flags 'r' is now read-only.
5904:func:`dbm.dumb.open` with flags 'r' and 'w' no longer creates a database if
5905it does not exist.
5906
5907..
5908
5909.. bpo: 32741
5910.. date: 2018-02-01-17-54-08
5911.. nonce: KUvOPL
5912.. section: Library
5913
5914Implement ``asyncio.TimerHandle.when()`` method.
5915
5916..
5917
5918.. bpo: 32691
5919.. date: 2018-02-01-15-53-35
5920.. nonce: VLWVTq
5921.. section: Library
5922
5923Use mod_spec.parent when running modules with pdb
5924
5925..
5926
5927.. bpo: 32734
5928.. date: 2018-02-01-01-34-47
5929.. nonce: gCV9AD
5930.. section: Library
5931
5932Fixed ``asyncio.Lock()`` safety issue which allowed acquiring and locking
5933the same lock multiple times, without it being free. Patch by Bar Harel.
5934
5935..
5936
5937.. bpo: 32727
5938.. date: 2018-01-30-17-46-18
5939.. nonce: aHVsRC
5940.. section: Library
5941
5942Do not include name field in SMTP envelope from address. Patch by Stéphane
5943Wirtel
5944
5945..
5946
5947.. bpo: 31453
5948.. date: 2018-01-21-15-01-50
5949.. nonce: cZiZBe
5950.. section: Library
5951
5952Add TLSVersion constants and SSLContext.maximum_version / minimum_version
5953attributes. The new API wraps OpenSSL 1.1
5954https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html
5955feature.
5956
5957..
5958
5959.. bpo: 24334
5960.. date: 2018-01-20-23-17-25
5961.. nonce: GZuQLv
5962.. section: Library
5963
5964Internal implementation details of ssl module were cleaned up. The SSLSocket
5965has one less layer of indirection. Owner and session information are now
5966handled by the SSLSocket and SSLObject constructor. Channel binding
5967implementation has been simplified.
5968
5969..
5970
5971.. bpo: 31848
5972.. date: 2018-01-18-23-34-17
5973.. nonce: M2cldy
5974.. section: Library
5975
5976Fix the error handling in Aifc_read.initfp() when the SSND chunk is not
5977found. Patch by Zackery Spytz.
5978
5979..
5980
5981.. bpo: 32585
5982.. date: 2018-01-18-13-09-00
5983.. nonce: qpeijr
5984.. section: Library
5985
5986Add Ttk spinbox widget to :mod:`tkinter.ttk`.  Patch by Alan D Moore.
5987
5988..
5989
5990.. bpo: 32512
5991.. date: 2018-01-07-17-43-10
5992.. nonce: flC-dE
5993.. section: Library
5994
5995:mod:`profile` CLI accepts `-m module_name` as an alternative to script
5996path.
5997
5998..
5999
6000.. bpo: 8525
6001.. date: 2018-01-01-00-16-59
6002.. nonce: Dq8s63
6003.. section: Library
6004
6005help() on a type now displays builtin subclasses. This is intended primarily
6006to help with notification of more specific exception subclasses.
6007
6008Patch by Sanyam Khurana.
6009
6010..
6011
6012.. bpo: 31639
6013.. date: 2017-12-27-21-55-19
6014.. nonce: l3avDJ
6015.. section: Library
6016
6017http.server now exposes a ThreadingHTTPServer class and uses it when the
6018module is run with ``-m`` to cope with web browsers pre-opening sockets.
6019
6020..
6021
6022.. bpo: 29877
6023.. date: 2017-12-16-11-40-52
6024.. nonce: SfWhmz
6025.. section: Library
6026
6027compileall: import ProcessPoolExecutor only when needed, preventing hangs on
6028low resource platforms
6029
6030..
6031
6032.. bpo: 32221
6033.. date: 2017-12-06-10-10-10
6034.. nonce: ideco_
6035.. section: Library
6036
6037Various functions returning tuple containing IPv6 addresses now omit
6038``%scope`` part since the same information is already encoded in *scopeid*
6039tuple item. Especially this speeds up :func:`socket.recvfrom` when it
6040receives multicast packet since useless resolving of network interface name
6041is omitted.
6042
6043..
6044
6045.. bpo: 32147
6046.. date: 2017-11-28-10-23-13
6047.. nonce: PI2k1Y
6048.. section: Library
6049
6050:func:`binascii.unhexlify` is now up to 2 times faster. Patch by Sergey
6051Fedoseev.
6052
6053..
6054
6055.. bpo: 30693
6056.. date: 2017-11-27-15-09-49
6057.. nonce: yC4mJ8
6058.. section: Library
6059
6060The TarFile class now recurses directories in a reproducible way.
6061
6062..
6063
6064.. bpo: 30693
6065.. date: 2017-11-27-15-09-49
6066.. nonce: yC4mJ7
6067.. section: Library
6068
6069The ZipFile class now recurses directories in a reproducible way.
6070
6071..
6072
6073.. bpo: 31680
6074.. date: 2017-11-01-15-44-48
6075.. nonce: yO6oSC
6076.. section: Library
6077
6078Added :data:`curses.ncurses_version`.
6079
6080..
6081
6082.. bpo: 31908
6083.. date: 2017-10-31
6084.. nonce: g4xh8x
6085.. section: Library
6086
6087Fix output of cover files for ``trace`` module command-line tool. Previously
6088emitted cover files only when ``--missing`` option was used. Patch by
6089Michael Selik.
6090
6091..
6092
6093.. bpo: 31608
6094.. date: 2017-10-29-10-37-55
6095.. nonce: wkp8Nw
6096.. section: Library
6097
6098Raise a ``TypeError`` instead of crashing if a ``collections.deque``
6099subclass returns a non-deque from ``__new__``. Patch by Oren Milman.
6100
6101..
6102
6103.. bpo: 31425
6104.. date: 2017-10-24-10-18-35
6105.. nonce: 1lgw47
6106.. section: Library
6107
6108Add support for sockets of the AF_QIPCRTR address family, supported by the
6109Linux kernel. This is used to communicate with services, such as GPS or
6110radio, running on Qualcomm devices. Patch by Bjorn Andersson.
6111
6112..
6113
6114.. bpo: 22005
6115.. date: 2017-10-12-22-39-55
6116.. nonce: lGP-sc
6117.. section: Library
6118
6119Implemented unpickling instances of :class:`~datetime.datetime`,
6120:class:`~datetime.date` and :class:`~datetime.time` pickled by Python 2.
6121``encoding='latin1'`` should be used for successful decoding.
6122
6123..
6124
6125.. bpo: 27645
6126.. date: 2017-10-05-20-41-48
6127.. nonce: 1Y_Wag
6128.. section: Library
6129
6130:class:`sqlite3.Connection` now exposes a
6131:class:`~sqlite3.Connection.backup` method, if the underlying SQLite library
6132is at version 3.6.11 or higher.  Patch by Lele Gaifax.
6133
6134..
6135
6136.. bpo: 16865
6137.. date: 2017-09-29-16-40-38
6138.. nonce: l-f6I_
6139.. section: Library
6140
6141Support arrays >=2GiB in :mod:`ctypes`.  Patch by Segev Finer.
6142
6143..
6144
6145.. bpo: 31508
6146.. date: 2017-09-19-12-38-31
6147.. nonce: pDsFJl
6148.. section: Library
6149
6150Removed support of arguments in `tkinter.ttk.Treeview.selection`. It was
6151deprecated in 3.6.  Use specialized methods like `selection_set` for
6152changing the selection.
6153
6154..
6155
6156.. bpo: 29456
6157.. date: 2017-08-24-17-55-39
6158.. nonce: XaB3MP
6159.. section: Library
6160
6161Fix bugs in hangul normalization: u1176, u11a7 and u11c3
6162
6163..
6164
6165.. bpo: 21257
6166.. date: 2019-01-15-21-45-27
6167.. nonce: U9LKkx
6168.. section: Documentation
6169
6170Document :func:`http.client.parse_headers`.
6171
6172..
6173
6174.. bpo: 34764
6175.. date: 2018-12-23-23-52-31
6176.. nonce: DwOGeT
6177.. section: Documentation
6178
6179Improve example of iter() with 2nd sentinel argument.
6180
6181..
6182
6183.. bpo: 35564
6184.. date: 2018-12-22-22-52-05
6185.. nonce: TuEU_D
6186.. section: Documentation
6187
6188Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0
6189
6190..
6191
6192.. bpo: 35511
6193.. date: 2018-12-16-16-14-44
6194.. nonce: iVcyav
6195.. section: Documentation
6196
6197Specified that profile.Profile class doesn't not support enable or disable
6198methods. Also, elaborated that Profile object as a context manager is only
6199supported in cProfile module.
6200
6201..
6202
6203.. bpo: 10536
6204.. date: 2018-11-04-22-03-56
6205.. nonce: a0IsfE
6206.. section: Documentation
6207
6208Enhance the gettext docs. Patch by Éric Araujo
6209
6210..
6211
6212.. bpo: 35089
6213.. date: 2018-10-28-16-51-31
6214.. nonce: _stCpS
6215.. section: Documentation
6216
6217Remove mention of ``typing.io`` and ``typing.re``. Their types should be
6218imported from ``typing`` directly.
6219
6220..
6221
6222.. bpo: 35038
6223.. date: 2018-10-25-17-45-09
6224.. nonce: 2eVOYS
6225.. section: Documentation
6226
6227Fix the documentation about an unexisting `f_restricted` attribute in the
6228frame object. Patch by Stéphane Wirtel
6229
6230..
6231
6232.. bpo: 35042
6233.. date: 2018-10-22-14-17-57
6234.. nonce: 1UGv1a
6235.. section: Documentation
6236
6237Replace PEP XYZ by the pep role and allow to use the direct links to the
6238PEPs.
6239
6240..
6241
6242.. bpo: 35044
6243.. date: 2018-10-22-14-09-58
6244.. nonce: qjvNtI
6245.. section: Documentation
6246
6247Fix the documentation with the role ``exc`` for the appropriated exception.
6248Patch by Stéphane Wirtel
6249
6250..
6251
6252.. bpo: 35035
6253.. date: 2018-10-21-02-20-36
6254.. nonce: 4zBObK
6255.. section: Documentation
6256
6257Rename documentation for :mod:`email.utils` to ``email.utils.rst``.
6258
6259..
6260
6261.. bpo: 34967
6262.. date: 2018-10-13-07-39-57
6263.. nonce: E40tFP
6264.. section: Documentation
6265
6266Use app.add_object_type() instead of the deprecated Sphinx function
6267app.description_unit()
6268
6269..
6270
6271.. bpo: 34913
6272.. date: 2018-10-10-00-34-08
6273.. nonce: kVd1Fv
6274.. section: Documentation
6275
6276Add documentation about the new command line interface of the gzip module.
6277
6278..
6279
6280.. bpo: 32174
6281.. date: 2018-10-08-19-15-28
6282.. nonce: YO9CYm
6283.. section: Documentation
6284
6285chm document displays non-ASCII charaters properly on some MBCS Windows
6286systems.
6287
6288..
6289
6290.. bpo: 11233
6291.. date: 2018-10-03-20-39-25
6292.. nonce: BX6Gen
6293.. section: Documentation
6294
6295Create availability directive for documentation.  Original patch by Georg
6296Brandl.
6297
6298..
6299
6300.. bpo: 34790
6301.. date: 2018-09-24-12-47-08
6302.. nonce: G2KXIH
6303.. section: Documentation
6304
6305Document how passing coroutines to asyncio.wait() can be confusing.
6306
6307..
6308
6309.. bpo: 34552
6310.. date: 2018-09-12-10-18-04
6311.. nonce: p9PoYv
6312.. section: Documentation
6313
6314Make clear that ``==`` operator sometimes is equivalent to `is`. The ``<``,
6315``<=``, ``>`` and ``>=`` operators are only defined where they make sense.
6316
6317..
6318
6319.. bpo: 28617
6320.. date: 2018-09-06-22-39-47
6321.. nonce: MjnJLz
6322.. section: Documentation
6323
6324Fixed info in the stdtypes docs concerning the types that support membership
6325tests.
6326
6327..
6328
6329.. bpo: 20177
6330.. date: 2018-07-28-17-17-42
6331.. nonce: cOZJWp
6332.. section: Documentation
6333
6334Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim
6335Hoffmann.
6336
6337..
6338
6339.. bpo: 34065
6340.. date: 2018-07-07-20-38-41
6341.. nonce: 1snofM
6342.. section: Documentation
6343
6344Fix wrongly written basicConfig documentation markup syntax
6345
6346..
6347
6348.. bpo: 33460
6349.. date: 2018-06-22-08-38-29
6350.. nonce: kHt4D0
6351.. section: Documentation
6352
6353replaced ellipsis with correct error codes in tutorial chapter 3.
6354
6355..
6356
6357.. bpo: 33847
6358.. date: 2018-06-15-14-58-45
6359.. nonce: IIDp6t
6360.. section: Documentation
6361
6362Add '@' operator entry to index.
6363
6364..
6365
6366.. bpo: 33409
6367.. date: 2018-06-08-23-46-01
6368.. nonce: r4z9MM
6369.. section: Documentation
6370
6371Clarified the relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP
6372540's PYTHONUTF8 mode.
6373
6374..
6375
6376.. bpo: 33197
6377.. date: 2018-06-08-23-37-14
6378.. nonce: OERTKf
6379.. section: Documentation
6380
6381Add versionadded tag to the documentation of ParameterKind.description
6382
6383..
6384
6385.. bpo: 17045
6386.. date: 2018-06-07-08-33-45
6387.. nonce: ZNx6KU
6388.. section: Documentation
6389
6390Improve the C-API doc for PyTypeObject.  This includes adding several
6391quick-reference tables and a lot of missing slot/typedef entries.  The
6392existing entries were also cleaned up with a slightly more consistent
6393format.
6394
6395..
6396
6397.. bpo: 33736
6398.. date: 2018-06-01-12-27-40
6399.. nonce: JVegIu
6400.. section: Documentation
6401
6402Improve the documentation of :func:`asyncio.open_connection`,
6403:func:`asyncio.start_server` and their UNIX socket counterparts.
6404
6405..
6406
6407.. bpo: 23859
6408.. date: 2018-05-29-16-02-31
6409.. nonce: E5gba1
6410.. section: Documentation
6411
6412Document that `asyncio.wait()` does not cancel its futures on timeout.
6413
6414..
6415
6416.. bpo: 32436
6417.. date: 2018-05-23-11-59-51
6418.. nonce: S1LGPa
6419.. section: Documentation
6420
6421Document :pep:`567` changes to asyncio.
6422
6423..
6424
6425.. bpo: 33604
6426.. date: 2018-05-22-11-47-14
6427.. nonce: 5YHTpz
6428.. section: Documentation
6429
6430Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8.
6431
6432..
6433
6434.. bpo: 33594
6435.. date: 2018-05-21-14-36-12
6436.. nonce: -HRcyX
6437.. section: Documentation
6438
6439Document ``getargspec``, ``from_function`` and ``from_builtin`` as
6440deprecated in their respective docstring, and include version since
6441deprecation in DeprecationWarning message.
6442
6443..
6444
6445.. bpo: 33503
6446.. date: 2018-05-14-20-08-58
6447.. nonce: Wvt0qg
6448.. section: Documentation
6449
6450Fix broken pypi link
6451
6452..
6453
6454.. bpo: 33421
6455.. date: 2018-05-14-15-15-41
6456.. nonce: 3GU_QO
6457.. section: Documentation
6458
6459Add missing documentation for ``typing.AsyncContextManager``.
6460
6461..
6462
6463.. bpo: 33487
6464.. date: 2018-05-13-14-44-30
6465.. nonce: iLDzFb
6466.. section: Documentation
6467
6468BZ2file now emit a DeprecationWarning when buffering=None is passed, the
6469deprecation message and documentation also now explicitly state it is
6470deprecated since 3.0.
6471
6472..
6473
6474.. bpo: 33378
6475.. date: 2018-04-29-04-02-18
6476.. nonce: -anAHN
6477.. section: Documentation
6478
6479Add Korean language switcher for https://docs.python.org/3/
6480
6481..
6482
6483.. bpo: 33276
6484.. date: 2018-04-20-14-09-36
6485.. nonce: rA1z_3
6486.. section: Documentation
6487
6488Clarify that the ``__path__`` attribute on modules cannot be just any value.
6489
6490..
6491
6492.. bpo: 33201
6493.. date: 2018-04-01-21-03-41
6494.. nonce: aa8Lkl
6495.. section: Documentation
6496
6497Modernize documentation for writing C extension types.
6498
6499..
6500
6501.. bpo: 33195
6502.. date: 2018-04-01-14-30-36
6503.. nonce: dRS-XX
6504.. section: Documentation
6505
6506Deprecate ``Py_UNICODE`` usage in ``c-api/arg`` document. ``Py_UNICODE``
6507related APIs are deprecated since Python 3.3, but it is missed in the
6508document.
6509
6510..
6511
6512.. bpo: 33126
6513.. date: 2018-03-28-17-03-17
6514.. nonce: 5UGkNv
6515.. section: Documentation
6516
6517Document PyBuffer_ToContiguous().
6518
6519..
6520
6521.. bpo: 27212
6522.. date: 2018-03-22-19-23-04
6523.. nonce: wrE5KR
6524.. section: Documentation
6525
6526Modify documentation for the :func:`islice` recipe to consume initial values
6527up to the start index.
6528
6529..
6530
6531.. bpo: 28247
6532.. date: 2018-03-20-20-11-05
6533.. nonce: -V-WS-
6534.. section: Documentation
6535
6536Update :mod:`zipapp` documentation to describe how to make standalone
6537applications.
6538
6539..
6540
6541.. bpo: 18802
6542.. date: 2018-03-11-18-53-47
6543.. nonce: JhAqH3
6544.. section: Documentation
6545
6546Documentation changes for ipaddress.  Patch by Jon Foster and Berker Peksag.
6547
6548..
6549
6550.. bpo: 27428
6551.. date: 2018-03-11-00-16-56
6552.. nonce: B7A8FT
6553.. section: Documentation
6554
6555Update documentation to clarify that ``WindowsRegistryFinder`` implements
6556``MetaPathFinder``. (Patch by Himanshu Lakhara)
6557
6558..
6559
6560.. bpo: 28124
6561.. date: 2018-02-25-16-33-35
6562.. nonce: _uzkgq
6563.. section: Documentation
6564
6565The ssl module function ssl.wrap_socket() has been de-emphasized and
6566deprecated in favor of the more secure and efficient
6567SSLContext.wrap_socket() method.
6568
6569..
6570
6571.. bpo: 17232
6572.. date: 2018-02-23-12-48-03
6573.. nonce: tmuTKL
6574.. section: Documentation
6575
6576Clarify docs for -O and -OO.  Patch by Terry Reedy.
6577
6578..
6579
6580.. bpo: 32436
6581.. date: 2018-02-14-11-10-41
6582.. nonce: TTJ2jb
6583.. section: Documentation
6584
6585Add documentation for the contextvars module (PEP 567).
6586
6587..
6588
6589.. bpo: 32800
6590.. date: 2018-02-10-15-16-04
6591.. nonce: FyrqCk
6592.. section: Documentation
6593
6594Update link to w3c doc for xml default namespaces.
6595
6596..
6597
6598.. bpo: 11015
6599.. date: 2018-02-10-12-48-38
6600.. nonce: -gUf34
6601.. section: Documentation
6602
6603Update :mod:`test.support` documentation.
6604
6605..
6606
6607.. bpo: 32613
6608.. date: 2018-02-05-15-05-53
6609.. nonce: TDjgM1
6610.. section: Documentation
6611
6612Update the faq/windows.html to use the py command from PEP 397 instead of
6613python.
6614
6615..
6616
6617.. bpo: 8722
6618.. date: 2018-02-03-06-11-37
6619.. nonce: MPyVyj
6620.. section: Documentation
6621
6622Document :meth:`__getattr__` behavior when property :meth:`get` method
6623raises :exc:`AttributeError`.
6624
6625..
6626
6627.. bpo: 32614
6628.. date: 2018-02-02-07-41-57
6629.. nonce: LSqzGw
6630.. section: Documentation
6631
6632Modify RE examples in documentation to use raw strings to prevent
6633:exc:`DeprecationWarning` and add text to REGEX HOWTO to highlight the
6634deprecation.
6635
6636..
6637
6638.. bpo: 20709
6639.. date: 2018-02-01-10-57-24
6640.. nonce: 1flcnc
6641.. section: Documentation
6642
6643Remove the paragraph where we explain that os.utime() does not support a
6644directory as path under Windows. Patch by Jan-Philip Gehrcke
6645
6646..
6647
6648.. bpo: 32722
6649.. date: 2018-01-30-11-28-27
6650.. nonce: frdp6A
6651.. section: Documentation
6652
6653Remove the bad example in the tutorial of the Generator Expression. Patch by
6654Stéphane Wirtel
6655
6656..
6657
6658.. bpo: 31972
6659.. date: 2018-01-25-14-23-12
6660.. nonce: w1m_8r
6661.. section: Documentation
6662
6663Improve docstrings for `pathlib.PurePath` subclasses.
6664
6665..
6666
6667.. bpo: 30607
6668.. date: 2018-01-25-13-58-49
6669.. nonce: 4dXxiq
6670.. section: Documentation
6671
6672Use the externalized ``python-docs-theme`` package when building the
6673documentation.
6674
6675..
6676
6677.. bpo: 8243
6678.. date: 2018-01-13-20-30-53
6679.. nonce: s98r28
6680.. section: Documentation
6681
6682Add a note about curses.addch and curses.addstr exception behavior when
6683writing outside a window, or pad.
6684
6685..
6686
6687.. bpo: 32337
6688.. date: 2017-12-22-17-29-37
6689.. nonce: eZe-ID
6690.. section: Documentation
6691
6692Update documentation related with ``dict`` order.
6693
6694..
6695
6696.. bpo: 25041
6697.. date: 2017-10-23-13-41-12
6698.. nonce: iAo2gW
6699.. section: Documentation
6700
6701Document ``AF_PACKET`` in the :mod:`socket` module.
6702
6703..
6704
6705.. bpo: 31432
6706.. date: 2017-09-13-07-14-59
6707.. nonce: yAY4Z3
6708.. section: Documentation
6709
6710Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for
6711ssl.SSLContext.verify_mode.
6712
6713..
6714
6715.. bpo: 35772
6716.. date: 2019-01-18-12-19-19
6717.. nonce: sGBbsn
6718.. section: Tests
6719
6720Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem.
6721Fix the function testing if the filesystem supports sparse files: create a
6722file which contains data and "holes", instead of creating a file which
6723contains no data. tmpfs effective block size is a page size (tmpfs lives in
6724the page cache). RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only
6725s390x and x86_64 use 4 KiB pages, whereas the test punch holes of 4 KiB.
6726
6727..
6728
6729.. bpo: 35045
6730.. date: 2019-01-10-18-35-42
6731.. nonce: qdd6d9
6732.. section: Tests
6733
6734Make ssl tests less strict and also accept TLSv1 as system default. The
6735changes unbreaks test_min_max_version on Fedora 29.
6736
6737..
6738
6739.. bpo: 32710
6740.. date: 2019-01-07-23-34-41
6741.. nonce: Hzo1b8
6742.. section: Tests
6743
6744``test_asyncio/test_sendfile.py`` now resets the event loop policy using
6745:func:`tearDownModule` as done in other tests, to prevent a warning when
6746running tests on Windows.
6747
6748..
6749
6750.. bpo: 33717
6751.. date: 2019-01-07-23-22-44
6752.. nonce: GhHXv8
6753.. section: Tests
6754
6755test.pythoninfo now logs information of all clocks, not only time.time() and
6756time.perf_counter().
6757
6758..
6759
6760.. bpo: 35488
6761.. date: 2019-01-04-21-34-53
6762.. nonce: U7JJzP
6763.. section: Tests
6764
6765Add a test to pathlib's Path.match() to verify it does not support
6766glob-style ** recursive pattern matching.
6767
6768..
6769
6770.. bpo: 31731
6771.. date: 2018-12-18-23-20-39
6772.. nonce: tcv85C
6773.. section: Tests
6774
6775Fix a race condition in ``check_interrupted_write()`` of test_io: create
6776directly the thread with SIGALRM signal blocked, rather than blocking the
6777signal later from the thread. Previously, it was possible that the thread
6778gets the signal before the signal is blocked.
6779
6780..
6781
6782.. bpo: 35424
6783.. date: 2018-12-18-22-36-53
6784.. nonce: 1Pz4IS
6785.. section: Tests
6786
6787Fix test_multiprocessing_main_handling: use :class:`multiprocessing.Pool`
6788with a context manager and then explicitly join the pool.
6789
6790..
6791
6792.. bpo: 35519
6793.. date: 2018-12-17-16-41-45
6794.. nonce: RR3L_w
6795.. section: Tests
6796
6797Rename :mod:`test.bisect` module to :mod:`test.bisect_cmd` to avoid conflict
6798with :mod:`bisect` module when running directly a test like ``./python
6799Lib/test/test_xmlrpc.py``.
6800
6801..
6802
6803.. bpo: 35513
6804.. date: 2018-12-16-23-36-47
6805.. nonce: k4WHlA
6806.. section: Tests
6807
6808Replace :func:`time.time` with :func:`time.monotonic` in tests to measure
6809time delta.
6810
6811..
6812
6813.. bpo: 34279
6814.. date: 2018-12-12-18-20-18
6815.. nonce: DhKcuP
6816.. section: Tests
6817
6818:func:`test.support.run_unittest` no longer raise :exc:`TestDidNotRun` if
6819the test result contains skipped tests. The exception is now only raised if
6820no test have been run and no test have been skipped.
6821
6822..
6823
6824.. bpo: 35412
6825.. date: 2018-12-12-18-07-58
6826.. nonce: kbuJor
6827.. section: Tests
6828
6829Add testcase to ``test_future4``: check unicode literal.
6830
6831..
6832
6833.. bpo: 26704
6834.. date: 2018-12-10-13-18-37
6835.. nonce: DBAN4c
6836.. section: Tests
6837
6838Added test demonstrating double-patching of an instance method.  Patch by
6839Anthony Sottile.
6840
6841..
6842
6843.. bpo: 33725
6844.. date: 2018-12-09-01-27-29
6845.. nonce: TaGayj
6846.. section: Tests
6847
6848test_multiprocessing_fork may crash on recent versions of macOS.  Until the
6849issue is resolved, skip the test on macOS.
6850
6851..
6852
6853.. bpo: 35352
6854.. date: 2018-11-30-17-18-56
6855.. nonce: 8bD7GC
6856.. section: Tests
6857
6858Modify test_asyncio to use the certificate set from the test directory.
6859
6860..
6861
6862.. bpo: 35317
6863.. date: 2018-11-26-16-54-21
6864.. nonce: jByGP2
6865.. section: Tests
6866
6867Fix ``mktime()`` overflow error in ``test_email``: run
6868``test_localtime_daylight_true_dst_true()`` and
6869``test_localtime_daylight_false_dst_true()`` with a specific timezone.
6870
6871..
6872
6873.. bpo: 21263
6874.. date: 2018-11-04-20-17-09
6875.. nonce: T3qo9r
6876.. section: Tests
6877
6878After several reports that test_gdb does not work properly on macOS and
6879since gdb is not shipped by default anymore, test_gdb is now skipped on
6880macOS when LLVM Clang has been used to compile Python. Patch by Lysandros
6881Nikolaou
6882
6883..
6884
6885.. bpo: 34279
6886.. date: 2018-10-27-13-41-55
6887.. nonce: v0Xqxe
6888.. section: Tests
6889
6890regrtest issue a warning when no tests have been executed in a particular
6891test file. Also, a new final result state is issued if no test have been
6892executed across all test files. Patch by Pablo Galindo.
6893
6894..
6895
6896.. bpo: 34962
6897.. date: 2018-10-11-22-34-27
6898.. nonce: 0PLBi8
6899.. section: Tests
6900
6901make docstest in Doc now passes., and is enforced in CI
6902
6903..
6904
6905.. bpo: 23596
6906.. date: 2018-10-09-23-51-07
6907.. nonce: rdnert
6908.. section: Tests
6909
6910Use argparse for the command line of the gzip module. Patch by Antony Lee
6911
6912..
6913
6914.. bpo: 34537
6915.. date: 2018-09-21-17-33-41
6916.. nonce: GImYtZ
6917.. section: Tests
6918
6919Fix ``test_gdb.test_strings()`` when ``LC_ALL=C`` and GDB was compiled with
6920Python 3.6 or earlier.
6921
6922..
6923
6924.. bpo: 34587
6925.. date: 2018-09-13-20-58-07
6926.. nonce: rCcxp3
6927.. section: Tests
6928
6929test_socket: Remove RDSTest.testCongestion(). The test tries to fill the
6930receiver's socket buffer and expects an error. But the RDS protocol doesn't
6931require that. Moreover, the Linux implementation of RDS expects that the
6932producer of the messages reduces its rate, it's not the role of the receiver
6933to trigger an error. The test fails on Fedora 28 by design, so just remove
6934it.
6935
6936..
6937
6938.. bpo: 34661
6939.. date: 2018-09-13-09-53-15
6940.. nonce: bdTamP
6941.. section: Tests
6942
6943Fix test_shutil if unzip doesn't support -t.
6944
6945..
6946
6947.. bpo: 34200
6948.. date: 2018-09-12-17-00-34
6949.. nonce: dfxYQK
6950.. section: Tests
6951
6952Fixed non-deterministic flakiness of test_pkg by not using the scary
6953test.support.module_cleanup() logic to save and restore sys.modules contents
6954between test cases.
6955
6956..
6957
6958.. bpo: 34569
6959.. date: 2018-09-09-14-36-59
6960.. nonce: okj1Xh
6961.. section: Tests
6962
6963The experimental PEP 554 data channels now correctly pass negative PyLong
6964objects between subinterpreters on 32-bit systems. Patch by Michael Felt.
6965
6966..
6967
6968.. bpo: 34594
6969.. date: 2018-09-05-23-50-21
6970.. nonce: tqL-GS
6971.. section: Tests
6972
6973Fix usage of hardcoded ``errno`` values in the tests.
6974
6975..
6976
6977.. bpo: 34579
6978.. date: 2018-09-04-15-16-42
6979.. nonce: bp4HdM
6980.. section: Tests
6981
6982Fix test_embed for AIX Patch by Michael Felt
6983
6984..
6985
6986.. bpo: 34542
6987.. date: 2018-08-29-16-30-52
6988.. nonce: 9stVAW
6989.. section: Tests
6990
6991Use 3072 RSA keys and SHA-256 signature for test certs and keys.
6992
6993..
6994
6995.. bpo: 11193
6996.. date: 2018-08-26-13-12-34
6997.. nonce: H8fCGa
6998.. section: Tests
6999
7000Remove special condition for AIX in `test_subprocess.test_undecodable_env`
7001
7002..
7003
7004.. bpo: 34347
7005.. date: 2018-08-25-13-28-18
7006.. nonce: IsRDPB
7007.. section: Tests
7008
7009Fix `test_utf8_mode.test_cmd_line` for AIX
7010
7011..
7012
7013.. bpo: 34490
7014.. date: 2018-08-24-20-23-15
7015.. nonce: vb2cx4
7016.. section: Tests
7017
7018On AIX with AF_UNIX family sockets getsockname() does not provide
7019'sockname', so skip calls to transport.get_extra_info('sockname')
7020
7021..
7022
7023.. bpo: 34391
7024.. date: 2018-08-16-18-48-47
7025.. nonce: ouNfxC
7026.. section: Tests
7027
7028Fix ftplib test for TLS 1.3 by reading from data socket.
7029
7030..
7031
7032.. bpo: 11192
7033.. date: 2018-08-14-20-50-07
7034.. nonce: g7TwYm
7035.. section: Tests
7036
7037Fix `test_socket` on AIX 6.1 and later IPv6 zone id supports only
7038supported by inet_pton6_zone() Switch to runtime-based platform.system() to
7039establish current platform  rather than build-time based sys.platform()
7040
7041..
7042
7043.. bpo: 34399
7044.. date: 2018-08-14-10-47-44
7045.. nonce: D_jd1G
7046.. section: Tests
7047
7048Update all RSA keys and DH params to use at least 2048 bits.
7049
7050..
7051
7052.. bpo: 34373
7053.. date: 2018-08-10-16-17-51
7054.. nonce: SKdb1k
7055.. section: Tests
7056
7057Fix ``test_mktime`` and ``test_pthread_getcpuclickid`` tests for AIX Add
7058range checking for ``_PyTime_localtime`` for AIX Patch by Michael Felt
7059
7060..
7061
7062.. bpo: 11191
7063.. date: 2018-08-08-22-41-30
7064.. nonce: eq9tSH
7065.. section: Tests
7066
7067Skip the distutils test 'test_search_cpp' when using XLC as compiler patch
7068by aixtools (Michael Felt)
7069
7070..
7071
7072.. bpo: 0
7073.. date: 2018-07-10-18-53-46
7074.. nonce: UBQJBc
7075.. section: Tests
7076
7077Improved an error message when mock assert_has_calls fails.
7078
7079..
7080
7081.. bpo: 33746
7082.. date: 2018-06-19-17-55-46
7083.. nonce: Sz7avn
7084.. section: Tests
7085
7086Fix test_unittest when run in verbose mode.
7087
7088..
7089
7090.. bpo: 33901
7091.. date: 2018-06-19-14-04-21
7092.. nonce: OFW1Sr
7093.. section: Tests
7094
7095Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure
7096that the file size changes.
7097
7098..
7099
7100.. bpo: 33873
7101.. date: 2018-06-16-01-37-31
7102.. nonce: d86vab
7103.. section: Tests
7104
7105Fix a bug in ``regrtest`` that caused an extra test to run if
7106--huntrleaks/-R was used. Exit with error in case that invalid parameters
7107are specified to --huntrleaks/-R (at least one warmup run and one repetition
7108must be used).
7109
7110..
7111
7112.. bpo: 33562
7113.. date: 2018-06-01-14-25-31
7114.. nonce: GutEHf
7115.. section: Tests
7116
7117Check that a global asyncio event loop policy is not left behind by any
7118tests.
7119
7120..
7121
7122.. bpo: 33655
7123.. date: 2018-05-26-16-01-40
7124.. nonce: Frb4LA
7125.. section: Tests
7126
7127Ignore test_posix_fallocate failures on BSD platforms that might be due to
7128running on ZFS.
7129
7130..
7131
7132.. bpo: 32962
7133.. date: 2018-05-10-16-59-15
7134.. nonce: S-rcIN
7135.. section: Tests
7136
7137Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0.
7138
7139..
7140
7141.. bpo: 33358
7142.. date: 2018-04-27-11-46-35
7143.. nonce: _OcR59
7144.. section: Tests
7145
7146Fix ``test_embed.test_pre_initialization_sys_options()`` when the
7147interpreter is built with ``--enable-shared``.
7148
7149..
7150
7151.. bpo: 32872
7152.. date: 2018-03-28-01-35-02
7153.. nonce: J5NDUj
7154.. section: Tests
7155
7156Avoid regrtest compatibility issue with namespace packages.
7157
7158..
7159
7160.. bpo: 32517
7161.. date: 2018-03-09-07-05-12
7162.. nonce: ugc1iW
7163.. section: Tests
7164
7165Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of
7166``KqueueSelector`` loop was not being closed.
7167
7168..
7169
7170.. bpo: 32663
7171.. date: 2018-01-25-18-10-47
7172.. nonce: IKDsqu
7173.. section: Tests
7174
7175Making sure the `SMTPUTF8SimTests` class of tests gets run in
7176test_smtplib.py.
7177
7178..
7179
7180.. bpo: 27643
7181.. date: 2018-01-12-09-05-19
7182.. nonce: _6z49y
7183.. section: Tests
7184
7185Test_C test case needs "signed short" bitfields, but the IBM XLC compiler
7186(on AIX) does not support this Skip the code and test when AIX and XLC are
7187used
7188
7189Applicable to Python2-2.7 and later
7190
7191..
7192
7193.. bpo: 19417
7194.. date: 2018-01-08-13-33-47
7195.. nonce: 2asoXy
7196.. section: Tests
7197
7198Add test_bdb.py.
7199
7200..
7201
7202.. bpo: 31809
7203.. date: 2017-10-18-18-07-45
7204.. nonce: KlQrkE
7205.. section: Tests
7206
7207Add tests to verify connection with secp ECDH curves.
7208
7209..
7210
7211.. bpo: 34691
7212.. date: 2019-02-02-13-34-05
7213.. nonce: B-Lsj4
7214.. section: Build
7215
7216The _contextvars module is now built into the core Python library on
7217Windows.
7218
7219..
7220
7221.. bpo: 35683
7222.. date: 2019-01-10-11-37-18
7223.. nonce: pf5Oos
7224.. section: Build
7225
7226Improved Azure Pipelines build steps and now verifying layouts correctly
7227
7228..
7229
7230.. bpo: 35642
7231.. date: 2019-01-02-11-23-33
7232.. nonce: pjkhJe
7233.. section: Build
7234
7235Remove asynciomodule.c from pythoncore.vcxproj
7236
7237..
7238
7239.. bpo: 35550
7240.. date: 2018-12-29-10-19-43
7241.. nonce: BTuu8e
7242.. section: Build
7243
7244Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of
7245sun when compiling.
7246
7247..
7248
7249.. bpo: 35499
7250.. date: 2018-12-14-19-36-05
7251.. nonce: 9yAldM
7252.. section: Build
7253
7254``make profile-opt`` no longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``.
7255It now adds profile-guided optimization (PGO) flags to ``CFLAGS_NODIST``:
7256existing ``CFLAGS_NODIST`` flags are kept.
7257
7258..
7259
7260.. bpo: 35257
7261.. date: 2018-12-05-22-28-40
7262.. nonce: dmcd_s
7263.. section: Build
7264
7265Avoid leaking the linker flags from Link Time Optimizations (LTO) into
7266distutils when compiling C extensions.
7267
7268..
7269
7270.. bpo: 35351
7271.. date: 2018-12-04-15-33-28
7272.. nonce: ZhhBfT
7273.. section: Build
7274
7275When building Python with clang and LTO, LTO flags are no longer passed into
7276CFLAGS to build third-party C extensions through distutils.
7277
7278..
7279
7280.. bpo: 35139
7281.. date: 2018-11-01-15-01-23
7282.. nonce: XZTttb
7283.. section: Build
7284
7285Fix a compiler error when statically linking `pyexpat` in `Modules/Setup`.
7286
7287..
7288
7289.. bpo: 35059
7290.. date: 2018-10-26-14-49-19
7291.. nonce: PKsBxP
7292.. section: Build
7293
7294PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option)
7295in pyproject.props in Debug mode to expand functions marked as inline. This
7296change should make Python compiled in Debug mode a little bit faster on
7297Windows.
7298
7299..
7300
7301.. bpo: 35011
7302.. date: 2018-10-17-17-38-57
7303.. nonce: GgoPIC
7304.. section: Build
7305
7306Restores the use of pyexpatns.h to isolate our embedded copy of the expat C
7307library so that its symbols do not conflict at link or dynamic loading time
7308with an embedding application or other extension modules with their own
7309version of libexpat.
7310
7311..
7312
7313.. bpo: 28015
7314.. date: 2018-10-16-12-22-36
7315.. nonce: ylSgFh
7316.. section: Build
7317
7318Have --with-lto works correctly with clang.
7319
7320..
7321
7322.. bpo: 34765
7323.. date: 2018-09-26-17-29-10
7324.. nonce: AvxdVj
7325.. section: Build
7326
7327Update the outdated install-sh file to the latest revision from automake
7328v1.16.1
7329
7330..
7331
7332.. bpo: 34585
7333.. date: 2018-09-18-16-28-31
7334.. nonce: CGMu0h
7335.. section: Build
7336
7337Check for floating-point byte order in configure.ac using compilation tests
7338instead of executing code, so that these checks work in cross-compiled
7339builds.
7340
7341..
7342
7343.. bpo: 34710
7344.. date: 2018-09-17-13-56-12
7345.. nonce: ARqIAK
7346.. section: Build
7347
7348Fixed SSL module build with OpenSSL & pedantic CFLAGS.
7349
7350..
7351
7352.. bpo: 34582
7353.. date: 2018-09-14-09-53-21
7354.. nonce: j3omgk
7355.. section: Build
7356
7357Add JUnit XML output for regression tests and update Azure DevOps builds.
7358
7359..
7360
7361.. bpo: 34081
7362.. date: 2018-09-06-07-15-20
7363.. nonce: cuSTnH
7364.. section: Build
7365
7366Make Sphinx warnings as errors in the Docs Makefile.
7367
7368..
7369
7370.. bpo: 34555
7371.. date: 2018-08-31-19-41-09
7372.. nonce: dfQcnm
7373.. section: Build
7374
7375Fix for case where it was not possible to have both
7376``HAVE_LINUX_VM_SOCKETS_H`` and ``HAVE_SOCKADDR_ALG`` be undefined.
7377
7378..
7379
7380.. bpo: 33015
7381.. date: 2018-08-24-09-48-25
7382.. nonce: s21y74
7383.. section: Build
7384
7385Fix an undefined behaviour in the pthread implementation of
7386:c:func:`PyThread_start_new_thread`: add a function wrapper to always return
7387``NULL``.
7388
7389..
7390
7391.. bpo: 34245
7392.. date: 2018-07-27-09-52-48
7393.. nonce: bBV0NI
7394.. section: Build
7395
7396The Python shared library is now installed with write permission (mode
73970755), which is the standard way of installing such libraries.
7398
7399..
7400
7401.. bpo: 34121
7402.. date: 2018-07-15-16-49-06
7403.. nonce: 74G_lo
7404.. section: Build
7405
7406Fix detection of C11 atomic support on clang.
7407
7408..
7409
7410.. bpo: 32430
7411.. date: 2018-07-10-21-33-25
7412.. nonce: UN3Nk8
7413.. section: Build
7414
7415Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy
7416the former manually to the latter when updating the local source tree.
7417
7418..
7419
7420.. bpo: 30345
7421.. date: 2018-06-15-18-18-16
7422.. nonce: j-xRE1
7423.. section: Build
7424
7425Add -g to LDFLAGS when compiling with LTO to get debug symbols.
7426
7427..
7428
7429.. bpo: 5755
7430.. date: 2018-06-04-21-34-34
7431.. nonce: 65GmCj
7432.. section: Build
7433
7434Move ``-Wstrict-prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This
7435option emitted annoying warnings when building extension modules written in
7436C++.
7437
7438..
7439
7440.. bpo: 33614
7441.. date: 2018-05-28-11-40-22
7442.. nonce: 28e0sE
7443.. section: Build
7444
7445Ensures module definition files for the stable ABI on Windows are correctly
7446regenerated.
7447
7448..
7449
7450.. bpo: 33648
7451.. date: 2018-05-25-13-05-51
7452.. nonce: bJ4JZH
7453.. section: Build
7454
7455The --with-c-locale-warning configuration flag has been removed. It has had
7456no effect for about a year.
7457
7458..
7459
7460.. bpo: 33522
7461.. date: 2018-05-15-12-44-50
7462.. nonce: mJoNcA
7463.. section: Build
7464
7465Enable CI builds on Visual Studio Team Services at
7466https://python.visualstudio.com/cpython
7467
7468..
7469
7470.. bpo: 33512
7471.. date: 2018-05-15-02-07-49
7472.. nonce: X4Fy1Q
7473.. section: Build
7474
7475configure's check for "long double" has been simplified
7476
7477..
7478
7479.. bpo: 33483
7480.. date: 2018-05-13-17-21-54
7481.. nonce: WOs-en
7482.. section: Build
7483
7484C compiler is now correctly detected from the standard environment
7485variables. --without-gcc and --with-icc options have been removed.
7486
7487..
7488
7489.. bpo: 33394
7490.. date: 2018-04-30-17-36-46
7491.. nonce: _Vdi4t
7492.. section: Build
7493
7494Enable the verbose build for extension modules, when GNU make is passed
7495macros on the command line.
7496
7497..
7498
7499.. bpo: 33393
7500.. date: 2018-04-30-17-19-37
7501.. nonce: HkVCqI
7502.. section: Build
7503
7504Update config.guess and config.sub files.
7505
7506..
7507
7508.. bpo: 33377
7509.. date: 2018-04-30-16-53-00
7510.. nonce: QBh6vP
7511.. section: Build
7512
7513Add new triplets for mips r6 and riscv variants (used in extension
7514suffixes).
7515
7516..
7517
7518.. bpo: 32232
7519.. date: 2018-04-17-00-38-19
7520.. nonce: o7G_UO
7521.. section: Build
7522
7523By default, modules configured in `Modules/Setup` are no longer built with
7524`-DPy_BUILD_CORE`. Instead, modules that specifically need that preprocessor
7525definition include it in their individual entries.
7526
7527..
7528
7529.. bpo: 33182
7530.. date: 2018-03-30-14-55-48
7531.. nonce: CePczb
7532.. section: Build
7533
7534The embedding tests can once again be built with clang 6.0
7535
7536..
7537
7538.. bpo: 33163
7539.. date: 2018-03-28-04-15-03
7540.. nonce: hfpWuU
7541.. section: Build
7542
7543Upgrade pip to 9.0.3 and setuptools to v39.0.1.
7544
7545..
7546
7547.. bpo: 33012
7548.. date: 2018-03-08-20-25-29
7549.. nonce: k9Fe1q
7550.. section: Build
7551
7552gcc 8 has added a new warning heuristic to detect invalid function casts and
7553a stock python build seems to hit that warning quite often.  The most common
7554is the cast of a METH_NOARGS function (that uses just one argument) to a
7555PyCFunction. Fix this by adding a dummy argument to all functions that
7556implement METH_NOARGS.
7557
7558..
7559
7560.. bpo: 32898
7561.. date: 2018-02-21-12-46-00
7562.. nonce: M15bZh
7563.. section: Build
7564
7565Fix the python debug build when using COUNT_ALLOCS.
7566
7567..
7568
7569.. bpo: 29442
7570.. date: 2017-09-26-23-08-27
7571.. nonce: fD8YTi
7572.. section: Build
7573
7574Replace optparse with argparse in setup.py
7575
7576..
7577
7578.. bpo: 35890
7579.. date: 2019-02-02-22-12-23
7580.. nonce: ccIjHH
7581.. section: Windows
7582
7583Fix API calling consistency of GetVersionEx and wcstok.
7584
7585..
7586
7587.. bpo: 32560
7588.. date: 2019-02-02-11-02-44
7589.. nonce: I5WAGW
7590.. section: Windows
7591
7592The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child
7593processes.
7594
7595..
7596
7597.. bpo: 35854
7598.. date: 2019-01-29-15-44-46
7599.. nonce: Ww3z19
7600.. section: Windows
7601
7602Fix EnvBuilder and --symlinks in venv on Windows
7603
7604..
7605
7606.. bpo: 35811
7607.. date: 2019-01-25-12-46-36
7608.. nonce: 2hU-mm
7609.. section: Windows
7610
7611Avoid propagating venv settings when launching via py.exe
7612
7613..
7614
7615.. bpo: 35797
7616.. date: 2019-01-25-12-29-14
7617.. nonce: MzyOK9
7618.. section: Windows
7619
7620Fix default executable used by the multiprocessing module
7621
7622..
7623
7624.. bpo: 35758
7625.. date: 2019-01-21-05-18-14
7626.. nonce: 8LsY3l
7627.. section: Windows
7628
7629Allow building on ARM with MSVC.
7630
7631..
7632
7633.. bpo: 29734
7634.. date: 2019-01-12-16-52-38
7635.. nonce: 6_OJwI
7636.. section: Windows
7637
7638Fix handle leaks in os.stat on Windows.
7639
7640..
7641
7642.. bpo: 35596
7643.. date: 2019-01-08-13-56-01
7644.. nonce: oFvhcm
7645.. section: Windows
7646
7647Use unchecked PYCs for the embeddable distro to avoid zipimport
7648restrictions.
7649
7650..
7651
7652.. bpo: 35596
7653.. date: 2018-12-28-07-25-47
7654.. nonce: P9CEY2
7655.. section: Windows
7656
7657Fix vcruntime140.dll being added to embeddable distro multiple times.
7658
7659..
7660
7661.. bpo: 35402
7662.. date: 2018-12-13-13-30-04
7663.. nonce: n_mXb2
7664.. section: Windows
7665
7666Update Windows build to use Tcl and Tk 8.6.9
7667
7668..
7669
7670.. bpo: 35401
7671.. date: 2018-12-10-15-01-13
7672.. nonce: 9L1onG
7673.. section: Windows
7674
7675Updates Windows build to OpenSSL 1.1.0j
7676
7677..
7678
7679.. bpo: 34977
7680.. date: 2018-12-07-10-00-38
7681.. nonce: agQJbD
7682.. section: Windows
7683
7684venv on Windows will now use a python.exe redirector rather than copying the
7685actual binaries from the base environment.
7686
7687..
7688
7689.. bpo: 34977
7690.. date: 2018-10-30-13-39-17
7691.. nonce: 0l7_QV
7692.. section: Windows
7693
7694Adds support for building a Windows App Store package
7695
7696..
7697
7698.. bpo: 35067
7699.. date: 2018-10-25-11-29-22
7700.. nonce: RHWi7W
7701.. section: Windows
7702
7703Remove _distutils_findvs module and use vswhere.exe instead.
7704
7705..
7706
7707.. bpo: 32557
7708.. date: 2018-09-25-10-39-27
7709.. nonce: Rs1bf9
7710.. section: Windows
7711
7712Allow shutil.disk_usage to take a file path on Windows
7713
7714..
7715
7716.. bpo: 34770
7717.. date: 2018-09-22-11-02-35
7718.. nonce: 4lEUOd
7719.. section: Windows
7720
7721Fix a possible null pointer dereference in pyshellext.cpp.
7722
7723..
7724
7725.. bpo: 34603
7726.. date: 2018-09-13-08-29-04
7727.. nonce: 2AB7sc
7728.. section: Windows
7729
7730Fix returning structs from functions produced by MSVC
7731
7732..
7733
7734.. bpo: 34581
7735.. date: 2018-09-04-23-13-19
7736.. nonce: lnbC0k
7737.. section: Windows
7738
7739Guard MSVC-specific code in socketmodule.c with ``#ifdef _MSC_VER``.
7740
7741..
7742
7743.. bpo: 34532
7744.. date: 2018-09-03-01-23-52
7745.. nonce: N1HEbE
7746.. section: Windows
7747
7748Fixes exit code of list version arguments for py.exe.
7749
7750..
7751
7752.. bpo: 34062
7753.. date: 2018-08-21-19-28-23
7754.. nonce: 3gxsA3
7755.. section: Windows
7756
7757Fixed the '--list' and '--list-paths' arguments for the py.exe launcher
7758
7759..
7760
7761.. bpo: 34225
7762.. date: 2018-07-25-16-13-12
7763.. nonce: ngemNL
7764.. section: Windows
7765
7766Ensure INCLUDE and LIB directories do not end with a backslash.
7767
7768..
7769
7770.. bpo: 34011
7771.. date: 2018-07-11-15-58-06
7772.. nonce: Ho_d5T
7773.. section: Windows
7774
7775A suite of code has been changed which copied across DLLs and init.tcl from
7776the running Python location into a venv being created. These copies are
7777needed only when running from a Python source build, and the copying code is
7778now only run when that is the case, rather than whenever a venv is created.
7779
7780..
7781
7782.. bpo: 34006
7783.. date: 2018-07-02-14-19-32
7784.. nonce: 7SgBT_
7785.. section: Windows
7786
7787Revert line length limit for Windows help docs. The line-length limit is not
7788needed because the pages appear in a separate app rather than on a browser
7789tab.  It can also interact badly with the DPI setting.
7790
7791..
7792
7793.. bpo: 31546
7794.. date: 2018-06-27-23-33-54
7795.. nonce: zJlap-
7796.. section: Windows
7797
7798Restore running PyOS_InputHook while waiting for user input at the prompt.
7799The restores integration of interactive GUI windows (such as Matplotlib
7800figures) with the prompt on Windows.
7801
7802..
7803
7804.. bpo: 30237
7805.. date: 2018-06-25-09-33-48
7806.. nonce: EybiZA
7807.. section: Windows
7808
7809Output error when ReadConsole is canceled by CancelSynchronousIo instead of
7810crashing.
7811
7812..
7813
7814.. bpo: 33895
7815.. date: 2018-06-19-11-57-50
7816.. nonce: zpblTy
7817.. section: Windows
7818
7819GIL is released while calling functions that acquire Windows loader lock.
7820
7821..
7822
7823.. bpo: 33720
7824.. date: 2018-06-04-09-20-53
7825.. nonce: VKDXHK
7826.. section: Windows
7827
7828Reduces maximum marshal recursion depth on release builds.
7829
7830..
7831
7832.. bpo: 29097
7833.. date: 2018-05-16-11-31-17
7834.. nonce: 9mqEuI
7835.. section: Windows
7836
7837Fix bug where :meth:`datetime.fromtimestamp` erroneously throws an
7838:exc:`OSError` on Windows for values between 0 and 86400. Patch by Ammar
7839Askar.
7840
7841..
7842
7843.. bpo: 33316
7844.. date: 2018-04-20-03-24-07
7845.. nonce: 9IiJ8J
7846.. section: Windows
7847
7848PyThread_release_lock always fails
7849
7850..
7851
7852.. bpo: 33184
7853.. date: 2018-04-13-11-28-55
7854.. nonce: 7YhqQE
7855.. section: Windows
7856
7857Update Windows installer to use OpenSSL 1.1.0h.
7858
7859..
7860
7861.. bpo: 32890
7862.. date: 2018-03-08-20-02-38
7863.. nonce: 3jzFzY
7864.. section: Windows
7865
7866Fix usage of GetLastError() instead of errno in os.execve() and
7867os.truncate().
7868
7869..
7870
7871.. bpo: 33016
7872.. date: 2018-03-07-01-33-33
7873.. nonce: Z_Med0
7874.. section: Windows
7875
7876Fix potential use of uninitialized memory in nt._getfinalpathname
7877
7878..
7879
7880.. bpo: 32903
7881.. date: 2018-02-28-11-03-24
7882.. nonce: 1SXY4t
7883.. section: Windows
7884
7885Fix a memory leak in os.chdir() on Windows if the current directory is set
7886to a UNC path.
7887
7888..
7889
7890.. bpo: 32901
7891.. date: 2018-02-23-00-47-13
7892.. nonce: mGKz5_
7893.. section: Windows
7894
7895Update Tcl and Tk versions to 8.6.8
7896
7897..
7898
7899.. bpo: 31966
7900.. date: 2018-02-19-13-54-42
7901.. nonce: _Q3HPb
7902.. section: Windows
7903
7904Fixed WindowsConsoleIO.write() for writing empty data.
7905
7906..
7907
7908.. bpo: 32409
7909.. date: 2018-02-19-10-00-57
7910.. nonce: nocuDg
7911.. section: Windows
7912
7913Ensures activate.bat can handle Unicode contents.
7914
7915..
7916
7917.. bpo: 32457
7918.. date: 2018-02-19-08-54-06
7919.. nonce: vVP0Iz
7920.. section: Windows
7921
7922Improves handling of denormalized executable path when launching Python.
7923
7924..
7925
7926.. bpo: 32370
7927.. date: 2018-02-10-15-38-19
7928.. nonce: kcKuct
7929.. section: Windows
7930
7931Use the correct encoding for ipconfig output in the uuid module. Patch by
7932Segev Finer.
7933
7934..
7935
7936.. bpo: 29248
7937.. date: 2018-02-07-17-50-48
7938.. nonce: Xzwj-6
7939.. section: Windows
7940
7941Fix :func:`os.readlink` on Windows, which was mistakenly treating the
7942``PrintNameOffset`` field of the reparse data buffer as a number of
7943characters instead of bytes. Patch by Craig Holmquist and SSE4.
7944
7945..
7946
7947.. bpo: 1104
7948.. date: 2017-11-24-12-53-54
7949.. nonce: 1CWSZp
7950.. section: Windows
7951
7952Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to
7953prevent it from truncating the last character.
7954
7955..
7956
7957.. bpo: 35401
7958.. date: 2018-12-09-13-56-49
7959.. nonce: n8B7X1
7960.. section: macOS
7961
7962Update macOS installer to use OpenSSL 1.1.0j.
7963
7964..
7965
7966.. bpo: 35025
7967.. date: 2018-10-18-23-54-55
7968.. nonce: X4LFJg
7969.. section: macOS
7970
7971Properly guard the use of the ``CLOCK_GETTIME`` et al. macros in
7972``timemodule`` on macOS.
7973
7974..
7975
7976.. bpo: 24658
7977.. date: 2018-10-17-14-36-08
7978.. nonce: Naddgx
7979.. section: macOS
7980
7981On macOS, fix reading from and writing into a file with a size larger than 2
7982GiB.
7983
7984..
7985
7986.. bpo: 34405
7987.. date: 2018-09-11-08-30-55
7988.. nonce: UzIi0n
7989.. section: macOS
7990
7991Update to OpenSSL 1.1.0i for macOS installer builds.
7992
7993..
7994
7995.. bpo: 33635
7996.. date: 2018-07-31-09-51-01
7997.. nonce: KiscE-
7998.. section: macOS
7999
8000In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad
8001file descriptor OSError. Guard against this exception was added in is_dir,
8002is_file and similar methods. DirEntry.is_dir can also throw this exception
8003so _RecursiveWildcardSelector._iterate_directories was also extended with
8004the same error ignoring pattern.
8005
8006..
8007
8008.. bpo: 13631
8009.. date: 2018-05-16-13-25-58
8010.. nonce: UIjDyY
8011.. section: macOS
8012
8013The .editrc file in user's home directory is now processed correctly during
8014the readline initialization through editline emulation on macOS.
8015
8016..
8017
8018.. bpo: 33184
8019.. date: 2018-04-07-00-51-34
8020.. nonce: 3j208P
8021.. section: macOS
8022
8023Update macOS installer build to use OpenSSL 1.1.0h.
8024
8025..
8026
8027.. bpo: 32726
8028.. date: 2018-03-29-06-56-12
8029.. nonce: urS9uX
8030.. section: macOS
8031
8032Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+
8033installer. The 10.9+ installer variant already does this.  This means that
8034the Python 3.7 provided by the python.org macOS installers no longer need or
8035use any external versions of Tcl/Tk, either system-provided or
8036user-installed, such as ActiveTcl.
8037
8038..
8039
8040.. bpo: 32901
8041.. date: 2018-02-27-17-33-15
8042.. nonce: hQu0w3
8043.. section: macOS
8044
8045Update macOS 10.9+ installer to Tcl/Tk 8.6.8.
8046
8047..
8048
8049.. bpo: 31903
8050.. date: 2017-11-01-16-53-12
8051.. nonce: K6jCVG
8052.. section: macOS
8053
8054In :mod:`_scproxy`, drop the GIL when calling into ``SystemConfiguration``
8055to avoid deadlocks.
8056
8057..
8058
8059.. bpo: 35770
8060.. date: 2019-01-18-13-04-30
8061.. nonce: 2LxJGu
8062.. section: IDLE
8063
8064IDLE macosx deletes Options => Configure IDLE. It previously deleted Window
8065=> Zoom Height by mistake. (Zoom Height is now on the Options menu).  On
8066Mac, the settings dialog is accessed via Preferences on the IDLE menu.
8067
8068..
8069
8070.. bpo: 35769
8071.. date: 2019-01-18-01-24-23
8072.. nonce: GqsB34
8073.. section: IDLE
8074
8075Change IDLE's new file name from 'Untitled' to 'untitled'
8076
8077..
8078
8079.. bpo: 35660
8080.. date: 2019-01-04-19-14-29
8081.. nonce: hMxI7N
8082.. section: IDLE
8083
8084Fix imports in idlelib.window.
8085
8086..
8087
8088.. bpo: 35641
8089.. date: 2019-01-02-22-15-01
8090.. nonce: QEaANl
8091.. section: IDLE
8092
8093Proper format `calltip` when the function has no docstring.
8094
8095..
8096
8097.. bpo: 33987
8098.. date: 2018-12-31-17-04-18
8099.. nonce: fD92up
8100.. section: IDLE
8101
8102Use ttk Frame for ttk widgets.
8103
8104..
8105
8106.. bpo: 34055
8107.. date: 2018-12-28-17-16-33
8108.. nonce: TmmpzR
8109.. section: IDLE
8110
8111Fix erroneous 'smart' indents and newlines in IDLE Shell.
8112
8113..
8114
8115.. bpo: 35591
8116.. date: 2018-12-28-01-19-20
8117.. nonce: SFpDj2
8118.. section: IDLE
8119
8120Find Selection now works when selection not found.
8121
8122..
8123
8124.. bpo: 35196
8125.. date: 2018-12-27-17-46-42
8126.. nonce: 9E-xUh
8127.. section: IDLE
8128
8129Speed up squeezer line counting.
8130
8131..
8132
8133.. bpo: 35598
8134.. date: 2018-12-27-15-29-11
8135.. nonce: FWOOm8
8136.. section: IDLE
8137
8138Update config_key: use PEP 8 names and ttk widgets, make some objects
8139global, and add tests.
8140
8141..
8142
8143.. bpo: 28097
8144.. date: 2018-12-26-13-53-34
8145.. nonce: 95I9NT
8146.. section: IDLE
8147
8148Add Previous/Next History entries to Shell menu.
8149
8150..
8151
8152.. bpo: 35208
8153.. date: 2018-12-23-17-42-11
8154.. nonce: J5NOg7
8155.. section: IDLE
8156
8157Squeezer now properly counts wrapped lines before newlines.
8158
8159..
8160
8161.. bpo: 35555
8162.. date: 2018-12-21-18-44-30
8163.. nonce: M58_K3
8164.. section: IDLE
8165
8166Gray out Code Context menu entry when it's not applicable.
8167
8168..
8169
8170.. bpo: 35521
8171.. date: 2018-12-20-00-14-15
8172.. nonce: x32BRn
8173.. section: IDLE
8174
8175Document the IDLE editor code context feature. Add some internal references
8176within the IDLE doc.
8177
8178..
8179
8180.. bpo: 22703
8181.. date: 2018-12-18-13-56-31
8182.. nonce: UlsjKQ
8183.. section: IDLE
8184
8185The Code Context menu label now toggles between Show/Hide Code Context. The
8186Zoom Height menu now toggles between Zoom/Restore Height. Zoom Height has
8187moved from the Window menu to the Options menu.
8188
8189..
8190
8191.. bpo: 35213
8192.. date: 2018-11-12-00-20-01
8193.. nonce: cqNgzT
8194.. section: IDLE
8195
8196Where appropriate, use 'macOS' in idlelib.
8197
8198..
8199
8200.. bpo: 34864
8201.. date: 2018-11-11-17-13-50
8202.. nonce: cw0PvO
8203.. section: IDLE
8204
8205On macOS, warn if the system preference "Prefer tabs when opening documents"
8206is set to "Always".
8207
8208..
8209
8210.. bpo: 34864
8211.. date: 2018-11-10-21-27-25
8212.. nonce: Ci-G2q
8213.. section: IDLE
8214
8215Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs
8216always" setting disables some IDLE features.  Menus are a bit different than
8217as described for Windows and Linux.
8218
8219..
8220
8221.. bpo: 35202
8222.. date: 2018-11-10-09-10-54
8223.. nonce: TeJJrt
8224.. section: IDLE
8225
8226Remove unused imports from lib/idlelib
8227
8228..
8229
8230.. bpo: 33000
8231.. date: 2018-11-06-23-10-54
8232.. nonce: pQasCt
8233.. section: IDLE
8234
8235Document that IDLE's shell has no line limit. A program that runs
8236indefinitely can overfill memory.
8237
8238..
8239
8240.. bpo: 23220
8241.. date: 2018-11-05-23-23-00
8242.. nonce: H3SAWE
8243.. section: IDLE
8244
8245Explain how IDLE's Shell displays output.
8246
8247..
8248
8249.. bpo: 35099
8250.. date: 2018-11-05-20-43-08
8251.. nonce: SVOZXC
8252.. section: IDLE
8253
8254Improve the doc about IDLE running user code.   The section is renamed from
8255"IDLE -- console differences" is renamed "Running user code". It mostly
8256covers the implications of using custom sys.stdxxx objects.
8257
8258..
8259
8260.. bpo: 35097
8261.. date: 2018-10-28-20-17-14
8262.. nonce: 07tm66
8263.. section: IDLE
8264
8265Add IDLE doc subsection explaining editor windows. Topics include opening,
8266title and status bar, .py* extension, and running.
8267
8268..
8269
8270.. bpo: 35093
8271.. date: 2018-10-28-15-53-51
8272.. nonce: cH-tli
8273.. section: IDLE
8274
8275Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help
8276and preferences", "Help sources" subsection.
8277
8278..
8279
8280.. bpo: 35088
8281.. date: 2018-10-28-00-54-32
8282.. nonce: r1lJZd
8283.. section: IDLE
8284
8285Update idlelib.help.copy_string docstring. We now use git and backporting
8286instead of hg and forward merging.
8287
8288..
8289
8290.. bpo: 35087
8291.. date: 2018-10-28-00-08-42
8292.. nonce: G7gx2-
8293.. section: IDLE
8294
8295Update idlelib help files for the current doc build. The main change is the
8296elimination of chapter-section numbers.
8297
8298..
8299
8300.. bpo: 34548
8301.. date: 2018-09-22-20-25-07
8302.. nonce: 7pBzjg
8303.. section: IDLE
8304
8305Use configured color theme for read-only text views.
8306
8307..
8308
8309.. bpo: 1529353
8310.. date: 2018-08-13-16-31-24
8311.. nonce: wXfQJk
8312.. section: IDLE
8313
8314Enable "squeezing" of long outputs in the shell, to avoid performance
8315degradation and to clean up the history without losing it.  Squeezed outputs
8316may be copied, viewed in a separate window, and "unsqueezed".
8317
8318..
8319
8320.. bpo: 34047
8321.. date: 2018-08-05-15-49-55
8322.. nonce: LGKsIm
8323.. section: IDLE
8324
8325Fixed mousewheel scrolling direction on macOS.
8326
8327..
8328
8329.. bpo: 34275
8330.. date: 2018-08-02-22-16-42
8331.. nonce: Iu0d7t
8332.. section: IDLE
8333
8334Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need
8335.update_idletasks(). Patch by Kevin Walzer.
8336
8337..
8338
8339.. bpo: 34120
8340.. date: 2018-08-01-23-25-38
8341.. nonce: HgsIz-
8342.. section: IDLE
8343
8344Fix unresponsiveness after closing certain windows and dialogs.
8345
8346..
8347
8348.. bpo: 33975
8349.. date: 2018-06-26-22-53-14
8350.. nonce: Ow7alv
8351.. section: IDLE
8352
8353Avoid small type when running htests. Since part of the purpose of
8354human-viewed tests is to determine that widgets look right, it is important
8355that they look the same for testing as when running IDLE.
8356
8357..
8358
8359.. bpo: 33905
8360.. date: 2018-06-21-20-35-33
8361.. nonce: W2mhiY
8362.. section: IDLE
8363
8364Add test for idlelib.stackview.StackBrowser.
8365
8366..
8367
8368.. bpo: 33924
8369.. date: 2018-06-20-22-14-07
8370.. nonce: 6Rz1wt
8371.. section: IDLE
8372
8373Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key
8374is lowercase version of main menu entry.
8375
8376..
8377
8378.. bpo: 33906
8379.. date: 2018-06-20-19-16-24
8380.. nonce: a1lXq0
8381.. section: IDLE
8382
8383Rename idlelib.windows as window Match Window on the main menu and remove
8384last plural module name.
8385
8386..
8387
8388.. bpo: 33917
8389.. date: 2018-06-20-16-27-48
8390.. nonce: ZXHs8x
8391.. section: IDLE
8392
8393Fix and document idlelib/idle_test/template.py. The revised file compiles,
8394runs, and tests OK.  idle_test/README.txt explains how to use it to create
8395new IDLE test files.
8396
8397..
8398
8399.. bpo: 33904
8400.. date: 2018-06-20-12-40-54
8401.. nonce: qm0eCu
8402.. section: IDLE
8403
8404IDLE: In rstrip, rename class RstripExtension as Rstrip
8405
8406..
8407
8408.. bpo: 33907
8409.. date: 2018-06-19-22-21-27
8410.. nonce: z-_B3N
8411.. section: IDLE
8412
8413For consistency and clarity, rename an IDLE module and classes. Module
8414calltips and its class CallTips are now calltip and Calltip. In module
8415calltip_w, class CallTip is now CalltipWindow.
8416
8417..
8418
8419.. bpo: 33856
8420.. date: 2018-06-16-21-54-45
8421.. nonce: TH8WHU
8422.. section: IDLE
8423
8424Add "help" in the welcome message of IDLE
8425
8426..
8427
8428.. bpo: 33839
8429.. date: 2018-06-14-13-23-55
8430.. nonce: ZlJzHa
8431.. section: IDLE
8432
8433IDLE: refactor ToolTip and CallTip and add documentation and tests
8434
8435..
8436
8437.. bpo: 33855
8438.. date: 2018-06-14-11-35-50
8439.. nonce: XL230W
8440.. section: IDLE
8441
8442Minimally test all IDLE modules. Add missing files, import module,
8443instantiate classes, and check coverage. Check existing files.
8444
8445..
8446
8447.. bpo: 33656
8448.. date: 2018-06-10-17-59-36
8449.. nonce: 60ZqJS
8450.. section: IDLE
8451
8452On Windows, add API call saying that tk scales for DPI. On Windows 8.1+ or
845310, with DPI compatibility properties of the Python binary unchanged, and a
8454monitor resolution greater than 96 DPI, this should make text and lines
8455sharper.  It should otherwise have no effect.
8456
8457..
8458
8459.. bpo: 33768
8460.. date: 2018-06-04-19-23-11
8461.. nonce: I_2qpV
8462.. section: IDLE
8463
8464Clicking on a context line moves that line to the top of the editor window.
8465
8466..
8467
8468.. bpo: 33763
8469.. date: 2018-06-03-20-12-57
8470.. nonce: URiFlE
8471.. section: IDLE
8472
8473IDLE: Use read-only text widget for code context instead of label widget.
8474
8475..
8476
8477.. bpo: 33664
8478.. date: 2018-06-03-09-13-28
8479.. nonce: PZzQyL
8480.. section: IDLE
8481
8482Scroll IDLE editor text by lines. Previously, the mouse wheel and scrollbar
8483slider moved text by a fixed number of pixels, resulting in partial lines at
8484the top of the editor box.  The change also applies to the shell and grep
8485output windows, but not to read-only text views.
8486
8487..
8488
8489.. bpo: 33679
8490.. date: 2018-05-29-07-14-37
8491.. nonce: MgX_Ui
8492.. section: IDLE
8493
8494Enable theme-specific color configuration for Code Context. Use the
8495Highlights tab to see the setting for built-in themes or add settings to
8496custom themes.
8497
8498..
8499
8500.. bpo: 33642
8501.. date: 2018-05-24-20-42-44
8502.. nonce: J0VQbS
8503.. section: IDLE
8504
8505Display up to maxlines non-blank lines for Code Context. If there is no
8506current context, show a single blank line.
8507
8508..
8509
8510.. bpo: 33628
8511.. date: 2018-05-23-19-51-07
8512.. nonce: sLlFLO
8513.. section: IDLE
8514
8515IDLE: Cleanup codecontext.py and its test.
8516
8517..
8518
8519.. bpo: 33564
8520.. date: 2018-05-17-19-41-12
8521.. nonce: XzHZJe
8522.. section: IDLE
8523
8524IDLE's code context now recognizes async as a block opener.
8525
8526..
8527
8528.. bpo: 21474
8529.. date: 2018-04-29-16-13-02
8530.. nonce: bglg-F
8531.. section: IDLE
8532
8533Update word/identifier definition from ascii to unicode. In text and entry
8534boxes, this affects selection by double-click, movement left/right by
8535control-left/right, and deletion left/right by control-BACKSPACE/DEL.
8536
8537..
8538
8539.. bpo: 33204
8540.. date: 2018-04-02-00-28-13
8541.. nonce: NBsuIv
8542.. section: IDLE
8543
8544IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot
8545be paired with either 'r' or 'f'. Consistently color as much of the prefix,
8546starting at the right, as is valid. Revise and extend colorizer test.
8547
8548..
8549
8550.. bpo: 32984
8551.. date: 2018-03-05-01-29-05
8552.. nonce: NGjgT4
8553.. section: IDLE
8554
8555Set ``__file__`` while running a startup file.  Like Python, IDLE optionally
8556runs one startup file in the Shell window before presenting the first
8557interactive input prompt.  For IDLE, ``-s`` runs a file named in
8558environmental variable  :envvar:`IDLESTARTUP` or  :envvar:`PYTHONSTARTUP`;
8559``-r file`` runs ``file``.  Python sets ``__file__`` to the startup file
8560name before running the file and unsets it before the first prompt.  IDLE
8561now does the same when run normally, without the ``-n`` option.
8562
8563..
8564
8565.. bpo: 32940
8566.. date: 2018-02-24-18-20-50
8567.. nonce: ZaJ1Rf
8568.. section: IDLE
8569
8570Simplify and rename StringTranslatePseudoMapping in pyparse.
8571
8572..
8573
8574.. bpo: 32916
8575.. date: 2018-02-23-07-32-36
8576.. nonce: 4MsQ5F
8577.. section: IDLE
8578
8579Change ``str`` to ``code`` in pyparse.
8580
8581..
8582
8583.. bpo: 32905
8584.. date: 2018-02-22-00-09-27
8585.. nonce: VlXj0x
8586.. section: IDLE
8587
8588Remove unused code in pyparse module.
8589
8590..
8591
8592.. bpo: 32874
8593.. date: 2018-02-19-10-56-41
8594.. nonce: 6pZ9Gv
8595.. section: IDLE
8596
8597Add tests for pyparse.
8598
8599..
8600
8601.. bpo: 32837
8602.. date: 2018-02-12-17-22-48
8603.. nonce: -33QPl
8604.. section: IDLE
8605
8606Using the system and place-dependent default encoding for open() is a bad
8607idea for IDLE's system and location-independent files.
8608
8609..
8610
8611.. bpo: 32826
8612.. date: 2018-02-12-11-05-22
8613.. nonce: IxNZrk
8614.. section: IDLE
8615
8616Add "encoding=utf-8" to open() in IDLE's test_help_about. GUI test
8617test_file_buttons() only looks at initial ascii-only lines, but failed on
8618systems where open() defaults to 'ascii' because readline() internally reads
8619and decodes far enough ahead to encounter a non-ascii character in
8620CREDITS.txt.
8621
8622..
8623
8624.. bpo: 32831
8625.. date: 2018-02-12-08-08-45
8626.. nonce: srDRvU
8627.. section: IDLE
8628
8629Add docstrings and tests for codecontext.
8630
8631..
8632
8633.. bpo: 32765
8634.. date: 2018-02-04-17-52-54
8635.. nonce: qm0eCu
8636.. section: IDLE
8637
8638Update configdialog General tab docstring to add new widgets to the widget
8639list.
8640
8641..
8642
8643.. bpo: 35884
8644.. date: 2019-02-01-12-22-37
8645.. nonce: hJkMRD
8646.. section: Tools/Demos
8647
8648Add a benchmark script for timing various ways to access variables:
8649``Tools/scripts/var_access_benchmark.py``.
8650
8651..
8652
8653.. bpo: 34989
8654.. date: 2018-10-15-13-22-28
8655.. nonce: hU4fra
8656.. section: Tools/Demos
8657
8658python-gdb.py now handles errors on computing the line number of a Python
8659frame.
8660
8661..
8662
8663.. bpo: 20260
8664.. date: 2018-07-24-00-11-44
8665.. nonce: klmmqI
8666.. section: Tools/Demos
8667
8668Argument Clinic now has non-bitwise unsigned int converters.
8669
8670..
8671
8672.. bpo: 32962
8673.. date: 2018-06-14-16-23-07
8674.. nonce: Q3Dwns
8675.. section: Tools/Demos
8676
8677python-gdb now catches ``UnicodeDecodeError`` exceptions when calling
8678``string()``.
8679
8680..
8681
8682.. bpo: 32962
8683.. date: 2018-06-14-16-16-53
8684.. nonce: 2YfdwI
8685.. section: Tools/Demos
8686
8687python-gdb now catches ValueError on read_var(): when Python has no debug
8688symbols for example.
8689
8690..
8691
8692.. bpo: 33189
8693.. date: 2018-04-03-18-10-00
8694.. nonce: QrXR00
8695.. section: Tools/Demos
8696
8697:program:`pygettext.py` now recognizes only literal strings as docstrings
8698and translatable strings, and rejects bytes literals and f-string
8699expressions.
8700
8701..
8702
8703.. bpo: 31920
8704.. date: 2018-03-26-18-54-24
8705.. nonce: u_WKsT
8706.. section: Tools/Demos
8707
8708Fixed handling directories as arguments in the ``pygettext`` script. Based
8709on patch by Oleg Krasnikov.
8710
8711..
8712
8713.. bpo: 29673
8714.. date: 2018-03-16-17-25-05
8715.. nonce: m8QtaW
8716.. section: Tools/Demos
8717
8718Fix pystackv and pystack gdbinit macros.
8719
8720..
8721
8722.. bpo: 25427
8723.. date: 2018-03-02-16-23-31
8724.. nonce: 1mgMOG
8725.. section: Tools/Demos
8726
8727Remove the pyvenv script in favor of ``python3 -m venv`` in order to lower
8728confusion as to what Python interpreter a virtual environment will be
8729created for.
8730
8731..
8732
8733.. bpo: 32885
8734.. date: 2018-02-20-12-16-47
8735.. nonce: dL5x7C
8736.. section: Tools/Demos
8737
8738Add an ``-n`` flag for ``Tools/scripts/pathfix.py`` to disable automatic
8739backup creation (files with ``~`` suffix).
8740
8741..
8742
8743.. bpo: 32222
8744.. date: 2017-12-07-20-51-20
8745.. nonce: hPBcGT
8746.. section: Tools/Demos
8747
8748Fix pygettext not extracting docstrings for functions with type annotated
8749arguments. Patch by Toby Harradine.
8750
8751..
8752
8753.. bpo: 31583
8754.. date: 2017-09-26-10-11-21
8755.. nonce: TM90_H
8756.. section: Tools/Demos
8757
8758Fix 2to3 for using with --add-suffix option but without --output-dir option
8759for relative path to files in current directory.
8760
8761..
8762
8763.. bpo: 35713
8764.. date: 2019-01-22-17-04-10
8765.. nonce: fmehdG
8766.. section: C API
8767
8768The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have
8769been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were
8770excluded from the limited API (stable ABI), and were not documented.
8771
8772..
8773
8774.. bpo: 33817
8775.. date: 2019-01-11-11-16-16
8776.. nonce: nJ4yIj
8777.. section: C API
8778
8779Fixed :c:func:`_PyBytes_Resize` for empty bytes objects.
8780
8781..
8782
8783.. bpo: 35322
8784.. date: 2018-11-28-03-20-36
8785.. nonce: Qcqsag
8786.. section: C API
8787
8788Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and
8789:c:func:`PyUnicode_EncodeFSDefault` on error handling.
8790
8791..
8792
8793.. bpo: 35059
8794.. date: 2018-11-23-11-52-34
8795.. nonce: BLSp6y
8796.. section: C API
8797
8798The following C macros have been converted to static inline functions:
8799:c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`,
8800:c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`.
8801
8802..
8803
8804.. bpo: 35296
8805.. date: 2018-11-22-18-34-23
8806.. nonce: nxrIQt
8807.. section: C API
8808
8809``make install`` now also installs the internal API:
8810``Include/internal/*.h`` header files.
8811
8812..
8813
8814.. bpo: 35081
8815.. date: 2018-11-22-18-15-46
8816.. nonce: FdK9mV
8817.. section: C API
8818
8819Internal APIs surrounded by ``#ifdef Py_BUILD_CORE`` have been moved from
8820``Include/*.h`` headers to new header files ``Include/internal/pycore_*.h``.
8821
8822..
8823
8824.. bpo: 35259
8825.. date: 2018-11-22-13-52-36
8826.. nonce: p07c61
8827.. section: C API
8828
8829Conditionally declare :c:func:`Py_FinalizeEx()` (new in 3.6) based on
8830Py_LIMITED_API. Patch by Arthur Neufeld.
8831
8832..
8833
8834.. bpo: 35081
8835.. date: 2018-11-13-12-13-04
8836.. nonce: gFd85N
8837.. section: C API
8838
8839The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros
8840have been removed from the public C API.
8841
8842..
8843
8844.. bpo: 35134
8845.. date: 2018-11-01-13-58-37
8846.. nonce: SbZo0o
8847.. section: C API
8848
8849Creation of a new ``Include/cpython/`` subdirectory.
8850
8851..
8852
8853.. bpo: 34725
8854.. date: 2018-10-13-16-30-54
8855.. nonce: j52rIS
8856.. section: C API
8857
8858Adds _Py_SetProgramFullPath so embedders may override sys.executable
8859
8860..
8861
8862.. bpo: 34910
8863.. date: 2018-10-05-17-06-49
8864.. nonce: tSFrls
8865.. section: C API
8866
8867Ensure that :c:func:`PyObject_Print` always returns ``-1`` on error.  Patch
8868by Zackery Spytz.
8869
8870..
8871
8872.. bpo: 34523
8873.. date: 2018-08-29-18-48-47
8874.. nonce: lLQ8rh
8875.. section: C API
8876
8877Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on
8878Windows if Py_LegacyWindowsFSEncodingFlag is zero.
8879
8880..
8881
8882.. bpo: 34193
8883.. date: 2018-07-24-11-57-35
8884.. nonce: M6ch1Q
8885.. section: C API
8886
8887Fix pluralization in TypeError messages in getargs.c and typeobject.c: '1
8888argument' instead of '1 arguments' and '1 element' instead of '1 elements'.
8889
8890..
8891
8892.. bpo: 34127
8893.. date: 2018-07-22-14-58-06
8894.. nonce: qkfnHO
8895.. section: C API
8896
8897Return grammatically correct error message based on argument count. Patch by
8898Karthikeyan Singaravelan.
8899
8900..
8901
8902.. bpo: 23927
8903.. date: 2018-07-09-11-39-54
8904.. nonce: pDFkxb
8905.. section: C API
8906
8907Fixed :exc:`SystemError` in :c:func:`PyArg_ParseTupleAndKeywords` when the
8908``w*`` format unit is used for optional parameter.
8909
8910..
8911
8912.. bpo: 32455
8913.. date: 2018-07-08-12-06-18
8914.. nonce: KVHlkz
8915.. section: C API
8916
8917Added :c:func:`PyCompile_OpcodeStackEffectWithJump`.
8918
8919..
8920
8921.. bpo: 34008
8922.. date: 2018-07-02-10-58-11
8923.. nonce: COewz-
8924.. section: C API
8925
8926Py_Main() can again be called after Py_Initialize(), as in Python 3.6.
8927
8928..
8929
8930.. bpo: 32500
8931.. date: 2018-06-21-17-19-31
8932.. nonce: WGCNad
8933.. section: C API
8934
8935Fixed error messages for :c:func:`PySequence_Size`,
8936:c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` and
8937:c:func:`PySequence_DelItem` called with a mapping and
8938:c:func:`PyMapping_Size` called with a sequence.
8939
8940..
8941
8942.. bpo: 33818
8943.. date: 2018-06-10-09-42-31
8944.. nonce: 50nlf3
8945.. section: C API
8946
8947:c:func:`PyExceptionClass_Name` will now return ``const char *`` instead of
8948``char *``.
8949
8950..
8951
8952.. bpo: 33042
8953.. date: 2018-03-20-21-43-09
8954.. nonce: FPFp64
8955.. section: C API
8956
8957Embedding applications may once again call PySys_ResetWarnOptions,
8958PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize.
8959
8960..
8961
8962.. bpo: 32374
8963.. date: 2018-01-09-17-03-54
8964.. nonce: SwwLoz
8965.. section: C API
8966
8967Document that m_traverse for multi-phase initialized modules can be called
8968with m_state=NULL, and add a sanity check
8969
8970..
8971
8972.. bpo: 30863
8973.. date: 2017-10-12-23-24-27
8974.. nonce: xrED19
8975.. section: C API
8976
8977:c:func:`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no
8978longer cache the ``wchar_t*`` representation of string objects.
8979