1.. bpo: 33622 2.. date: 2018-05-23-20-46-14 3.. nonce: xPucO9 4.. release date: 2018-05-30 5.. section: Core and Builtins 6 7Fixed a leak when the garbage collector fails to add an object with the 8``__del__`` method or referenced by it into the :data:`gc.garbage` list. 9:c:func:`PyGC_Collect` can now be called when an exception is set and 10preserves it. 11 12.. 13 14.. bpo: 33509 15.. date: 2018-05-14-17-31-02 16.. nonce: pIUfTd 17.. section: Core and Builtins 18 19Fix module_globals parameter of warnings.warn_explicit(): don't crash if 20module_globals is not a dict. 21 22.. 23 24.. bpo: 20104 25.. date: 2018-05-14-11-34-55 26.. nonce: kqBNzv 27.. section: Core and Builtins 28 29The new `os.posix_spawn` added in 3.7.0b1 was removed as we are still 30working on what the API should look like. Expect this in 3.8 instead. 31 32.. 33 34.. bpo: 33475 35.. date: 2018-05-13-01-26-18 36.. nonce: rI0y1U 37.. section: Core and Builtins 38 39Fixed miscellaneous bugs in converting annotations to strings and optimized 40parentheses in the string representation. 41 42.. 43 44.. bpo: 33391 45.. date: 2018-05-02-08-36-03 46.. nonce: z4a7rb 47.. section: Core and Builtins 48 49Fix a leak in set_symmetric_difference(). 50 51.. 52 53.. bpo: 28055 54.. date: 2018-04-25-20-44-42 55.. nonce: f49kfC 56.. section: Core and Builtins 57 58Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer. 59 60.. 61 62.. bpo: 32911 63.. date: 2018-02-27-20-57-00 64.. nonce: cmKfco 65.. section: Core and Builtins 66 67Due to unexpected compatibility issues discovered during downstream beta 68testing, reverted :issue:`29463`. ``docstring`` field is removed from 69Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was 70added in 3.7a1. Docstring expression is restored as a first statement in 71their body. Based on patch by Inada Naoki. 72 73.. 74 75.. bpo: 21983 76.. date: 2017-10-02-21-02-14 77.. nonce: UoC319 78.. section: Core and Builtins 79 80Fix a crash in `ctypes.cast()` in case the type argument is a ctypes 81structured data type. Patch by Eryk Sun and Oren Milman. 82 83.. 84 85.. bpo: 32751 86.. date: 2018-05-29-15-32-18 87.. nonce: oBTqr7 88.. section: Library 89 90When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now 91wait until the cancellation is complete. 92 93.. 94 95.. bpo: 32684 96.. date: 2018-05-29-12-51-18 97.. nonce: ZEIism 98.. section: Library 99 100Fix gather to propagate cancellation of itself even with return_exceptions. 101 102.. 103 104.. bpo: 33654 105.. date: 2018-05-29-01-13-39 106.. nonce: sa81Si 107.. section: Library 108 109Support protocol type switching in SSLTransport.set_protocol(). 110 111.. 112 113.. bpo: 33674 114.. date: 2018-05-29-00-37-56 115.. nonce: 2IkGhL 116.. section: Library 117 118Pause the transport as early as possible to further reduce the risk of 119data_received() being called before connection_made(). 120 121.. 122 123.. bpo: 33674 124.. date: 2018-05-28-22-49-59 125.. nonce: 6LFFj7 126.. section: Library 127 128Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: 129start immediately the handshake instead of using call_soon(). Previously, 130data_received() could be called before the handshake started, causing the 131handshake to hang or fail. 132 133.. 134 135.. bpo: 31647 136.. date: 2018-05-28-18-40-26 137.. nonce: s4Fad3 138.. section: Library 139 140Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's 141already closed raises AttributeError. 142 143.. 144 145.. bpo: 32610 146.. date: 2018-05-28-16-40-32 147.. nonce: KvUAsL 148.. section: Library 149 150Make asyncio.all_tasks() return only pending tasks. 151 152.. 153 154.. bpo: 32410 155.. date: 2018-05-28-16-19-35 156.. nonce: Z1DZaF 157.. section: Library 158 159Avoid blocking on file IO in sendfile fallback code 160 161.. 162 163.. bpo: 33469 164.. date: 2018-05-28-15-55-12 165.. nonce: hmXBpY 166.. section: Library 167 168Fix RuntimeError after closing loop that used run_in_executor 169 170.. 171 172.. bpo: 33672 173.. date: 2018-05-28-12-29-54 174.. nonce: GM_Xm_ 175.. section: Library 176 177Fix Task.__repr__ crash with Cython's bogus coroutines 178 179.. 180 181.. bpo: 33654 182.. date: 2018-05-26-13-09-34 183.. nonce: IbYWxA 184.. section: Library 185 186Fix transport.set_protocol() to support switching between asyncio.Protocol 187and asyncio.BufferedProtocol. Fix loop.start_tls() to work with 188asyncio.BufferedProtocols. 189 190.. 191 192.. bpo: 33652 193.. date: 2018-05-26-10-13-59 194.. nonce: humFJ1 195.. section: Library 196 197Pickles of type variables and subscripted generics are now future-proof and 198compatible with older Python versions. 199 200.. 201 202.. bpo: 32493 203.. date: 2018-05-24-17-41-36 204.. nonce: 5tAoAu 205.. section: Library 206 207Fixed :func:`uuid.uuid1` on FreeBSD. 208 209.. 210 211.. bpo: 33618 212.. date: 2018-05-23-20-14-34 213.. nonce: xU39lr 214.. section: Library 215 216Finalize and document preliminary and experimental TLS 1.3 support with 217OpenSSL 1.1.1 218 219.. 220 221.. bpo: 33623 222.. date: 2018-05-23-14-58-05 223.. nonce: wAw1cF 224.. section: Library 225 226Fix possible SIGSGV when asyncio.Future is created in __del__ 227 228.. 229 230.. bpo: 30877 231.. date: 2018-05-22-13-05-12 232.. nonce: JZEGjI 233.. section: Library 234 235Fixed a bug in the Python implementation of the JSON decoder that prevented 236the cache of parsed strings from clearing after finishing the decoding. 237Based on patch by c-fos. 238 239.. 240 241.. bpo: 33570 242.. date: 2018-05-18-21-50-47 243.. nonce: 7CZy4t 244.. section: Library 245 246Change TLS 1.3 cipher suite settings for compatibility with OpenSSL 2471.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by 248default. 249 250.. 251 252.. bpo: 28556 253.. date: 2018-05-17-22-53-08 254.. nonce: C6Hnd1 255.. section: Library 256 257Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]` 258is not simplified to `Employee` at runtime. Such simplification previously 259caused several bugs and limited possibilities for introspection. 260 261.. 262 263.. bpo: 33540 264.. date: 2018-05-16-18-10-38 265.. nonce: wy9LRV 266.. section: Library 267 268Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and 269``ThreadingMixIn`` classes of :mod:`socketserver`. 270 271.. 272 273.. bpo: 33548 274.. date: 2018-05-16-17-05-48 275.. nonce: xWslmx 276.. section: Library 277 278tempfile._candidate_tempdir_list should consider common TEMP locations 279 280.. 281 282.. bpo: 33109 283.. date: 2018-05-16-14-57-58 284.. nonce: nPLL_S 285.. section: Library 286 287argparse subparsers are once again not required by default, reverting the 288change in behavior introduced by bpo-26510 in 3.7.0a2. 289 290.. 291 292.. bpo: 33536 293.. date: 2018-05-16-10-07-40 294.. nonce: _s0TE8 295.. section: Library 296 297dataclasses.make_dataclass now checks for invalid field names and duplicate 298fields. Also, added a check for invalid field specifications. 299 300.. 301 302.. bpo: 33542 303.. date: 2018-05-16-09-30-27 304.. nonce: idNAcs 305.. section: Library 306 307Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows. 308Patch by Zvi Effron 309 310.. 311 312.. bpo: 26819 313.. date: 2018-05-16-05-24-43 314.. nonce: taxbVT 315.. section: Library 316 317Fix race condition with `ReadTransport.resume_reading` in Windows proactor 318event loop. 319 320.. 321 322.. bpo: 0 323.. date: 2018-05-15-18-02-03 324.. nonce: pj2Mbb 325.. section: Library 326 327Fix failure in `typing.get_type_hints()` when ClassVar was provided as a 328string forward reference. 329 330.. 331 332.. bpo: 33505 333.. date: 2018-05-14-18-05-35 334.. nonce: L8pAyt 335.. section: Library 336 337Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster. 338 339.. 340 341.. bpo: 33497 342.. date: 2018-05-14-17-49-34 343.. nonce: wWT6XM 344.. section: Library 345 346Add errors param to cgi.parse_multipart and make an encoding in FieldStorage 347use the given errors (needed for Twisted). Patch by Amber Brown. 348 349.. 350 351.. bpo: 33495 352.. date: 2018-05-14-10-29-03 353.. nonce: TeGTQJ 354.. section: Library 355 356Change dataclasses.Fields repr to use the repr of each of its members, 357instead of str. This makes it more clear what each field actually 358represents. This is especially true for the 'type' member. 359 360.. 361 362.. bpo: 33453 363.. date: 2018-05-12-06-01-02 364.. nonce: Fj-jMD 365.. section: Library 366 367Fix dataclasses to work if using literal string type annotations or if using 368PEP 563 "Postponed Evaluation of Annotations". Only specific string 369prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") 370and InitVar ("InitVar" and "dataclasses.InitVar"). 371 372.. 373 374.. bpo: 28556 375.. date: 2018-05-08-16-43-42 376.. nonce: _xr5mp 377.. section: Library 378 379Minor fixes in typing module: add annotations to ``NamedTuple.__new__``, 380pass ``*args`` and ``**kwds`` in ``Generic.__new__``. Original PRs by 381Paulius Šarka and Chad Dombrova. 382 383.. 384 385.. bpo: 20087 386.. date: 2018-05-05-18-02-24 387.. nonce: lJrvXL 388.. section: Library 389 390Updated alias mapping with glibc 2.27 supported locales. 391 392.. 393 394.. bpo: 33422 395.. date: 2018-05-05-09-53-05 396.. nonce: 4FtQ0q 397.. section: Library 398 399Fix trailing quotation marks getting deleted when looking up byte/string 400literals on pydoc. Patch by Andrés Delfino. 401 402.. 403 404.. bpo: 28167 405.. date: 2018-05-02-07-26-29 406.. nonce: 7FwDfN 407.. section: Library 408 409The function ``platform.linux_distribution`` and ``platform.dist`` now 410trigger a ``DeprecationWarning`` and have been marked for removal in Python 4113.8 412 413.. 414 415.. bpo: 33197 416.. date: 2018-04-29-23-56-20 417.. nonce: dgRLqr 418.. section: Library 419 420Update error message when constructing invalid inspect.Parameters Patch by 421Dong-hee Na. 422 423.. 424 425.. bpo: 33263 426.. date: 2018-04-11-20-29-19 427.. nonce: B56Hc1 428.. section: Library 429 430Fix FD leak in `_SelectorSocketTransport` Patch by Vlad Starostin. 431 432.. 433 434.. bpo: 32861 435.. date: 2018-04-02-20-44-54 436.. nonce: HeBjzN 437.. section: Library 438 439The urllib.robotparser's ``__str__`` representation now includes wildcard 440entries and the "Crawl-delay" and "Request-rate" fields. Patch by Michael 441Lazar. 442 443.. 444 445.. bpo: 32257 446.. date: 2018-02-26-09-08-07 447.. nonce: 6ElnUt 448.. section: Library 449 450The ssl module now contains OP_NO_RENEGOTIATION constant, available with 451OpenSSL 1.1.0h or 1.1.1. 452 453.. 454 455.. bpo: 16865 456.. date: 2017-09-29-16-40-38 457.. nonce: l-f6I_ 458.. section: Library 459 460Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer. 461 462.. 463 464.. bpo: 23859 465.. date: 2018-05-29-16-02-31 466.. nonce: E5gba1 467.. section: Documentation 468 469Document that `asyncio.wait()` does not cancel its futures on timeout. 470 471.. 472 473.. bpo: 32436 474.. date: 2018-05-23-11-59-51 475.. nonce: S1LGPa 476.. section: Documentation 477 478Document :pep:`567` changes to asyncio. 479 480.. 481 482.. bpo: 33604 483.. date: 2018-05-22-11-47-14 484.. nonce: 5YHTpz 485.. section: Documentation 486 487Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8. 488 489.. 490 491.. bpo: 33503 492.. date: 2018-05-14-20-08-58 493.. nonce: Wvt0qg 494.. section: Documentation 495 496Fix broken pypi link 497 498.. 499 500.. bpo: 33421 501.. date: 2018-05-14-15-15-41 502.. nonce: 3GU_QO 503.. section: Documentation 504 505Add missing documentation for ``typing.AsyncContextManager``. 506 507.. 508 509.. bpo: 33655 510.. date: 2018-05-26-16-01-40 511.. nonce: Frb4LA 512.. section: Tests 513 514Ignore test_posix_fallocate failures on BSD platforms that might be due to 515running on ZFS. 516 517.. 518 519.. bpo: 32604 520.. date: 2018-05-14-13-32-46 521.. nonce: a_z6D_ 522.. section: Tests 523 524Remove the _xxsubinterpreters module (meant for testing) and associated 525helpers. This module was originally added recently in 3.7b1. 526 527.. 528 529.. bpo: 33614 530.. date: 2018-05-28-11-40-22 531.. nonce: 28e0sE 532.. section: Build 533 534Ensures module definition files for the stable ABI on Windows are correctly 535regenerated. 536 537.. 538 539.. bpo: 33522 540.. date: 2018-05-15-12-44-50 541.. nonce: mJoNcA 542.. section: Build 543 544Enable CI builds on Visual Studio Team Services at 545https://python.visualstudio.com/cpython 546 547.. 548 549.. bpo: 33012 550.. date: 2018-05-10-21-10-01 551.. nonce: 5Zfjac 552.. section: Build 553 554Add ``-Wno-cast-function-type`` for gcc 8 for silencing warnings about 555function casts like casting to PyCFunction in method definition lists. 556 557.. 558 559.. bpo: 13631 560.. date: 2018-05-16-13-25-58 561.. nonce: UIjDyY 562.. section: macOS 563 564The .editrc file in user's home directory is now processed correctly during 565the readline initialization through editline emulation on macOS. 566 567.. 568 569.. bpo: 33628 570.. date: 2018-05-23-19-51-07 571.. nonce: sLlFLO 572.. section: IDLE 573 574IDLE: Cleanup codecontext.py and its test. 575 576.. 577 578.. bpo: 33564 579.. date: 2018-05-17-19-41-12 580.. nonce: XzHZJe 581.. section: IDLE 582 583IDLE's code context now recognizes async as a block opener. 584 585.. 586 587.. bpo: 32831 588.. date: 2018-02-12-08-08-45 589.. nonce: srDRvU 590.. section: IDLE 591 592Add docstrings and tests for codecontext. 593