1 .. bpo: 28183 2 .. date: 9707 3 .. nonce: MJZeNd 4 .. release date: 2016-10-10 5 .. section: Core and Builtins 6 7 Optimize and cleanup dict iteration. 8 9 .. 10 11 .. bpo: 26081 12 .. date: 9706 13 .. nonce: _x5vjl 14 .. section: Core and Builtins 15 16 Added C implementation of asyncio.Future. Original patch by Yury Selivanov. 17 18 .. 19 20 .. bpo: 28379 21 .. date: 9705 22 .. nonce: DuXlco 23 .. section: Core and Builtins 24 25 Added sanity checks and tests for PyUnicode_CopyCharacters(). Patch by Xiang 26 Zhang. 27 28 .. 29 30 .. bpo: 28376 31 .. date: 9704 32 .. nonce: oPD-5D 33 .. section: Core and Builtins 34 35 The type of long range iterator is now registered as Iterator. Patch by Oren 36 Milman. 37 38 .. 39 40 .. bpo: 28376 41 .. date: 9703 42 .. nonce: YEy-uG 43 .. section: Core and Builtins 44 45 Creating instances of range_iterator by calling range_iterator type now is 46 deprecated. Patch by Oren Milman. 47 48 .. 49 50 .. bpo: 28376 51 .. date: 9702 52 .. nonce: fLeHM2 53 .. section: Core and Builtins 54 55 The constructor of range_iterator now checks that step is not 0. Patch by 56 Oren Milman. 57 58 .. 59 60 .. bpo: 26906 61 .. date: 9701 62 .. nonce: YBjcwI 63 .. section: Core and Builtins 64 65 Resolving special methods of uninitialized type now causes implicit 66 initialization of the type instead of a fail. 67 68 .. 69 70 .. bpo: 18287 71 .. date: 9700 72 .. nonce: k6jffS 73 .. section: Core and Builtins 74 75 PyType_Ready() now checks that tp_name is not NULL. Original patch by Niklas 76 Koep. 77 78 .. 79 80 .. bpo: 24098 81 .. date: 9699 82 .. nonce: XqlP_1 83 .. section: Core and Builtins 84 85 Fixed possible crash when AST is changed in process of compiling it. 86 87 .. 88 89 .. bpo: 28201 90 .. date: 9698 91 .. nonce: GWUxAy 92 .. section: Core and Builtins 93 94 Dict reduces possibility of 2nd conflict in hash table when hashes have same 95 lower bits. 96 97 .. 98 99 .. bpo: 28350 100 .. date: 9697 101 .. nonce: 8M5Eg9 102 .. section: Core and Builtins 103 104 String constants with null character no longer interned. 105 106 .. 107 108 .. bpo: 26617 109 .. date: 9696 110 .. nonce: Gh5LvN 111 .. section: Core and Builtins 112 113 Fix crash when GC runs during weakref callbacks. 114 115 .. 116 117 .. bpo: 27942 118 .. date: 9695 119 .. nonce: ZGuhns 120 .. section: Core and Builtins 121 122 String constants now interned recursively in tuples and frozensets. 123 124 .. 125 126 .. bpo: 21578 127 .. date: 9694 128 .. nonce: GI1bhj 129 .. section: Core and Builtins 130 131 Fixed misleading error message when ImportError called with invalid keyword 132 args. 133 134 .. 135 136 .. bpo: 28203 137 .. date: 9693 138 .. nonce: LRn5vp 139 .. section: Core and Builtins 140 141 Fix incorrect type in complex(1.0, {2:3}) error message. Patch by Soumya 142 Sharma. 143 144 .. 145 146 .. bpo: 28086 147 .. date: 9692 148 .. nonce: JsQPMQ 149 .. section: Core and Builtins 150 151 Single var-positional argument of tuple subtype was passed unscathed to the 152 C-defined function. Now it is converted to exact tuple. 153 154 .. 155 156 .. bpo: 28214 157 .. date: 9691 158 .. nonce: zQF8Em 159 .. section: Core and Builtins 160 161 Now __set_name__ is looked up on the class instead of the instance. 162 163 .. 164 165 .. bpo: 27955 166 .. date: 9690 167 .. nonce: HC4pZ4 168 .. section: Core and Builtins 169 170 Fallback on reading /dev/urandom device when the getrandom() syscall fails 171 with EPERM, for example when blocked by SECCOMP. 172 173 .. 174 175 .. bpo: 28192 176 .. date: 9689 177 .. nonce: eR6stU 178 .. section: Core and Builtins 179 180 Don't import readline in isolated mode. 181 182 .. 183 184 .. bpo: 0 185 .. date: 9688 186 .. nonce: 9EbOiD 187 .. section: Core and Builtins 188 189 Upgrade internal unicode databases to Unicode version 9.0.0. 190 191 .. 192 193 .. bpo: 28131 194 .. date: 9687 195 .. nonce: owq0wW 196 .. section: Core and Builtins 197 198 Fix a regression in zipimport's compile_source(). zipimport should use the 199 same optimization level as the interpreter. 200 201 .. 202 203 .. bpo: 28126 204 .. date: 9686 205 .. nonce: Qf6-uQ 206 .. section: Core and Builtins 207 208 Replace Py_MEMCPY with memcpy(). Visual Studio can properly optimize 209 memcpy(). 210 211 .. 212 213 .. bpo: 28120 214 .. date: 9685 215 .. nonce: e5xc1i 216 .. section: Core and Builtins 217 218 Fix dict.pop() for splitted dictionary when trying to remove a "pending key" 219 (Not yet inserted in split-table). Patch by Xiang Zhang. 220 221 .. 222 223 .. bpo: 26182 224 .. date: 9684 225 .. nonce: jYlqTO 226 .. section: Core and Builtins 227 228 Raise DeprecationWarning when async and await keywords are used as 229 variable/attribute/class/function name. 230 231 .. 232 233 .. bpo: 27998 234 .. date: 9683 235 .. nonce: CPhy4H 236 .. section: Library 237 238 Fixed bytes path support in os.scandir() on Windows. Patch by Eryk Sun. 239 240 .. 241 242 .. bpo: 28317 243 .. date: 9682 244 .. nonce: LgHleA 245 .. section: Library 246 247 The disassembler now decodes FORMAT_VALUE argument. 248 249 .. 250 251 .. bpo: 26293 252 .. date: 9681 253 .. nonce: 2mjvwX 254 .. section: Library 255 256 Fixed writing ZIP files that starts not from the start of the file. Offsets 257 in ZIP file now are relative to the start of the archive in conforming to 258 the specification. 259 260 .. 261 262 .. bpo: 28380 263 .. date: 9680 264 .. nonce: jKPMzH 265 .. section: Library 266 267 unittest.mock Mock autospec functions now properly support assert_called, 268 assert_not_called, and assert_called_once. 269 270 .. 271 272 .. bpo: 27181 273 .. date: 9679 274 .. nonce: SQyDpC 275 .. section: Library 276 277 remove statistics.geometric_mean and defer until 3.7. 278 279 .. 280 281 .. bpo: 28229 282 .. date: 9678 283 .. nonce: BKAxcS 284 .. section: Library 285 286 lzma module now supports pathlib. 287 288 .. 289 290 .. bpo: 28321 291 .. date: 9677 292 .. nonce: bQ-IIX 293 .. section: Library 294 295 Fixed writing non-BMP characters with binary format in plistlib. 296 297 .. 298 299 .. bpo: 28225 300 .. date: 9676 301 .. nonce: 6N28nu 302 .. section: Library 303 304 bz2 module now supports pathlib. Initial patch by Ethan Furman. 305 306 .. 307 308 .. bpo: 28227 309 .. date: 9675 310 .. nonce: 7lUz8i 311 .. section: Library 312 313 gzip now supports pathlib. Patch by Ethan Furman. 314 315 .. 316 317 .. bpo: 27358 318 .. date: 9674 319 .. nonce: t288Iv 320 .. section: Library 321 322 Optimized merging var-keyword arguments and improved error message when 323 passing a non-mapping as a var-keyword argument. 324 325 .. 326 327 .. bpo: 28257 328 .. date: 9673 329 .. nonce: SVD_IH 330 .. section: Library 331 332 Improved error message when passing a non-iterable as a var-positional 333 argument. Added opcode BUILD_TUPLE_UNPACK_WITH_CALL. 334 335 .. 336 337 .. bpo: 28322 338 .. date: 9672 339 .. nonce: l9hzap 340 .. section: Library 341 342 Fixed possible crashes when unpickle itertools objects from incorrect pickle 343 data. Based on patch by John Leitch. 344 345 .. 346 347 .. bpo: 28228 348 .. date: 9671 349 .. nonce: 1qBwdM 350 .. section: Library 351 352 imghdr now supports pathlib. 353 354 .. 355 356 .. bpo: 28226 357 .. date: 9670 358 .. nonce: nMXiwU 359 .. section: Library 360 361 compileall now supports pathlib. 362 363 .. 364 365 .. bpo: 28314 366 .. date: 9669 367 .. nonce: N7YrkN 368 .. section: Library 369 370 Fix function declaration (C flags) for the getiterator() method of 371 xml.etree.ElementTree.Element. 372 373 .. 374 375 .. bpo: 28148 376 .. date: 9668 377 .. nonce: Flzndx 378 .. section: Library 379 380 Stop using localtime() and gmtime() in the time module. 381 382 Introduced platform independent _PyTime_localtime API that is similar to 383 POSIX localtime_r, but available on all platforms. Patch by Ed Schouten. 384 385 .. 386 387 .. bpo: 28253 388 .. date: 9667 389 .. nonce: aLfmhe 390 .. section: Library 391 392 Fixed calendar functions for extreme months: 0001-01 and 9999-12. 393 394 Methods itermonthdays() and itermonthdays2() are reimplemented so that they 395 don't call itermonthdates() which can cause datetime.date under/overflow. 396 397 .. 398 399 .. bpo: 28275 400 .. date: 9666 401 .. nonce: EhWIsz 402 .. section: Library 403 404 Fixed possible use after free in the decompress() methods of the 405 LZMADecompressor and BZ2Decompressor classes. Original patch by John Leitch. 406 407 .. 408 409 .. bpo: 27897 410 .. date: 9665 411 .. nonce: I0Ppmx 412 .. section: Library 413 414 Fixed possible crash in sqlite3.Connection.create_collation() if pass 415 invalid string-like object as a name. Patch by Xiang Zhang. 416 417 .. 418 419 .. bpo: 18844 420 .. date: 9664 421 .. nonce: fQsEdn 422 .. section: Library 423 424 random.choices() now has k as a keyword-only argument to improve the 425 readability of common cases and come into line with the signature used in 426 other languages. 427 428 .. 429 430 .. bpo: 18893 431 .. date: 9663 432 .. nonce: osiX5c 433 .. section: Library 434 435 Fix invalid exception handling in Lib/ctypes/macholib/dyld.py. Patch by 436 Madison May. 437 438 .. 439 440 .. bpo: 27611 441 .. date: 9662 442 .. nonce: A_ArH_ 443 .. section: Library 444 445 Fixed support of default root window in the tkinter.tix module. Added the 446 master parameter in the DisplayStyle constructor. 447 448 .. 449 450 .. bpo: 27348 451 .. date: 9661 452 .. nonce: tDx7Vw 453 .. section: Library 454 455 In the traceback module, restore the formatting of exception messages like 456 "Exception: None". This fixes a regression introduced in 3.5a2. 457 458 .. 459 460 .. bpo: 25651 461 .. date: 9660 462 .. nonce: 3UhyPo 463 .. section: Library 464 465 Allow falsy values to be used for msg parameter of subTest(). 466 467 .. 468 469 .. bpo: 27778 470 .. date: 9659 471 .. nonce: Yyo1aP 472 .. section: Library 473 474 Fix a memory leak in os.getrandom() when the getrandom() is interrupted by a 475 signal and a signal handler raises a Python exception. 476 477 .. 478 479 .. bpo: 28200 480 .. date: 9658 481 .. nonce: 4IEbr7 482 .. section: Library 483 484 Fix memory leak on Windows in the os module (fix path_converter() function). 485 486 .. 487 488 .. bpo: 25400 489 .. date: 9657 490 .. nonce: d9Qn0E 491 .. section: Library 492 493 RobotFileParser now correctly returns default values for crawl_delay and 494 request_rate. Initial patch by Peter Wirtz. 495 496 .. 497 498 .. bpo: 27932 499 .. date: 9656 500 .. nonce: mtgl-6 501 .. section: Library 502 503 Prevent memory leak in win32_ver(). 504 505 .. 506 507 .. bpo: 0 508 .. date: 9655 509 .. nonce: iPpjqX 510 .. section: Library 511 512 Fix UnboundLocalError in socket._sendfile_use_sendfile. 513 514 .. 515 516 .. bpo: 28075 517 .. date: 9654 518 .. nonce: aLiUs9 519 .. section: Library 520 521 Check for ERROR_ACCESS_DENIED in Windows implementation of os.stat(). Patch 522 by Eryk Sun. 523 524 .. 525 526 .. bpo: 22493 527 .. date: 9653 528 .. nonce: Mv_hZf 529 .. section: Library 530 531 Warning message emitted by using inline flags in the middle of regular 532 expression now contains a (truncated) regex pattern. Patch by Tim Graham. 533 534 .. 535 536 .. bpo: 25270 537 .. date: 9652 538 .. nonce: jrZruM 539 .. section: Library 540 541 Prevent codecs.escape_encode() from raising SystemError when an empty 542 bytestring is passed. 543 544 .. 545 546 .. bpo: 28181 547 .. date: 9651 548 .. nonce: NGc4Yv 549 .. section: Library 550 551 Get antigravity over HTTPS. Patch by Kaartic Sivaraam. 552 553 .. 554 555 .. bpo: 25895 556 .. date: 9650 557 .. nonce: j92qoQ 558 .. section: Library 559 560 Enable WebSocket URL schemes in urllib.parse.urljoin. Patch by Gergely Imreh 561 and Markus Holtermann. 562 563 .. 564 565 .. bpo: 28114 566 .. date: 9649 567 .. nonce: gmFXsA 568 .. section: Library 569 570 Fix a crash in parse_envlist() when env contains byte strings. Patch by Eryk 571 Sun. 572 573 .. 574 575 .. bpo: 27599 576 .. date: 9648 577 .. nonce: itvm8T 578 .. section: Library 579 580 Fixed buffer overrun in binascii.b2a_qp() and binascii.a2b_qp(). 581 582 .. 583 584 .. bpo: 27906 585 .. date: 9647 586 .. nonce: TBBXrv 587 .. section: Library 588 589 Fix socket accept exhaustion during high TCP traffic. Patch by Kevin Conway. 590 591 .. 592 593 .. bpo: 28174 594 .. date: 9646 595 .. nonce: CV1UdI 596 .. section: Library 597 598 Handle when SO_REUSEPORT isn't properly supported. Patch by Seth Michael 599 Larson. 600 601 .. 602 603 .. bpo: 26654 604 .. date: 9645 605 .. nonce: XtzTE9 606 .. section: Library 607 608 Inspect functools.partial in asyncio.Handle.__repr__. Patch by iceboy. 609 610 .. 611 612 .. bpo: 26909 613 .. date: 9644 614 .. nonce: ASiakT 615 .. section: Library 616 617 Fix slow pipes IO in asyncio. Patch by INADA Naoki. 618 619 .. 620 621 .. bpo: 28176 622 .. date: 9643 623 .. nonce: sU8R6L 624 .. section: Library 625 626 Fix callbacks race in asyncio.SelectorLoop.sock_connect. 627 628 .. 629 630 .. bpo: 27759 631 .. date: 9642 632 .. nonce: qpMDGq 633 .. section: Library 634 635 Fix selectors incorrectly retain invalid file descriptors. Patch by Mark 636 Williams. 637 638 .. 639 640 .. bpo: 28368 641 .. date: 9641 642 .. nonce: fGl9y4 643 .. section: Library 644 645 Refuse monitoring processes if the child watcher has no loop attached. Patch 646 by Vincent Michel. 647 648 .. 649 650 .. bpo: 28369 651 .. date: 9640 652 .. nonce: 8DTANe 653 .. section: Library 654 655 Raise RuntimeError when transport's FD is used with add_reader, add_writer, 656 etc. 657 658 .. 659 660 .. bpo: 28370 661 .. date: 9639 662 .. nonce: 18jBuZ 663 .. section: Library 664 665 Speedup asyncio.StreamReader.readexactly. Patch by . 666 667 .. 668 669 .. bpo: 28371 670 .. date: 9638 671 .. nonce: U9Zqdk 672 .. section: Library 673 674 Deprecate passing asyncio.Handles to run_in_executor. 675 676 .. 677 678 .. bpo: 28372 679 .. date: 9637 680 .. nonce: njcIPk 681 .. section: Library 682 683 Fix asyncio to support formatting of non-python coroutines. 684 685 .. 686 687 .. bpo: 28399 688 .. date: 9636 689 .. nonce: QKIqRX 690 .. section: Library 691 692 Remove UNIX socket from FS before binding. Patch by . 693 694 .. 695 696 .. bpo: 27972 697 .. date: 9635 698 .. nonce: ZK-GFm 699 .. section: Library 700 701 Prohibit Tasks to await on themselves. 702 703 .. 704 705 .. bpo: 28402 706 .. date: 9634 707 .. nonce: v9zETJ 708 .. section: Windows 709 710 Adds signed catalog files for stdlib on Windows. 711 712 .. 713 714 .. bpo: 28333 715 .. date: 9633 716 .. nonce: KnpeO4 717 .. section: Windows 718 719 Enables Unicode for ps1/ps2 and input() prompts. (Patch by Eryk Sun) 720 721 .. 722 723 .. bpo: 28251 724 .. date: 9632 725 .. nonce: tR_AFs 726 .. section: Windows 727 728 Improvements to help manuals on Windows. 729 730 .. 731 732 .. bpo: 28110 733 .. date: 9631 734 .. nonce: cnkP5F 735 .. section: Windows 736 737 launcher.msi has different product codes between 32-bit and 64-bit 738 739 .. 740 741 .. bpo: 28161 742 .. date: 9630 743 .. nonce: hF91LI 744 .. section: Windows 745 746 Opening CON for write access fails 747 748 .. 749 750 .. bpo: 28162 751 .. date: 9629 752 .. nonce: 3FHPVD 753 .. section: Windows 754 755 WindowsConsoleIO readall() fails if first line starts with Ctrl+Z 756 757 .. 758 759 .. bpo: 28163 760 .. date: 9628 761 .. nonce: -DUgJw 762 .. section: Windows 763 764 WindowsConsoleIO fileno() passes wrong flags to _open_osfhandle 765 766 .. 767 768 .. bpo: 28164 769 .. date: 9627 770 .. nonce: 5MfN0J 771 .. section: Windows 772 773 _PyIO_get_console_type fails for various paths 774 775 .. 776 777 .. bpo: 28137 778 .. date: 9626 779 .. nonce: C1uvzY 780 .. section: Windows 781 782 Renames Windows path file to ._pth 783 784 .. 785 786 .. bpo: 28138 787 .. date: 9625 788 .. nonce: pNdv64 789 .. section: Windows 790 791 Windows ._pth file should allow import site 792 793 .. 794 795 .. bpo: 28426 796 .. date: 9624 797 .. nonce: zPwvbI 798 .. section: C API 799 800 Deprecated undocumented functions PyUnicode_AsEncodedObject(), 801 PyUnicode_AsDecodedObject(), PyUnicode_AsDecodedUnicode() and 802 PyUnicode_AsEncodedUnicode(). 803 804 .. 805 806 .. bpo: 28258 807 .. date: 9623 808 .. nonce: iKtAHd 809 .. section: Build 810 811 Fixed build with Estonian locale (python-config and distclean targets in 812 Makefile). Patch by Arfrever Frehtes Taifersar Arahesis. 813 814 .. 815 816 .. bpo: 26661 817 .. date: 9622 818 .. nonce: Z_HNbs 819 .. section: Build 820 821 setup.py now detects system libffi with multiarch wrapper. 822 823 .. 824 825 .. bpo: 15819 826 .. date: 9621 827 .. nonce: QVDr3E 828 .. section: Build 829 830 Remove redundant include search directory option for building outside the 831 source tree. 832 833 .. 834 835 .. bpo: 28217 836 .. date: 9620 837 .. nonce: Y37OKV 838 .. section: Tests 839 840 Adds _testconsole module to test console input. 841