1.. bpo: 27704 2.. date: 9455 3.. nonce: RUxzHf 4.. release date: 2016-08-15 5.. section: Core and Builtins 6 7Optimized creating bytes and bytearray from byte-like objects and iterables. 8Speed up to 3 times for short objects. Original patch by Naoki Inada. 9 10.. 11 12.. bpo: 26823 13.. date: 9454 14.. nonce: UWORiU 15.. section: Core and Builtins 16 17Large sections of repeated lines in tracebacks are now abbreviated as 18"[Previous line repeated {count} more times]" by the builtin traceback 19rendering. Patch by Emanuel Barry. 20 21.. 22 23.. bpo: 27574 24.. date: 9453 25.. nonce: q73Tss 26.. section: Core and Builtins 27 28Decreased an overhead of parsing keyword arguments in functions implemented 29with using Argument Clinic. 30 31.. 32 33.. bpo: 22557 34.. date: 9452 35.. nonce: Hta2Rz 36.. section: Core and Builtins 37 38Now importing already imported modules is up to 2.5 times faster. 39 40.. 41 42.. bpo: 17596 43.. date: 9451 44.. nonce: XgbA9V 45.. section: Core and Builtins 46 47Include <wincrypt.h> to help with Min GW building. 48 49.. 50 51.. bpo: 17599 52.. date: 9450 53.. nonce: noy7o1 54.. section: Core and Builtins 55 56On Windows, rename the privately defined REPARSE_DATA_BUFFER structure to 57avoid conflicting with the definition from Min GW. 58 59.. 60 61.. bpo: 27507 62.. date: 9449 63.. nonce: 3pX0Be 64.. section: Core and Builtins 65 66Add integer overflow check in bytearray.extend(). Patch by Xiang Zhang. 67 68.. 69 70.. bpo: 27581 71.. date: 9448 72.. nonce: KezjNt 73.. section: Core and Builtins 74 75Don't rely on wrapping for overflow check in PySequence_Tuple(). Patch by 76Xiang Zhang. 77 78.. 79 80.. bpo: 1621 81.. date: 9447 82.. nonce: _FZWTr 83.. section: Core and Builtins 84 85Avoid signed integer overflow in list and tuple operations. Patch by Xiang 86Zhang. 87 88.. 89 90.. bpo: 27419 91.. date: 9446 92.. nonce: YaGodL 93.. section: Core and Builtins 94 95Standard __import__() no longer look up "__import__" in globals or builtins 96for importing submodules or "from import". Fixed a crash if raise a warning 97about unabling to resolve package from __spec__ or __package__. 98 99.. 100 101.. bpo: 27083 102.. date: 9445 103.. nonce: F4ZT1C 104.. section: Core and Builtins 105 106Respect the PYTHONCASEOK environment variable under Windows. 107 108.. 109 110.. bpo: 27514 111.. date: 9444 112.. nonce: NLbwPG 113.. section: Core and Builtins 114 115Make having too many statically nested blocks a SyntaxError instead of 116SystemError. 117 118.. 119 120.. bpo: 27366 121.. date: 9443 122.. nonce: VrInsj 123.. section: Core and Builtins 124 125Implemented :pep:`487` (Simpler customization of class creation). Upon 126subclassing, the __init_subclass__ classmethod is called on the base class. 127Descriptors are initialized with __set_name__ after class creation. 128 129.. 130 131.. bpo: 26027 132.. date: 9442 133.. nonce: nfVMKM 134.. section: Library 135 136Add :pep:`519`/__fspath__() support to the os and os.path modules. Includes 137code from Jelle Zijlstra. (See also: bpo-27524) 138 139.. 140 141.. bpo: 27598 142.. date: 9441 143.. nonce: y7PtEV 144.. section: Library 145 146Add Collections to collections.abc. Patch by Ivan Levkivskyi, docs by Neil 147Girdhar. 148 149.. 150 151.. bpo: 25958 152.. date: 9440 153.. nonce: X-V4U1 154.. section: Library 155 156Support "anti-registration" of special methods from various ABCs, like 157__hash__, __iter__ or __len__. All these (and several more) can be set to 158None in an implementation class and the behavior will be as if the method is 159not defined at all. (Previously, this mechanism existed only for __hash__, 160to make mutable classes unhashable.) Code contributed by Andrew Barnert and 161Ivan Levkivskyi. 162 163.. 164 165.. bpo: 16764 166.. date: 9439 167.. nonce: cPbNjL 168.. section: Library 169 170Support keyword arguments to zlib.decompress(). Patch by Xiang Zhang. 171 172.. 173 174.. bpo: 27736 175.. date: 9438 176.. nonce: 8kMhpQ 177.. section: Library 178 179Prevent segfault after interpreter re-initialization due to ref count 180problem introduced in code for Issue #27038 in 3.6.0a3. Patch by Xiang 181Zhang. 182 183.. 184 185.. bpo: 25628 186.. date: 9437 187.. nonce: UcQnHF 188.. section: Library 189 190The *verbose* and *rename* parameters for collections.namedtuple are now 191keyword-only. 192 193.. 194 195.. bpo: 12345 196.. date: 9436 197.. nonce: nbAEM8 198.. section: Library 199 200Add mathematical constant tau to math and cmath. See also :pep:`628`. 201 202.. 203 204.. bpo: 26823 205.. date: 9435 206.. nonce: HcO8tR 207.. section: Library 208 209traceback.StackSummary.format now abbreviates large sections of repeated 210lines as "[Previous line repeated {count} more times]" (this change then 211further affects other traceback display operations in the module). Patch by 212Emanuel Barry. 213 214.. 215 216.. bpo: 27664 217.. date: 9434 218.. nonce: 6DJPxw 219.. section: Library 220 221Add to concurrent.futures.thread.ThreadPoolExecutor() the ability to specify 222a thread name prefix. 223 224.. 225 226.. bpo: 27181 227.. date: 9433 228.. nonce: 8aw9TZ 229.. section: Library 230 231Add geometric_mean and harmonic_mean to statistics module. 232 233.. 234 235.. bpo: 27573 236.. date: 9432 237.. nonce: B7XhTs 238.. section: Library 239 240code.interact now prints an message when exiting. 241 242.. 243 244.. bpo: 6422 245.. date: 9431 246.. nonce: iBSc45 247.. section: Library 248 249Add autorange method to timeit.Timer objects. 250 251.. 252 253.. bpo: 27773 254.. date: 9430 255.. nonce: hMSSeX 256.. section: Library 257 258Correct some memory management errors server_hostname in _ssl.wrap_socket(). 259 260.. 261 262.. bpo: 26750 263.. date: 9429 264.. nonce: OQn3fr 265.. section: Library 266 267unittest.mock.create_autospec() now works properly for subclasses of 268property() and other data descriptors. Removes the never publicly used, 269never documented unittest.mock.DescriptorTypes tuple. 270 271.. 272 273.. bpo: 26754 274.. date: 9428 275.. nonce: XZqomf 276.. section: Library 277 278Undocumented support of general bytes-like objects as path in compile() and 279similar functions is now deprecated. 280 281.. 282 283.. bpo: 26800 284.. date: 9427 285.. nonce: QDcK8u 286.. section: Library 287 288Undocumented support of general bytes-like objects as paths in os functions 289is now deprecated. 290 291.. 292 293.. bpo: 26981 294.. date: 9426 295.. nonce: yhNTCf 296.. section: Library 297 298Add _order_ compatibility shim to enum.Enum for Python 2/3 code bases. 299 300.. 301 302.. bpo: 27661 303.. date: 9425 304.. nonce: 3JZckO 305.. section: Library 306 307Added tzinfo keyword argument to datetime.combine. 308 309.. 310 311.. bpo: 0 312.. date: 9424 313.. nonce: Ny9oPv 314.. section: Library 315 316In the curses module, raise an error if window.getstr() or window.instr() is 317passed a negative value. 318 319.. 320 321.. bpo: 27783 322.. date: 9423 323.. nonce: cR1jXH 324.. section: Library 325 326Fix possible usage of uninitialized memory in operator.methodcaller. 327 328.. 329 330.. bpo: 27774 331.. date: 9422 332.. nonce: FDcik1 333.. section: Library 334 335Fix possible Py_DECREF on unowned object in _sre. 336 337.. 338 339.. bpo: 27760 340.. date: 9421 341.. nonce: gxMjp4 342.. section: Library 343 344Fix possible integer overflow in binascii.b2a_qp. 345 346.. 347 348.. bpo: 27758 349.. date: 9420 350.. nonce: 0NRV03 351.. section: Library 352 353Fix possible integer overflow in the _csv module for large record lengths. 354 355.. 356 357.. bpo: 27568 358.. date: 9419 359.. nonce: OnuO9s 360.. section: Library 361 362Prevent HTTPoxy attack (CVE-2016-1000110). Ignore the HTTP_PROXY variable 363when REQUEST_METHOD environment is set, which indicates that the script is 364in CGI mode. 365 366.. 367 368.. bpo: 7063 369.. date: 9418 370.. nonce: nXsVKB 371.. section: Library 372 373Remove dead code from the "array" module's slice handling. Patch by Chuck. 374 375.. 376 377.. bpo: 27656 378.. date: 9417 379.. nonce: joTscM 380.. section: Library 381 382Do not assume sched.h defines any SCHED_* constants. 383 384.. 385 386.. bpo: 27130 387.. date: 9416 388.. nonce: SUxwXZ 389.. section: Library 390 391In the "zlib" module, fix handling of large buffers (typically 4 GiB) when 392compressing and decompressing. Previously, inputs were limited to 4 GiB, 393and compression and decompression operations did not properly handle results 394of 4 GiB. 395 396.. 397 398.. bpo: 24773 399.. date: 9415 400.. nonce: IDW05R 401.. section: Library 402 403Implemented :pep:`495` (Local Time Disambiguation). 404 405.. 406 407.. bpo: 0 408.. date: 9414 409.. nonce: lOkwM8 410.. section: Library 411 412Expose the EPOLLEXCLUSIVE constant (when it is defined) in the select 413module. 414 415.. 416 417.. bpo: 27567 418.. date: 9413 419.. nonce: bYOgyw 420.. section: Library 421 422Expose the EPOLLRDHUP and POLLRDHUP constants in the select module. 423 424.. 425 426.. bpo: 1621 427.. date: 9412 428.. nonce: 0nclmI 429.. section: Library 430 431Avoid signed int negation overflow in the "audioop" module. 432 433.. 434 435.. bpo: 27533 436.. date: 9411 437.. nonce: iDmKzV 438.. section: Library 439 440Release GIL in nt._isdir 441 442.. 443 444.. bpo: 17711 445.. date: 9410 446.. nonce: 47AILJ 447.. section: Library 448 449Fixed unpickling by the persistent ID with protocol 0. Original patch by 450Alexandre Vassalotti. 451 452.. 453 454.. bpo: 27522 455.. date: 9409 456.. nonce: 8vVz_t 457.. section: Library 458 459Avoid an unintentional reference cycle in email.feedparser. 460 461.. 462 463.. bpo: 27512 464.. date: 9408 465.. nonce: FaGwup 466.. section: Library 467 468Fix a segfault when os.fspath() called an __fspath__() method that raised an 469exception. Patch by Xiang Zhang. 470 471.. 472 473.. bpo: 27714 474.. date: 9407 475.. nonce: bUEDsI 476.. section: IDLE 477 478text_textview and test_autocomplete now pass when re-run in the same 479process. This occurs when test_idle fails when run with the -w option but 480without -jn. Fix warning from test_config. 481 482.. 483 484.. bpo: 27621 485.. date: 9406 486.. nonce: BcpOPU 487.. section: IDLE 488 489Put query response validation error messages in the query box itself instead 490of in a separate messagebox. Redo tests to match. Add Mac OSX refinements. 491Original patch by Mark Roseman. 492 493.. 494 495.. bpo: 27620 496.. date: 9405 497.. nonce: TXRR6x 498.. section: IDLE 499 500Escape key now closes Query box as cancelled. 501 502.. 503 504.. bpo: 27609 505.. date: 9404 506.. nonce: MbTuKa 507.. section: IDLE 508 509IDLE: tab after initial whitespace should tab, not autocomplete. This fixes 510problem with writing docstrings at least twice indented. 511 512.. 513 514.. bpo: 27609 515.. date: 9403 516.. nonce: OBYgv_ 517.. section: IDLE 518 519Explicitly return None when there are also non-None returns. In a few cases, 520reverse a condition and eliminate a return. 521 522.. 523 524.. bpo: 25507 525.. date: 9402 526.. nonce: lxf68d 527.. section: IDLE 528 529IDLE no longer runs buggy code because of its tkinter imports. Users must 530include the same imports required to run directly in Python. 531 532.. 533 534.. bpo: 27173 535.. date: 9401 536.. nonce: M-fYaV 537.. section: IDLE 538 539Add 'IDLE Modern Unix' to the built-in key sets. Make the default key set 540depend on the platform. Add tests for the changes to the config module. 541 542.. 543 544.. bpo: 27452 545.. date: 9400 546.. nonce: RtWnyR 547.. section: IDLE 548 549add line counter and crc to IDLE configHandler test dump. 550 551.. 552 553.. bpo: 25805 554.. date: 9399 555.. nonce: 9SVxXQ 556.. section: Tests 557 558Skip a test in test_pkgutil as needed that doesn't work when ``__name__ == 559__main__``. Patch by SilentGhost. 560 561.. 562 563.. bpo: 27472 564.. date: 9398 565.. nonce: NS3L93 566.. section: Tests 567 568Add test.support.unix_shell as the path to the default shell. 569 570.. 571 572.. bpo: 27369 573.. date: 9397 574.. nonce: LG7U2D 575.. section: Tests 576 577In test_pyexpat, avoid testing an error message detail that changed in Expat 5782.2.0. 579 580.. 581 582.. bpo: 27594 583.. date: 9396 584.. nonce: w3F57B 585.. section: Tests 586 587Prevent assertion error when running test_ast with coverage enabled: ensure 588code object has a valid first line number. Patch suggested by Ivan 589Levkivskyi. 590 591.. 592 593.. bpo: 27647 594.. date: 9395 595.. nonce: -1HUR6 596.. section: Windows 597 598Update bundled Tcl/Tk to 8.6.6. 599 600.. 601 602.. bpo: 27610 603.. date: 9394 604.. nonce: O0o0mB 605.. section: Windows 606 607Adds :pep:`514` metadata to Windows installer 608 609.. 610 611.. bpo: 27469 612.. date: 9393 613.. nonce: 0GwDkX 614.. section: Windows 615 616Adds a shell extension to the launcher so that drag and drop works 617correctly. 618 619.. 620 621.. bpo: 27309 622.. date: 9392 623.. nonce: chiOo6 624.. section: Windows 625 626Enables proper Windows styles in python[w].exe manifest. 627 628.. 629 630.. bpo: 27713 631.. date: 9391 632.. nonce: _3DgXG 633.. section: Build 634 635Suppress spurious build warnings when updating importlib's bootstrap files. 636Patch by Xiang Zhang 637 638.. 639 640.. bpo: 25825 641.. date: 9390 642.. nonce: MLbdVU 643.. section: Build 644 645Correct the references to Modules/python.exp, which is required on AIX. The 646references were accidentally changed in 3.5.0a1. 647 648.. 649 650.. bpo: 27453 651.. date: 9389 652.. nonce: Pb5DBi 653.. section: Build 654 655CPP invocation in configure must use CPPFLAGS. Patch by Chi Hsuan Yen. 656 657.. 658 659.. bpo: 27641 660.. date: 9388 661.. nonce: eGzgCk 662.. section: Build 663 664The configure script now inserts comments into the makefile to prevent the 665pgen and _freeze_importlib executables from being cross-compiled. 666 667.. 668 669.. bpo: 26662 670.. date: 9387 671.. nonce: XkwRxM 672.. section: Build 673 674Set PYTHON_FOR_GEN in configure as the Python program to be used for file 675generation during the build. 676 677.. 678 679.. bpo: 10910 680.. date: 9386 681.. nonce: ZdRayb 682.. section: Build 683 684Avoid C++ compilation errors on FreeBSD and OS X. Also update FreedBSD 685version checks for the original ctype UTF-8 workaround. 686