• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. bpo: 40791
2.. date: 2020-05-28-06-06-47
3.. nonce: QGZClX
4.. release date: 2020-12-07
5.. section: Security
6
7Add ``volatile`` to the accumulator variable in ``hmac.compare_digest``,
8making constant-time-defeating optimizations less likely.
9
10..
11
12.. bpo: 42576
13.. date: 2020-12-05-22-34-47
14.. nonce: lEeEl7
15.. section: Core and Builtins
16
17``types.GenericAlias`` will now raise a ``TypeError`` when attempting to
18initialize with a keyword argument.  Previously, this would cause the
19interpreter to crash if the interpreter was compiled with debug symbols.
20This does not affect interpreters compiled for release.  Patch by Ken Jin.
21
22..
23
24.. bpo: 42536
25.. date: 2020-12-02-20-23-31
26.. nonce: Kx3ZOu
27.. section: Core and Builtins
28
29Several built-in and standard library types now ensure that their internal
30result tuples are always tracked by the :term:`garbage collector <garbage
31collection>`:
32
33- :meth:`collections.OrderedDict.items() <collections.OrderedDict>`
34
35- :meth:`dict.items`
36
37- :func:`enumerate`
38
39- :func:`functools.reduce`
40
41- :func:`itertools.combinations`
42
43- :func:`itertools.combinations_with_replacement`
44
45- :func:`itertools.permutations`
46
47- :func:`itertools.product`
48
49- :func:`itertools.zip_longest`
50
51- :func:`zip`
52
53Previously, they could have become untracked by a prior garbage collection.
54Patch by Brandt Bucher.
55
56..
57
58.. bpo: 42500
59.. date: 2020-11-30-14-27-29
60.. nonce: excVKU
61.. section: Core and Builtins
62
63Improve handling of exceptions near recursion limit. Converts a number of
64Fatal Errors in RecursionErrors.
65
66..
67
68.. bpo: 42246
69.. date: 2020-11-24-14-01-43
70.. nonce: c9k9hj
71.. section: Core and Builtins
72
73PEP 626: After a return, the f_lineno attribute of a frame is always the
74last line executed.
75
76..
77
78.. bpo: 42435
79.. date: 2020-11-22-14-34-55
80.. nonce: uwlB2W
81.. section: Core and Builtins
82
83Speed up comparison of bytes objects with non-bytes objects when option
84:option:`-b` is specified. Speed up comparison of bytarray objects with
85non-buffer object.
86
87..
88
89.. bpo: 1635741
90.. date: 2020-11-18-23-46-31
91.. nonce: GVOQ-m
92.. section: Core and Builtins
93
94Port the ``_warnings`` extension module to the multi-phase initialization
95API (:pep:`489`). Patch by Victor Stinner.
96
97..
98
99.. bpo: 41686
100.. date: 2020-11-17-16-25-50
101.. nonce: hX77kL
102.. section: Core and Builtins
103
104On Windows, the ``SIGINT`` event, ``_PyOS_SigintEvent()``, is now created
105even if Python is configured to not install signal handlers (if
106:c:member:`PyConfig.install_signal_handlers` equals to 0, or
107``Py_InitializeEx(0)``).
108
109..
110
111.. bpo: 42381
112.. date: 2020-11-16-23-45-56
113.. nonce: G4AWxL
114.. section: Core and Builtins
115
116Allow assignment expressions in set literals and set comprehensions as per
117PEP 572. Patch by Pablo Galindo.
118
119..
120
121.. bpo: 42202
122.. date: 2020-11-16-18-13-07
123.. nonce: ZxenYD
124.. section: Core and Builtins
125
126Change function parameters annotations internal representation to tuple of
127strings. Patch provided by Yurii Karabas.
128
129..
130
131.. bpo: 42374
132.. date: 2020-11-16-17-57-09
133.. nonce: t7np1E
134.. section: Core and Builtins
135
136Fix a regression introduced by the new parser, where an unparenthesized
137walrus operator was not allowed within generator expressions.
138
139..
140
141.. bpo: 42316
142.. date: 2020-11-16-17-30-03
143.. nonce: _DdmpQ
144.. section: Core and Builtins
145
146Allow an unparenthesized walrus in subscript indexes.
147
148..
149
150.. bpo: 42349
151.. date: 2020-11-13-17-25-44
152.. nonce: JdWxez
153.. section: Core and Builtins
154
155Make sure that the compiler front-end produces a well-formed control flow
156graph. Be be more aggressive in the compiler back-end, as it is now safe to
157do so.
158
159..
160
161.. bpo: 42296
162.. date: 2020-11-13-13-53-11
163.. nonce: DuGrLJ
164.. section: Core and Builtins
165
166On Windows, fix a regression in signal handling which prevented to interrupt
167a program using CTRL+C. The signal handler can be run in a thread different
168than the Python thread, in which case the test deciding if the thread can
169handle signals is wrong.
170
171..
172
173.. bpo: 42332
174.. date: 2020-11-12-23-16-14
175.. nonce: fEQIdk
176.. section: Core and Builtins
177
178:class:`types.GenericAlias` objects can now be the targets of weakrefs.
179
180..
181
182.. bpo: 42282
183.. date: 2020-11-07-21-02-05
184.. nonce: M1W4Wj
185.. section: Core and Builtins
186
187Optimise constant subexpressions that appear as part of named expressions
188(previously the AST optimiser did not descend into named expressions). Patch
189by Nick Coghlan.
190
191..
192
193.. bpo: 42266
194.. date: 2020-11-04-23-03-25
195.. nonce: G4hGDe
196.. section: Core and Builtins
197
198Fixed a bug with the LOAD_ATTR opcode cache that was not respecting
199monkey-patching a class-level attribute to make it a descriptor. Patch by
200Pablo Galindo.
201
202..
203
204.. bpo: 40077
205.. date: 2020-11-03-21-58-27
206.. nonce: a9qM1j
207.. section: Core and Builtins
208
209Convert :mod:`queue` to use heap types.
210
211..
212
213.. bpo: 42246
214.. date: 2020-11-02-15-48-17
215.. nonce: 3CNQEX
216.. section: Core and Builtins
217
218Improved accuracy of line tracing events and f_lineno attribute of Frame
219objects. See PEP 626 for details.
220
221..
222
223.. bpo: 40077
224.. date: 2020-11-02-14-39-48
225.. nonce: grY9TG
226.. section: Core and Builtins
227
228Convert :mod:`mmap` to use heap types.
229
230..
231
232.. bpo: 42233
233.. date: 2020-11-01-23-34-56
234.. nonce: zOSzja
235.. section: Core and Builtins
236
237Allow ``GenericAlias`` objects to use :ref:`union type expressions
238<types-union>`. This allows expressions like ``list[int] | dict[float,
239str]`` where previously a ``TypeError`` would have been thrown.  This also
240fixes union type expressions not de-duplicating ``GenericAlias`` objects.
241(Contributed by Ken Jin in :issue:`42233`.)
242
243..
244
245.. bpo: 26131
246.. date: 2020-10-22-17-27-08
247.. nonce: B-Veg7
248.. section: Core and Builtins
249
250The import system triggers a `ImportWarning` when it falls back to using
251`load_module()`.
252
253..
254
255.. bpo: 5054
256.. date: 2020-12-04-03-51-12
257.. nonce: 53StYZ
258.. section: Library
259
260CGIHTTPRequestHandler.run_cgi() HTTP_ACCEPT improperly parsed. Replace the
261special purpose getallmatchingheaders with generic get_all method and add
262relevant tests.
263
264Original Patch by Martin Panter. Modified by Senthil Kumaran.
265
266..
267
268.. bpo: 42562
269.. date: 2020-12-03-22-42-03
270.. nonce: 2hPmhi
271.. section: Library
272
273Fix issue when dis failed to parse function that has no line numbers. Patch
274provided by Yurii Karabas.
275
276..
277
278.. bpo: 17735
279.. date: 2020-12-03-22-22-24
280.. nonce: Qsaaue
281.. section: Library
282
283:func:`inspect.findsource` now raises :exc:`OSError` instead of
284:exc:`IndexError` when :attr:`co_lineno` of a code object is greater than
285the file length. This can happen, for example, when a file is edited after
286it was imported.  PR by Irit Katriel.
287
288..
289
290.. bpo: 42116
291.. date: 2020-12-03-15-42-32
292.. nonce: yIwroP
293.. section: Library
294
295Fix handling of trailing comments by :func:`inspect.getsource`.
296
297..
298
299.. bpo: 42532
300.. date: 2020-12-02-07-37-59
301.. nonce: ObNep_
302.. section: Library
303
304Remove unexpected call of ``__bool__`` when passing a ``spec_arg`` argument
305to a Mock.
306
307..
308
309.. bpo: 38200
310.. date: 2020-11-28-22-52-57
311.. nonce: DuWGlW
312.. section: Library
313
314Added itertools.pairwise()
315
316..
317
318.. bpo: 41818
319.. date: 2020-11-28-06-34-53
320.. nonce: mFSMc2
321.. section: Library
322
323Fix test_master_read() so that it succeeds on all platforms that either
324raise OSError or return b"" upon reading from master.
325
326..
327
328.. bpo: 42487
329.. date: 2020-11-28-04-31-20
330.. nonce: iqtC4L
331.. section: Library
332
333ChainMap.__iter__ no longer calls __getitem__ on underlying maps
334
335..
336
337.. bpo: 42482
338.. date: 2020-11-27-16-46-58
339.. nonce: EJC3sd
340.. section: Library
341
342:class:`~traceback.TracebackException` no longer holds a reference to the
343exception's traceback object. Consequently, instances of TracebackException
344for equivalent but non-equal exceptions now compare as equal.
345
346..
347
348.. bpo: 41818
349.. date: 2020-11-27-09-19-43
350.. nonce: KWYUbL
351.. section: Library
352
353Make test_openpty() avoid unexpected success due to number of rows and/or
354number of columns being == 0.
355
356..
357
358.. bpo: 42392
359.. date: 2020-11-26-12-40-16
360.. nonce: GbmdHE
361.. section: Library
362
363Remove loop parameter from ``asyncio.subprocess`` and ``asyncio.tasks``
364functions. Patch provided by Yurii Karabas.
365
366..
367
368.. bpo: 42392
369.. date: 2020-11-25-22-44-59
370.. nonce: T_DAEl
371.. section: Library
372
373Remove loop parameter from ``asyncio.open_connection`` and
374``asyncio.start_server`` functions. Patch provided by Yurii Karabas.
375
376..
377
378.. bpo: 28468
379.. date: 2020-11-24-13-18-05
380.. nonce: 8Gh2d4
381.. section: Library
382
383Add :func:`platform.freedesktop_os_release` function to parse
384freedesktop.org ``os-release`` files.
385
386..
387
388.. bpo: 42299
389.. date: 2020-11-23-23-42-08
390.. nonce: Fdn4Wf
391.. section: Library
392
393Removed the ``formatter`` module, which was deprecated in Python 3.4. It is
394somewhat obsolete, little used, and not tested. It was originally scheduled
395to be removed in Python 3.6, but such removals were delayed until after
396Python 2.7 EOL. Existing users should copy whatever classes they use into
397their code. Patch by Dong-hee Na and and Terry J. Reedy.
398
399..
400
401.. bpo: 26131
402.. date: 2020-11-22-12-30-26
403.. nonce: -HsFPG
404.. section: Library
405
406Deprecate zipimport.zipimporter.load_module() in favour of exec_module().
407
408..
409
410.. bpo: 41818
411.. date: 2020-11-20-14-44-07
412.. nonce: 33soAw
413.. section: Library
414
415Updated tests for the pty library. test_basic() has been changed to
416test_openpty(); this additionally checks if slave termios and slave winsize
417are being set properly by pty.openpty(). In order to add support for
418FreeBSD, NetBSD, OpenBSD, and Darwin, this also adds test_master_read(),
419which demonstrates that pty.spawn() should not depend on an OSError to exit
420from its copy loop.
421
422..
423
424.. bpo: 42392
425.. date: 2020-11-20-14-01-29
426.. nonce: -OUzvl
427.. section: Library
428
429Remove loop parameter from ``__init__`` in all ``asyncio.locks`` and
430``asyncio.Queue`` classes. Patch provided by Yurii Karabas.
431
432..
433
434.. bpo: 15450
435.. date: 2020-11-20-10-38-34
436.. nonce: E-y9PA
437.. section: Library
438
439Make :class:`filecmp.dircmp` respect subclassing. Now the
440:attr:`filecmp.dircmp.subdirs` behaves as expected when subclassing dircmp.
441
442..
443
444.. bpo: 42413
445.. date: 2020-11-19-20-27-51
446.. nonce: fjHrHx
447.. section: Library
448
449The exception :exc:`socket.timeout` is now an alias of :exc:`TimeoutError`.
450
451..
452
453.. bpo: 31904
454.. date: 2020-11-19-16-14-36
455.. nonce: 83kf9d
456.. section: Library
457
458Support signal module on VxWorks.
459
460..
461
462.. bpo: 42406
463.. date: 2020-11-19-10-44-41
464.. nonce: r9rNCj
465.. section: Library
466
467We fixed an issue in `pickle.whichmodule` in which importing
468`multiprocessing` could change the how pickle identifies which module an
469object belongs to, potentially breaking the unpickling of those objects.
470
471..
472
473.. bpo: 42403
474.. date: 2020-11-19-10-12-39
475.. nonce: t7q5AX
476.. section: Library
477
478Simplify the :mod:`importlib` external bootstrap code:
479``importlib._bootstrap_external`` now uses regular imports to import builtin
480modules. When it is imported, the builtin :func:`__import__()` function is
481already fully working and so can be used to import builtin modules like
482:mod:`sys`. Patch by Victor Stinner.
483
484..
485
486.. bpo: 1635741
487.. date: 2020-11-19-09-59-07
488.. nonce: 7cMypH
489.. section: Library
490
491Convert _sre module types to heap types (PEP 384). Patch by Erlend E.
492Aasland.
493
494..
495
496.. bpo: 42375
497.. date: 2020-11-19-04-13-53
498.. nonce: U8bp4s
499.. section: Library
500
501subprocess module update for DragonFlyBSD support.
502
503..
504
505.. bpo: 41713
506.. date: 2020-11-17-23-00-27
507.. nonce: -Us0tf
508.. section: Library
509
510Port the ``_signal`` extension module to the multi-phase initialization API
511(:pep:`489`). Patch by Victor Stinner and Mohamed Koubaa.
512
513..
514
515.. bpo: 37205
516.. date: 2020-11-16-15-08-12
517.. nonce: Wh5svI
518.. section: Library
519
520:func:`time.time()`, :func:`time.perf_counter()` and
521:func:`time.monotonic()` functions can no longer fail with a Python fatal
522error, instead raise a regular Python exception on failure.
523
524..
525
526.. bpo: 42328
527.. date: 2020-11-15-17-02-00
528.. nonce: bqpPlR
529.. section: Library
530
531Fixed :meth:`tkinter.ttk.Style.map`. The function accepts now the
532representation of the default state as empty sequence (as returned by
533``Style.map()``). The structure of the result is now the same on all
534platform and does not depend on the value of ``wantobjects``.
535
536..
537
538.. bpo: 42345
539.. date: 2020-11-15-15-23-34
540.. nonce: hiIR7x
541.. section: Library
542
543Fix various issues with ``typing.Literal`` parameter handling (flatten,
544deduplicate, use type to cache key). Patch provided by Yurii Karabas.
545
546..
547
548.. bpo: 37205
549.. date: 2020-11-14-14-34-32
550.. nonce: iDbHrw
551.. section: Library
552
553:func:`time.perf_counter()` on Windows and :func:`time.monotonic()` on macOS
554are now system-wide. Previously, they used an offset computed at startup to
555reduce the precision loss caused by the float type. Use
556:func:`time.perf_counter_ns()` and :func:`time.monotonic_ns()` added in
557Python 3.7 to avoid this precision loss.
558
559..
560
561.. bpo: 42318
562.. date: 2020-11-14-13-46-27
563.. nonce: wYAcBD
564.. section: Library
565
566Fixed support of non-BMP characters in :mod:`tkinter` on macOS.
567
568..
569
570.. bpo: 42350
571.. date: 2020-11-13-18-53-50
572.. nonce: rsql7V
573.. section: Library
574
575Fix the :class:`threading.Thread` class at fork: do nothing if the thread is
576already stopped (ex: fork called at Python exit). Previously, an error was
577logged in the child process.
578
579..
580
581.. bpo: 42333
582.. date: 2020-11-12-18-21-15
583.. nonce: J9vFmV
584.. section: Library
585
586Port _ssl extension module to heap types.
587
588..
589
590.. bpo: 42014
591.. date: 2020-11-10-15-40-56
592.. nonce: ShM37l
593.. section: Library
594
595The ``onerror`` callback from ``shutil.rmtree`` now receives correct
596function when ``os.open`` fails.
597
598..
599
600.. bpo: 42237
601.. date: 2020-11-10-14-27-49
602.. nonce: F363jO
603.. section: Library
604
605Fix `os.sendfile()` on illumos.
606
607..
608
609.. bpo: 42308
610.. date: 2020-11-10-12-09-13
611.. nonce: yaJHH9
612.. section: Library
613
614Add :data:`threading.__excepthook__` to allow retrieving the original value
615of :func:`threading.excepthook` in case it is set to a broken or a different
616value. Patch by Mario Corchero.
617
618..
619
620.. bpo: 42131
621.. date: 2020-11-06-18-20-47
622.. nonce: l2rjjG
623.. section: Library
624
625Implement PEP 451/spec methods on zipimport.zipimporter: find_spec(),
626create_module(), and exec_module().
627
628This also allows for the documented deprecation of find_loader(),
629find_module(), and load_module().
630
631..
632
633.. bpo: 41877
634.. date: 2020-11-05-16-00-03
635.. nonce: FHbngM
636.. section: Library
637
638Mock objects which are not unsafe will now raise an AttributeError if an
639attribute with the prefix asert, aseert, or assrt is accessed, in addition
640to this already happening for the prefixes assert or assret.
641
642..
643
644.. bpo: 42264
645.. date: 2020-11-05-13-32-41
646.. nonce: r4KYUU
647.. section: Library
648
649``sqlite3.OptimizedUnicode`` has been undocumented and obsolete since Python
6503.3, when it was made an alias to :class:`str`.  It is now deprecated,
651scheduled for removal in Python 3.12.
652
653..
654
655.. bpo: 42251
656.. date: 2020-11-03-14-15-35
657.. nonce: 6TC32V
658.. section: Library
659
660Added :func:`threading.gettrace` and :func:`threading.getprofile` to
661retrieve the functions set by :func:`threading.settrace` and
662:func:`threading.setprofile` respectively. Patch by Mario Corchero.
663
664..
665
666.. bpo: 42249
667.. date: 2020-11-03-09-22-56
668.. nonce: vfNO2u
669.. section: Library
670
671Fixed writing binary Plist files larger than 4 GiB.
672
673..
674
675.. bpo: 42236
676.. date: 2020-11-02-23-05-17
677.. nonce: aJ6ZBR
678.. section: Library
679
680On Unix, the :func:`os.device_encoding` function now returns ``'UTF-8'``
681rather than the device encoding if the :ref:`Python UTF-8 Mode <utf8-mode>`
682is enabled.
683
684..
685
686.. bpo: 41754
687.. date: 2020-11-01-15-07-20
688.. nonce: DraSZh
689.. section: Library
690
691webbrowser: Ignore *NotADirectoryError* when calling ``xdg-settings``.
692
693..
694
695.. bpo: 42183
696.. date: 2020-10-29-11-17-35
697.. nonce: 50ZcIi
698.. section: Library
699
700Fix a stack overflow error for asyncio Task or Future repr().
701
702The overflow occurs under some circumstances when a Task or Future
703recursively returns itself.
704
705..
706
707.. bpo: 42140
708.. date: 2020-10-24-04-02-36
709.. nonce: miLqvb
710.. section: Library
711
712Improve asyncio.wait function to create the futures set just one time.
713
714..
715
716.. bpo: 42133
717.. date: 2020-10-23-15-47-47
718.. nonce: BzizYV
719.. section: Library
720
721Update various modules in the stdlib to fall back on `__spec__.loader` when
722`__loader__` isn't defined on a module.
723
724..
725
726.. bpo: 26131
727.. date: 2020-10-22-17-26-35
728.. nonce: CAsI3O
729.. section: Library
730
731The `load_module()` methods found in importlib now trigger a
732DeprecationWarning.
733
734..
735
736.. bpo: 39825
737.. date: 2020-10-20-08-28-26
738.. nonce: n6KnG0
739.. section: Library
740
741Windows: Change ``sysconfig.get_config_var('EXT_SUFFIX')`` to the expected
742full ``platform_tag.extension`` format. Previously it was hard-coded to
743``.pyd``, now it is compatible with ``distutils.sysconfig`` and will result
744in something like ``.cp38-win_amd64.pyd``. This brings windows into
745conformance with the other platforms.
746
747..
748
749.. bpo: 26389
750.. date: 2020-10-08-23-51-55
751.. nonce: uga44e
752.. section: Library
753
754The :func:`traceback.format_exception`,
755:func:`traceback.format_exception_only`, and
756:func:`traceback.print_exception` functions can now take an exception object
757as a positional-only argument.
758
759..
760
761.. bpo: 41889
762.. date: 2020-10-01-16-17-11
763.. nonce: qLkNh8
764.. section: Library
765
766Enum: fix regression involving inheriting a multiply-inherited enum
767
768..
769
770.. bpo: 41861
771.. date: 2020-10-01-15-44-52
772.. nonce: YTqJ7z
773.. section: Library
774
775Convert :mod:`sqlite3` to use heap types (PEP 384). Patch by Erlend E.
776Aasland.
777
778..
779
780.. bpo: 40624
781.. date: 2020-09-08-03-19-04
782.. nonce: 0-gYfx
783.. section: Library
784
785Added support for the XPath ``!=`` operator in xml.etree
786
787..
788
789.. bpo: 28850
790.. date: 2020-09-06-21-55-44
791.. nonce: HJNggD
792.. section: Library
793
794Fix :meth:`pprint.PrettyPrinter.format` overrides being ignored for contents
795of small containers. The :func:`pprint._safe_repr` function was removed.
796
797..
798
799.. bpo: 41625
800.. date: 2020-08-24-16-59-04
801.. nonce: Cc967V
802.. section: Library
803
804Expose the :c:func:`splice` as :func:`os.splice` in the :mod:`os` module.
805Patch by Pablo Galindo
806
807..
808
809.. bpo: 34215
810.. date: 2020-08-19-20-17-51
811.. nonce: _Cv8c-
812.. section: Library
813
814Clarify the error message for :exc:`asyncio.IncompleteReadError` when
815``expected`` is ``None``.
816
817..
818
819.. bpo: 41543
820.. date: 2020-08-14-00-39-04
821.. nonce: RpcRjb
822.. section: Library
823
824Add async context manager support for contextlib.nullcontext.
825
826..
827
828.. bpo: 21041
829.. date: 2020-08-10-15-06-55
830.. nonce: cYz1eL
831.. section: Library
832
833:attr:`pathlib.PurePath.parents` now supports negative indexing. Patch
834contributed by Yaroslav Pankovych.
835
836..
837
838.. bpo: 41332
839.. date: 2020-07-18-17-39-28
840.. nonce: QRGmA5
841.. section: Library
842
843Added missing connect_accepted_socket() method to
844``asyncio.AbstractEventLoop``.
845
846..
847
848.. bpo: 12800
849.. date: 2020-07-09-11-32-28
850.. nonce: fNgWwx
851.. section: Library
852
853Extracting a symlink from a tarball should succeed and overwrite the symlink
854if it already exists. The fix is to remove the existing file or symlink
855before extraction. Based on patch by Chris AtLee, Jeffrey Kintscher, and
856Senthil Kumaran.
857
858..
859
860.. bpo: 40968
861.. date: 2020-06-18-11-35-16
862.. nonce: R8Edbv
863.. section: Library
864
865:mod:`urllib.request` and :mod:`http.client` now send ``http/1.1`` ALPN
866extension during TLS handshake when no custom context is supplied.
867
868..
869
870.. bpo: 41001
871.. date: 2020-06-17-12-24-26
872.. nonce: 5mi7b0
873.. section: Library
874
875Add func:`os.eventfd` to provide a low level interface for Linux's event
876notification file descriptor.
877
878..
879
880.. bpo: 40816
881.. date: 2020-05-29-15-25-41
882.. nonce: w61Pob
883.. section: Library
884
885Add AsyncContextDecorator to contextlib to support async context manager as
886a decorator.
887
888..
889
890.. bpo: 40550
891.. date: 2020-05-08-21-30-54
892.. nonce: i7GWkb
893.. section: Library
894
895Fix time-of-check/time-of-action issue in subprocess.Popen.send_signal.
896
897..
898
899.. bpo: 39411
900.. date: 2020-01-21-16-38-25
901.. nonce: 9uHFqT
902.. section: Library
903
904Add an ``is_async`` identifier to :mod:`pyclbr`'s ``Function`` objects.
905Patch by Batuhan Taskaya
906
907..
908
909.. bpo: 35498
910.. date: 2018-12-14-13-29-17
911.. nonce: LEJHl7
912.. section: Library
913
914Add slice support to :attr:`pathlib.PurePath.parents`.
915
916..
917
918.. bpo: 42238
919.. date: 2020-11-24-22-54-49
920.. nonce: 62EOTu
921.. section: Documentation
922
923Tentative to deprecate ``make suspicious`` by first removing it from the CI
924and documentation builds, but keeping it around for manual uses.
925
926..
927
928.. bpo: 42153
929.. date: 2020-11-15-13-46-31
930.. nonce: KjBhx3
931.. section: Documentation
932
933Fix the URL for the IMAP protocol documents.
934
935..
936
937.. bpo: 41028
938.. date: 2020-06-18-23-37-03
939.. nonce: vM8bC8
940.. section: Documentation
941
942Language and version switchers, previously maintained in every cpython
943branches, are now handled by docsbuild-script.
944
945..
946
947.. bpo: 41473
948.. date: 2020-12-04-11-47-09
949.. nonce: W_updK
950.. section: Tests
951
952Re-enable test_gdb on gdb 9.2 and newer:
953https://bugzilla.redhat.com/show_bug.cgi?id=1866884 bug is fixed in gdb
95410.1.
955
956..
957
958.. bpo: 42553
959.. date: 2020-12-03-13-32-44
960.. nonce: 2TRE2N
961.. section: Tests
962
963Fix ``test_asyncio.test_call_later()`` race condition: don't measure asyncio
964performance in the ``call_later()`` unit test. The test failed randomly on
965the CI.
966
967..
968
969.. bpo: 31904
970.. date: 2020-12-01-15-51-19
971.. nonce: iwetj4
972.. section: Tests
973
974Fix test_netrc on VxWorks: create temporary directories using temp_cwd().
975
976..
977
978.. bpo: 31904
979.. date: 2020-11-26-11-13-13
980.. nonce: ay4g89
981.. section: Tests
982
983skip test_getaddrinfo_ipv6_scopeid_symbolic and
984test_getnameinfo_ipv6_scopeid_symbolic on VxWorks
985
986..
987
988.. bpo: 31904
989.. date: 2020-11-25-17-00-53
990.. nonce: ue4hd9
991.. section: Tests
992
993skip test_test of test_mailcap on VxWorks
994
995..
996
997.. bpo: 31904
998.. date: 2020-11-24-17-26-41
999.. nonce: eug834
1000.. section: Tests
1001
1002add shell requirement for test_pipes
1003
1004..
1005
1006.. bpo: 31904
1007.. date: 2020-11-23-11-11-29
1008.. nonce: V3sUZk
1009.. section: Tests
1010
1011skip some tests related to fifo on VxWorks
1012
1013..
1014
1015.. bpo: 31904
1016.. date: 2020-11-20-15-07-18
1017.. nonce: EBJXjJ
1018.. section: Tests
1019
1020Fix test_doctest.py failures for VxWorks.
1021
1022..
1023
1024.. bpo: 40754
1025.. date: 2020-11-13-21-51-34
1026.. nonce: Ekoxkg
1027.. section: Tests
1028
1029Include ``_testinternalcapi`` module in Windows installer for test suite
1030
1031..
1032
1033.. bpo: 41561
1034.. date: 2020-09-18-16-14-03
1035.. nonce: uPnwrW
1036.. section: Tests
1037
1038test_ssl: skip test_min_max_version_mismatch when TLS 1.0 is not available
1039
1040..
1041
1042.. bpo: 31904
1043.. date: 2020-05-20-17-28-46
1044.. nonce: yt83Ge
1045.. section: Tests
1046
1047Fix os module failures for VxWorks RTOS.
1048
1049..
1050
1051.. bpo: 31904
1052.. date: 2020-05-20-14-28-48
1053.. nonce: yJik6k
1054.. section: Tests
1055
1056Fix fifo test cases for VxWorks RTOS.
1057
1058..
1059
1060.. bpo: 31904
1061.. date: 2020-11-19-17-01-50
1062.. nonce: 894dk2
1063.. section: Build
1064
1065remove libnet dependency from detect_socket() for VxWorks
1066
1067..
1068
1069.. bpo: 42398
1070.. date: 2020-11-18-11-58-44
1071.. nonce: Yt5wO8
1072.. section: Build
1073
1074Fix a race condition in "make regen-all" when make -jN option is used to run
1075jobs in parallel. The clinic.py script now only use atomic write to write
1076files. Moveover, generated files are now left unchanged if the content does
1077not change, to not change the file modification time.
1078
1079..
1080
1081.. bpo: 41617
1082.. date: 2020-11-13-15-04-53
1083.. nonce: 98_oaE
1084.. section: Build
1085
1086Fix building ``pycore_bitutils.h`` internal header on old clang version
1087without ``__builtin_bswap16()`` (ex: Xcode 4.6.3 on Mac OS X 10.7). Patch by
1088Joshua Root and Victor Stinner.
1089
1090..
1091
1092.. bpo: 38823
1093.. date: 2020-11-12-13-45-15
1094.. nonce: C0z_Fe
1095.. section: Build
1096
1097It is no longer possible to build the ``_ctypes`` extension module without
1098:c:type:`wchar_t` type: remove ``CTYPES_UNICODE`` macro. Anyway, the
1099:c:type:`wchar_t` type is required to build Python. Patch by Victor Stinner.
1100
1101..
1102
1103.. bpo: 42087
1104.. date: 2020-10-19-15-41-05
1105.. nonce: 2AhRFP
1106.. section: Build
1107
1108Support was removed for AIX 5.3 and below. See :issue:`40680`.
1109
1110..
1111
1112.. bpo: 40998
1113.. date: 2020-06-17-09-05-02
1114.. nonce: sgqmg9
1115.. section: Build
1116
1117Addressed three compiler warnings found by undefined behavior sanitizer
1118(ubsan).
1119
1120..
1121
1122.. bpo: 42120
1123.. date: 2020-11-16-22-41-02
1124.. nonce: 9scgko
1125.. section: Windows
1126
1127Remove macro definition of ``copysign`` (to ``_copysign``) in headers.
1128
1129..
1130
1131.. bpo: 38506
1132.. date: 2020-11-15-23-01-14
1133.. nonce: hhdnuP
1134.. section: Windows
1135
1136The Windows launcher now properly handles Python 3.10 when listing installed
1137Python versions.
1138
1139..
1140
1141.. bpo: 42504
1142.. date: 2020-12-02-15-48-40
1143.. nonce: RQmMOR
1144.. section: macOS
1145
1146Fix build on macOS Big Sur when MACOSX_DEPLOYMENT_TARGET=11
1147
1148..
1149
1150.. bpo: 41116
1151.. date: 2020-11-15-16-43-45
1152.. nonce: oCkbrF
1153.. section: macOS
1154
1155Ensure distutils.unixxcompiler.find_library_file can find system provided
1156libraries on macOS 11.
1157
1158..
1159
1160.. bpo: 41100
1161.. date: 2020-11-01-16-40-23
1162.. nonce: BApztP
1163.. section: macOS
1164
1165Add support for macOS 11 and Apple Silicon systems.
1166
1167It is now possible to build "Universal 2" binaries using
1168"--enable-universalsdk --with-universal-archs=universal2".
1169
1170Binaries build on later macOS versions can be deployed back to older
1171versions (tested up to macOS 10.9), when using the correct deployment
1172target. This is tested using Xcode 11 and later.
1173
1174..
1175
1176.. bpo: 42232
1177.. date: 2020-11-01-15-10-28
1178.. nonce: 2zI1GN
1179.. section: macOS
1180
1181Added Darwin specific madvise options to mmap module.
1182
1183..
1184
1185.. bpo: 38443
1186.. date: 2020-10-23-10-26-53
1187.. nonce: vu64tl
1188.. section: macOS
1189
1190The ``--enable-universalsdk`` and ``--with-universal-archs`` options for the
1191configure script now check that the specified architectures can be used.
1192
1193..
1194
1195.. bpo: 42508
1196.. date: 2020-11-30-19-46-05
1197.. nonce: fE7w4M
1198.. section: IDLE
1199
1200Keep IDLE running on macOS.  Remove obsolete workaround that prevented
1201running files with shortcuts when using new universal2 installers built on
1202macOS 11.
1203
1204..
1205
1206.. bpo: 42426
1207.. date: 2020-11-21-17-21-21
1208.. nonce: kNnPoC
1209.. section: IDLE
1210
1211Fix reporting offset of the RE error in searchengine.
1212
1213..
1214
1215.. bpo: 42415
1216.. date: 2020-11-20-01-30-27
1217.. nonce: CyD-va
1218.. section: IDLE
1219
1220Get docstrings for IDLE calltips more often by using inspect.getdoc.
1221
1222..
1223
1224.. bpo: 42212
1225.. date: 2020-11-20-15-11-05
1226.. nonce: sjzgOf
1227.. section: Tools/Demos
1228
1229The smelly.py script now also checks the Python dynamic library and
1230extension modules, not only the Python static library. Make also the script
1231more verbose: explain what it does.
1232
1233..
1234
1235.. bpo: 36310
1236.. date: 2020-05-03-01-30-46
1237.. nonce: xDxxwY
1238.. section: Tools/Demos
1239
1240Allow :file:`Tools/i18n/pygettext.py` to detect calls to ``gettext`` in
1241f-strings.
1242
1243..
1244
1245.. bpo: 42423
1246.. date: 2020-11-21-12-27-19
1247.. nonce: ByJHhY
1248.. section: C API
1249
1250The :c:func:`PyType_FromSpecWithBases` and
1251:c:func:`PyType_FromModuleAndSpec` functions now accept a single class as
1252the *bases* argument.
1253
1254..
1255
1256.. bpo: 1635741
1257.. date: 2020-11-19-17-44-36
1258.. nonce: qBZc3o
1259.. section: C API
1260
1261Port :mod:`select` extension module to multiphase initialization
1262(:pep:`489`).
1263
1264..
1265
1266.. bpo: 1635741
1267.. date: 2020-11-19-16-54-16
1268.. nonce: 9tVsZt
1269.. section: C API
1270
1271Port _posixsubprocess extension module to multiphase initialization
1272(:pep:`489`).
1273
1274..
1275
1276.. bpo: 1635741
1277.. date: 2020-11-19-15-33-42
1278.. nonce: 9tVsZt
1279.. section: C API
1280
1281Port _posixshmem extension module to multiphase initialization (:pep:`489`)
1282
1283..
1284
1285.. bpo: 1635741
1286.. date: 2020-11-19-12-06-43
1287.. nonce: KEfZpn
1288.. section: C API
1289
1290Port _struct extension module to multiphase initialization (:pep:`489`)
1291
1292..
1293
1294.. bpo: 1635741
1295.. date: 2020-11-19-09-17-01
1296.. nonce: 6F9o6L
1297.. section: C API
1298
1299Port :mod:`spwd` extension module to multiphase initialization (:pep:`489`)
1300
1301..
1302
1303.. bpo: 1635741
1304.. date: 2020-11-18-20-33-35
1305.. nonce: B4ztSk
1306.. section: C API
1307
1308Port :mod:`gc` extension module to multiphase initialization (:pep:`489`)
1309
1310..
1311
1312.. bpo: 1635741
1313.. date: 2020-11-18-20-11-13
1314.. nonce: fe3iRb
1315.. section: C API
1316
1317Port _queue extension module to multiphase initialization (:pep:`489`)
1318
1319..
1320
1321.. bpo: 39573
1322.. date: 2020-11-18-15-21-59
1323.. nonce: VB3G2y
1324.. section: C API
1325
1326Convert :c:func:`Py_TYPE` and :c:func:`Py_SIZE` back to macros to allow
1327using them as an l-value. Many third party C extension modules rely on the
1328ability of using Py_TYPE() and Py_SIZE() to set an object type and size:
1329``Py_TYPE(obj) = type;`` and ``Py_SIZE(obj) = size;``.
1330
1331..
1332
1333.. bpo: 1635741
1334.. date: 2020-11-18-10-52-38
1335.. nonce: FrWAwJ
1336.. section: C API
1337
1338Port :mod:`symtable` extension module to multiphase initialization
1339(:pep:`489`)
1340
1341..
1342
1343.. bpo: 1635741
1344.. date: 2020-11-18-09-46-35
1345.. nonce: SH8OIT
1346.. section: C API
1347
1348Port :mod:`grp` and :mod:`pwd` extension modules to multiphase
1349initialization (:pep:`489`)
1350
1351..
1352
1353.. bpo: 1635741
1354.. date: 2020-11-18-09-16-23
1355.. nonce: gkoI7Y
1356.. section: C API
1357
1358Port _random extension module to multiphase initialization (:pep:`489`)
1359
1360..
1361
1362.. bpo: 1635741
1363.. date: 2020-11-18-08-45-36
1364.. nonce: VLZfiY
1365.. section: C API
1366
1367Port _hashlib extension module to multiphase initialization (:pep:`489`)
1368
1369..
1370
1371.. bpo: 41713
1372.. date: 2020-11-17-15-39-10
1373.. nonce: Rq99Vc
1374.. section: C API
1375
1376Removed the undocumented ``PyOS_InitInterrupts()`` function. Initializing
1377Python already implicitly installs signal handlers: see
1378:c:member:`PyConfig.install_signal_handlers`. Patch by Victor Stinner.
1379
1380..
1381
1382.. bpo: 40170
1383.. date: 2020-11-13-01-40-28
1384.. nonce: uh8lEf
1385.. section: C API
1386
1387The ``Py_TRASHCAN_BEGIN`` macro no longer accesses PyTypeObject attributes,
1388but now can get the condition by calling the new private
1389:c:func:`_PyTrash_cond()` function which hides implementation details.
1390
1391..
1392
1393.. bpo: 42260
1394.. date: 2020-11-10-14-27-39
1395.. nonce: -Br3Co
1396.. section: C API
1397
1398:c:func:`Py_GetPath`, :c:func:`Py_GetPrefix`, :c:func:`Py_GetExecPrefix`,
1399:c:func:`Py_GetProgramFullPath`, :c:func:`Py_GetPythonHome` and
1400:c:func:`Py_GetProgramName` functions now return ``NULL`` if called before
1401:c:func:`Py_Initialize` (before Python is initialized). Use the new
1402:ref:`Python Initialization Configuration API <init-config>` to get the
1403:ref:`Python Path Configuration.  <init-path-config>`. Patch by Victor
1404Stinner.
1405
1406..
1407
1408.. bpo: 42260
1409.. date: 2020-11-05-18-02-07
1410.. nonce: pAeaNR
1411.. section: C API
1412
1413The :c:func:`PyConfig_Read` function now only parses
1414:c:member:`PyConfig.argv` arguments once: :c:member:`PyConfig.parse_argv` is
1415set to ``2`` after arguments are parsed. Since Python arguments are
1416strippped from :c:member:`PyConfig.argv`, parsing arguments twice would
1417parse the application options as Python options.
1418
1419..
1420
1421.. bpo: 42262
1422.. date: 2020-11-04-17-22-36
1423.. nonce: fCWzBb
1424.. section: C API
1425
1426Added :c:func:`Py_NewRef` and :c:func:`Py_XNewRef` functions to increment
1427the reference count of an object and return the object. Patch by Victor
1428Stinner.
1429
1430..
1431
1432.. bpo: 42260
1433.. date: 2020-11-04-16-31-55
1434.. nonce: CmgHtF
1435.. section: C API
1436
1437When :c:func:`Py_Initialize` is called twice, the second call now updates
1438more :mod:`sys` attributes for the configuration, rather than only
1439:data:`sys.argv`. Patch by Victor Stinner.
1440
1441..
1442
1443.. bpo: 41832
1444.. date: 2020-11-03-19-47-06
1445.. nonce: dL1VJJ
1446.. section: C API
1447
1448The :c:func:`PyType_FromModuleAndSpec` function now accepts NULL ``tp_doc``
1449slot.
1450
1451..
1452
1453.. bpo: 1635741
1454.. date: 2020-11-03-11-52-27
1455.. nonce: aDYJKB
1456.. section: C API
1457
1458Added :c:func:`PyModule_AddObjectRef` function: similar to
1459:c:func:`PyModule_AddObject` but don't steal a reference to the value on
1460success. Patch by Victor Stinner.
1461
1462..
1463
1464.. bpo: 42171
1465.. date: 2020-10-27-21-10-14
1466.. nonce: S3FWTP
1467.. section: C API
1468
1469The :c:data:`METH_FASTCALL` calling convention is added to the limited API.
1470The functions  :c:func:`PyModule_AddType`,
1471:c:func:`PyType_FromModuleAndSpec`, :c:func:`PyType_GetModule` and
1472:c:func:`PyType_GetModuleState` are added to the limited API on Windows.
1473
1474..
1475
1476.. bpo: 42085
1477.. date: 2020-10-19-15-58-16
1478.. nonce: NhEf3W
1479.. section: C API
1480
1481Add dedicated entry to PyAsyncMethods for sending values
1482
1483..
1484
1485.. bpo: 41073
1486.. date: 2020-07-08-21-01-49
1487.. nonce: VqQZON
1488.. section: C API
1489
1490:c:func:`PyType_GetSlot()` can now accept static types.
1491
1492..
1493
1494.. bpo: 30459
1495.. date: 2020-05-06-23-54-57
1496.. nonce: N9_Jai
1497.. section: C API
1498
1499:c:func:`PyList_SET_ITEM`, :c:func:`PyTuple_SET_ITEM` and
1500:c:func:`PyCell_SET` macros can no longer be used as l-value or r-value. For
1501example, ``x = PyList_SET_ITEM(a, b, c)`` and ``PyList_SET_ITEM(a, b, c) =
1502x`` now fail with a compiler error. It prevents bugs like ``if
1503(PyList_SET_ITEM (a, b, c) < 0) ...`` test. Patch by Zackery Spytz and
1504Victor Stinner.
1505