1 .. bpo: 24276 2 .. date: 9197 3 .. nonce: awsxJJ 4 .. release date: 2015-05-24 5 .. section: Core and Builtins 6 7 Fixed optimization of property descriptor getter. 8 9 .. 10 11 .. bpo: 24268 12 .. date: 9196 13 .. nonce: nS7uea 14 .. section: Core and Builtins 15 16 PEP 489: Multi-phase extension module initialization. Patch by Petr 17 Viktorin. 18 19 .. 20 21 .. bpo: 23955 22 .. date: 9195 23 .. nonce: hBHSaU 24 .. section: Core and Builtins 25 26 Add pyvenv.cfg option to suppress registry/environment lookup for generating 27 sys.path on Windows. 28 29 .. 30 31 .. bpo: 24257 32 .. date: 9194 33 .. nonce: UBxshR 34 .. section: Core and Builtins 35 36 Fixed system error in the comparison of faked types.SimpleNamespace. 37 38 .. 39 40 .. bpo: 22939 41 .. date: 9193 42 .. nonce: DWA9ls 43 .. section: Core and Builtins 44 45 Fixed integer overflow in iterator object. Patch by Clement Rouault. 46 47 .. 48 49 .. bpo: 23985 50 .. date: 9192 51 .. nonce: eezPxO 52 .. section: Core and Builtins 53 54 Fix a possible buffer overrun when deleting a slice from the front of a 55 bytearray and then appending some other bytes data. 56 57 .. 58 59 .. bpo: 24102 60 .. date: 9191 61 .. nonce: 9T6h3m 62 .. section: Core and Builtins 63 64 Fixed exception type checking in standard error handlers. 65 66 .. 67 68 .. bpo: 15027 69 .. date: 9190 70 .. nonce: wi9sCd 71 .. section: Core and Builtins 72 73 The UTF-32 encoder is now 3x to 7x faster. 74 75 .. 76 77 .. bpo: 23290 78 .. date: 9189 79 .. nonce: 57aqLU 80 .. section: Core and Builtins 81 82 Optimize set_merge() for cases where the target is empty. (Contributed by 83 Serhiy Storchaka.) 84 85 .. 86 87 .. bpo: 2292 88 .. date: 9188 89 .. nonce: h4sibO 90 .. section: Core and Builtins 91 92 PEP 448: Additional Unpacking Generalizations. 93 94 .. 95 96 .. bpo: 24096 97 .. date: 9187 98 .. nonce: a_Rap7 99 .. section: Core and Builtins 100 101 Make warnings.warn_explicit more robust against mutation of the 102 warnings.filters list. 103 104 .. 105 106 .. bpo: 23996 107 .. date: 9186 108 .. nonce: znqcT8 109 .. section: Core and Builtins 110 111 Avoid a crash when a delegated generator raises an unnormalized 112 StopIteration exception. Patch by Stefan Behnel. 113 114 .. 115 116 .. bpo: 23910 117 .. date: 9185 118 .. nonce: _gDzaj 119 .. section: Core and Builtins 120 121 Optimize property() getter calls. Patch by Joe Jevnik. 122 123 .. 124 125 .. bpo: 23911 126 .. date: 9184 127 .. nonce: 0FnTHk 128 .. section: Core and Builtins 129 130 Move path-based importlib bootstrap code to a separate frozen module. 131 132 .. 133 134 .. bpo: 24192 135 .. date: 9183 136 .. nonce: 6ZxJ_R 137 .. section: Core and Builtins 138 139 Fix namespace package imports. 140 141 .. 142 143 .. bpo: 24022 144 .. date: 9182 145 .. nonce: 1l8YBm 146 .. section: Core and Builtins 147 148 Fix tokenizer crash when processing undecodable source code. 149 150 .. 151 152 .. bpo: 9951 153 .. date: 9181 154 .. nonce: wGztNC 155 .. section: Core and Builtins 156 157 Added a hex() method to bytes, bytearray, and memoryview. 158 159 .. 160 161 .. bpo: 22906 162 .. date: 9180 163 .. nonce: WN_kQ6 164 .. section: Core and Builtins 165 166 PEP 479: Change StopIteration handling inside generators. 167 168 .. 169 170 .. bpo: 24017 171 .. date: 9179 172 .. nonce: QJa1SC 173 .. section: Core and Builtins 174 175 PEP 492: Coroutines with async and await syntax. 176 177 .. 178 179 .. bpo: 14373 180 .. date: 9178 181 .. nonce: 0sk6kE 182 .. section: Library 183 184 Added C implementation of functools.lru_cache(). Based on patches by Matt 185 Joiner and Alexey Kachayev. 186 187 .. 188 189 .. bpo: 24230 190 .. date: 9177 191 .. nonce: b-kgme 192 .. section: Library 193 194 The tempfile module now accepts bytes for prefix, suffix and dir parameters 195 and returns bytes in such situations (matching the os module APIs). 196 197 .. 198 199 .. bpo: 22189 200 .. date: 9176 201 .. nonce: 8epgat 202 .. section: Library 203 204 collections.UserString now supports __getnewargs__(), __rmod__(), 205 casefold(), format_map(), isprintable(), and maketrans(). Patch by Joe 206 Jevnik. 207 208 .. 209 210 .. bpo: 24244 211 .. date: 9175 212 .. nonce: OKE_3R 213 .. section: Library 214 215 Prevents termination when an invalid format string is encountered on Windows 216 in strftime. 217 218 .. 219 220 .. bpo: 23973 221 .. date: 9174 222 .. nonce: EK6awi 223 .. section: Library 224 225 PEP 484: Add the typing module. 226 227 .. 228 229 .. bpo: 23086 230 .. date: 9173 231 .. nonce: Aix6Nv 232 .. section: Library 233 234 The collections.abc.Sequence() abstract base class added *start* and *stop* 235 parameters to the index() mixin. Patch by Devin Jeanpierre. 236 237 .. 238 239 .. bpo: 20035 240 .. date: 9172 241 .. nonce: UNZzw6 242 .. section: Library 243 244 Replaced the ``tkinter._fix`` module used for setting up the Tcl/Tk 245 environment on Windows with a private function in the ``_tkinter`` module 246 that makes no permanent changes to the environment. 247 248 .. 249 250 .. bpo: 24257 251 .. date: 9171 252 .. nonce: L_efq0 253 .. section: Library 254 255 Fixed segmentation fault in sqlite3.Row constructor with faked cursor type. 256 257 .. 258 259 .. bpo: 15836 260 .. date: 9170 261 .. nonce: gU3Rmx 262 .. section: Library 263 264 assertRaises(), assertRaisesRegex(), assertWarns() and assertWarnsRegex() 265 assertments now check the type of the first argument to prevent possible 266 user error. Based on patch by Daniel Wagner-Hall. 267 268 .. 269 270 .. bpo: 9858 271 .. date: 9169 272 .. nonce: uke9pa 273 .. section: Library 274 275 Add missing method stubs to _io.RawIOBase. Patch by Laura Rupprecht. 276 277 .. 278 279 .. bpo: 22955 280 .. date: 9168 281 .. nonce: Jw_B9_ 282 .. section: Library 283 284 attrgetter, itemgetter and methodcaller objects in the operator module now 285 support pickling. Added readable and evaluable repr for these objects. 286 Based on patch by Josh Rosenberg. 287 288 .. 289 290 .. bpo: 22107 291 .. date: 9167 292 .. nonce: 2F8k4W 293 .. section: Library 294 295 tempfile.gettempdir() and tempfile.mkdtemp() now try again when a directory 296 with the chosen name already exists on Windows as well as on Unix. 297 tempfile.mkstemp() now fails early if parent directory is not valid (not 298 exists or is a file) on Windows. 299 300 .. 301 302 .. bpo: 23780 303 .. date: 9166 304 .. nonce: jFPVcN 305 .. section: Library 306 307 Improved error message in os.path.join() with single argument. 308 309 .. 310 311 .. bpo: 6598 312 .. date: 9165 313 .. nonce: JdZNDt 314 .. section: Library 315 316 Increased time precision and random number range in email.utils.make_msgid() 317 to strengthen the uniqueness of the message ID. 318 319 .. 320 321 .. bpo: 24091 322 .. date: 9164 323 .. nonce: Jw0-wj 324 .. section: Library 325 326 Fixed various crashes in corner cases in C implementation of ElementTree. 327 328 .. 329 330 .. bpo: 21931 331 .. date: 9163 332 .. nonce: t6lGxY 333 .. section: Library 334 335 msilib.FCICreate() now raises TypeError in the case of a bad argument 336 instead of a ValueError with a bogus FCI error number. Patch by Jeffrey 337 Armstrong. 338 339 .. 340 341 .. bpo: 13866 342 .. date: 9162 343 .. nonce: n5NAj0 344 .. section: Library 345 346 *quote_via* argument added to urllib.parse.urlencode. 347 348 .. 349 350 .. bpo: 20098 351 .. date: 9161 352 .. nonce: Y4otaf 353 .. section: Library 354 355 New mangle_from policy option for email, default True for compat32, but 356 False for all other policies. 357 358 .. 359 360 .. bpo: 24211 361 .. date: 9160 362 .. nonce: j3Afpc 363 .. section: Library 364 365 The email library now supports RFC 6532: it can generate headers using utf-8 366 instead of encoded words. 367 368 .. 369 370 .. bpo: 16314 371 .. date: 9159 372 .. nonce: Xc4d1O 373 .. section: Library 374 375 Added support for the LZMA compression in distutils. 376 377 .. 378 379 .. bpo: 21804 380 .. date: 9158 381 .. nonce: lEhTlc 382 .. section: Library 383 384 poplib now supports RFC 6856 (UTF8). 385 386 .. 387 388 .. bpo: 18682 389 .. date: 9157 390 .. nonce: 6Pnfte 391 .. section: Library 392 393 Optimized pprint functions for builtin scalar types. 394 395 .. 396 397 .. bpo: 22027 398 .. date: 9156 399 .. nonce: _aeUQS 400 .. section: Library 401 402 smtplib now supports RFC 6531 (SMTPUTF8). 403 404 .. 405 406 .. bpo: 23488 407 .. date: 9155 408 .. nonce: 7gs3Cm 409 .. section: Library 410 411 Random generator objects now consume 2x less memory on 64-bit. 412 413 .. 414 415 .. bpo: 1322 416 .. date: 9154 417 .. nonce: 495nFL 418 .. section: Library 419 420 platform.dist() and platform.linux_distribution() functions are now 421 deprecated. Initial patch by Vajrasky Kok. 422 423 .. 424 425 .. bpo: 22486 426 .. date: 9153 427 .. nonce: Yxov5m 428 .. section: Library 429 430 Added the math.gcd() function. The fractions.gcd() function now is 431 deprecated. Based on patch by Mark Dickinson. 432 433 .. 434 435 .. bpo: 24064 436 .. date: 9152 437 .. nonce: zXC7OL 438 .. section: Library 439 440 Property() docstrings are now writeable. (Patch by Berker Peksag.) 441 442 .. 443 444 .. bpo: 22681 445 .. date: 9151 446 .. nonce: 2rIoA2 447 .. section: Library 448 449 Added support for the koi8_t encoding. 450 451 .. 452 453 .. bpo: 22682 454 .. date: 9150 455 .. nonce: cP4i3L 456 .. section: Library 457 458 Added support for the kz1048 encoding. 459 460 .. 461 462 .. bpo: 23796 463 .. date: 9149 464 .. nonce: JJmUnc 465 .. section: Library 466 467 peek and read1 methods of BufferedReader now raise ValueError if they called 468 on a closed object. Patch by John Hergenroeder. 469 470 .. 471 472 .. bpo: 21795 473 .. date: 9148 474 .. nonce: BDLMS4 475 .. section: Library 476 477 smtpd now supports the 8BITMIME extension whenever the new *decode_data* 478 constructor argument is set to False. 479 480 .. 481 482 .. bpo: 24155 483 .. date: 9147 484 .. nonce: FZx5c2 485 .. section: Library 486 487 optimize heapq.heapify() for better cache performance when heapifying large 488 lists. 489 490 .. 491 492 .. bpo: 21800 493 .. date: 9146 494 .. nonce: evGSKc 495 .. section: Library 496 497 imaplib now supports RFC 5161 (enable), RFC 6855 (utf8/internationalized 498 email) and automatically encodes non-ASCII usernames and passwords to UTF8. 499 500 .. 501 502 .. bpo: 20274 503 .. date: 9145 504 .. nonce: uVHogg 505 .. section: Library 506 507 When calling a _sqlite.Connection, it now complains if passed any keyword 508 arguments. Previously it silently ignored them. 509 510 .. 511 512 .. bpo: 20274 513 .. date: 9144 514 .. nonce: hBst4M 515 .. section: Library 516 517 Remove ignored and erroneous "kwargs" parameters from three METH_VARARGS 518 methods on _sqlite.Connection. 519 520 .. 521 522 .. bpo: 24134 523 .. date: 9143 524 .. nonce: Ajw0S- 525 .. section: Library 526 527 assertRaises(), assertRaisesRegex(), assertWarns() and assertWarnsRegex() 528 checks now emits a deprecation warning when callable is None or keyword 529 arguments except msg is passed in the context manager mode. 530 531 .. 532 533 .. bpo: 24018 534 .. date: 9142 535 .. nonce: hk7Rcn 536 .. section: Library 537 538 Add a collections.abc.Generator abstract base class. Contributed by Stefan 539 Behnel. 540 541 .. 542 543 .. bpo: 23880 544 .. date: 9141 545 .. nonce: QtKupC 546 .. section: Library 547 548 Tkinter's getint() and getdouble() now support Tcl_Obj. Tkinter's 549 getdouble() now supports any numbers (in particular int). 550 551 .. 552 553 .. bpo: 22619 554 .. date: 9140 555 .. nonce: 1gJEqV 556 .. section: Library 557 558 Added negative limit support in the traceback module. Based on patch by 559 Dmitry Kazakov. 560 561 .. 562 563 .. bpo: 24094 564 .. date: 9139 565 .. nonce: 7T-u7k 566 .. section: Library 567 568 Fix possible crash in json.encode with poorly behaved dict subclasses. 569 570 .. 571 572 .. bpo: 9246 573 .. date: 9138 574 .. nonce: oM-Ikk 575 .. section: Library 576 577 On POSIX, os.getcwd() now supports paths longer than 1025 bytes. Patch 578 written by William Orr. 579 580 .. 581 582 .. bpo: 17445 583 .. date: 9137 584 .. nonce: Z-QYh5 585 .. section: Library 586 587 add difflib.diff_bytes() to support comparison of byte strings (fixes a 588 regression from Python 2). 589 590 .. 591 592 .. bpo: 23917 593 .. date: 9136 594 .. nonce: uMVPV7 595 .. section: Library 596 597 Fall back to sequential compilation when ProcessPoolExecutor doesn't exist. 598 Patch by Claudiu Popa. 599 600 .. 601 602 .. bpo: 23008 603 .. date: 9135 604 .. nonce: OZFCd- 605 .. section: Library 606 607 Fixed resolving attributes with boolean value is False in pydoc. 608 609 .. 610 611 .. bpo: 0 612 .. date: 9134 613 .. nonce: 6tJNf2 614 .. section: Library 615 616 Fix asyncio issue 235: LifoQueue and PriorityQueue's put didn't increment 617 unfinished tasks (this bug was introduced when JoinableQueue was merged with 618 Queue). 619 620 .. 621 622 .. bpo: 23908 623 .. date: 9133 624 .. nonce: ATdNG- 625 .. section: Library 626 627 os functions now reject paths with embedded null character on Windows 628 instead of silently truncating them. 629 630 .. 631 632 .. bpo: 23728 633 .. date: 9132 634 .. nonce: YBmQmV 635 .. section: Library 636 637 binascii.crc_hqx() could return an integer outside of the range 0-0xffff for 638 empty data. 639 640 .. 641 642 .. bpo: 23887 643 .. date: 9131 644 .. nonce: _XpjPN 645 .. section: Library 646 647 urllib.error.HTTPError now has a proper repr() representation. Patch by 648 Berker Peksag. 649 650 .. 651 652 .. bpo: 0 653 .. date: 9130 654 .. nonce: MjNdSC 655 .. section: Library 656 657 asyncio: New event loop APIs: set_task_factory() and get_task_factory(). 658 659 .. 660 661 .. bpo: 0 662 .. date: 9129 663 .. nonce: rVcHXp 664 .. section: Library 665 666 asyncio: async() function is deprecated in favour of ensure_future(). 667 668 .. 669 670 .. bpo: 24178 671 .. date: 9128 672 .. nonce: -enO4y 673 .. section: Library 674 675 asyncio.Lock, Condition, Semaphore, and BoundedSemaphore support new 'async 676 with' syntax. Contributed by Yury Selivanov. 677 678 .. 679 680 .. bpo: 24179 681 .. date: 9127 682 .. nonce: wDy_WZ 683 .. section: Library 684 685 Support 'async for' for asyncio.StreamReader. Contributed by Yury Selivanov. 686 687 .. 688 689 .. bpo: 24184 690 .. date: 9126 691 .. nonce: El74TU 692 .. section: Library 693 694 Add AsyncIterator and AsyncIterable ABCs to collections.abc. Contributed by 695 Yury Selivanov. 696 697 .. 698 699 .. bpo: 22547 700 .. date: 9125 701 .. nonce: _ikCaj 702 .. section: Library 703 704 Implement informative __repr__ for inspect.BoundArguments. Contributed by 705 Yury Selivanov. 706 707 .. 708 709 .. bpo: 24190 710 .. date: 9124 711 .. nonce: 1a3vWW 712 .. section: Library 713 714 Implement inspect.BoundArgument.apply_defaults() method. Contributed by Yury 715 Selivanov. 716 717 .. 718 719 .. bpo: 20691 720 .. date: 9123 721 .. nonce: -raLyf 722 .. section: Library 723 724 Add 'follow_wrapped' argument to inspect.Signature.from_callable() and 725 inspect.signature(). Contributed by Yury Selivanov. 726 727 .. 728 729 .. bpo: 24248 730 .. date: 9122 731 .. nonce: IxWooo 732 .. section: Library 733 734 Deprecate inspect.Signature.from_function() and 735 inspect.Signature.from_builtin(). 736 737 .. 738 739 .. bpo: 23898 740 .. date: 9121 741 .. nonce: OSiZie 742 .. section: Library 743 744 Fix inspect.classify_class_attrs() to support attributes with overloaded 745 __eq__ and __bool__. Patch by Mike Bayer. 746 747 .. 748 749 .. bpo: 24298 750 .. date: 9120 751 .. nonce: u_TaxI 752 .. section: Library 753 754 Fix inspect.signature() to correctly unwrap wrappers around bound methods. 755 756 .. 757 758 .. bpo: 23184 759 .. date: 9119 760 .. nonce: G_Cp9v 761 .. section: IDLE 762 763 remove unused names and imports in idlelib. Initial patch by Al Sweigart. 764 765 .. 766 767 .. bpo: 21520 768 .. date: 9118 769 .. nonce: FKtvmQ 770 .. section: Tests 771 772 test_zipfile no longer fails if the word 'bad' appears anywhere in the name 773 of the current directory. 774 775 .. 776 777 .. bpo: 9517 778 .. date: 9117 779 .. nonce: W0Ag2V 780 .. section: Tests 781 782 Move script_helper into the support package. Patch by Christie Wilson. 783 784 .. 785 786 .. bpo: 22155 787 .. date: 9116 788 .. nonce: 9EbOit 789 .. section: Documentation 790 791 Add File Handlers subsection with createfilehandler to tkinter doc. Remove 792 obsolete example from FAQ. Patch by Martin Panter. 793 794 .. 795 796 .. bpo: 24029 797 .. date: 9115 798 .. nonce: M2Bnks 799 .. section: Documentation 800 801 Document the name binding behavior for submodule imports. 802 803 .. 804 805 .. bpo: 24077 806 .. date: 9114 807 .. nonce: 2Og2j- 808 .. section: Documentation 809 810 Fix typo in man page for -I command option: -s, not -S 811 812 .. 813 814 .. bpo: 24000 815 .. date: 9113 816 .. nonce: MJyXRr 817 .. section: Tools/Demos 818 819 Improved Argument Clinic's mapping of converters to legacy "format units". 820 Updated the documentation to match. 821 822 .. 823 824 .. bpo: 24001 825 .. date: 9112 826 .. nonce: m74vst 827 .. section: Tools/Demos 828 829 Argument Clinic converters now use accept={type} instead of types={'type'} 830 to specify the types the converter accepts. 831 832 .. 833 834 .. bpo: 23330 835 .. date: 9111 836 .. nonce: LTlKDp 837 .. section: Tools/Demos 838 839 h2py now supports arbitrary filenames in #include. 840 841 .. 842 843 .. bpo: 24031 844 .. date: 9110 845 .. nonce: duGo88 846 .. section: Tools/Demos 847 848 make patchcheck now supports git checkouts, too. 849