GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — cpython/Misc/NEWS at v2.7.11 · python/cpython Expand file tree/ Copy pathNEWSMore file actions 11443 lines (7627 loc) · 423 KB / Copy pathNEWSFile metadata and controls11443 lines (7627 loc) · 423 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 +++++++++++ Python News +++++++++++ What's New in Python 2.7.11? ============================ *Release date: 2015-12-05* Library ------- - Issue #25624: ZipFile now always writes a ZIP_STORED header for directory entries. Patch by Dingyuan Wang. What's New in Python 2.7.11 release candidate 1? ================================================ *Release date: 2015-11-21* Core and Builtins ----------------- - Issue #25678: Avoid buffer overreads when int(), long(), float(), and compile() are passed buffer objects. These objects are not necessarily terminated by a null byte, but the functions assumed they were. - Issue #25388: Fixed tokenizer hang when processing undecodable source code with a null byte. - Issue #22995: Default implementation of __reduce__ and __reduce_ex__ now rejects builtin types with not defined __new__. - Issue #7267: format(int, 'c') now raises OverflowError when the argument is not in range(0, 256). - Issue #24806: Prevent builtin types that are not allowed to be subclassed from being subclassed through multiple inheritance. - Issue #24848: Fixed a number of bugs in UTF-7 decoding of misformed data. - Issue #25003: os.urandom() doesn't use getentropy() on Solaris because getentropy() is blocking, whereas os.urandom() should not block. getentropy() is supported since Solaris 11.3. - Issue #21167: NAN operations are now handled correctly when python is compiled with ICC even if -fp-model strict is not specified. - Issue #24467: Fixed possible buffer over-read in bytearray. The bytearray object now always allocates place for trailing null byte and it's buffer now is always null-terminated. - Issue #19543: encode() and decode() methods and constructors of str, unicode and bytearray classes now emit deprecation warning for known non-text encodings when Python is ran with the -3 option. - Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(), PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains() to check for and handle errors correctly. - Issue #4753: On compilers where it is supported, use "computed gotos" for bytecode dispatch in the interpreter. This improves interpretation performance. - Issue #22939: Fixed integer overflow in iterator object. Original patch by Clement Rouault. - Issue #24102: Fixed exception type checking in standard error handlers. Library ------- - Issue #10128: backport issue #10845's mitigation of incompatibilities between the multiprocessing module and directory and zipfile execution. Multiprocessing on Windows will now automatically skip rerunning __main__ in spawned processes, rather than failing with AssertionError. - Issue #25578: Fix (another) memory leak in SSLSocket.getpeercer(). - Issue #25590: In the Readline completer, only call getattr() once per attribute. - Issue #25530: Disable the vulnerable SSLv3 protocol by default when creating ssl.SSLContext. - Issue #25569: Fix memory leak in SSLSocket.getpeercert(). - Issue #7759: Fixed the mhlib module on filesystems that doesn't support link counting for directories. - Issue #892902: Fixed pickling recursive objects. - Issue #18010: Fix the pydoc GUI's search function to handle exceptions from importing packages. - Issue #25515: Always use os.urandom as a source of randomness in uuid.uuid4. - Issue #21827: Fixed textwrap.dedent() for the case when largest common whitespace is a substring of smallest leading whitespace. Based on patch by Robert Li. - Issue #21709: Fix the logging module to not depend upon __file__ being set properly to get the filename of its caller from the stack. This allows it to work if run in a frozen or embedded environment where the module's .__file__ attribute does not match its code object's .co_filename. - Issue #25319: When threading.Event is reinitialized, the underlying condition should use a regular lock rather than a recursive lock. - Issue #25232: Fix CGIRequestHandler to split the query from the URL at the first question mark (?) rather than the last. Patch from Xiang Zhang. - Issue #24657: Prevent CGIRequestHandler from collapsing slashes in the query part of the URL as if it were a path. Patch from Xiang Zhang. - Issue #22958: Constructor and update method of weakref.WeakValueDictionary now accept the self keyword argument. - Issue #22609: Constructor and the update method of collections.UserDict now accept the self keyword argument. - Issue #25203: Failed readline.set_completer_delims() no longer left the module in inconsistent state. - Issue #19143: platform module now reads Windows version from kernel32.dll to avoid compatibility shims. - Issue #25135: Make deque_clear() safer by emptying the deque before clearing. This helps avoid possible reentrancy issues. - Issue #24684: socket.socket.getaddrinfo() now calls PyUnicode_AsEncodedString() instead of calling the encode() method of the host, to handle correctly custom unicode string with an encode() method which doesn't return a byte string. The encoder of the IDNA codec is now called directly instead of calling the encode() method of the string. - Issue #24982: shutil.make_archive() with the "zip" format now adds entries for directories (including empty directories) in ZIP file. - Issue #17849: Raise a sensible exception if an invalid response is received for a HTTP tunnel request, as seen with some servers that do not support tunnelling. Initial patch from Cory Benfield. - Issue #16180: Exit pdb if file has syntax error, instead of trapping user in an infinite loop. Patch by Xavier de Gaye. - Issue #22812: Fix unittest discovery examples. Patch from Pam McA'Nulty. - Issue #24634: Importing uuid should not try to load libc on Windows - Issue #23652: Make it possible to compile the select module against the libc headers from the Linux Standard Base, which do not include some EPOLL macros. Initial patch by Matt Frank. - Issue #15138: Speed up base64.urlsafe_b64{en,de}code considerably. - Issue #23319: Fix ctypes.BigEndianStructure, swap correctly bytes. Patch written by Matthieu Gautier. - Issue #23254: Document how to close the TCPServer listening socket. Patch from Martin Panter. - Issue #17527: Add PATCH to wsgiref.validator. Patch from Luca Sbardella. - Issue #24613: Calling array.fromstring() with self is no longer allowed to prevent the use-after-free error. Patch by John Leitch. - Issue #24708: Fix possible integer overflow in strop.replace(). - Issue #24620: Random.setstate() now validates the value of state last element. - Issue #13938: 2to3 converts StringTypes to a tuple. Patch from Mark Hammond. - Issue #24611: Fixed compiling the posix module on non-Windows platforms without mknod() or makedev() (e.g. on Unixware). - Issue #18684: Fixed reading out of the buffer in the re module. - Issue #24259: tarfile now raises a ReadError if an archive is truncated inside a data segment. - Issue #24514: tarfile now tolerates number fields consisting of only whitespace. - Issue #20387: Restore semantic round-trip correctness in tokenize/untokenize for tab-indented blocks. - Issue #24456: Fixed possible buffer over-read in adpcm2lin() and lin2adpcm() functions of the audioop module. Fixed SystemError when the state is not a tuple. Fixed possible memory leak. - Issue #24481: Fix possible memory corruption with large profiler info strings in hotshot. - Issue #24489: ensure a previously set C errno doesn't disturb cmath.polar(). - Issue #19543: io.TextIOWrapper (and hence io.open()) now uses the internal codec marking system added to emit deprecation warning for known non-text encodings at stream construction time when Python is ran with the -3 option. - Issue #24264: Fixed buffer overflow in the imageop module. - Issue #5633: Fixed timeit when the statement is a string and the setup is not. - Issue #24326: Fixed audioop.ratecv() with non-default weightB argument. Original patch by David Moore. - Issue #22095: Fixed HTTPConnection.set_tunnel with default port. The port value in the host header was set to "None". Patch by Demian Brecht. - Issue #24257: Fixed segmentation fault in sqlite3.Row constructor with faked cursor type. - Issue #24286: Dict view were not registered with the MappingView abstract base classes. This caused key and item views in OrderedDict to not be equal to their regular dict counterparts. - Issue #22107: tempfile.gettempdir() and tempfile.mkdtemp() now try again when a directory with the chosen name already exists on Windows as well as on Unix. tempfile.mkstemp() now fails early if parent directory is not valid (not exists or is a file) on Windows. - Issue #6598: Increased time precision and random number range in email.utils.make_msgid() to strengthen the uniqueness of the message ID. - Issue #24091: Fixed various crashes in corner cases in cElementTree. - Issue #15267: HTTPConnection.request() now is compatibile with old-style classes (such as TemporaryFile). Original patch by Atsuo Ishimoto. - Issue #20014: array.array() now accepts unicode typecodes. Based on patch by Vajrasky Kok. - Issue #23637: Showing a warning no longer fails with UnicodeErrror. Formatting unicode warning in the file with the path containing non-ascii characters no longer fails with UnicodeErrror. - Issue #24134: Reverted issue #24134 changes. IDLE ---- - Issue 15348: Stop the debugger engine (normally in a user process) before closing the debugger window (running in the IDLE process). This prevents the RuntimeErrors that were being caught and ignored. - Issue #24455: Prevent IDLE from hanging when a) closing the shell while the debugger is active (15347); b) closing the debugger with the [X] button (15348); and c) activating the debugger when already active (24455). The patch by Mark Roseman does this by making two changes. 1. Suspend and resume the gui.interaction method with the tcl vwait mechanism intended for this purpose (instead of root.mainloop & .quit). 2. In gui.run, allow any existing interaction to terminate first. - Change 'The program' to 'Your program' in an IDLE 'kill program?' message to make it clearer that the program referred to is the currently running user program, not IDLE itself. - Issue #24750: Improve the appearance of the IDLE editor window status bar. Patch by Mark Roseman. - Issue #25313: Change the handling of new built-in text color themes to better address the compatibility problem introduced by the addition of IDLE Dark. Consistently use the revised idleConf.CurrentTheme everywhere in idlelib. - Issue #24782: Extension configuration is now a tab in the IDLE Preferences dialog rather than a separate dialog. The former tabs are now a sorted list. Patch by Mark Roseman. - Issue #22726: Re-activate the config dialog help button with some content about the other buttons and the new IDLE Dark theme. - Issue #24820: IDLE now has an 'IDLE Dark' built-in text color theme. It is more or less IDLE Classic inverted, with a cobalt blue background. Strings, comments, keywords, ... are still green, red, orange, ... . To use it with IDLEs released before November 2015, hit the 'Save as New Custom Theme' button and enter a new name, such as 'Custom Dark'. The custom theme will work with any IDLE release, and can be modified. - Issue #25224: README.txt is now an idlelib index for IDLE developers and curious users. The previous user content is now in the IDLE doc chapter. 'IDLE' now means 'Integrated Development and Learning Environment'. - Issue #24820: Users can now set breakpoint colors in Settings -> Custom Highlighting. Original patch by Mark Roseman. - Issue #24972: Inactive selection background now matches active selection background, as configured by users, on all systems. Found items are now always highlighted on Windows. Initial patch by Mark Roseman. - Issue #24570: Idle: make calltip and completion boxes appear on Macs affected by a tk regression. Initial patch by Mark Roseman. - Issue #24988: Idle ScrolledList context menus (used in debugger) now work on Mac Aqua. Patch by Mark Roseman. - Issue #24801: Make right-click for context menu work on Mac Aqua. Patch by Mark Roseman. - Issue #25173: Associate tkinter messageboxes with a specific widget. For Mac OSX, make them a 'sheet'. Patch by Mark Roseman. - Issue #25198: Enhance the initial html viewer now used for Idle Help. * Properly indent fixed-pitch text (patch by Mark Roseman). * Give code snippet a very Sphinx-like light blueish-gray background. * Re-use initial width and height set by users for shell and editor. * When the Table of Contents (TOC) menu is used, put the section header at the top of the screen. - Issue #25225: Condense and rewrite Idle doc section on text colors. - Issue #21995: Explain some differences between IDLE and console Python. - Issue #22820: Explain need for *print* when running file from Idle editor. - Issue #25224: Doc: augment Idle feature list and no-subprocess section. - Issue #25219: Update doc for Idle command line options. Some were missing and notes were not correct. - Issue #24861: Most of idlelib is private and subject to change. Use idleib.idle.* to start Idle. See idlelib.__init__.__doc__. - Issue #25199: Idle: add synchronization comments for future maintainers. - Issue #16893: Replace help.txt with help.html for Idle doc display. The new idlelib/help.html is rstripped Doc/build/html/library/idle.html. It looks better than help.txt and will better document Idle as released. The tkinter html viewer that works for this file was written by Mark Roseman. The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated. - Issue #24199: Deprecate unused idlelib.idlever with possible removal in 3.6. - Issue #24790: Remove extraneous code (which also create 2 & 3 conflicts). - Issue #23672: Allow Idle to edit and run files with astral chars in name. Patch by Mohd Sanad Zaki Rizvi. - Issue 24745: Idle editor default font. Switch from Courier to platform-sensitive TkFixedFont. This should not affect current customized font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg and remove 'fontxxx' entries from [Editor Window]. Patch by Mark Roseman. - Issue #21192: Idle editor. When a file is run, put its name in the restart bar. Do not print false prompts. Original patch by Adnan Umer. - Issue #13884: Idle menus. Remove tearoff lines. Patch by Roger Serwy. - Issue #15809: IDLE shell now uses locale encoding instead of Latin1 for decoding unicode literals. Documentation ------------- - Issue #24952: Clarify the default size argument of stack_size() in the "threading" and "thread" modules. Patch from Mattip. - Issue #20769: Improve reload() docs. Patch by Dorian Pula. - Issue #23589: Remove duplicate sentence from the FAQ. Patch by Yongzhi Pan. - Issue #22155: Add File Handlers subsection with createfilehandler to Tkinter doc. Remove obsolete example from FAQ. Patch by Martin Panter. Tests ----- - Issue #24751: When running regrtest with the ``-w`` command line option, a test run is no longer marked as a failure if all tests succeed when re-run. - PCbuild\rt.bat now accepts an unlimited number of arguments to pass along to regrtest.py. Previously there was a limit of 9. Build ----- - Issue #24915: When doing a PGO build, the test suite is now used instead of pybench; Clang support was also added as part off this work. Initial patch by Alecsandru Patrascu of Intel. - Issue #24986: It is now possible to build Python on Windows without errors when external libraries are not available. - Issue #24508: Backported the MSBuild project files from Python 3.5. The backported files replace the old project files in PCbuild; the old files moved to PC/VS9.0 and remain supported. - Issue #24603: Update Windows builds and OS X 10.5 installer to use OpenSSL 1.0.2d. Windows ------- - Issue #25022: Removed very outdated PC/example_nt/ directory. What's New in Python 2.7.10? ============================ *Release date: 2015-05-23* Library ------- - Issue #22931: Allow '[' and ']' in cookie values. What's New in Python 2.7.10 release candidate 1? ================================================ *Release date: 2015-05-10* Core and Builtins ----------------- - Issue #23971: Fix underestimated presizing in dict.fromkeys(). - Issue #23757: PySequence_Tuple() incorrectly called the concrete list API when the data was a list subclass. - Issue #23629: Fix the default __sizeof__ implementation for variable-sized objects. - Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. Analysis and fix by Guido Vranken. - Issue #23048: Fix jumping out of an infinite while loop in the pdb. Library ------- - The keywords attribute of functools.partial is now always a dictionary. - Issue #20274: When calling a _sqlite.Connection, it now complains if passed any keyword arguments. Previously it silently ignored them. - Issue #20274: Remove ignored and erroneous "kwargs" parameters from three METH_VARARGS methods on _sqlite.Connection. - Issue #24134: assertRaises() and assertRaisesRegexp() checks are not longer successful if the callable is None. - Issue #23008: Fixed resolving attributes with boolean value is False in pydoc. - Issues #24099, #24100, and #24101: Fix use-after-free bug in heapq's siftup and siftdown functions. - Backport collections.deque fixes from Python 3.5. Prevents reentrant badness during deletion by deferring the decref until the container has been restored to a consistent state. - Issue #23842: os.major(), os.minor() and os.makedev() now support ints again. - Issue #23811: Add missing newline to the PyCompileError error message. Patch by Alex Shkop. - Issue #17898: Fix exception in gettext.py when parsing certain plural forms. - Issue #23865: close() methods in multiple modules now are idempotent and more robust at shutdown. If they need to release multiple resources, all are released even if errors occur. - Issue #23881: urllib.ftpwrapper constructor now closes the socket if the FTP connection failed. - Issue #15133: _tkinter.tkapp.getboolean() now supports long and Tcl_Obj and always returns bool. tkinter.BooleanVar now validates input values (accepted bool, int, long, str, unicode, and Tcl_Obj). tkinter.BooleanVar.get() now always returns bool. - Issue #23338: Fixed formatting ctypes error messages on Cygwin. Patch by Makoto Kato. - Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and arbitrary precision integers added in Tcl 8.5. - Issue #23834: Fix socket.sendto(), use the C long type to store the result of sendto() instead of the C int type. - Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. - Issue #23838: linecache now clears the cache and returns an empty result on MemoryError. - Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes. - Issue #21802: The reader in BufferedRWPair now is closed even when closing writer failed in BufferedRWPair.close(). - Issue #23671: string.Template now allows to specify the "self" parameter as keyword argument. string.Formatter now allows to specify the "self" and the "format_string" parameters as keyword arguments. - Issue #21560: An attempt to write a data of wrong type no longer cause GzipFile corruption. Original patch by Wolfgang Maier. - Issue #23647: Increase impalib's MAXLINE to accommodate modern mailbox sizes. - Issue #23539: If body is None, http.client.HTTPConnection.request now sets Content-Length to 0 for PUT, POST, and PATCH headers to avoid 411 errors from some web servers. - Issue #23136: _strptime now uniformly handles all days in week 0, including Dec 30 of previous year. Based on patch by Jim Carroll. - Issue #23138: Fixed parsing cookies with absent keys or values in cookiejar. Patch by Demian Brecht. - Issue #23051: multiprocessing.Pool methods imap() and imap_unordered() now handle exceptions raised by an iterator. Patch by Alon Diamant and Davin Potts. - Issue #22928: Disabled HTTP header injections in httplib. Original patch by Demian Brecht. - Issue #23615: Module tarfile is now can be reloaded with imp.reload(). - Issue #22853: Fixed a deadlock when use multiprocessing.Queue at import time. Patch by Florian Finkernagel and Davin Potts. - Issue #23476: In the ssl module, enable OpenSSL's X509_V_FLAG_TRUSTED_FIRST flag on certificate stores when it is available. - Issue #23576: Avoid stalling in SSL reads when EOF has been reached in the SSL layer but the underlying connection hasn't been closed. - Issue #23504: Added an __all__ to the types module. - Issue #23458: On POSIX, the file descriptor kept open by os.urandom() is now set to non inheritable - Issue #22113: struct.pack_into() now supports new buffer protocol (in particular accepts writable memoryview). - Issues #814253, #9179: Warnings now are raised when group references and conditional group references are used in lookbehind assertions in regular expressions. - Issue #23215: Multibyte codecs with custom error handlers that ignores errors consumed too much memory and raised SystemError or MemoryError. Original patch by Aleksi Torhamo. - Issue #5700: io.FileIO() called flush() after closing the file. flush() was not called in close() if closefd=False. - Issue #21548: Fix pydoc.synopsis() and pydoc.apropos() on modules with empty docstrings. Initial patch by Yuyang Guo. - Issue #22885: Fixed arbitrary code execution vulnerability in the dumbdbm module. Original patch by Claudiu Popa. - Issue #23481: Remove RC4 from the SSL module's default cipher list. - Issue #21849: Fixed xmlrpclib serialization of non-ASCII unicode strings in the multiprocessing module. - Issue #21840: Fixed expanding unicode variables of form $var in posixpath.expandvars(). Fixed all os.path implementations on unicode-disabled builds. - Issue #23367: Fix possible overflows in the unicodedata module. - Issue #23363: Fix possible overflow in itertools.permutations. - Issue #23364: Fix possible overflow in itertools.product. - Issue #23365: Fixed possible integer overflow in itertools.combinations_with_replacement. - Issue #23366: Fixed possible integer overflow in itertools.combinations. - Issue #23191: fnmatch functions that use caching are now threadsafe. - Issue #18518: timeit now rejects statements which can't be compiled outside a function or a loop (e.g. "return" or "break"). - Issue #19996: Make :mod:`httplib` ignore headers with no name rather than assuming the body has started. - Issue #20188: Support Application-Layer Protocol Negotiation (ALPN) in the ssl module. - Issue #23248: Update ssl error codes from latest OpenSSL git master. - Issue #23098: 64-bit dev_t is now supported in the os module. - Issue #23063: In the disutils' check command, fix parsing of reST with code or code-block directives. - Issue #21356: Make ssl.RAND_egd() optional to support LibreSSL. The availability of the function is checked during the compilation. Patch written by Bernard Spil. - Backport the context argument to ftplib.FTP_TLS. - Issue #23111: Maximize compatibility in protocol versions of ftplib.FTP_TLS. - Issue #23112: Fix SimpleHTTPServer to correctly carry the query string and fragment when it redirects to add a trailing slash. - Issue #22585: On OpenBSD 5.6 and newer, os.urandom() now calls getentropy(), instead of reading /dev/urandom, to get pseudo-random bytes. - Issue #23093: In the io, module allow more operations to work on detached streams. - Issue #23071: Added missing names to codecs.__all__. Patch by Martin Panter. - Issue #23016: A warning no longer produces an AttributeError when sys.stderr is None. - Issue #21032. Fixed socket leak if HTTPConnection.getresponse() fails. Original patch by Martin Panter. - Issue #22609: Constructors and update methods of mapping classes in the collections module now accept the self keyword argument. Documentation ------------- - Issue #23006: Improve the documentation and indexing of dict.__missing__. Add an entry in the language datamodel special methods section. Revise and index its discussion in the stdtypes mapping/dict section. Backport the code example from 3.4. - Issue #21514: The documentation of the json module now refers to new JSON RFC 7159 instead of obsoleted RFC 4627. Tools/Demos ----------- - Issue #23330: h2py now supports arbitrary filenames in #include. - Issue #6639: Module-level turtle functions no longer raise TclError after closing the window. - Issue #22314: pydoc now works when the LINES environment variable is set. - Issue #18905: "pydoc -p 0" now outputs actually used port. Based on patch by Wieland Hoffmann. - Issue #23345: Prevent test_ssl failures with large OpenSSL patch level values (like 0.9.8zc). Tests ----- - Issue #23799: Added test.test_support.start_threads() for running and cleaning up multiple threads. - Issue #22390: test.regrtest now emits a warning if temporary files or directories are left after running a test. - Issue #23583: Added tests for standard IO streams in IDLE. - Issue #23392: Added tests for marshal C API that works with FILE*. - Issue #18982: Add tests for CLI of the calendar module. - Issue #19949: The test_xpickle test now tests compatibility with installed Python 2.7 and reports skipped tests. Based on patch by Zachary Ware. - Issue #11578: Backported test for the timeit module. - Issue #22943: bsddb tests are locale independend now. IDLE ---- - Issue #23583: Fixed writing unicode to standard output stream in IDLE. - Issue #20577: Configuration of the max line length for the FormatParagraph extension has been moved from the General tab of the Idle preferences dialog to the FormatParagraph tab of the Config Extensions dialog. Patch by Tal Einat. - Issue #16893: Update Idle doc chapter to match current Idle and add new information. - Issue #23180: Rename IDLE "Windows" menu item to "Window". Patch by Al Sweigart. Build ----- - Issue #15506: Use standard PKG_PROG_PKG_CONFIG autoconf macro in the configure script. - Issue #23032: Fix installer build failures on OS X 10.4 Tiger by disabling assembly code in the OpenSSL build. - Issue #23686: Update OS X 10.5 installer and Windows builds to use OpenSSL 1.0.2a. C API ----- - Issue #23998: PyImport_ReInitLock() now checks for lock allocation error - Issue #22079: PyType_Ready() now checks that statically allocated type has no dynamically allocated bases. What's New in Python 2.7.9? =========================== *Release date: 2014-12-10* Library ------- - Issue #22959: Remove the *check_hostname* parameter of httplib.HTTPSConnection. The *context* parameter should be used instead. - Issue #16043: Add a default limit for the amount of data xmlrpclib.gzip_decode will return. This resolves CVE-2013-1753. - Issue #16042: CVE-2013-1752: smtplib: Limit amount of data read by limiting the call to readline(). Original patch by Christian Heimes. - Issue #16041: In poplib, limit maximum line length read from the server to prevent CVE-2013-1752. - Issue #22960: Add a context argument to xmlrpclib.ServerProxy. Build ----- - Issue #22935: Allow the ssl module to be compiled if openssl doesn't support SSL 3. - Issue #17128: Use private version of OpenSSL for 2.7.9 OS X 10.5+ installer. What's New in Python 2.7.9 release candidate 1? =============================================== *Release date: 2014-11-25* Core and Builtins ----------------- - Issue #21963: backout issue #1856 patch (avoid crashes and lockups when daemon threads run while the interpreter is shutting down; instead, these threads are now killed when they try to take the GIL), as it seems to break some existing code. - Issue #22604: Fix assertion error in debug mode when dividing a complex number by (nan+0j). - Issue #22470: Fixed integer overflow issues in "backslashreplace" and "xmlcharrefreplace" error handlers. - Issue #22526: Fix iterating through files with lines longer than 2^31 bytes. - Issue #22519: Fix overflow checking in PyString_Repr. - Issue #22518: Fix integer overflow issues in latin-1 encoding. - Issue #22379: Fix empty exception message in a TypeError raised in ``str.join``. - Issue #22221: Now the source encoding declaration on the second line isn't effective if the first line contains anything except a comment. - Issue #22023: Fix ``%S``, ``%R`` and ``%V`` formats of :c:func:`PyUnicode_FromFormat`. - Issue #21591: Correctly handle qualified exec statements in tuple form by moving compatibility layer from run-time to AST transformation. Library ------- - Issue #22417: Verify certificates by default in httplib (PEP 476). - Issue #22927: Allow urllib.urlopen to take a *context* parameter to control SSL settings for HTTPS connections. - Issue #22921: Allow SSLContext to take the *hostname* parameter even if OpenSSL doesn't support SNI. - Issue #9003 and #22366: httplib.HTTPSConnection, urllib2.HTTPSHandler and urllib2.urlopen now take optional arguments to allow for server certificate checking, as recommended in public uses of HTTPS. This backport is part of PEP 467. - Issue #12728: Different Unicode characters having the same uppercase but different lowercase are now matched in case-insensitive regular expressions. - Issue #22821: Fixed fcntl() with integer argument on 64-bit big-endian platforms. - Issue #17293: uuid.getnode() now determines MAC address on AIX using netstat. Based on patch by Aivars Kalvāns. - Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments. - Issue #22787: Allow the keyfile argument of SSLContext.load_cert_chain to be None. - Issue #22775: Fixed unpickling of Cookie.SimpleCookie with protocol 2. Patch by Tim Graham. - Issue #22776: Brought excluded code into the scope of a try block in SysLogHandler.emit(). - Issue #17381: Fixed ranges handling in case-insensitive regular expressions. - Issue #19329: Optimized compiling charsets in regular expressions. - Issue #22410: Module level functions in the re module now cache compiled locale-dependent regular expressions taking into account the locale. - Issue #8876: distutils now falls back to copying files when hard linking doesn't work. This allows use with special filesystems such as VirtualBox shared folders. - Issue #9351: Defaults set with set_defaults on an argparse subparser are no longer ignored when also set on the parent parser. - Issue #20421: Add a .version() method to SSL sockets exposing the actual protocol version in use. - Issue #22435: Fix a file descriptor leak when SocketServer bind fails. - Issue #13664: GzipFile now supports non-ascii Unicode filenames. - Issue #13096: Fixed segfault in CTypes POINTER handling of large values. - Issue #11694: Raise ConversionError in xdrlib as documented. Patch by Filip Gruszczyński and Claudiu Popa. - Issue #1686: Fix string.Template when overriding the pattern attribute. - Issue #11866: Eliminated race condition in the computation of names for new threads. - Issue #22219: The zipfile module CLI now adds entries for directories (including empty directories) in ZIP file. - Issue #22449: In the ssl.SSLContext.load_default_certs, consult the enviromental variables SSL_CERT_DIR and SSL_CERT_FILE on Windows. - Issue #8473: doctest.testfile now uses universal newline mode to read the test file. - Issue #20076: Added non derived UTF-8 aliases to locale aliases table. - Issue #20079: Added locales supported in glibc 2.18 to locale alias table. - Issue #22530: Allow the ``group()`` method of regular expression match objects to take a ``long`` as an index. - Issue #22517: When a io.BufferedRWPair object is deallocated, clear its weakrefs. - Issue #10510: distutils register and upload methods now use HTML standards compliant CRLF line endings. - Issue #9850: Fixed macpath.join() for empty first component. Patch by Oleg Oshmyan. - Issue #20912: Now directories added to ZIP file have correct Unix and MS-DOS directory attributes. - Issue #21866: ZipFile.close() no longer writes ZIP64 central directory records if allowZip64 is false. - Issue #22415: Fixed debugging output of the GROUPREF_EXISTS opcode in the re module. - Issue #22423: Unhandled exception in thread no longer causes unhandled AttributeError when sys.stderr is None. - Issue #22419: Limit the length of incoming HTTP request in wsgiref server to 65536 bytes and send a 414 error code for higher lengths. Patch contributed by Devin Cook. - Lax cookie parsing in http.cookies could be a security issue when combined with non-standard cookie handling in some Web browsers. Reported by Sergey Bobrov. - Issue #21147: sqlite3 now raises an exception if the request contains a null character instead of truncate it. Based on patch by Victor Stinner. - Issue #21951: Fixed a crash in Tkinter on AIX when called Tcl command with empty string or tuple argument. - Issue #21951: Tkinter now most likely raises MemoryError instead of crash if the memory allocation fails. - Issue #22226: First letter no longer is stripped from the "status" key in the result of Treeview.heading(). - Issue #22051: turtledemo no longer reloads examples to re-run them. Initialization of variables and gui setup should be done in main(), which is called each time a demo is run, but not on import. - Issue #21597: The separator between the turtledemo text pane and the drawing canvas can now be grabbed and dragged with a mouse. The code text pane can be widened to easily view or copy the full width of the text. The canvas can be widened on small screens. Original patches by Jan Kanis and Lita Cho. - Issue #18132: Turtledemo buttons no longer disappear when the window is shrunk. Original patches by Jan Kanis and Lita Cho. - Issue #22312: Fix ntpath.splitdrive IndexError. - Issue #22216: smtplib now resets its state more completely after a quit. The most obvious consequence of the previous behavior was a STARTTLS failure during a connect/starttls/quit/connect/starttls sequence. - Issue #21305: os.urandom now caches a fd to /dev/urandom. This is a PEP 466 backport from Python 3. - Issue #21307: As part of PEP 466, backport hashlib.algorithms_guaranteed and hashlib.algorithms_available. - Issue #22259: Fix segfault when attempting to fopen a file descriptor corresponding to a directory. - Issue #22236: Fixed Tkinter images copying operations in NoDefaultRoot mode. - Issue #22191: Fixed warnings.__all__. - Issue #21308: Backport numerous features from Python's ssl module. This is part of PEP 466. - Issue #15696: Add a __sizeof__ implementation for mmap objects on Windows. - Issue #8797: Raise HTTPError on failed Basic Authentication immediately. Initial patch by Sam Bull. - Issue #22068: Avoided reference loops with Variables and Fonts in Tkinter. - Issue #21448: Changed FeedParser feed() to avoid O(N**2) behavior when parsing long line. Original patch by Raymond Hettinger. - Issue #17923: glob() patterns ending with a slash no longer match non-dirs on AIX. Based on patch by Delhallt. - Issue #21975: Fixed crash when using uninitialized sqlite3.Row (in particular when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the __new__() method. - Issue #16037: HTTPMessage.readheaders() raises an HTTPException when more than 100 headers are read. Patch by Jyrki Pulliainen and Daniel Eriksson. - Issue #21580: Now Tkinter correctly handles binary "data" and "maskdata" configure options of tkinter.PhotoImage. - Issue #19612: subprocess.communicate() now also ignores EINVAL when using at least two pipes. - Fix repr(_socket.socket) on Windows 64-bit: don't fail with OverflowError on closed socket. - Issue #16133: The asynchat.async_chat.handle_read() method now ignores socket.error() exceptions with blocking I/O errors: EAGAIN, EALREADY, EINPROGRESS, or EWOULDBLOCK. - Issue #21990: Clean-up unnecessary and slow inner class definition in saxutils (Contributed by Alex Gaynor). - Issue #1730136: Fix the comparison between a tkFont.Font and an object of another kind. - Issue #19884: readline: Disable the meta modifier key if stdout is not a terminal to not write the ANSI sequence "\033[1034h" into stdout. This sequence is used on some terminal (ex: TERM=xterm-256color") to enable support of 8 bit characters. - Issue #22017: Correct reference counting errror in the initialization of the _warnings module. - Issue #21868: Prevent turtle crash when undo buffer set to a value less than one. - Issue #21151: Fixed a segfault in the _winreg module when ``None`` is passed as a ``REG_BINARY`` value to SetValueEx. Patch by John Ehresman. - Issue #21090: io.FileIO.readall() does not ignore I/O errors anymore. Before, it ignored I/O errors if at least the first C call read() succeed. - Issue #19870: BaseCookie now parses 'secure' and 'httponly' flags. Backport of issue #16611. - Issue #21923: Prevent AttributeError in distutils.sysconfig.customize_compiler due to possible uninitialized _config_vars. - Issue #21323: Fix CGIHTTPServer to again handle scripts in CGI subdirectories, broken by the fix for security issue #19435. Patch by Zach Byrne. - Issue #22199: Make get_makefile_filename() available in Lib/sysconfig.py |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |