1.. bpo: 2051 2.. date: 6793 3.. nonce: ra69cz 4.. release date: 29-Feb-2008 5.. section: Core and Builtins 6 7pyc and pyo files are no longer created with permission 644. The mode is now 8inherited from the py file. 9 10.. 11 12.. bpo: 2067 13.. date: 6792 14.. nonce: dnOq_n 15.. section: Core and Builtins 16 17file.__exit__() now calls subclasses' close() method. 18 19.. 20 21.. bpo: 1759 22.. date: 6791 23.. nonce: q41gVI 24.. section: Core and Builtins 25 26Backport of PEP 3129 class decorators. 27 28.. 29 30.. bpo: 1881 31.. date: 6790 32.. nonce: Z0XsUF 33.. section: Core and Builtins 34 35An internal parser limit has been increased. Also see issue #215555 for a 36discussion. 37 38.. 39 40.. bpo: 0 41.. date: 6789 42.. nonce: t4RIVL 43.. section: Core and Builtins 44 45Added the future_builtins module, which contains hex() and oct(). These are 46the PEP 3127 version of these functions, designed to be compatible with the 47hex() and oct() builtins from Python 3.0. They differ slightly in their 48output formats from the existing, unchanged Python 2.6 builtins. The 49expected usage of the future_builtins module is: from future_builtins 50import hex, oct 51 52.. 53 54.. bpo: 1600 55.. date: 6788 56.. nonce: s9YmZq 57.. section: Core and Builtins 58 59Modified PyOS_ascii_formatd to use at most 2 digit exponents for exponents 60with absolute value < 100. Follows C99 standard. This is a change on 61Windows, which would use 3 digits. Also, added 'n' to the formats that 62PyOS_ascii_formatd understands, so that any alterations it does to the 63resulting string will be available in stringlib/formatter.h (for 64float.__format__). 65 66.. 67 68.. bpo: 0 69.. date: 6787 70.. nonce: 3heWL4 71.. section: Core and Builtins 72 73Implemented PEP 3101, Advanced String Formatting. This adds a new builtin 74format(); a format() method for str and unicode; a __format__() method to 75object, str, unicode, int, long, float, and datetime; the class 76string.Formatter; and the C API PyObject_Format(). 77 78.. 79 80.. bpo: 0 81.. date: 6786 82.. nonce: 5DONqn 83.. section: Core and Builtins 84 85Fixed several potential crashes, all caused by specially crafted __del__ 86methods exploiting objects in temporarily inconsistent state. 87 88.. 89 90.. bpo: 2115 91.. date: 6785 92.. nonce: 0hltM5 93.. section: Core and Builtins 94 95Important speedup in setting __slot__ attributes. Also prevent a possible 96crash: an Abstract Base Class would try to access a slot on a registered 97virtual subclass. 98 99.. 100 101.. bpo: 0 102.. date: 6784 103.. nonce: mw1G3G 104.. section: Core and Builtins 105 106Fixed repr() and str() of complex numbers with infinity or nan as real or 107imaginary part. 108 109.. 110 111.. bpo: 0 112.. date: 6783 113.. nonce: 9iXgfq 114.. section: Core and Builtins 115 116Clear all free lists during a gc.collect() of the highest generation in 117order to allow pymalloc to free more arenas. Python may give back memory to 118the OS earlier. 119 120.. 121 122.. bpo: 2045 123.. date: 6782 124.. nonce: r1Y5JL 125.. section: Core and Builtins 126 127Fix an infinite recursion triggered when printing a subclass of 128collections.defaultdict, if its default_factory is set to a bound method. 129 130.. 131 132.. bpo: 0 133.. date: 6781 134.. nonce: Ix4aiT 135.. section: Core and Builtins 136 137Fixed a minor memory leak in dictobject.c. The content of the free list was 138not freed on interpreter shutdown. 139 140.. 141 142.. bpo: 0 143.. date: 6780 144.. nonce: cL2Owz 145.. section: Core and Builtins 146 147Limit free list of method and built-in function objects to 256 entries each. 148 149.. 150 151.. bpo: 1953 152.. date: 6779 153.. nonce: e_mPMK 154.. section: Core and Builtins 155 156Added ``sys._compact_freelists()`` and the C API functions 157``PyInt_CompactFreeList`` and ``PyFloat_CompactFreeList`` to compact the 158internal free lists of pre-allocted ints and floats. 159 160.. 161 162.. bpo: 1983 163.. date: 6778 164.. nonce: 8sFEOx 165.. section: Core and Builtins 166 167Fixed return type of fork(), fork1() and forkpty() calls. Python expected 168the return type int but the fork familie returns pi_t. 169 170.. 171 172.. bpo: 1678380 173.. date: 6777 174.. nonce: QDsVif 175.. section: Core and Builtins 176 177Fix a bug that identifies 0j and -0j when they appear in the same code unit. 178 179.. 180 181.. bpo: 2025 182.. date: 6776 183.. nonce: S9iuHk 184.. section: Core and Builtins 185 186Add tuple.count() and tuple.index() methods to comply with the 187collections.Sequence API. 188 189.. 190 191.. bpo: 1970 192.. date: 6775 193.. nonce: QefSF6 194.. section: Core and Builtins 195 196Speedup unicode whitespace and linebreak detection. (Patch by Antoine 197Pitrou.) 198 199.. 200 201.. bpo: 0 202.. date: 6774 203.. nonce: YYnDHc 204.. section: Core and Builtins 205 206Added ``PyType_ClearCache()`` and ``sys._clear_type_cache`` to clear the 207internal lookup cache for ref leak tests. 208 209.. 210 211.. bpo: 1473257 212.. date: 6773 213.. nonce: Z579K3 214.. section: Core and Builtins 215 216generator objects gain a gi_code attribute. This is the same object as the 217func_code attribute of the function that produced the generator. 218 219.. 220 221.. bpo: 1920 222.. date: 6772 223.. nonce: z8WX6L 224.. section: Core and Builtins 225 226"while 0" statements were completely removed by the compiler, even in the 227presence of an "else" clause, which is supposed to be run when the condition 228is false. Now the compiler correctly emits bytecode for the "else" suite. 229 230.. 231 232.. bpo: 0 233.. date: 6771 234.. nonce: VpT9Pm 235.. section: Core and Builtins 236 237A few crashers fixed: weakref_in_del.py (issue #1377858); 238loosing_dict_ref.py (issue #1303614, test67.py); borrowed_ref_[34].py (not 239in tracker). 240 241.. 242 243.. bpo: 1069410 244.. date: 6770 245.. nonce: GX0t-e 246.. section: Core and Builtins 247 248The "can't load dll" message box on Windows is suppressed while an extension 249is loaded by calling SetErrorMode in dynload_win.c. The error is still 250reported properly. 251 252.. 253 254.. bpo: 1915 255.. date: 6769 256.. nonce: MAhEEN 257.. section: Core and Builtins 258 259Python compiles with --enable-unicode=no again. However several extension 260methods and modules do not work without unicode support. 261 262.. 263 264.. bpo: 1882 265.. date: 6768 266.. nonce: -TxSag 267.. section: Core and Builtins 268 269when compiling code from a string, encoding cookies in the second line of 270code were not always recognized correctly. 271 272.. 273 274.. bpo: 1679 275.. date: 6767 276.. nonce: 48PPdV 277.. section: Core and Builtins 278 279"0x" was taken as a valid integer literal. 280 281.. 282 283.. bpo: 1865 284.. date: 6766 285.. nonce: wGzYDz 286.. section: Core and Builtins 287 288``bytes`` as an alias for ``str`` and b"" as an alias "" were added. 289 290.. 291 292.. bpo: 0 293.. date: 6765 294.. nonce: x2ieFr 295.. section: Core and Builtins 296 297sys.float_info / PyFloat_GetInfo: The floating point information object was 298converted from a dict to a specialized structseq object. 299 300.. 301 302.. bpo: 1816 303.. date: 6764 304.. nonce: YBjd5H 305.. section: Core and Builtins 306 307Added sys.flags structseq. It exposes the status of most command line 308arguments and PYTHON* environment variables. 309 310.. 311 312.. bpo: 0 313.. date: 6763 314.. nonce: wmc0sT 315.. section: Core and Builtins 316 317Objects/structseq.c: Implemented new structseq representation. The patch 318makes structseqs (e.g. the return value of os.stat) more readable. 319 320.. 321 322.. bpo: 1700288 323.. date: 6762 324.. nonce: lwJfDZ 325.. section: Core and Builtins 326 327added a type attribute cache that caches method accesses, resulting in 328speedups in heavily object-oriented code. 329 330.. 331 332.. bpo: 1776 333.. date: 6761 334.. nonce: JYdqH- 335.. section: Core and Builtins 336 337__import__() no longer accepts filenames on any platform. The first 338parameter to __import__() must be a valid module name. 339 340.. 341 342.. bpo: 1668 343.. date: 6760 344.. nonce: mZ5kSj 345.. section: Core and Builtins 346 347renamed THREADDEBUG envvar to PYTHONTHREADDEBUG. 348 349.. 350 351.. bpo: 602345 352.. date: 6759 353.. nonce: OOgFXY 354.. section: Core and Builtins 355 356Add -B command line option, PYTHONDONTWRITEBYTECODE envvar and 357sys.dont_write_bytecode attribute. All these can be set to forbid Python to 358attempt to write compiled bytecode files. 359 360.. 361 362.. bpo: 0 363.. date: 6758 364.. nonce: _7a_Ll 365.. section: Core and Builtins 366 367Improve some exception messages when Windows fails to load an extension 368module. Now we get for example '%1 is not a valid Win32 application' instead 369of 'error code 193'. 370 371.. 372 373.. bpo: 1481296 374.. date: 6757 375.. nonce: nRMqCX 376.. section: Core and Builtins 377 378Fixed long(float('nan')) != 0L. 379 380.. 381 382.. bpo: 1640 383.. date: 6756 384.. nonce: INvUrF 385.. section: Core and Builtins 386 387Added math.isinf(x), math.isnan(x) and math.copysign(x, y) functions. 388 389.. 390 391.. bpo: 1635 392.. date: 6755 393.. nonce: fiXSfN 394.. section: Core and Builtins 395 396Platform independent creation and representation of NaN and INF. 397float("nan"), float("inf") and float("-inf") now work on every platform with 398IEEE 754 semantics. 399 400.. 401 402.. bpo: 0 403.. date: 6754 404.. nonce: MNMsrF 405.. section: Core and Builtins 406 407Compiler now generates simpler and faster code for dictionary literals. The 408oparg for BUILD_MAP now indicates an estimated dictionary size. There is a 409new opcode, STORE_MAP, for adding entries to the dictionary. 410 411.. 412 413.. bpo: 1638 414.. date: 6753 415.. nonce: eg4t3m 416.. section: Core and Builtins 417 418%zd configure test fails on Linux. 419 420.. 421 422.. bpo: 1620 423.. date: 6752 424.. nonce: 9qBeVK 425.. section: Core and Builtins 426 427New property decorator syntax was modifying the decorator in place instead 428of creating a new decorator object. 429 430.. 431 432.. bpo: 1538 433.. date: 6751 434.. nonce: OkvKJR 435.. section: Core and Builtins 436 437Avoid copying string in split/rsplit if the split char is not found. 438 439.. 440 441.. bpo: 1553 442.. date: 6750 443.. nonce: FCgNDE 444.. section: Core and Builtins 445 446An erroneous __length_hint__ can make list() raise a SystemError. 447 448.. 449 450.. bpo: 0 451.. date: 6749 452.. nonce: zw_5PA 453.. section: Core and Builtins 454 455PEP 366: Allow explicit relative imports when executing modules inside 456packages with the -m switch via a new module level __package__ attribute. 457 458.. 459 460.. bpo: 1402 461.. date: 6748 462.. nonce: ZTegLQ 463.. section: Core and Builtins 464 465Fix a crash on exit, when another thread is still running, and if the 466deallocation of its frames somehow calls the PyGILState_Ensure() / 467PyGILState_Release() functions. 468 469.. 470 471.. bpo: 0 472.. date: 6747 473.. nonce: J3Bwhy 474.. section: Core and Builtins 475 476Expose the Py_Py3kWarningFlag as sys.py3kwarning. 477 478.. 479 480.. bpo: 1445 481.. date: 6746 482.. nonce: 6-yfkc 483.. section: Core and Builtins 484 485Fix a SystemError when accessing the ``cell_contents`` attribute of an empty 486cell object. 487 488.. 489 490.. bpo: 1460 491.. date: 6745 492.. nonce: y7TP5m 493.. section: Core and Builtins 494 495The utf-7 incremental decoder did not accept truncated input. It now 496correctly saves its state between chunks of data. 497 498.. 499 500.. bpo: 1739468 501.. date: 6744 502.. nonce: yM3B3r 503.. section: Core and Builtins 504 505Directories and zipfiles containing a __main__.py file can now be directly 506executed by passing their name to the interpreter. The directory/zipfile is 507automatically inserted as the first entry in sys.path. 508 509.. 510 511.. bpo: 1265 512.. date: 6743 513.. nonce: 4-IaJd 514.. section: Core and Builtins 515 516Fix a problem with sys.settrace, if the tracing function uses a generator 517expression when at the same time the executed code is closing a paused 518generator. 519 520.. 521 522.. bpo: 0 523.. date: 6742 524.. nonce: 7h4lCb 525.. section: Core and Builtins 526 527sets and frozensets now have an isdisjoint() method. 528 529.. 530 531.. bpo: 0 532.. date: 6741 533.. nonce: 1AoYAQ 534.. section: Core and Builtins 535 536optimize the performance of builtin.sum(). 537 538.. 539 540.. bpo: 0 541.. date: 6740 542.. nonce: FHJ_J8 543.. section: Core and Builtins 544 545Fix warnings found by the new version of the Coverity checker. 546 547.. 548 549.. bpo: 0 550.. date: 6739 551.. nonce: 6dncrc 552.. section: Core and Builtins 553 554The enumerate() built-in function is no longer bounded to sequences smaller 555than LONG_MAX. Formerly, it raised an OverflowError. Now, automatically 556shifts from ints to longs. 557 558.. 559 560.. bpo: 1686386 561.. date: 6738 562.. nonce: mFw2O5 563.. section: Core and Builtins 564 565Tuple's tp_repr did not take into account the possibility of having a 566self-referential tuple, which is possible from C code. Nor did object's tp_str 567consider that a type's tp_str could do something that could lead to an 568inifinite recursion. Py_ReprEnter() and Py_EnterRecursiveCall(), 569respectively, fixed the issues. 570 571.. 572 573.. bpo: 1164 574.. date: 6737 575.. nonce: uMHT40 576.. section: Core and Builtins 577 578It was possible to trigger deadlock when using the 'print' statement to 579write to a file since the GIL was not released as needed. Now 580PyObject_Print() does the right thing along with various tp_print 581implementations of the built-in types and those in the collections module. 582 583.. 584 585.. bpo: 1147 586.. date: 6736 587.. nonce: aoJ7OF 588.. section: Core and Builtins 589 590Exceptions were directly allowing string exceptions in their throw() method 591even though string exceptions no longer allowed. 592 593.. 594 595.. bpo: 1096 596.. date: 6735 597.. nonce: O7aCp5 598.. section: Core and Builtins 599 600Prevent a segfault from getting the repr of a very deeply nested list by 601using the recursion counter. 602 603.. 604 605.. bpo: 1202533 606.. date: 6734 607.. nonce: an8trG 608.. section: Core and Builtins 609 610Fix infinite recursion calls triggered by calls to PyObject_Call() never 611calling back out to Python code to trigger recursion depth updates/checks. 612Required the creation of a static RuntimeError instance in case normalizing 613an exception put the recursion check value past its limit. Fixes crashers 614infinite_rec_(1|2|4|5).py. 615 616.. 617 618.. bpo: 1031213 619.. date: 6733 620.. nonce: -pIcnp 621.. section: Core and Builtins 622 623Decode source line in SyntaxErrors back to its original source encoding. 624 625.. 626 627.. bpo: 1673759 628.. date: 6732 629.. nonce: BiojUu 630.. section: Core and Builtins 631 632add a missing overflow check when formatting floats with %G. 633 634.. 635 636.. bpo: 0 637.. date: 6731 638.. nonce: irpf7S 639.. section: Core and Builtins 640 641Prevent expandtabs() on string and unicode objects from causing a segfault 642when a large width is passed on 32-bit platforms. 643 644.. 645 646.. bpo: 1733488 647.. date: 6730 648.. nonce: tl7wNc 649.. section: Core and Builtins 650 651Fix compilation of bufferobject.c on AIX. 652 653.. 654 655.. bpo: 1722485 656.. date: 6729 657.. nonce: k6MqIQ 658.. section: Core and Builtins 659 660remove docstrings again when running with -OO. 661 662.. 663 664.. bpo: 0 665.. date: 6728 666.. nonce: 7Ddptw 667.. section: Core and Builtins 668 669Add new attribute names for function objects. All the func_* become __*__ 670attributes. (Some already existed, e.g., __doc__ and __name__.) 671 672.. 673 674.. bpo: 0 675.. date: 6727 676.. nonce: yXfECI 677.. section: Core and Builtins 678 679Add -3 option to the interpreter to warn about features that are deprecated 680and will be changed/removed in Python 3.0. 681 682.. 683 684.. bpo: 1686487 685.. date: 6726 686.. nonce: K8mtCR 687.. section: Core and Builtins 688 689you can now pass any mapping after '**' in function calls. 690 691.. 692 693.. bpo: 0 694.. date: 6725 695.. nonce: JKXn1u 696.. section: Core and Builtins 697 698except clauses may now be spelled either "except E, target:" or "except E as 699target:". This is to provide forwards compatibility with Python 3.0. 700 701.. 702 703.. bpo: 0 704.. date: 6724 705.. nonce: 8LZd6s 706.. section: Core and Builtins 707 708Deprecate BaseException.message as per PEP 352. 709 710.. 711 712.. bpo: 1303614 713.. date: 6723 714.. nonce: 4vwOmy 715.. section: Core and Builtins 716 717don't expose object's __dict__ when the dict is inherited from a built-in 718base. 719 720.. 721 722.. bpo: 0 723.. date: 6722 724.. nonce: VN88wa 725.. section: Core and Builtins 726 727When __slots__ are set to a unicode string, make it work the same as setting 728a plain string, ie don't expand to single letter identifiers. 729 730.. 731 732.. bpo: 1191699 733.. date: 6721 734.. nonce: V0UWcO 735.. section: Core and Builtins 736 737Slices can now be pickled. 738 739.. 740 741.. bpo: 1193128 742.. date: 6720 743.. nonce: hTWYjG 744.. section: Core and Builtins 745 746str.translate() now allows a None argument for translations that only remove 747characters without re-mapping the remaining characters. 748 749.. 750 751.. bpo: 1682205 752.. date: 6719 753.. nonce: Ma5xwn 754.. section: Core and Builtins 755 756a TypeError while unpacking an iterable is no longer masked by a generic one 757with the message "unpack non-sequence". 758 759.. 760 761.. bpo: 0 762.. date: 6718 763.. nonce: 3y4NCG 764.. section: Core and Builtins 765 766Remove unused file Python/fmod.c. 767 768.. 769 770.. bpo: 1683368 771.. date: 6717 772.. nonce: 4DybJV 773.. section: Core and Builtins 774 775The object.__init__() and object.__new__() methods are now stricter in 776rejecting excess arguments. The only time when either allows excess 777arguments is when it is not overridden and the other one is. For backwards 778compatibility, when both are overridden, it is a deprecation warning (for 779now; maybe a Py3k warning later). Also, type.__init__() insists on the same 780signature as supported by type.__new__(). 781 782.. 783 784.. bpo: 1675423 785.. date: 6716 786.. nonce: 1JoPlp 787.. section: Core and Builtins 788 789PyComplex_AsCComplex() now tries to convert an object to complex using its 790__complex__() method before falling back to the __float__() method. 791Therefore, the functions in the cmath module now can operate on objects that 792define a __complex__() method. 793 794.. 795 796.. bpo: 1623563 797.. date: 6715 798.. nonce: AMQ5t2 799.. section: Core and Builtins 800 801allow __class__ assignment for classes with __slots__. The old and the new 802class are still required to have the same slot names. 803 804.. 805 806.. bpo: 1642547 807.. date: 6714 808.. nonce: jkS5Ql 809.. section: Core and Builtins 810 811Fix an error/crash when encountering syntax errors in complex if statements. 812 813.. 814 815.. bpo: 1462488 816.. date: 6713 817.. nonce: Ci87cu 818.. section: Core and Builtins 819 820Python no longer segfaults when ``object.__reduce_ex__()`` is called with an 821object that is faking its type. 822 823.. 824 825.. bpo: 1680015 826.. date: 6712 827.. nonce: FS6aET 828.. section: Core and Builtins 829 830Don't modify __slots__ tuple if it contains a unicode name. 831 832.. 833 834.. bpo: 1444529 835.. date: 6711 836.. nonce: 69vMCk 837.. section: Core and Builtins 838 839the builtin compile() now accepts keyword arguments. 840 841.. 842 843.. bpo: 1678647 844.. date: 6710 845.. nonce: Ok4Qvk 846.. section: Core and Builtins 847 848write a newline after printing an exception in any case, even when 849converting the value to a string failed. 850 851.. 852 853.. bpo: 0 854.. date: 6709 855.. nonce: ec6gzH 856.. section: Core and Builtins 857 858The dir() function has been extended to call the __dir__() method on its 859argument, if it exists. If not, it will work like before. This allows 860customizing the output of dir() in the presence of a __getattr__(). 861 862.. 863 864.. bpo: 922167 865.. date: 6708 866.. nonce: gnPICc 867.. section: Core and Builtins 868 869Python no longer segfaults when faced with infinitely self-recursive 870reload() calls (as reported by bug #742342). 871 872.. 873 874.. bpo: 1675981 875.. date: 6707 876.. nonce: YDAUpa 877.. section: Core and Builtins 878 879remove unreachable code from ``type.__new__()`` method. 880 881.. 882 883.. bpo: 1491866 884.. date: 6706 885.. nonce: RNQumX 886.. section: Core and Builtins 887 888change the complex() constructor to allow parthensized forms. This means 889complex(repr(x)) now works instead of raising a ValueError. 890 891.. 892 893.. bpo: 703779 894.. date: 6705 895.. nonce: 609S2B 896.. section: Core and Builtins 897 898unset __file__ in __main__ after running a file. This makes the filenames 899the warning module prints much more sensible when a PYTHONSTARTUP file is 900used. 901 902.. 903 904.. bpo: 697613 905.. date: 6704 906.. nonce: bnztSz 907.. section: Core and Builtins 908 909Don't exit the interpreter on a SystemExit exception if the -i command line 910option or PYTHONINSPECT environment variable is given, but break into the 911interactive interpreter just like on other exceptions or normal program 912exit. 913 914.. 915 916.. bpo: 1638879 917.. date: 6703 918.. nonce: 25rW83 919.. section: Core and Builtins 920 921don't accept strings with embedded NUL bytes in long(). 922 923.. 924 925.. bpo: 1674503 926.. date: 6702 927.. nonce: k_dwnR 928.. section: Core and Builtins 929 930close the file opened by execfile() in an error condition. 931 932.. 933 934.. bpo: 1674228 935.. date: 6701 936.. nonce: 936l-6 937.. section: Core and Builtins 938 939when assigning a slice (old-style), check for the sq_ass_slice instead of 940the sq_slice slot. 941 942.. 943 944.. bpo: 0 945.. date: 6700 946.. nonce: 4R0u4H 947.. section: Core and Builtins 948 949When printing an unraisable error, don't print exceptions. before the name. 950This duplicates the behavior whening normally printing exceptions. 951 952.. 953 954.. bpo: 1653736 955.. date: 6699 956.. nonce: puX_f- 957.. section: Core and Builtins 958 959Properly discard third argument to slot_nb_inplace_power. 960 961.. 962 963.. bpo: 0 964.. date: 6698 965.. nonce: LM67G- 966.. section: Core and Builtins 967 968PEP 352: Raising a string exception now triggers a TypeError. Attempting to 969catch a string exception raises DeprecationWarning. 970 971.. 972 973.. bpo: 1377858 974.. date: 6697 975.. nonce: PoWq_L 976.. section: Core and Builtins 977 978Fix the segfaulting of the interpreter when an object created a weakref on 979itself during a __del__ call for new-style classes (classic classes still 980have the bug). 981 982.. 983 984.. bpo: 1579370 985.. date: 6696 986.. nonce: 0Jm29g 987.. section: Core and Builtins 988 989Make PyTraceBack_Here use the current thread, not the frame's thread state. 990 991.. 992 993.. bpo: 1630975 994.. date: 6695 995.. nonce: MoA2CT 996.. section: Core and Builtins 997 998Fix crash when replacing sys.stdout in sitecustomize.py. 999 1000.. 1001 1002.. bpo: 0 1003.. date: 6694 1004.. nonce: fKwD4u 1005.. section: Core and Builtins 1006 1007Prevent seg fault on shutdown which could occur if an object raised a 1008warning. 1009 1010.. 1011 1012.. bpo: 1566280 1013.. date: 6693 1014.. nonce: dDNq9b 1015.. section: Core and Builtins 1016 1017Explicitly invoke threading._shutdown from Py_Main, to avoid relying on 1018atexit. 1019 1020.. 1021 1022.. bpo: 1590891 1023.. date: 6692 1024.. nonce: VyFkXx 1025.. section: Core and Builtins 1026 1027random.randrange don't return correct value for big number. 1028 1029.. 1030 1031.. bpo: 1586791 1032.. date: 6691 1033.. nonce: xyEZ-z 1034.. section: Core and Builtins 1035 1036Better exception messages for some operations on strings, tuples and lists. 1037 1038.. 1039 1040.. bpo: 1067760 1041.. date: 6690 1042.. nonce: HtgVCb 1043.. section: Core and Builtins 1044 1045Deprecate passing floats to file.seek. 1046 1047.. 1048 1049.. bpo: 1591996 1050.. date: 6689 1051.. nonce: j1ATtE 1052.. section: Core and Builtins 1053 1054Correctly forward exception in instance_contains(). 1055 1056.. 1057 1058.. bpo: 1588287 1059.. date: 6688 1060.. nonce: Mux8Eb 1061.. section: Core and Builtins 1062 1063fix invalid assertion for `1,2` in debug builds. 1064 1065.. 1066 1067.. bpo: 1576657 1068.. date: 6687 1069.. nonce: JfJVvT 1070.. section: Core and Builtins 1071 1072when setting a KeyError for a tuple key, make sure that the tuple isn't used 1073as the "exception arguments tuple". 1074 1075.. 1076 1077.. bpo: 1565514 1078.. date: 6686 1079.. nonce: 3kM2zk 1080.. section: Core and Builtins 1081 1082SystemError not raised on too many nested blocks. 1083 1084.. 1085 1086.. bpo: 1576174 1087.. date: 6685 1088.. nonce: Ks0OoN 1089.. section: Core and Builtins 1090 1091WindowsError now displays the windows error code again, no longer the posix 1092error code. 1093 1094.. 1095 1096.. bpo: 1549049 1097.. date: 6684 1098.. nonce: ufVmC9 1099.. section: Core and Builtins 1100 1101Support long values in structmember, issue warnings if the assigned value 1102for structmember fields gets truncated. 1103 1104.. 1105 1106.. bpo: 0 1107.. date: 6683 1108.. nonce: v9ZHkl 1109.. section: Core and Builtins 1110 1111Update the peephole optimizer to remove more dead code (jumps after returns) 1112and inline unconditional jumps to returns. 1113 1114.. 1115 1116.. bpo: 1545497 1117.. date: 6682 1118.. nonce: 0YntFv 1119.. section: Core and Builtins 1120 1121when given an explicit base, int() did ignore NULs embedded in the string to 1122convert. 1123 1124.. 1125 1126.. bpo: 1569998 1127.. date: 6681 1128.. nonce: mqCYRs 1129.. section: Core and Builtins 1130 1131break inside a try statement (outside a loop) is now recognized and 1132rejected. 1133 1134.. 1135 1136.. bpo: 0 1137.. date: 6680 1138.. nonce: MdIC85 1139.. section: Core and Builtins 1140 1141list.pop(x) accepts any object x following the __index__ protocol. 1142 1143.. 1144 1145.. bpo: 0 1146.. date: 6679 1147.. nonce: nWa36P 1148.. section: Core and Builtins 1149 1150A number of places, including integer negation and absolute value, were 1151fixed to not rely on undefined behaviour of the C compiler anymore. 1152 1153.. 1154 1155.. bpo: 1566800 1156.. date: 6678 1157.. nonce: 46JUvD 1158.. section: Core and Builtins 1159 1160make sure that EnvironmentError can be called with any number of arguments, 1161as was the case in Python 2.4. 1162 1163.. 1164 1165.. bpo: 1567691 1166.. date: 6677 1167.. nonce: rDDApW 1168.. section: Core and Builtins 1169 1170super() and new.instancemethod() now don't accept keyword arguments any more 1171(previously they accepted them, but didn't use them). 1172 1173.. 1174 1175.. bpo: 0 1176.. date: 6676 1177.. nonce: FEPr2V 1178.. section: Core and Builtins 1179 1180Fix a bug in the parser's future statement handling that led to "with" not 1181being recognized as a keyword after, e.g., this statement: from __future__ 1182import division, with_statement 1183 1184.. 1185 1186.. bpo: 1557232 1187.. date: 6675 1188.. nonce: 2eVXVS 1189.. section: Core and Builtins 1190 1191fix seg fault with def f((((x)))) and def f(((x),)). 1192 1193.. 1194 1195.. bpo: 0 1196.. date: 6674 1197.. nonce: aEwDvG 1198.. section: Core and Builtins 1199 1200Fix %zd string formatting on Mac OS X so it prints negative numbers. 1201 1202.. 1203 1204.. bpo: 0 1205.. date: 6673 1206.. nonce: _XQgGS 1207.. section: Core and Builtins 1208 1209Allow exception instances to be directly sliced again. 1210 1211.. 1212 1213.. bpo: 1551432 1214.. date: 6672 1215.. nonce: 4Fco_l 1216.. section: Core and Builtins 1217 1218Exceptions do not define an explicit __unicode__ method. This allows 1219calling unicode() on exceptions classes directly to succeed. 1220 1221.. 1222 1223.. bpo: 1542051 1224.. date: 6671 1225.. nonce: lVPfnC 1226.. section: Core and Builtins 1227 1228Exceptions now correctly call PyObject_GC_UnTrack. Also make sure that every 1229exception class has __module__ set to 'exceptions'. 1230 1231.. 1232 1233.. bpo: 1550983 1234.. date: 6670 1235.. nonce: cUpUA- 1236.. section: Core and Builtins 1237 1238emit better error messages for erroneous relative imports (if not in package 1239and if beyond toplevel package). 1240 1241.. 1242 1243.. bpo: 0 1244.. date: 6669 1245.. nonce: _4DitC 1246.. section: Core and Builtins 1247 1248Overflow checking code in integer division ran afoul of new gcc 1249optimizations. Changed to be more standard-conforming. 1250 1251.. 1252 1253.. bpo: 1542451 1254.. date: 6668 1255.. nonce: 2iFYEe 1256.. section: Core and Builtins 1257 1258disallow continue anywhere under a finally. 1259 1260.. 1261 1262.. bpo: 1546288 1263.. date: 6667 1264.. nonce: IBkaPv 1265.. section: Core and Builtins 1266 1267fix seg fault in dict_equal due to ref counting bug. 1268 1269.. 1270 1271.. bpo: 0 1272.. date: 6666 1273.. nonce: kNIYss 1274.. section: Core and Builtins 1275 1276The return tuple from str.rpartition(sep) is (tail, sep, head) where head is 1277the original string if sep was not found. 1278 1279.. 1280 1281.. bpo: 1520864 1282.. date: 6665 1283.. nonce: G6F34n 1284.. section: Core and Builtins 1285 1286unpacking singleton tuples in list comprehensions and generator expressions 1287(x for x, in ... ) works again. Fixing this problem required changing the 1288.pyc magic number. This means that .pyc files generated before 2.5c2 will 1289be regenerated. 1290 1291.. 1292 1293.. bpo: 0 1294.. date: 6664 1295.. nonce: R3bZAP 1296.. section: Core and Builtins 1297 1298``with`` and ``as`` are now keywords. 1299 1300.. 1301 1302.. bpo: 1664966 1303.. date: 6663 1304.. nonce: wU2avG 1305.. section: Core and Builtins 1306 1307Fix crash in exec if Unicode filename can't be decoded. 1308 1309.. 1310 1311.. bpo: 1537 1312.. date: 6662 1313.. nonce: Qt9CQA 1314.. section: Core and Builtins 1315 1316Changed GeneratorExit's base class from Exception to BaseException. 1317 1318.. 1319 1320.. bpo: 1703448 1321.. date: 6661 1322.. nonce: dAcXJT 1323.. section: Core and Builtins 1324 1325A joined thread could show up in the threading.enumerate() list after the 1326join() for a brief period until it actually exited. 1327 1328.. 1329 1330.. bpo: 2274 1331.. date: 6660 1332.. nonce: COHFzM 1333.. section: Library 1334 1335Add heapq.heappushpop(). 1336 1337.. 1338 1339.. bpo: 0 1340.. date: 6659 1341.. nonce: fQAzb9 1342.. section: Library 1343 1344Add inspect.isabstract(object) to fix bug #2223 1345 1346.. 1347 1348.. bpo: 0 1349.. date: 6658 1350.. nonce: JXuX8j 1351.. section: Library 1352 1353Add a __format__ method to Decimal, to support PEP 3101. 1354 1355.. 1356 1357.. bpo: 0 1358.. date: 6657 1359.. nonce: ofhiG1 1360.. section: Library 1361 1362Add a timing parameter when using trace.Trace to print out timestamps. 1363 1364.. 1365 1366.. bpo: 1627 1367.. date: 6656 1368.. nonce: -5gXNT 1369.. section: Library 1370 1371httplib now ignores negative Content-Length headers. 1372 1373.. 1374 1375.. bpo: 900744 1376.. date: 6655 1377.. nonce: s5RLjb 1378.. section: Library 1379 1380If an invalid chunked-encoding header is sent by a server, httplib will now 1381raise IncompleteRead and close the connection instead of raising ValueError. 1382 1383.. 1384 1385.. bpo: 1492 1386.. date: 6654 1387.. nonce: 4bp5zb 1388.. section: Library 1389 1390The content type of BaseHTTPServer error messages can now be overridden. 1391 1392.. 1393 1394.. bpo: 1781 1395.. date: 6653 1396.. nonce: m_snIp 1397.. section: Library 1398 1399ConfigParser now does not let you add the "default" section (ignore-case) 1400 1401.. 1402 1403.. bpo: 0 1404.. date: 6652 1405.. nonce: a5mTI6 1406.. section: Library 1407 1408Removed uses of dict.has_key() from distutils, and uses of callable() from 1409copy_reg.py, so the interpreter now starts up without warnings when '-3' is 1410given. More work like this needs to be done in the rest of the stdlib. 1411 1412.. 1413 1414.. bpo: 1916 1415.. date: 6651 1416.. nonce: w1JiGM 1417.. section: Library 1418 1419added isgenerator() and isgeneratorfunction() to inspect.py. 1420 1421.. 1422 1423.. bpo: 1224 1424.. date: 6650 1425.. nonce: UN2SxX 1426.. section: Library 1427 1428Fixed bad url parsing when path begins with double slash. 1429 1430.. 1431 1432.. bpo: 0 1433.. date: 6649 1434.. nonce: T9Y4k2 1435.. section: Library 1436 1437ctypes instances that are not or do not contain pointers can now be pickled. 1438 1439.. 1440 1441.. bpo: 1966 1442.. date: 6648 1443.. nonce: 8viueu 1444.. section: Library 1445 1446Break infinite loop in httplib when the servers implements the chunked 1447encoding incorrectly. 1448 1449.. 1450 1451.. bpo: 0 1452.. date: 6647 1453.. nonce: p6a6jJ 1454.. section: Library 1455 1456Rename rational.py to fractions.py and the rational.Rational class to 1457fractions.Fraction, to avoid the name clash with the abstract base class 1458numbers.Rational. See discussion in issue #1682. 1459 1460.. 1461 1462.. bpo: 0 1463.. date: 6646 1464.. nonce: KqfmO5 1465.. section: Library 1466 1467The pickletools module now provides an optimize() function that eliminates 1468unused PUT opcodes from a pickle string. 1469 1470.. 1471 1472.. bpo: 2021 1473.. date: 6645 1474.. nonce: jhrI3F 1475.. section: Library 1476 1477Allow tempfile.NamedTemporaryFile and SpooledTemporaryFile to be used in 1478with statements by correctly supporting the context management protocol. 1479 1480.. 1481 1482.. bpo: 1979 1483.. date: 6644 1484.. nonce: Ji_oHm 1485.. section: Library 1486 1487Add rich comparisons to Decimal, and make Decimal comparisons involving a 1488NaN follow the IEEE 754 standard. 1489 1490.. 1491 1492.. bpo: 2004 1493.. date: 6643 1494.. nonce: JJ0sxf 1495.. section: Library 1496 1497tarfile.py: Use mode 0700 for temporary directories and default permissions 1498for missing directories. 1499 1500.. 1501 1502.. bpo: 175006 1503.. date: 6642 1504.. nonce: 1yQpV- 1505.. section: Library 1506 1507The debugger used to skip the condition of a "while" statement after the 1508first iteration. Now it correctly steps on the expression, and breakpoints 1509on the "while" statement are honored on each loop. 1510 1511.. 1512 1513.. bpo: 1765140 1514.. date: 6641 1515.. nonce: 9htIhK 1516.. section: Library 1517 1518add an optional delay argument to FileHandler and its subclasses. Defaults 1519to false (existing behaviour), but if true, defers opening the file until 1520the first call to emit(). 1521 1522.. 1523 1524.. bpo: 0 1525.. date: 6640 1526.. nonce: kWAgVm 1527.. section: Library 1528 1529The pprint module now supports sets and frozensets. 1530 1531.. 1532 1533.. bpo: 1221598 1534.. date: 6639 1535.. nonce: Tv3Q8D 1536.. section: Library 1537 1538add optional callbacks to ftplib.FTP's storbinary() and storlines() methods. 1539(Contributed by Phil Schwartz) 1540 1541.. 1542 1543.. bpo: 1715 1544.. date: 6638 1545.. nonce: JieRLT 1546.. section: Library 1547 1548include sub-extension modules in pydoc's text output. 1549 1550.. 1551 1552.. bpo: 1836 1553.. date: 6637 1554.. nonce: dvWiAW 1555.. section: Library 1556 1557fix an off-by-one bug in TimedRotatingHandler's rollover time calculation. 1558 1559.. 1560 1561.. bpo: 1021 1562.. date: 6636 1563.. nonce: oJ2Efg 1564.. section: Library 1565 1566fix a bug to allow basicConfig to accept NOTSET as a level. 1567 1568.. 1569 1570.. bpo: 932563 1571.. date: 6635 1572.. nonce: KzDj52 1573.. section: Library 1574 1575add LoggerAdapter convenience class to make it easier to add contextual 1576information in logging output. 1577 1578.. 1579 1580.. bpo: 1760556 1581.. date: 6634 1582.. nonce: TJk_Du 1583.. section: Library 1584 1585fix a bug to avoid FileHandler throwing an exception in flush(). 1586 1587.. 1588 1589.. bpo: 1530959 1590.. date: 6633 1591.. nonce: FpNHxq 1592.. section: Library 1593 1594distutils' build command now uses different build directory when building 1595extension modules against versions of Python compiled with 1596``--with-pydebug``. 1597 1598.. 1599 1600.. bpo: 1555501 1601.. date: 6632 1602.. nonce: ZWMYzK 1603.. section: Library 1604 1605move plistlib from plat-mac directory to general library. 1606 1607.. 1608 1609.. bpo: 1269 1610.. date: 6631 1611.. nonce: mXhB8y 1612.. section: Library 1613 1614fix a bug in pstats.add_callers() and add a unit test file for pstats. 1615 1616.. 1617 1618.. bpo: 1669 1619.. date: 6630 1620.. nonce: wYb4kk 1621.. section: Library 1622 1623don't allow shutil.rmtree() to be called on a symlink to a directory. 1624 1625.. 1626 1627.. bpo: 1664522 1628.. date: 6629 1629.. nonce: iKq42P 1630.. section: Library 1631 1632in urllib, don't read non-existing directories in ftp mode, returning a 16330-byte file -- raise an IOError instead. 1634 1635.. 1636 1637.. bpo: 856047 1638.. date: 6628 1639.. nonce: u8LcMz 1640.. section: Library 1641 1642respect the ``no_proxy`` environment variable when using the ``http_proxy`` 1643etc. environment variables in urllib. 1644 1645.. 1646 1647.. bpo: 1178141 1648.. date: 6627 1649.. nonce: kOvNOH 1650.. section: Library 1651 1652add a getcode() method to the addinfourls that urllib.open() returns so that 1653you can retrieve the HTTP status code. 1654 1655.. 1656 1657.. bpo: 1003 1658.. date: 6626 1659.. nonce: WwyOlb 1660.. section: Library 1661 1662Fix zipfile decryption check, it would fail zip files with extended local 1663headers. 1664 1665.. 1666 1667.. bpo: 1189216 1668.. date: 6625 1669.. nonce: ux7ujo 1670.. section: Library 1671 1672Fix the zipfile module to work on archives with headers past the 2**31 byte 1673boundary. 1674 1675.. 1676 1677.. bpo: 1336 1678.. date: 6624 1679.. nonce: r4ZdAS 1680.. section: Library 1681 1682fix a race condition in subprocess.Popen if the garbage collector kicked in 1683at the wrong time that would cause the process to hang when the child wrote 1684to stderr. 1685 1686.. 1687 1688.. bpo: 1146 1689.. date: 6623 1690.. nonce: 3Fg8Y4 1691.. section: Library 1692 1693fix how textwrap breaks a long word that would start in the last column of a 1694line. 1695 1696.. 1697 1698.. bpo: 1693149 1699.. date: 6622 1700.. nonce: UDBT5O 1701.. section: Library 1702 1703trace.py --ignore-module - accept multiple comma-separated modules to be 1704given. 1705 1706.. 1707 1708.. bpo: 1822 1709.. date: 6621 1710.. nonce: p-ABc6 1711.. section: Library 1712 1713MIMEMultipart.is_multipart() behaves correctly for a just-created (and 1714empty) instance. Thanks Jonathan Share. 1715 1716.. 1717 1718.. bpo: 1861 1719.. date: 6620 1720.. nonce: YK39Pw 1721.. section: Library 1722 1723Added an attribute to the sched module which returns an ordered list of 1724upcoming events (displayed as named tuples). 1725 1726.. 1727 1728.. bpo: 1837 1729.. date: 6619 1730.. nonce: ltZfCW 1731.. section: Library 1732 1733The queue module now also supports a LIFO queue and a priority queue. 1734 1735.. 1736 1737.. bpo: 1048820 1738.. date: 6618 1739.. nonce: hKddPS 1740.. section: Library 1741 1742Add insert-mode editing to curses.textpad.Textbox (patch by Stefan Wehr). 1743Also, fix an off-by-one bug in Textbox.gather(). 1744 1745.. 1746 1747.. bpo: 1831 1748.. date: 6617 1749.. nonce: nEy8wq 1750.. section: Library 1751 1752ctypes now raises a TypeError if conflicting positional and named arguments 1753are passed to a Structure or Union initializer. When too many positional 1754arguments are passed, also a TypeError is raised instead of a ValueError. 1755 1756.. 1757 1758.. bpo: 0 1759.. date: 6616 1760.. nonce: 2_XlvX 1761.. section: Library 1762 1763Convert the internal ctypes array type cache to a WeakValueDict so that 1764array types do not live longer than needed. 1765 1766.. 1767 1768.. bpo: 1786 1769.. date: 6615 1770.. nonce: glzSfE 1771.. section: Library 1772 1773pdb should use its own stdin/stdout around an exec call and when creating a 1774recursive instance. 1775 1776.. 1777 1778.. bpo: 1698398 1779.. date: 6614 1780.. nonce: yxfh1R 1781.. section: Library 1782 1783ZipFile.printdir() crashed because the format string expected a tuple type 1784of length six instead of time.struct_time object. 1785 1786.. 1787 1788.. bpo: 1780 1789.. date: 6613 1790.. nonce: PEqfgx 1791.. section: Library 1792 1793The Decimal constructor now accepts arbitrary leading and trailing 1794whitespace when constructing from a string. Context.create_decimal no longer 1795accepts trailing newlines. 1796 1797.. 1798 1799.. bpo: 0 1800.. date: 6612 1801.. nonce: e5MNna 1802.. section: Library 1803 1804Decimal.as_tuple(), difflib.find_longest_match() and inspect functions that 1805returned a tuple now return a named tuple. 1806 1807.. 1808 1809.. bpo: 0 1810.. date: 6611 1811.. nonce: r8_kX- 1812.. section: Library 1813 1814Doctest now returns results as a named tuple for readability: (0, 7) --> 1815TestResults(failed=0, attempted=7) 1816 1817.. 1818 1819.. bpo: 846388 1820.. date: 6610 1821.. nonce: h2AmOT 1822.. section: Library 1823 1824re.match is interruptible now, which is particularly good for long regular 1825expression matches. 1826 1827.. 1828 1829.. bpo: 1137 1830.. date: 6609 1831.. nonce: USs2NO 1832.. section: Library 1833 1834allow setting buffer_size attribute on pyexpat Parser objects to set the 1835character data buffer size. 1836 1837.. 1838 1839.. bpo: 1757 1840.. date: 6608 1841.. nonce: ZXonpG 1842.. section: Library 1843 1844The hash of a Decimal instance is no longer affected by the current context. 1845 1846.. 1847 1848.. bpo: 467924 1849.. date: 6607 1850.. nonce: VqzBRz 1851.. section: Library 1852 1853add ZipFile.extract() and ZipFile.extractall() in the zipfile module. 1854 1855.. 1856 1857.. bpo: 1646 1858.. date: 6606 1859.. nonce: 0Shvv6 1860.. section: Library 1861 1862Make socket support the TIPC protocol. 1863 1864.. 1865 1866.. bpo: 1742 1867.. date: 6605 1868.. nonce: vdh5mh 1869.. section: Library 1870 1871return os.curdir from os.path.relpath() if both arguments are equal instead 1872of raising an exception. 1873 1874.. 1875 1876.. bpo: 1637 1877.. date: 6604 1878.. nonce: 9ck-BF 1879.. section: Library 1880 1881fix urlparse for URLs like 'http://x.com?arg=/foo'. 1882 1883.. 1884 1885.. bpo: 1698 1886.. date: 6603 1887.. nonce: KTC0EP 1888.. section: Library 1889 1890allow '@' in username parsed by urlparse.py. 1891 1892.. 1893 1894.. bpo: 1735 1895.. date: 6602 1896.. nonce: Xgf-_n 1897.. section: Library 1898 1899TarFile.extractall() now correctly sets directory permissions and times. 1900 1901.. 1902 1903.. bpo: 1713 1904.. date: 6601 1905.. nonce: SO4g7K 1906.. section: Library 1907 1908posixpath.ismount() claims symlink to a mountpoint is a mountpoint. 1909 1910.. 1911 1912.. bpo: 1687 1913.. date: 6600 1914.. nonce: qmmQ39 1915.. section: Library 1916 1917Fxed plistlib.py restricts <integer> to Python int when writing 1918 1919.. 1920 1921.. bpo: 1700 1922.. date: 6599 1923.. nonce: u0StFP 1924.. section: Library 1925 1926Regular expression inline flags incorrectly handle certain unicode 1927characters. 1928 1929.. 1930 1931.. bpo: 1689 1932.. date: 6598 1933.. nonce: dx0XAO 1934.. section: Library 1935 1936PEP 3141, numeric abstract base classes. 1937 1938.. 1939 1940.. bpo: 0 1941.. date: 6597 1942.. nonce: BOT6AN 1943.. section: Library 1944 1945Tk issue #1851526: Return results from Python callbacks to Tcl as Tcl 1946objects. 1947 1948.. 1949 1950.. bpo: 1642 1951.. date: 6596 1952.. nonce: doGg1I 1953.. section: Library 1954 1955Fix segfault in ctypes when trying to delete attributes. 1956 1957.. 1958 1959.. bpo: 1727780 1960.. date: 6595 1961.. nonce: X0UJbf 1962.. section: Library 1963 1964Support loading pickles of random.Random objects created on 32-bit systems 1965on 64-bit systems, and vice versa. As a consequence of the change, Random 1966pickles created by Python 2.6 cannot be loaded in Python 2.5. 1967 1968.. 1969 1970.. bpo: 1455 1971.. date: 6594 1972.. nonce: qerPO1 1973.. section: Library 1974 1975The distutils package now supports VS 2005 and VS 2008 for both the 1976msvccompiler and cygwincompiler. 1977 1978.. 1979 1980.. bpo: 1531 1981.. date: 6593 1982.. nonce: hM8cSV 1983.. section: Library 1984 1985tarfile.py: Read fileobj from the current offset, do not seek to the start. 1986 1987.. 1988 1989.. bpo: 1534 1990.. date: 6592 1991.. nonce: 2S_yfp 1992.. section: Library 1993 1994Added a dictionary sys.float_info with information about the internal 1995floating point type to the sys module. 1996 1997.. 1998 1999.. bpo: 1429818 2000.. date: 6591 2001.. nonce: f7q9_- 2002.. section: Library 2003 2004patch for trace and doctest modules so they play nicely together. 2005 2006.. 2007 2008.. bpo: 0 2009.. date: 6590 2010.. nonce: ydUJ45 2011.. section: Library 2012 2013doctest made a bad assumption that a package's __loader__.get_data() method 2014used universal newlines. 2015 2016.. 2017 2018.. bpo: 1705170 2019.. date: 6589 2020.. nonce: 0iNdat 2021.. section: Library 2022 2023contextlib.contextmanager was still swallowing StopIteration in some cases. 2024This should no longer happen. 2025 2026.. 2027 2028.. bpo: 1292 2029.. date: 6588 2030.. nonce: kW3YuR 2031.. section: Library 2032 2033On alpha, arm, ppc, and s390 linux systems the --with-system-ffi configure 2034option defaults to "yes". 2035 2036.. 2037 2038.. bpo: 0 2039.. date: 6587 2040.. nonce: nGUzBY 2041.. section: Library 2042 2043IN module for FreeBSD 8 is added and preexisting FreeBSD 6 and 7 files are 2044updated. 2045 2046.. 2047 2048.. bpo: 1181 2049.. date: 6586 2050.. nonce: -eJDB_ 2051.. section: Library 2052 2053unsetenv() is now called when the os.environ.pop() and os.environ.clear() 2054methods are used. (See also: bpo-1287) 2055 2056.. 2057 2058.. bpo: 0 2059.. date: 6585 2060.. nonce: 76qRj0 2061.. section: Library 2062 2063ctypes will now work correctly on 32-bit systems when Python is configured 2064with --with-system-ffi. 2065 2066.. 2067 2068.. bpo: 1203 2069.. date: 6584 2070.. nonce: MPohFL 2071.. section: Library 2072 2073ctypes now does work on OS X when Python is built with 2074``--disable-toolbox-glue``. 2075 2076.. 2077 2078.. bpo: 0 2079.. date: 6583 2080.. nonce: 4gk9jK 2081.. section: Library 2082 2083collections.deque() now supports a "maxlen" argument. 2084 2085.. 2086 2087.. bpo: 0 2088.. date: 6582 2089.. nonce: KEzbqu 2090.. section: Library 2091 2092itertools.count() is no longer bounded to LONG_MAX. Formerly, it raised an 2093OverflowError. Now, automatically shifts from ints to longs. 2094 2095.. 2096 2097.. bpo: 0 2098.. date: 6581 2099.. nonce: 8OaKab 2100.. section: Library 2101 2102Added itertools.product() which forms the Cartesian product of the input 2103iterables. 2104 2105.. 2106 2107.. bpo: 0 2108.. date: 6580 2109.. nonce: w2hxqg 2110.. section: Library 2111 2112Added itertools.combinations() and itertools.permutations(). 2113 2114.. 2115 2116.. bpo: 1541463 2117.. date: 6579 2118.. nonce: xGnI_Z 2119.. section: Library 2120 2121optimize performance of cgi.FieldStorage operations. 2122 2123.. 2124 2125.. bpo: 0 2126.. date: 6578 2127.. nonce: oJ3eSC 2128.. section: Library 2129 2130Decimal is fully updated to the latest Decimal Specification (v1.66). 2131 2132.. 2133 2134.. bpo: 1153 2135.. date: 6577 2136.. nonce: oxsMZ- 2137.. section: Library 2138 2139repr.repr() now doesn't require set and dictionary items to be orderable to 2140properly represent them. 2141 2142.. 2143 2144.. bpo: 0 2145.. date: 6576 2146.. nonce: 3NxHdM 2147.. section: Library 2148 2149A 'c_longdouble' type was added to the ctypes module. 2150 2151.. 2152 2153.. bpo: 1709599 2154.. date: 6575 2155.. nonce: ZInQo1 2156.. section: Library 2157 2158Run test_1565150 only if the file system is NTFS. 2159 2160.. 2161 2162.. bpo: 0 2163.. date: 6574 2164.. nonce: dXPH7w 2165.. section: Library 2166 2167When encountering a password-protected robots.txt file the RobotFileParser 2168no longer prompts interactively for a username and password (bug 813986). 2169 2170.. 2171 2172.. bpo: 0 2173.. date: 6573 2174.. nonce: -jXdBx 2175.. section: Library 2176 2177TarFile.__init__() no longer fails if no name argument is passed and the 2178fileobj argument has no usable name attribute (e.g. StringIO). 2179 2180.. 2181 2182.. bpo: 0 2183.. date: 6572 2184.. nonce: OzvBf4 2185.. section: Library 2186 2187The functools module now provides 'reduce', for forward compatibility with 2188Python 3000. 2189 2190.. 2191 2192.. bpo: 0 2193.. date: 6571 2194.. nonce: NBttxY 2195.. section: Library 2196 2197Server-side SSL support and cert verification added, by Bill Janssen. 2198 2199.. 2200 2201.. bpo: 0 2202.. date: 6570 2203.. nonce: fKSKr7 2204.. section: Library 2205 2206socket.ssl deprecated; use new ssl module instead. 2207 2208.. 2209 2210.. bpo: 0 2211.. date: 6569 2212.. nonce: z663Ql 2213.. section: Library 2214 2215uuid creation is now threadsafe. 2216 2217.. 2218 2219.. bpo: 0 2220.. date: 6568 2221.. nonce: NGc_vS 2222.. section: Library 2223 2224EUC-KR codec now handles the cheot-ga-keut composed make-up hangul 2225syllables. 2226 2227.. 2228 2229.. bpo: 0 2230.. date: 6567 2231.. nonce: abpzUy 2232.. section: Library 2233 2234GB18030 codec now can encode additional two-byte characters that are missing 2235in GBK. 2236 2237.. 2238 2239.. bpo: 0 2240.. date: 6566 2241.. nonce: hoSWQ5 2242.. section: Library 2243 2244Add new codecs for UTF-32, UTF-32-LE and UTF-32-BE. 2245 2246.. 2247 2248.. bpo: 1704793 2249.. date: 6565 2250.. nonce: o6G2FY 2251.. section: Library 2252 2253Return UTF-16 pair if unicodedata.lookup cannot represent the result in a 2254single character. 2255 2256.. 2257 2258.. bpo: 978833 2259.. date: 6564 2260.. nonce: nosP-g 2261.. section: Library 2262 2263Close https sockets by releasing the _ssl object. 2264 2265.. 2266 2267.. bpo: 0 2268.. date: 6563 2269.. nonce: Ha8_ga 2270.. section: Library 2271 2272Change location of the package index to pypi.python.org/pypi 2273 2274.. 2275 2276.. bpo: 1701409 2277.. date: 6562 2278.. nonce: x3Qs1t 2279.. section: Library 2280 2281Fix a segfault in printing ctypes.c_char_p and ctypes.c_wchar_p when they 2282point to an invalid location. As a sideeffect the representation of these 2283instances has changed. 2284 2285.. 2286 2287.. bpo: 0 2288.. date: 6561 2289.. nonce: QHd-OV 2290.. section: Library 2291 2292tarfile.py: Added "exclude" keyword argument to TarFile.add(). 2293 2294.. 2295 2296.. bpo: 1734723 2297.. date: 6560 2298.. nonce: zfdFr7 2299.. section: Library 2300 2301Fix repr.Repr() so it doesn't ignore the maxtuple attribute. 2302 2303.. 2304 2305.. bpo: 0 2306.. date: 6559 2307.. nonce: A7KLfz 2308.. section: Library 2309 2310The urlopen function of urllib2 now has an optional timeout parameter (note 2311that it actually works with HTTP, HTTPS, FTP and FTPS connections). 2312 2313.. 2314 2315.. bpo: 0 2316.. date: 6558 2317.. nonce: mMxho- 2318.. section: Library 2319 2320In ftplib, the FTP.ntransfercmd method, when in passive mode, now uses the 2321socket.create_connection function, using the timeout specified at connection 2322time. 2323 2324.. 2325 2326.. bpo: 1728403 2327.. date: 6557 2328.. nonce: SusWve 2329.. section: Library 2330 2331Fix a bug that CJKCodecs StreamReader hangs when it reads a file that ends 2332with incomplete sequence and sizehint argument for .read() is specified. 2333 2334.. 2335 2336.. bpo: 1730389 2337.. date: 6556 2338.. nonce: WVvA-8 2339.. section: Library 2340 2341Change time.strptime() to use ``\s+`` instead of ``\s*`` when matching 2342spaces in the specified format argument. 2343 2344.. 2345 2346.. bpo: 1668596 2347.. date: 6555 2348.. nonce: 5l2Qnk 2349.. section: Library 2350 2351distutils now copies data files even if package_dir is empty. (See also: 2352bpo-1720897) 2353 2354.. 2355 2356.. bpo: 0 2357.. date: 6554 2358.. nonce: jWDgV4 2359.. section: Library 2360 2361sha now raises a DeprecationWarning upon import. 2362 2363.. 2364 2365.. bpo: 0 2366.. date: 6553 2367.. nonce: fepG9O 2368.. section: Library 2369 2370md5 now raises a DeprecationWarning upon import. 2371 2372.. 2373 2374.. bpo: 1385 2375.. date: 6552 2376.. nonce: pms34F 2377.. section: Library 2378 2379The hmac module now computes the correct hmac when using hashes with a block 2380size other than 64 bytes (such as sha384 and sha512). 2381 2382.. 2383 2384.. bpo: 0 2385.. date: 6551 2386.. nonce: soFpEB 2387.. section: Library 2388 2389mimify now raises a DeprecationWarning upon import. 2390 2391.. 2392 2393.. bpo: 0 2394.. date: 6550 2395.. nonce: eSD3F7 2396.. section: Library 2397 2398MimeWriter now raises a DeprecationWarning upon import. 2399 2400.. 2401 2402.. bpo: 0 2403.. date: 6549 2404.. nonce: CQZoRW 2405.. section: Library 2406 2407tarfile.py: Improved unicode support. Unicode input names are now officially 2408supported. Added "errors" argument to the TarFile class. 2409 2410.. 2411 2412.. bpo: 0 2413.. date: 6548 2414.. nonce: NLgbaM 2415.. section: Library 2416 2417urllib.ftpwrapper class now accepts an optional timeout. 2418 2419.. 2420 2421.. bpo: 0 2422.. date: 6547 2423.. nonce: aRmxLC 2424.. section: Library 2425 2426shlex.split() now has an optional "posix" parameter. 2427 2428.. 2429 2430.. bpo: 0 2431.. date: 6546 2432.. nonce: 16HcrE 2433.. section: Library 2434 2435The posixfile module now raises a DeprecationWarning. 2436 2437.. 2438 2439.. bpo: 0 2440.. date: 6545 2441.. nonce: oUYKUV 2442.. section: Library 2443 2444Remove the gopherlib module. This also leads to the removal of gopher 2445support in urllib/urllib2. 2446 2447.. 2448 2449.. bpo: 0 2450.. date: 6544 2451.. nonce: NH6RAh 2452.. section: Library 2453 2454Fix bug in marshal where bad data would cause a segfault due to lack of an 2455infinite recursion check. 2456 2457.. 2458 2459.. bpo: 0 2460.. date: 6543 2461.. nonce: 9XHU1_ 2462.. section: Library 2463 2464Removed plat-freebsd2 and plat-freebsd3 directories (and IN.py in the 2465directories). 2466 2467.. 2468 2469.. bpo: 0 2470.. date: 6542 2471.. nonce: Sbs4OF 2472.. section: Library 2473 2474HTML-escape the plain traceback in cgitb's HTML output, to prevent the 2475traceback inadvertently or maliciously closing the comment and injecting 2476HTML into the error page. 2477 2478.. 2479 2480.. bpo: 0 2481.. date: 6541 2482.. nonce: fDPaFU 2483.. section: Library 2484 2485The popen2 module and os.popen* are deprecated. Use the subprocess module. 2486 2487.. 2488 2489.. bpo: 0 2490.. date: 6540 2491.. nonce: DiM9IG 2492.. section: Library 2493 2494Added an optional credentials argument to SMTPHandler, for use with SMTP 2495servers which require authentication. 2496 2497.. 2498 2499.. bpo: 1695948 2500.. date: 6539 2501.. nonce: Gkj_1M 2502.. section: Library 2503 2504Added optional timeout parameter to SocketHandler. 2505 2506.. 2507 2508.. bpo: 1652788 2509.. date: 6538 2510.. nonce: Wp3YON 2511.. section: Library 2512 2513Minor fix for currentframe. 2514 2515.. 2516 2517.. bpo: 1598415 2518.. date: 6537 2519.. nonce: z3zZwM 2520.. section: Library 2521 2522Added WatchedFileHandler to better support external log file rotation using 2523e.g. newsyslog or logrotate. This handler is only useful in Unix/Linux 2524environments. 2525 2526.. 2527 2528.. bpo: 1706381 2529.. date: 6536 2530.. nonce: LwHKFI 2531.. section: Library 2532 2533Specifying the SWIG option "-c++" in the setup.py file (as opposed to the 2534command line) will now write file names ending in ".cpp" too. 2535 2536.. 2537 2538.. bpo: 0 2539.. date: 6535 2540.. nonce: 960i58 2541.. section: Library 2542 2543As specified in RFC 2616, an HTTP response like 2xx indicates that the 2544client's request was successfully received, understood, and accepted. Now 2545in these cases no error is raised in urllib (issue #1177) and urllib2. 2546 2547.. 2548 2549.. bpo: 1290505 2550.. date: 6534 2551.. nonce: bXfrzq 2552.. section: Library 2553 2554time.strptime's internal cache of locale information is now properly 2555recreated when the locale is changed. 2556 2557.. 2558 2559.. bpo: 1685563 2560.. date: 6533 2561.. nonce: ce_7tt 2562.. section: Library 2563 2564remove (don't add) duplicate paths in distutils.MSVCCompiler. 2565 2566.. 2567 2568.. bpo: 0 2569.. date: 6532 2570.. nonce: 0VS9AQ 2571.. section: Library 2572 2573Added a timeout parameter to the constructor of other protocols (telnetlib, 2574ftplib, smtplib and poplib). This is second part of the work started with 2575create_connection() and timeout in httplib, and closes patch #723312. 2576 2577.. 2578 2579.. bpo: 1676823 2580.. date: 6531 2581.. nonce: Ujlmqa 2582.. section: Library 2583 2584Added create_connection() to socket.py, which may be called with a timeout, 2585and use it from httplib (whose HTTPConnection and HTTPSConnection now accept 2586an optional timeout). 2587 2588.. 2589 2590.. bpo: 978833 2591.. date: 6530 2592.. nonce: zF4H2Y 2593.. section: Library 2594 2595Revert r50844, as it broke _socketobject.dup. 2596 2597.. 2598 2599.. bpo: 1675967 2600.. date: 6529 2601.. nonce: 1iw5U2 2602.. section: Library 2603 2604re patterns pickled with Python 2.4 and earlier can now be unpickled with 2605Python 2.5 and newer. 2606 2607.. 2608 2609.. bpo: 1630118 2610.. date: 6528 2611.. nonce: eZiVxq 2612.. section: Library 2613 2614add a SpooledTemporaryFile class to tempfile.py. 2615 2616.. 2617 2618.. bpo: 1273829 2619.. date: 6527 2620.. nonce: mj4QNT 2621.. section: Library 2622 2623os.walk() now has a "followlinks" parameter. If set to True (which is not 2624the default), it visits symlinks pointing to directories. 2625 2626.. 2627 2628.. bpo: 1681228 2629.. date: 6526 2630.. nonce: 4MMQ01 2631.. section: Library 2632 2633the webbrowser module now correctly uses the default GNOME or KDE browser, 2634depending on whether there is a session of one of those present. Also, it 2635tries the Windows default browser before trying Mozilla variants. 2636 2637.. 2638 2639.. bpo: 1339796 2640.. date: 6525 2641.. nonce: Nn-Kby 2642.. section: Library 2643 2644add a relpath() function to os.path. 2645 2646.. 2647 2648.. bpo: 1681153 2649.. date: 6524 2650.. nonce: fQELcx 2651.. section: Library 2652 2653the wave module now closes a file object it opened if initialization failed. 2654 2655.. 2656 2657.. bpo: 767111 2658.. date: 6523 2659.. nonce: C9lOY0 2660.. section: Library 2661 2662fix long-standing bug in urllib which caused an AttributeError instead of an 2663IOError when the server's response didn't contain a valid HTTP status line. 2664 2665.. 2666 2667.. bpo: 957650 2668.. date: 6522 2669.. nonce: 2j9cb4 2670.. section: Library 2671 2672"%var%" environment variable references are now properly expanded in 2673ntpath.expandvars(), also "~user" home directory references are recognized 2674and handled on Windows. 2675 2676.. 2677 2678.. bpo: 1429539 2679.. date: 6521 2680.. nonce: _VYWyV 2681.. section: Library 2682 2683pdb now correctly initializes the __main__ module for the debugged script, 2684which means that imports from __main__ work correctly now. 2685 2686.. 2687 2688.. bpo: 0 2689.. date: 6520 2690.. nonce: 8oczdW 2691.. section: Library 2692 2693The nonobvious commands.getstatus() function is now deprecated. 2694 2695.. 2696 2697.. bpo: 1393667 2698.. date: 6519 2699.. nonce: qba-ui 2700.. section: Library 2701 2702pdb now has a "run" command which restarts the debugged Python program, 2703optionally with different arguments. 2704 2705.. 2706 2707.. bpo: 1649190 2708.. date: 6518 2709.. nonce: WRBz2d 2710.. section: Library 2711 2712Adding support for _Bool to ctypes as c_bool. 2713 2714.. 2715 2716.. bpo: 1530482 2717.. date: 6517 2718.. nonce: 1HDrw- 2719.. section: Library 2720 2721add pydoc.render_doc() which returns the documentation for a thing instead 2722of paging it to stdout, which pydoc.doc() does. 2723 2724.. 2725 2726.. bpo: 1533909 2727.. date: 6516 2728.. nonce: I3IRRD 2729.. section: Library 2730 2731the timeit module now accepts callables in addition to strings for the code 2732to time and the setup code. Also added two convenience functions for 2733instantiating a Timer and calling its methods. 2734 2735.. 2736 2737.. bpo: 1537850 2738.. date: 6515 2739.. nonce: mojZP- 2740.. section: Library 2741 2742tempfile.NamedTemporaryFile now has a "delete" parameter which can be set to 2743False to prevent the default delete-on-close behavior. 2744 2745.. 2746 2747.. bpo: 1581073 2748.. date: 6514 2749.. nonce: Im5bIV 2750.. section: Library 2751 2752add a flag to textwrap that prevents the dropping of whitespace while 2753wrapping. 2754 2755.. 2756 2757.. bpo: 1603688 2758.. date: 6513 2759.. nonce: Mv_jlM 2760.. section: Library 2761 2762ConfigParser.SafeConfigParser now checks values that are set for invalid 2763interpolation sequences that would lead to errors on reading back those 2764values. 2765 2766.. 2767 2768.. bpo: 0 2769.. date: 6512 2770.. nonce: ZYo06p 2771.. section: Library 2772 2773Added support for the POSIX.1-2001 (pax) format to tarfile.py. Extended and 2774cleaned up the test suite. Added a new testtar.tar. 2775 2776.. 2777 2778.. bpo: 1449244 2779.. date: 6511 2780.. nonce: uHkKjk 2781.. section: Library 2782 2783Support Unicode strings in 2784email.message.Message.{set_charset,get_content_charset}. 2785 2786.. 2787 2788.. bpo: 1542681 2789.. date: 6510 2790.. nonce: 5y5uCV 2791.. section: Library 2792 2793add entries for "with", "as" and "CONTEXTMANAGERS" to pydoc's help keywords. 2794 2795.. 2796 2797.. bpo: 1555098 2798.. date: 6509 2799.. nonce: mO79lM 2800.. section: Library 2801 2802use str.join() instead of repeated string concatenation in robotparser. 2803 2804.. 2805 2806.. bpo: 1635454 2807.. date: 6508 2808.. nonce: 8Gv5Ek 2809.. section: Library 2810 2811the csv.DictWriter class now includes the offending field names in its 2812exception message if you try to write a record with a dictionary containing 2813fields not in the CSV field names list. 2814 2815.. 2816 2817.. bpo: 1668100 2818.. date: 6507 2819.. nonce: BfAU9i 2820.. section: Library 2821 2822urllib2 now correctly raises URLError instead of OSError if accessing a 2823local file via the file:// protocol fails. 2824 2825.. 2826 2827.. bpo: 1677862 2828.. date: 6506 2829.. nonce: YuXNs6 2830.. section: Library 2831 2832Require a space or tab after import in .pth files. 2833 2834.. 2835 2836.. bpo: 1192590 2837.. date: 6505 2838.. nonce: d2uMgi 2839.. section: Library 2840 2841Fix pdb's "ignore" and "condition" commands so they trap the IndexError 2842caused by passing in an invalid breakpoint number. 2843 2844.. 2845 2846.. bpo: 1599845 2847.. date: 6504 2848.. nonce: 9zhNQX 2849.. section: Library 2850 2851Add an option to disable the implicit calls to server_bind() and 2852server_activate() in the constructors for TCPServer, SimpleXMLRPCServer and 2853DocXMLRPCServer. 2854 2855.. 2856 2857.. bpo: 1531963 2858.. date: 6503 2859.. nonce: p5GJcu 2860.. section: Library 2861 2862Make SocketServer.TCPServer's server_address always be equal to calling 2863getsockname() on the server's socket. Fixed by patch #1545011. 2864 2865.. 2866 2867.. bpo: 742598 2868.. date: 6502 2869.. nonce: -50Nso 2870.. section: Library 2871 2872Add .timeout attribute to SocketServer that calls .handle_timeout() when no 2873requests are received. 2874 2875.. 2876 2877.. bpo: 1651235 2878.. date: 6501 2879.. nonce: cY8CV7 2880.. section: Library 2881 2882When a tuple was passed to a ctypes function call, Python would crash 2883instead of raising an error. 2884 2885.. 2886 2887.. bpo: 1646630 2888.. date: 6500 2889.. nonce: rkS7gc 2890.. section: Library 2891 2892ctypes.string_at(buf, 0) and ctypes.wstring_at(buf, 0) returned string up to 2893the first NUL character. 2894 2895.. 2896 2897.. bpo: 957003 2898.. date: 6499 2899.. nonce: SskRob 2900.. section: Library 2901 2902Implement smtplib.LMTP. 2903 2904.. 2905 2906.. bpo: 1481079 2907.. date: 6498 2908.. nonce: gEYAkC 2909.. section: Library 2910 2911add support for HTTP_REFERER to CGIHTTPServer. 2912 2913.. 2914 2915.. bpo: 1675424 2916.. date: 6497 2917.. nonce: 8A9fwo 2918.. section: Library 2919 2920Added tests for uncovered code in the zipfile module. The KeyError raised 2921by Zipfile.getinfo for nonexistent names now has a descriptive message. 2922 2923.. 2924 2925.. bpo: 1115886 2926.. date: 6496 2927.. nonce: Q-42A9 2928.. section: Library 2929 2930os.path.splitext('.cshrc') gives now ('.cshrc', ''). 2931 2932.. 2933 2934.. bpo: 0 2935.. date: 6495 2936.. nonce: wlVTpz 2937.. section: Library 2938 2939unittest now verifies more of its assumptions. In particular, TestCase and 2940TestSuite subclasses (not instances) are no longer accepted in 2941TestSuite.addTest(). This should cause no incompatibility since it never 2942made sense with ordinary subclasses -- the failure just occurred later, with 2943a more cumbersome exception. 2944 2945.. 2946 2947.. bpo: 787789 2948.. date: 6494 2949.. nonce: jzIMu8 2950.. section: Library 2951 2952allow passing custom TestRunner instances to unittest's main() function. 2953 2954.. 2955 2956.. bpo: 1550273 2957.. date: 6493 2958.. nonce: Ra8QUZ 2959.. section: Library 2960 2961fix a few bugs in unittest and add a comprehensive test suite for the 2962module. (See also: bpo-1550272) 2963 2964.. 2965 2966.. bpo: 1001604 2967.. date: 6492 2968.. nonce: Vdqhuq 2969.. section: Library 2970 2971glob.glob() now returns unicode filenames if it was given a unicode argument 2972and os.listdir() returns unicode filenames. 2973 2974.. 2975 2976.. bpo: 1673619 2977.. date: 6491 2978.. nonce: j16YPr 2979.. section: Library 2980 2981setup.py identifies extension modules it doesn't know how to build and those 2982it knows how to build but that fail to build. 2983 2984.. 2985 2986.. bpo: 912410 2987.. date: 6490 2988.. nonce: mh0cGH 2989.. section: Library 2990 2991Replace HTML entity references for attribute values in HTMLParser. 2992 2993.. 2994 2995.. bpo: 1663234 2996.. date: 6489 2997.. nonce: YZlp53 2998.. section: Library 2999 3000you can now run doctest on test files and modules using "python -m doctest 3001[-v] filename ...". 3002 3003.. 3004 3005.. bpo: 1121142 3006.. date: 6488 3007.. nonce: EulpqL 3008.. section: Library 3009 3010Implement ZipFile.open. 3011 3012.. 3013 3014.. bpo: 0 3015.. date: 6487 3016.. nonce: jimAik 3017.. section: Library 3018 3019Taught setup.py how to locate Berkeley DB on Macs using MacPorts. 3020 3021.. 3022 3023.. bpo: 0 3024.. date: 6486 3025.. nonce: qbUsHo 3026.. section: Library 3027 3028Added heapq.merge() for merging sorted input streams. 3029 3030.. 3031 3032.. bpo: 0 3033.. date: 6485 3034.. nonce: c69oKw 3035.. section: Library 3036 3037Added collections.namedtuple() for assigning field names to tuples. 3038 3039.. 3040 3041.. bpo: 0 3042.. date: 6484 3043.. nonce: 5y6Y9N 3044.. section: Library 3045 3046Added itertools.izip_longest(). 3047 3048.. 3049 3050.. bpo: 0 3051.. date: 6483 3052.. nonce: VzsTJi 3053.. section: Library 3054 3055Have the encoding package's search function dynamically import using 3056absolute import semantics. 3057 3058.. 3059 3060.. bpo: 1647484 3061.. date: 6482 3062.. nonce: FkN5SP 3063.. section: Library 3064 3065Renamed GzipFile's filename attribute to name. 3066 3067.. 3068 3069.. bpo: 1517891 3070.. date: 6481 3071.. nonce: AvYw8j 3072.. section: Library 3073 3074Mode 'a' for ZipFile now creates the file if it doesn't exist. 3075 3076.. 3077 3078.. bpo: 698833 3079.. date: 6480 3080.. nonce: UagENp 3081.. section: Library 3082 3083Support file decryption in zipfile. 3084 3085.. 3086 3087.. bpo: 685268 3088.. date: 6479 3089.. nonce: j7gRo3 3090.. section: Library 3091 3092Consider a package's __path__ in imputil. 3093 3094.. 3095 3096.. bpo: 1463026 3097.. date: 6478 3098.. nonce: _0rmmb 3099.. section: Library 3100 3101Support default namespace in XMLGenerator. 3102 3103.. 3104 3105.. bpo: 1571379 3106.. date: 6477 3107.. nonce: TLNfnP 3108.. section: Library 3109 3110Make trace's --ignore-dir facility work in the face of relative directory 3111names. 3112 3113.. 3114 3115.. bpo: 1600860 3116.. date: 6476 3117.. nonce: gY3F66 3118.. section: Library 3119 3120Search for shared python library in LIBDIR, not lib/python/config, on 3121"linux" and "gnu" systems. 3122 3123.. 3124 3125.. bpo: 1652681 3126.. date: 6475 3127.. nonce: ZiYQdm 3128.. section: Library 3129 3130tarfile.py: create nonexistent files in append mode and allow appending to 3131empty files. 3132 3133.. 3134 3135.. bpo: 1124861 3136.. date: 6474 3137.. nonce: aulyJj 3138.. section: Library 3139 3140Automatically create pipes if GetStdHandle fails in subprocess. 3141 3142.. 3143 3144.. bpo: 1634778 3145.. date: 6473 3146.. nonce: pScHLI 3147.. section: Library 3148 3149add missing encoding aliases for iso8859_15 and iso8859_16. 3150 3151.. 3152 3153.. bpo: 1638243 3154.. date: 6472 3155.. nonce: SAVlQC 3156.. section: Library 3157 3158the compiler package is now able to correctly compile a with statement; 3159previously, executing code containing a with statement compiled by the 3160compiler package crashed the interpreter. 3161 3162.. 3163 3164.. bpo: 1643943 3165.. date: 6471 3166.. nonce: a4nxv3 3167.. section: Library 3168 3169Fix time.strptime's support for the %U directive. 3170 3171.. 3172 3173.. bpo: 1507247 3174.. date: 6470 3175.. nonce: AYqRTm 3176.. section: Library 3177 3178tarfile.py: use current umask for intermediate directories. 3179 3180.. 3181 3182.. bpo: 1627441 3183.. date: 6469 3184.. nonce: nTrbqY 3185.. section: Library 3186 3187close sockets properly in urllib2. 3188 3189.. 3190 3191.. bpo: 494589 3192.. date: 6468 3193.. nonce: 2kCbNY 3194.. section: Library 3195 3196make ntpath.expandvars behave according to its docstring. 3197 3198.. 3199 3200.. bpo: 0 3201.. date: 6467 3202.. nonce: ezpU0D 3203.. section: Library 3204 3205Changed platform module API python_version_tuple() to actually return a 3206tuple (it used to return a list). 3207 3208.. 3209 3210.. bpo: 0 3211.. date: 6466 3212.. nonce: 2-kVtg 3213.. section: Library 3214 3215Added new platform module APIs python_branch(), python_revision(), 3216python_implementation() and linux_distribution(). 3217 3218.. 3219 3220.. bpo: 0 3221.. date: 6465 3222.. nonce: qzrIXP 3223.. section: Library 3224 3225Added support for IronPython and Jython to the platform module. 3226 3227.. 3228 3229.. bpo: 0 3230.. date: 6464 3231.. nonce: MS8C3z 3232.. section: Library 3233 3234The sets module has been deprecated. Use the built-in set/frozenset types 3235instead. 3236 3237.. 3238 3239.. bpo: 1610795 3240.. date: 6463 3241.. nonce: FEIux6 3242.. section: Library 3243 3244make ctypes.util.find_library work on BSD systems. 3245 3246.. 3247 3248.. bpo: 0 3249.. date: 6462 3250.. nonce: rfv0pM 3251.. section: Library 3252 3253Fixes for 64-bit Windows: In ctypes.wintypes, correct the definitions of 3254HANDLE, WPARAM, LPARAM data types. Make parameterless foreign function 3255calls work. 3256 3257.. 3258 3259.. bpo: 0 3260.. date: 6461 3261.. nonce: iCu2EB 3262.. section: Library 3263 3264The version number of the ctypes package changed to "1.1.0". 3265 3266.. 3267 3268.. bpo: 1627575 3269.. date: 6460 3270.. nonce: ekqcHu 3271.. section: Library 3272 3273logging: Added _open() method to FileHandler which can be used to reopen 3274files. The FileHandler instance now saves the encoding (which can be None) 3275in an attribute called "encoding". 3276 3277.. 3278 3279.. bpo: 411881 3280.. date: 6459 3281.. nonce: SdPBJS 3282.. section: Library 3283 3284logging.handlers: bare except clause removed from SMTPHandler.emit. Now, 3285only ImportError is trapped. 3286 3287.. 3288 3289.. bpo: 411881 3290.. date: 6458 3291.. nonce: Hui5Li 3292.. section: Library 3293 3294logging.handlers: bare except clause removed from 3295SocketHandler.createSocket. Now, only socket.error is trapped. 3296 3297.. 3298 3299.. bpo: 411881 3300.. date: 6457 3301.. nonce: EB2bof 3302.. section: Library 3303 3304logging: bare except clause removed from LogRecord.__init__. Now, only 3305ValueError, TypeError and AttributeError are trapped. 3306 3307.. 3308 3309.. bpo: 1504073 3310.. date: 6456 3311.. nonce: i48FvZ 3312.. section: Library 3313 3314Fix tarfile.open() for mode "r" with a fileobj argument. 3315 3316.. 3317 3318.. bpo: 1182394 3319.. date: 6455 3320.. nonce: oDRBxu 3321.. section: Library 3322 3323Speed up ``HMAC.hexdigest``. (Patch by Shane Holloway.) 3324 3325.. 3326 3327.. bpo: 1262036 3328.. date: 6454 3329.. nonce: 1Y1xgB 3330.. section: Library 3331 3332Prevent TarFiles from being added to themselves under certain conditions. 3333 3334.. 3335 3336.. bpo: 1230446 3337.. date: 6453 3338.. nonce: OwOxzM 3339.. section: Library 3340 3341tarfile.py: fix ExFileObject so that read() and tell() work correctly 3342together with readline(). 3343 3344.. 3345 3346.. bpo: 1484695 3347.. date: 6452 3348.. nonce: kbpUdY 3349.. section: Library 3350 3351The tarfile module now raises a HeaderError exception if a buffer given to 3352frombuf() is invalid. 3353 3354.. 3355 3356.. bpo: 1503765 3357.. date: 6451 3358.. nonce: N5UCHi 3359.. section: Library 3360 3361Fix a problem in logging.config with spaces in comma- separated lists read 3362from logging config files. 3363 3364.. 3365 3366.. bpo: 1604907 3367.. date: 6450 3368.. nonce: AXQii8 3369.. section: Library 3370 3371Fix problems in logging.handlers caused at logging shutdown when syslog 3372handlers fail to initialize because of syslogd problems. 3373 3374.. 3375 3376.. bpo: 1608267 3377.. date: 6449 3378.. nonce: ldcDih 3379.. section: Library 3380 3381fix a race condition in os.makedirs() if the directory to be created is 3382already there. 3383 3384.. 3385 3386.. bpo: 1610437 3387.. date: 6448 3388.. nonce: pXPK4x 3389.. section: Library 3390 3391fix a tarfile bug with long filename headers. 3392 3393.. 3394 3395.. bpo: 1371075 3396.. date: 6447 3397.. nonce: NE7BY3 3398.. section: Library 3399 3400Make ConfigParser accept optional dict type for ordering, sorting, etc. 3401 3402.. 3403 3404.. bpo: 1563807 3405.. date: 6446 3406.. nonce: r5ah8b 3407.. section: Library 3408 3409_ctypes built on AIX fails with ld ffi error. 3410 3411.. 3412 3413.. bpo: 1598620 3414.. date: 6445 3415.. nonce: jHuKUn 3416.. section: Library 3417 3418A ctypes Structure cannot contain itself. 3419 3420.. 3421 3422.. bpo: 1070046 3423.. date: 6444 3424.. nonce: E13xc_ 3425.. section: Library 3426 3427Marshal new-style objects like InstanceType in xmlrpclib. 3428 3429.. 3430 3431.. bpo: 0 3432.. date: 6443 3433.. nonce: P-fEXH 3434.. section: Library 3435 3436cStringIO.truncate(-1) now raises an IOError, like StringIO and regular 3437files. 3438 3439.. 3440 3441.. bpo: 1472877 3442.. date: 6442 3443.. nonce: qL083L 3444.. section: Library 3445 3446Fix Tix subwidget name resolution. 3447 3448.. 3449 3450.. bpo: 1594554 3451.. date: 6441 3452.. nonce: SqL3iT 3453.. section: Library 3454 3455Always close a tkSimpleDialog on ok(), even if an exception occurs. 3456 3457.. 3458 3459.. bpo: 1538878 3460.. date: 6440 3461.. nonce: m2hjNu 3462.. section: Library 3463 3464Don't make tkSimpleDialog dialogs transient if the parent window is 3465withdrawn. 3466 3467.. 3468 3469.. bpo: 1597824 3470.. date: 6439 3471.. nonce: ORR2oo 3472.. section: Library 3473 3474return the registered function from atexit.register() to facilitate usage as 3475a decorator. 3476 3477.. 3478 3479.. bpo: 1360200 3480.. date: 6438 3481.. nonce: 2ymI3x 3482.. section: Library 3483 3484Use unmangled_version RPM spec field to deal with file name mangling. 3485 3486.. 3487 3488.. bpo: 1359217 3489.. date: 6437 3490.. nonce: RlkDVQ 3491.. section: Library 3492 3493Process 2xx response in an ftplib transfer that precedes an 1xx response. 3494 3495.. 3496 3497.. bpo: 1355023 3498.. date: 6436 3499.. nonce: gz3jFH 3500.. section: Library 3501 3502support whence argument for GzipFile.seek. 3503 3504.. 3505 3506.. bpo: 1065257 3507.. date: 6435 3508.. nonce: dzuo9U 3509.. section: Library 3510 3511Support passing open files as body in HTTPConnection.request(). 3512 3513.. 3514 3515.. bpo: 1569790 3516.. date: 6434 3517.. nonce: XNZtnX 3518.. section: Library 3519 3520mailbox.py: Maildir.get_folder() and MH.get_folder() weren't passing the 3521message factory on to newly created Maildir/MH objects. 3522 3523.. 3524 3525.. bpo: 1514543 3526.. date: 6433 3527.. nonce: JxSqun 3528.. section: Library 3529 3530mailbox.py: In the Maildir class, report errors if there's a filename clash 3531instead of possibly losing a message. (Patch by David Watson.) 3532 3533.. 3534 3535.. bpo: 1514544 3536.. date: 6432 3537.. nonce: nfmx-- 3538.. section: Library 3539 3540Try to ensure that messages/indexes have been physically written to disk 3541after calling .flush() or .close(). (Patch by David Watson.) 3542 3543.. 3544 3545.. bpo: 1592250 3546.. date: 6431 3547.. nonce: cErfyc 3548.. section: Library 3549 3550Add elide argument to Tkinter.Text.search. 3551 3552.. 3553 3554.. bpo: 838546 3555.. date: 6430 3556.. nonce: yBohhh 3557.. section: Library 3558 3559Make terminal become controlling in pty.fork(). 3560 3561.. 3562 3563.. bpo: 1351744 3564.. date: 6429 3565.. nonce: a4x3Q4 3566.. section: Library 3567 3568Add askyesnocancel helper for tkMessageBox. 3569 3570.. 3571 3572.. bpo: 1060577 3573.. date: 6428 3574.. nonce: 7Hpowm 3575.. section: Library 3576 3577Extract list of RPM files from spec file in bdist_rpm. 3578 3579.. 3580 3581.. bpo: 1586613 3582.. date: 6427 3583.. nonce: pIXli0 3584.. section: Library 3585 3586fix zlib and bz2 codecs' incremental en/decoders. 3587 3588.. 3589 3590.. bpo: 1583880 3591.. date: 6426 3592.. nonce: nwiLAW 3593.. section: Library 3594 3595fix tarfile's problems with long names and posix/ GNU modes. 3596 3597.. 3598 3599.. bpo: 1586448 3600.. date: 6425 3601.. nonce: FmFoc_ 3602.. section: Library 3603 3604the compiler module now emits the same bytecode for list comprehensions as 3605the built-in compiler, using the LIST_APPEND opcode. 3606 3607.. 3608 3609.. bpo: 0 3610.. date: 6424 3611.. nonce: 2gBgWG 3612.. section: Library 3613 3614Fix codecs.EncodedFile which did not use file_encoding in 2.5.0, and fix all 3615codecs file wrappers to work correctly with the "with" statement (bug 3616#1586513). 3617 3618.. 3619 3620.. bpo: 0 3621.. date: 6423 3622.. nonce: zvhpow 3623.. section: Library 3624 3625Lib/modulefinder.py now handles absolute and relative imports correctly. 3626 3627.. 3628 3629.. bpo: 1567274 3630.. date: 6422 3631.. nonce: LA_DH5 3632.. section: Library 3633 3634Support SMTP over TLS. 3635 3636.. 3637 3638.. bpo: 1560695 3639.. date: 6421 3640.. nonce: kVpjpW 3641.. section: Library 3642 3643Add .note.GNU-stack to ctypes' sysv.S so that ctypes isn't considered as 3644requiring executable stacks. 3645 3646.. 3647 3648.. bpo: 0 3649.. date: 6420 3650.. nonce: fKDGbU 3651.. section: Library 3652 3653ctypes callback functions only support 'fundamental' data types as result 3654type. Raise an error when something else is used. This is a partial fix 3655for Bug #1574584. 3656 3657.. 3658 3659.. bpo: 0 3660.. date: 6419 3661.. nonce: yLdVeX 3662.. section: Library 3663 3664Fix turtle so that time.sleep is imported for the entire library. Allows the 3665demo2 function to be executed on its own instead of only when the module is 3666run as a script. 3667 3668.. 3669 3670.. bpo: 1565150 3671.. date: 6418 3672.. nonce: DJh_i- 3673.. section: Library 3674 3675Fix subsecond processing for os.utime on Windows. 3676 3677.. 3678 3679.. bpo: 0 3680.. date: 6417 3681.. nonce: p_gre9 3682.. section: Library 3683 3684Support for MSVC 8 was added to bdist_wininst. 3685 3686.. 3687 3688.. bpo: 1446043 3689.. date: 6416 3690.. nonce: yKz_Q4 3691.. section: Library 3692 3693correctly raise a LookupError if an encoding name given to 3694encodings.search_function() contains a dot. 3695 3696.. 3697 3698.. bpo: 1560617 3699.. date: 6415 3700.. nonce: aAisSJ 3701.. section: Library 3702 3703in pyclbr, return full module name not only for classes, but also for 3704functions. 3705 3706.. 3707 3708.. bpo: 1457823 3709.. date: 6414 3710.. nonce: CRxLz4 3711.. section: Library 3712 3713cgi.(Sv)FormContentDict's constructor now takes keep_blank_values and 3714strict_parsing keyword arguments. 3715 3716.. 3717 3718.. bpo: 1566602 3719.. date: 6413 3720.. nonce: bB3CAB 3721.. section: Library 3722 3723correct failure of posixpath unittest when $HOME ends with a slash. 3724 3725.. 3726 3727.. bpo: 1565661 3728.. date: 6412 3729.. nonce: AP25Qm 3730.. section: Library 3731 3732in webbrowser, split() the command for the default GNOME browser in case it 3733is a command with args. 3734 3735.. 3736 3737.. bpo: 0 3738.. date: 6411 3739.. nonce: DZkwqI 3740.. section: Library 3741 3742Made the error message for time.strptime when the data and format do match 3743be more clear. 3744 3745.. 3746 3747.. bpo: 0 3748.. date: 6410 3749.. nonce: 7duvEn 3750.. section: Library 3751 3752Fix a bug in traceback.format_exception_only() that led to an error being 3753raised when print_exc() was called without an exception set. In version 2.4, 3754this printed "None", restored that behavior. 3755 3756.. 3757 3758.. bpo: 0 3759.. date: 6409 3760.. nonce: 709mp_ 3761.. section: Library 3762 3763Make webbrowser.BackgroundBrowser usable in Windows (it wasn't because the 3764close_fds arg to subprocess.Popen is not supported). 3765 3766.. 3767 3768.. bpo: 1504333 3769.. date: 6408 3770.. nonce: y46ekU 3771.. section: Library 3772 3773Reverted change to sgmllib because it introduced an infinite loop. 3774 3775.. 3776 3777.. bpo: 1553314 3778.. date: 6407 3779.. nonce: RCumD0 3780.. section: Library 3781 3782Fix the inspect.py slowdown that was hurting IPython & SAGE by adding 3783smarter caching in inspect.getmodule() 3784 3785.. 3786 3787.. bpo: 0 3788.. date: 6406 3789.. nonce: 6I6WXA 3790.. section: Library 3791 3792Fix missing import of the types module in logging.config. 3793 3794.. 3795 3796.. bpo: 1550886 3797.. date: 6405 3798.. nonce: DuV8q5 3799.. section: Library 3800 3801Fix decimal module context management implementation to match the 3802localcontext() example from PEP 343. 3803 3804.. 3805 3806.. bpo: 1545341 3807.. date: 6404 3808.. nonce: EaLhZZ 3809.. section: Library 3810 3811The 'classifier' keyword argument to the Distutils setup() function now 3812accepts tuples as well as lists. 3813 3814.. 3815 3816.. bpo: 1541863 3817.. date: 6403 3818.. nonce: HUh40x 3819.. section: Library 3820 3821uuid.uuid1 failed to generate unique identifiers on systems with low clock 3822resolution. 3823 3824.. 3825 3826.. bpo: 1531862 3827.. date: 6402 3828.. nonce: yyYfx5 3829.. section: Library 3830 3831Do not close standard file descriptors in subprocess. 3832 3833.. 3834 3835.. bpo: 0 3836.. date: 6401 3837.. nonce: lISaKl 3838.. section: Library 3839 3840Fix utf-8-sig incremental decoder, which didn't recognise a BOM when the 3841first chunk fed to the decoder started with a BOM, but was longer than 3 3842bytes. 3843 3844.. 3845 3846.. bpo: 0 3847.. date: 6400 3848.. nonce: RFXvgt 3849.. section: Library 3850 3851The implementation of UnicodeError objects has been simplified (start and 3852end attributes are now stored directly as Py_ssize_t members). 3853 3854.. 3855 3856.. bpo: 829951 3857.. date: 6399 3858.. nonce: v5y-W2 3859.. section: Library 3860 3861In the smtplib module, SMTP.starttls() now complies with RFC 3207 and 3862forgets any knowledge obtained from the server not obtained from the TLS 3863negotiation itself. Patch contributed by Bill Fenner. 3864 3865.. 3866 3867.. bpo: 1339 3868.. date: 6398 3869.. nonce: zNAkVN 3870.. section: Library 3871 3872The smtplib.SMTP class has been refactored a bit such that the 3873SMTP.starttls() caller no longer needs to call ehlo() beforehand. 3874SMTP.starttls() now raises an exception of the server does not claim to 3875support starttls. Adds the SMTP.ehlo_or_helo_if_needed() method. Patch 3876contributed by Bill Fenner. 3877 3878.. 3879 3880.. bpo: 1089358 3881.. date: 6397 3882.. nonce: 91PLbW 3883.. section: Library 3884 3885Add signal.siginterrupt, a wrapper around siginterrupt(3). 3886 3887.. 3888 3889.. bpo: 1657 3890.. date: 6396 3891.. nonce: KEujtl 3892.. section: Library 3893 3894added select.epoll and select.kqueue. 3895 3896.. 3897 3898.. bpo: 1506171 3899.. date: 6395 3900.. nonce: h2Yotv 3901.. section: Library 3902 3903added operator.methodcaller(). 3904 3905.. 3906 3907.. bpo: 1826 3908.. date: 6394 3909.. nonce: P9qpop 3910.. section: Library 3911 3912operator.attrgetter() now supports dotted attribute paths. 3913 3914.. 3915 3916.. bpo: 1957 3917.. date: 6393 3918.. nonce: oQ_zDG 3919.. section: Library 3920 3921syslogmodule: Release GIL when calling syslog(3). 3922 3923.. 3924 3925.. bpo: 2112 3926.. date: 6392 3927.. nonce: CfSrtY 3928.. section: Library 3929 3930mmap.error is now a subclass of EnvironmentError and not a direct 3931EnvironmentError. 3932 3933.. 3934 3935.. bpo: 2111 3936.. date: 6391 3937.. nonce: nUPHdZ 3938.. section: Library 3939 3940mmap segfaults when trying to write a block opened with PROT_READ. 3941 3942.. 3943 3944.. bpo: 2063 3945.. date: 6390 3946.. nonce: -AQbR3 3947.. section: Library 3948 3949correct order of utime and stime in os.times() result on Windows. 3950 3951.. 3952 3953.. bpo: 1736 3954.. date: 6389 3955.. nonce: Ag5pGB 3956.. section: Library 3957 3958Fix file name handling of _msi.FCICreate. 3959 3960.. 3961 3962.. bpo: 0 3963.. date: 6388 3964.. nonce: zNsGmS 3965.. section: Library 3966 3967Updated ``big5hkscs`` codec to the HKSCS revision of 2004. 3968 3969.. 3970 3971.. bpo: 1940 3972.. date: 6387 3973.. nonce: VTj9uW 3974.. section: Library 3975 3976make it possible to use curses.filter() before curses.initscr() as the 3977documentation says. 3978 3979.. 3980 3981.. bpo: 0 3982.. date: 6386 3983.. nonce: J1VXc3 3984.. section: Library 3985 3986Backport of _fileio module from Python 3.0. 3987 3988.. 3989 3990.. bpo: 1087741 3991.. date: 6385 3992.. nonce: pcDAZm 3993.. section: Library 3994 3995mmap.mmap is now a class, not a factory function. It is also subclassable 3996now. 3997 3998.. 3999 4000.. bpo: 1648 4001.. date: 6384 4002.. nonce: 1C5JXG 4003.. section: Library 4004 4005added ``sys.getprofile()`` and ``sys.gettrace()``. 4006 4007.. 4008 4009.. bpo: 1663329 4010.. date: 6383 4011.. nonce: m0g8vu 4012.. section: Library 4013 4014added ``os.closerange()`` function to quickly close a range of file 4015descriptors without considering errors. 4016 4017.. 4018 4019.. bpo: 976880 4020.. date: 6382 4021.. nonce: R51uQk 4022.. section: Library 4023 4024``mmap`` objects now have an ``rfind`` method that works as expected. 4025``mmap.find`` also takes an optional ``end`` parameter. 4026 4027.. 4028 4029.. bpo: 0 4030.. date: 6381 4031.. nonce: wrGXou 4032.. section: Library 4033 4034_winreg's HKEY object has gained __enter__ and __exit__ methods to support 4035the context management protocol. The _winreg module also gained a new 4036function ``ExpandEnvironmentStrings`` to expand REG_EXPAND_SZ keys. 4037 4038.. 4039 4040.. bpo: 0 4041.. date: 6380 4042.. nonce: ke0PK4 4043.. section: Library 4044 4045itertools.starmap() now accepts any iterable input. Previously, it required 4046the function inputs to be tuples. 4047 4048.. 4049 4050.. bpo: 0 4051.. date: 6379 4052.. nonce: JNKKZ8 4053.. section: Library 4054 4055itertools.chain() now has an alternate constructor, chain.from_iterable(). 4056 4057.. 4058 4059.. bpo: 1646 4060.. date: 6378 4061.. nonce: DqQiG7 4062.. section: Library 4063 4064Make socket support TIPC. The socket module now has support for TIPC under 4065Linux, see http://tipc.sf.net/ for more information. 4066 4067.. 4068 4069.. bpo: 0 4070.. date: 6377 4071.. nonce: YrJhGa 4072.. section: Library 4073 4074Added interface for Windows' WSAIoctl to socket object and added an example 4075for a simple network sniffer. 4076 4077.. 4078 4079.. bpo: 1301 4080.. date: 6376 4081.. nonce: w3N8In 4082.. section: Library 4083 4084Bad assert in _tkinter fixed. 4085 4086.. 4087 4088.. bpo: 0 4089.. date: 6375 4090.. nonce: 1zmfDo 4091.. section: Library 4092 4093Added bdist_wininst executable for VS 2008. 4094 4095.. 4096 4097.. bpo: 1604 4098.. date: 6374 4099.. nonce: d3HHRR 4100.. section: Library 4101 4102collections.deque.__init__(iterable) now clears any prior contents before 4103adding elements from the iterable. This fix brings the behavior into line 4104with that for list.__init__(). 4105 4106.. 4107 4108.. bpo: 0 4109.. date: 6373 4110.. nonce: hHIPo7 4111.. section: Library 4112 4113Added wide char functions to msvcrt module: getwch, getwche, putwch and 4114ungetwch. The functions accept or return unicode. 4115 4116.. 4117 4118.. bpo: 0 4119.. date: 6372 4120.. nonce: OFK-oY 4121.. section: Library 4122 4123os.access now returns True on Windows for any existing directory. 4124 4125.. 4126 4127.. bpo: 0 4128.. date: 6371 4129.. nonce: vDe3M3 4130.. section: Library 4131 4132Added warnpy3k function to the warnings module. 4133 4134.. 4135 4136.. bpo: 0 4137.. date: 6370 4138.. nonce: brR3xl 4139.. section: Library 4140 4141Marshal.dumps() now expects exact type matches for int, long, float, 4142complex, tuple, list, dict, set, and frozenset. Formerly, it would silently 4143miscode subclasses of those types. Now, it raises a ValueError instead. 4144 4145.. 4146 4147.. bpo: 1388440 4148.. date: 6369 4149.. nonce: L0q4gk 4150.. section: Library 4151 4152Add set_completion_display_matches_hook and get_completion_type to readline. 4153 4154.. 4155 4156.. bpo: 1649098 4157.. date: 6368 4158.. nonce: ahOvw- 4159.. section: Library 4160 4161Avoid declaration of zero-sized array declaration in structure. 4162 4163.. 4164 4165.. bpo: 0 4166.. date: 6367 4167.. nonce: -gsoXT 4168.. section: Library 4169 4170Removed the rgbimg module; been deprecated since Python 2.5. 4171 4172.. 4173 4174.. bpo: 1721309 4175.. date: 6366 4176.. nonce: Xm2Y60 4177.. section: Library 4178 4179prevent bsddb module from freeing random memory. 4180 4181.. 4182 4183.. bpo: 1233 4184.. date: 6365 4185.. nonce: 85-yC3 4186.. section: Library 4187 4188fix bsddb.dbshelve.DBShelf append method to work as intended for RECNO 4189databases. 4190 4191.. 4192 4193.. bpo: 0 4194.. date: 6364 4195.. nonce: P617AK 4196.. section: Library 4197 4198pybsddb.sf.net Bug #477182: Load the database flags at database open time so 4199that opening a database previously created with the DB_DUP or DB_DUPSORT 4200flag set will keep the proper behavior on subsequent opens. Specifically: 4201dictionary assignment to a DB object will replace all values for a given key 4202when the database allows duplicate values. DB users should use DB.put(k, v) 4203when they want to store duplicates; not DB[k] = v. 4204 4205.. 4206 4207.. bpo: 0 4208.. date: 6363 4209.. nonce: 5NHGNc 4210.. section: Library 4211 4212Add the bsddb.db.DBEnv.lock_id_free method. 4213 4214.. 4215 4216.. bpo: 1686475 4217.. date: 6362 4218.. nonce: gwpzpq 4219.. section: Library 4220 4221Support stat'ing open files on Windows again. 4222 4223.. 4224 4225.. bpo: 1185447 4226.. date: 6361 4227.. nonce: 4SdEiu 4228.. section: Library 4229 4230binascii.b2a_qp() now correctly quotes binary characters with ASCII value 4231less than 32. Also, it correctly quotes dots only if they occur on a single 4232line, as opposed to the previous behavior of quoting dots if they are the 4233second character of any line. 4234 4235.. 4236 4237.. bpo: 1622896 4238.. date: 6360 4239.. nonce: 4WbmkO 4240.. section: Library 4241 4242fix a rare corner case where the bz2 module raised an error in spite of a 4243succesful compression. 4244 4245.. 4246 4247.. bpo: 1654417 4248.. date: 6359 4249.. nonce: H1p2ET 4250.. section: Library 4251 4252make operator.{get,set,del}slice use the full range of Py_ssize_t. 4253 4254.. 4255 4256.. bpo: 1646728 4257.. date: 6358 4258.. nonce: qkvzER 4259.. section: Library 4260 4261datetime.fromtimestamp fails with negative fractional times. With unittest. 4262 4263.. 4264 4265.. bpo: 1490190 4266.. date: 6357 4267.. nonce: n7enEK 4268.. section: Library 4269 4270posixmodule now includes os.chflags() and os.lchflags() functions on 4271platforms where the underlying system calls are available. 4272 4273.. 4274 4275.. bpo: 1494140 4276.. date: 6356 4277.. nonce: --CKWP 4278.. section: Library 4279 4280Add documentation for the new struct.Struct object. 4281 4282.. 4283 4284.. bpo: 1432399 4285.. date: 6355 4286.. nonce: uVk0JY 4287.. section: Library 4288 4289Support the HCI protocol for bluetooth sockets 4290 4291.. 4292 4293.. bpo: 1657276 4294.. date: 6354 4295.. nonce: fcUdLm 4296.. section: Library 4297 4298Make NETLINK_DNRTMSG conditional. 4299 4300.. 4301 4302.. bpo: 1653736 4303.. date: 6353 4304.. nonce: tNuUq7 4305.. section: Library 4306 4307Complain about keyword arguments to time.isoformat. 4308 4309.. 4310 4311.. bpo: 1486663 4312.. date: 6352 4313.. nonce: sR35oQ 4314.. section: Library 4315 4316don't reject keyword arguments for subclasses of built-in types. 4317 4318.. 4319 4320.. bpo: 1610575 4321.. date: 6351 4322.. nonce: xC0F2x 4323.. section: Library 4324 4325The struct module now supports the 't' code, for C99 _Bool. 4326 4327.. 4328 4329.. bpo: 1635058 4330.. date: 6350 4331.. nonce: 1H4WNl 4332.. section: Library 4333 4334ensure that htonl and friends never accept or return negative numbers, per 4335the underlying C implementation. 4336 4337.. 4338 4339.. bpo: 1544279 4340.. date: 6349 4341.. nonce: oS9QmK 4342.. section: Library 4343 4344Improve thread-safety of the socket module by moving the sock_addr_t storage 4345out of the socket object. 4346 4347.. 4348 4349.. bpo: 1019808 4350.. date: 6348 4351.. nonce: WZeJ5G 4352.. section: Library 4353 4354fix bug that causes an incorrect error to be returned when a socket timeout 4355is set and a connection attempt fails. 4356 4357.. 4358 4359.. bpo: 0 4360.. date: 6347 4361.. nonce: yggQVa 4362.. section: Library 4363 4364Speed up function calls into the math module. 4365 4366.. 4367 4368.. bpo: 1588217 4369.. date: 6346 4370.. nonce: CZ-jdO 4371.. section: Library 4372 4373don't parse "= " as a soft line break in binascii's a2b_qp() function, 4374instead leave it in the string as quopri.decode() does. 4375 4376.. 4377 4378.. bpo: 1599782 4379.. date: 6345 4380.. nonce: nZV6k1 4381.. section: Library 4382 4383Fix segfault on bsddb.db.DB().type(). 4384 4385.. 4386 4387.. bpo: 1567666 4388.. date: 6344 4389.. nonce: Yy8nbf 4390.. section: Library 4391 4392Emulate GetFileAttributesExA for Win95. 4393 4394.. 4395 4396.. bpo: 1576166 4397.. date: 6343 4398.. nonce: uPuEL3 4399.. section: Library 4400 4401Support os.utime for directories on Windows NT+. 4402 4403.. 4404 4405.. bpo: 1572724 4406.. date: 6342 4407.. nonce: AS17ot 4408.. section: Library 4409 4410fix typo ('=' instead of '==') in _msi.c. 4411 4412.. 4413 4414.. bpo: 1572832 4415.. date: 6341 4416.. nonce: usqHny 4417.. section: Library 4418 4419fix a bug in ISO-2022 codecs which may cause segfault when encoding non-BMP 4420unicode characters. 4421 4422.. 4423 4424.. bpo: 1556784 4425.. date: 6340 4426.. nonce: 1CAZai 4427.. section: Library 4428 4429allow format strings longer than 127 characters in datetime's strftime 4430function. 4431 4432.. 4433 4434.. bpo: 0 4435.. date: 6339 4436.. nonce: IX1su7 4437.. section: Library 4438 4439Fix itertools.count(n) to work with negative numbers again. 4440 4441.. 4442 4443.. bpo: 0 4444.. date: 6338 4445.. nonce: E13nLX 4446.. section: Library 4447 4448RLIMIT_SBSIZE was added to the resource module where available. 4449 4450.. 4451 4452.. bpo: 1551427 4453.. date: 6337 4454.. nonce: FbxrjA 4455.. section: Library 4456 4457fix a wrong NULL pointer check in the win32 version of os.urandom(). 4458 4459.. 4460 4461.. bpo: 1548092 4462.. date: 6336 4463.. nonce: CQ3Zbs 4464.. section: Library 4465 4466fix curses.tparm seg fault on invalid input. 4467 4468.. 4469 4470.. bpo: 1114 4471.. date: 6335 4472.. nonce: hs32Do 4473.. section: Library 4474 4475fix curses module compilation on 64-bit AIX, & possibly other 64-bit LP64 4476platforms where attr_t is not the same size as a long. (Contributed by Luke 4477Mewburn.) 4478 4479.. 4480 4481.. bpo: 1550714 4482.. date: 6334 4483.. nonce: _3LprN 4484.. section: Library 4485 4486fix SystemError from itertools.tee on negative value for n. 4487 4488.. 4489 4490.. bpo: 0 4491.. date: 6333 4492.. nonce: 44hgU5 4493.. section: Library 4494 4495Fixed a few bugs on cjkcodecs: - gbk and gb18030 codec now handle U+30FB 4496KATAKANA MIDDLE DOT correctly. - iso2022_jp_2 codec now encodes into G0 4497for KS X 1001, GB2312 codepoints to conform the standard. - iso2022_jp_3 4498and iso2022_jp_2004 codec can encode JIS X 0213:2 codepoints now. 4499 4500.. 4501 4502.. bpo: 1552726 4503.. date: 6332 4504.. nonce: KRiUv4 4505.. section: Library 4506 4507in readline.c, avoid repeatedly polling in interactive mode by only placing 4508a timeout on the select() if an input hook has been defined. This prevents 4509an interactive Python from waking up 10 times per second. Patch by Richard 4510Boulton. 4511 4512.. 4513 4514.. bpo: 0 4515.. date: 6331 4516.. nonce: a94xwS 4517.. section: Library 4518 4519fixed a bug with bsddb.DB.stat: the flags and txn keyword arguments were 4520transposed. 4521 4522.. 4523 4524.. bpo: 0 4525.. date: 6330 4526.. nonce: m3uTkK 4527.. section: Library 4528 4529Added support for linking the bsddb module against BerkeleyDB 4.5.x, 4.6.x 4530and 4.7.x. 4531 4532.. 4533 4534.. bpo: 1633621 4535.. date: 6329 4536.. nonce: M5Ndcj 4537.. section: Library 4538 4539if curses.resizeterm() or curses.resize_term() is called, update 4540_curses.LINES, _curses.COLS, curses.LINES and curses.COLS. 4541 4542.. 4543 4544.. bpo: 0 4545.. date: 6328 4546.. nonce: HrtEA6 4547.. section: Library 4548 4549Fix an off-by-one bug in locale.strxfrm(). 4550 4551.. 4552 4553.. bpo: 0 4554.. date: 6327 4555.. nonce: ojYwDU 4556.. section: Library 4557 4558Fix libffi configure for hppa*-*-linux* | parisc*-*-linux*. 4559 4560.. 4561 4562.. bpo: 0 4563.. date: 6326 4564.. nonce: A1idYz 4565.. section: Library 4566 4567Build using system ffi library on arm*-linux*. 4568 4569.. 4570 4571.. bpo: 1372 4572.. date: 6325 4573.. nonce: VpXOJ9 4574.. section: Library 4575 4576zlibmodule.c: int overflow in PyZlib_decompress 4577 4578.. 4579 4580.. bpo: 0 4581.. date: 6324 4582.. nonce: at5Xd_ 4583.. section: Library 4584 4585bsddb module: Fix memory leak when using database cursors on databases 4586without a DBEnv. 4587 4588.. 4589 4590.. bpo: 0 4591.. date: 6323 4592.. nonce: ilOhKQ 4593.. section: Library 4594 4595The sqlite3 module was updated to pysqlite 2.4.1. 4596 4597.. 4598 4599.. bpo: 813342 4600.. date: 6322 4601.. nonce: s5yukE 4602.. section: IDLE 4603 4604Start the IDLE subprocess with -Qnew if the parent is started with that 4605option. 4606 4607.. 4608 4609.. bpo: 0 4610.. date: 6321 4611.. nonce: JiyCdF 4612.. section: IDLE 4613 4614IDLE: Honor the "Cancel" action in the save dialog (Debian bug #299092). 4615 4616.. 4617 4618.. bpo: 30357 4619.. date: 6320 4620.. nonce: n4CPEa 4621.. section: Tests 4622 4623test_thread: setUp() now uses support.threading_setup() and 4624support.threading_cleanup() to wait until threads complete to avoid random 4625side effects on following tests. Initial patch written by Grzegorz Grzywacz. 4626 4627.. 4628 4629.. bpo: 0 4630.. date: 6319 4631.. nonce: PVjNrU 4632.. section: Tests 4633 4634Refactor test_logging to use unittest. 4635 4636.. 4637 4638.. bpo: 0 4639.. date: 6318 4640.. nonce: 7j-hhA 4641.. section: Tests 4642 4643Refactor test_profile and test_cprofile to use the same code to profile. 4644 4645.. 4646 4647.. bpo: 0 4648.. date: 6317 4649.. nonce: q9s3e7 4650.. section: Tests 4651 4652Make test_runpy reentrant by fixing _check_module to clear out any module 4653being tested. Was causing an error by __import__ doing a reload on the 4654second run and thus suppressing bytecode recreation. 4655 4656.. 4657 4658.. bpo: 0 4659.. date: 6316 4660.. nonce: 7jQnkY 4661.. section: Tests 4662 4663Capture socket connection resets and timeouts in test_socket_ssl and 4664test_urllib2net and raise test.test_support.ResourceDenied. 4665 4666.. 4667 4668.. bpo: 1559413 4669.. date: 6315 4670.. nonce: GoWQim 4671.. section: Tests 4672 4673Fix test_cmd_line if sys.executable contains a space. 4674 4675.. 4676 4677.. bpo: 0 4678.. date: 6314 4679.. nonce: vjtR_D 4680.. section: Tests 4681 4682Added test.test_support.TransientResource which is a context manager to 4683surround calls to resources that are not guaranteed to work even if 4684test.test_support.requires says that the resource should exist. 4685 4686.. 4687 4688.. bpo: 0 4689.. date: 6313 4690.. nonce: 6z7bKB 4691.. section: Tests 4692 4693Added a test for slicing of an exception. 4694 4695.. 4696 4697.. bpo: 0 4698.. date: 6312 4699.. nonce: ieil_O 4700.. section: Tests 4701 4702Added test.test_support.EnvironmentVarGuard. It's a class that provides a 4703context manager so that one can temporarily set or unset environment 4704variables. 4705 4706.. 4707 4708.. bpo: 0 4709.. date: 6311 4710.. nonce: jmumH0 4711.. section: Tests 4712 4713Added some tests for modulefinder. 4714 4715.. 4716 4717.. bpo: 0 4718.. date: 6310 4719.. nonce: 0Kz44H 4720.. section: Tests 4721 4722Converted test_imp to use unittest. 4723 4724.. 4725 4726.. bpo: 0 4727.. date: 6309 4728.. nonce: smrRfs 4729.. section: Tests 4730 4731Fix bsddb test_basics.test06_Transactions to check the version number 4732properly. 4733 4734.. 4735 4736.. bpo: 0 4737.. date: 6308 4738.. nonce: Z4K3CJ 4739.. section: Tests 4740 4741test.test_support.catch_warning is a new context manager that can be used to 4742catch the warnings issued by the warning framework. 4743 4744.. 4745 4746.. bpo: 0 4747.. date: 6307 4748.. nonce: lEqBYO 4749.. section: Tools/Demos 4750 4751Tools/scripts/reindent.py now creates the backup file using shutil.copy to 4752preserve user/group and permissions. Added also a --nobackup option to not 4753create the backup if the user is concerned regarding this. Check issue 4754#1050828 for more details. 4755 4756.. 4757 4758.. bpo: 0 4759.. date: 6306 4760.. nonce: JHrA97 4761.. section: Tools/Demos 4762 4763Tools/scripts/win_add2path.py was added. The simple script modifes the PATH 4764environment var of the HKCU tree and adds the python bin and script 4765directory. 4766 4767.. 4768 4769.. bpo: 0 4770.. date: 6305 4771.. nonce: cj1Ip_ 4772.. section: Tools/Demos 4773 4774Tools/18n/pygettext.py was added to the list of scripts installed by 4775Tools/scripts/setup.py (tracker item 642309). 4776 4777.. 4778 4779.. bpo: 0 4780.. date: 6304 4781.. nonce: q6eo5q 4782.. section: Tools/Demos 4783 4784Added IronPython and Jython support to pybench (part of which was patch 4785#1563844). 4786 4787.. 4788 4789.. bpo: 0 4790.. date: 6303 4791.. nonce: xPqVA4 4792.. section: Tools/Demos 4793 4794Made some minor changes to pybench output to allow the user to see which 4795Python version is running pybench. 4796 4797.. 4798 4799.. bpo: 0 4800.. date: 6302 4801.. nonce: Ufn_76 4802.. section: Tools/Demos 4803 4804Added support for the new platform module feature 4805platform.python_implementation(); this will now be saved in the benchmark 4806pickle. 4807 4808.. 4809 4810.. bpo: 0 4811.. date: 6301 4812.. nonce: SJGror 4813.. section: Documentation 4814 4815RFE #1765140: Updated documentation on FileHandler and subclasses to include 4816new optional delay argument. 4817 4818.. 4819 4820.. bpo: 932563 4821.. date: 6300 4822.. nonce: ujYdrI 4823.. section: Documentation 4824 4825Added section on getting contextual information into logging output, and 4826added documentation for the new LoggerAdapter class. 4827 4828.. 4829 4830.. bpo: 1295 4831.. date: 6299 4832.. nonce: WBH2ZB 4833.. section: Documentation 4834 4835Added information about caching of formatted exception information in the 4836LogRecord by Formatter.format(). 4837 4838.. 4839 4840.. bpo: 1637365 4841.. date: 6298 4842.. nonce: hHynKK 4843.. section: Documentation 4844 4845add subsection about "__name__ == __main__" to the Python tutorial. 4846 4847.. 4848 4849.. bpo: 1698768 4850.. date: 6297 4851.. nonce: e4h7Jp 4852.. section: Documentation 4853 4854updated the "using Python on the Mac" intro. 4855 4856.. 4857 4858.. bpo: 1569057 4859.. date: 6296 4860.. nonce: DqDgin 4861.. section: Documentation 4862 4863Document that calling file.next() when the file is open for writing is 4864undefined. 4865 4866.. 4867 4868.. bpo: 1489771 4869.. date: 6295 4870.. nonce: Ygchql 4871.. section: Documentation 4872 4873the syntax rules in Python Reference Manual were updated to reflect the 4874current Python syntax. 4875 4876.. 4877 4878.. bpo: 1686451 4879.. date: 6294 4880.. nonce: ODrdFR 4881.. section: Documentation 4882 4883Fix return type for PySequence_{Count,Index,Fast_GET_SIZE}. 4884 4885.. 4886 4887.. bpo: 1679379 4888.. date: 6293 4889.. nonce: T_NdX4 4890.. section: Documentation 4891 4892add documentation for fnmatch.translate(). 4893 4894.. 4895 4896.. bpo: 1629566 4897.. date: 6292 4898.. nonce: IkETIS 4899.. section: Documentation 4900 4901clarify the docs on the return values of parsedate() and parsedate_tz() in 4902email.utils and rfc822. 4903 4904.. 4905 4906.. bpo: 1671450 4907.. date: 6291 4908.. nonce: nJrEYa 4909.. section: Documentation 4910 4911add a section about subclassing built-in types to the "extending and 4912embedding" tutorial. 4913 4914.. 4915 4916.. bpo: 1629125 4917.. date: 6290 4918.. nonce: 9JdHlD 4919.. section: Documentation 4920 4921fix wrong data type (int -> Py_ssize_t) in PyDict_Next docs. 4922 4923.. 4924 4925.. bpo: 1565919 4926.. date: 6289 4927.. nonce: hwpjHv 4928.. section: Documentation 4929 4930document set types in the Language Reference. 4931 4932.. 4933 4934.. bpo: 1546052 4935.. date: 6288 4936.. nonce: 3_Kcqu 4937.. section: Documentation 4938 4939clarify that PyString_FromString(AndSize) copies the string pointed to by 4940its parameter. 4941 4942.. 4943 4944.. bpo: 1566663 4945.. date: 6287 4946.. nonce: mAgcIO 4947.. section: Documentation 4948 4949remove obsolete example from datetime docs. 4950 4951.. 4952 4953.. bpo: 1541682 4954.. date: 6286 4955.. nonce: 10BXyV 4956.. section: Documentation 4957 4958Fix example in the "Refcount details" API docs. Additionally, remove a 4959faulty example showing PySequence_SetItem applied to a newly created list 4960object and add notes that this isn't a good idea. 4961 4962.. 4963 4964.. bpo: 1552024 4965.. date: 6285 4966.. nonce: FQsYLY 4967.. section: Tools/Demos 4968 4969add decorator support to unparse.py demo script. 4970 4971.. 4972 4973.. bpo: 0 4974.. date: 6284 4975.. nonce: whjkV0 4976.. section: Tools/Demos 4977 4978Make auto-generated python.vim file list built-ins and exceptions in 4979alphatbetical order. Makes output more deterministic and easier to tell if 4980the file is stale or not. 4981 4982.. 4983 4984.. bpo: 1546372 4985.. date: 6283 4986.. nonce: MVtd4U 4987.. section: Tools/Demos 4988 4989Fixed small bugglet in pybench that caused a missing file not to get 4990reported properly. 4991 4992.. 4993 4994.. bpo: 0 4995.. date: 6282 4996.. nonce: keNFft 4997.. section: Build 4998 4999Have the search path for building extensions follow the declared order in 5000$CPPFLAGS and $LDFLAGS when adding directories from those environment 5001variables. 5002 5003.. 5004 5005.. bpo: 1983 5006.. date: 6281 5007.. nonce: DMUUfR 5008.. section: Build 5009 5010Added a check to pyport to verify that sizeof(pid_t) is smaller or equal 5011sizeof(long). 5012 5013.. 5014 5015.. bpo: 1234 5016.. date: 6280 5017.. nonce: uVPtek 5018.. section: Build 5019 5020Fixed semaphore errors on AIX 5.2 5021 5022.. 5023 5024.. bpo: 1726 5025.. date: 6279 5026.. nonce: VPW3gd 5027.. section: Build 5028 5029Remove Python/atof.c from PCBuild/pythoncore.vcproj. 5030 5031.. 5032 5033.. bpo: 0 5034.. date: 6278 5035.. nonce: v3vkcE 5036.. section: Build 5037 5038Removed PCbuild8/ directory and added a new build directory for VS 2005 5039based on the VS 2008 build directory to PC/VS8.0. The script 5040PCbuild/vs8to9.py was added to sync changes from PCbuild to PC/VS8.0. 5041 5042.. 5043 5044.. bpo: 0 5045.. date: 6277 5046.. nonce: PiHUNm 5047.. section: Build 5048 5049Moved PCbuild/ directory for VS 2003 to PC/VS7.1 and renamed PCBuild9/ 5050directory to PCBuild/. 5051 5052.. 5053 5054.. bpo: 1699 5055.. date: 6276 5056.. nonce: p7AIXC 5057.. section: Build 5058 5059Define _BSD_SOURCE only on OpenBSD. 5060 5061.. 5062 5063.. bpo: 1608 5064.. date: 6275 5065.. nonce: H08Msy 5066.. section: Build 5067 5068use -fwrapv when GCC supports it. This is important, newer GCC versions may 5069optimize away overflow buffer overflow checks without this option! 5070 5071.. 5072 5073.. bpo: 1418 5074.. date: 6274 5075.. nonce: DbqMV4 5076.. section: Build 5077 5078Make the AC_REPLACE_FUNCS object files actually work. 5079 5080.. 5081 5082.. bpo: 0 5083.. date: 6273 5084.. nonce: voVF_6 5085.. section: Build 5086 5087Add a FAST_LOOPS build option that speeds-up looping by trading away 5088periodic threadstate and signal checking in tight loops. By default, this 5089option is turned-off. It should only be enabled in debugged, performance 5090critical applications. 5091 5092.. 5093 5094.. bpo: 786737 5095.. date: 6272 5096.. nonce: mJJr01 5097.. section: Build 5098 5099Allow building in a tree of symlinks pointing to a readonly source. 5100 5101.. 5102 5103.. bpo: 1737210 5104.. date: 6271 5105.. nonce: hMxaQH 5106.. section: Build 5107 5108Change Manufacturer of Windows installer to PSF. 5109 5110.. 5111 5112.. bpo: 1746880 5113.. date: 6270 5114.. nonce: hrR2KM 5115.. section: Build 5116 5117Correctly install DLLs into system32 folder on Win64. 5118 5119.. 5120 5121.. bpo: 0 5122.. date: 6269 5123.. nonce: xKHD52 5124.. section: Build 5125 5126Define _BSD_SOURCE, to get access to POSIX extensions on OpenBSD 4.1+. 5127 5128.. 5129 5130.. bpo: 0 5131.. date: 6268 5132.. nonce: 3JXjJ7 5133.. section: Build 5134 5135Stop supporting AtheOS and cause a build error in configure for the 5136platform. 5137 5138.. 5139 5140.. bpo: 1655392 5141.. date: 6267 5142.. nonce: bwAdWN 5143.. section: Build 5144 5145don't add -L/usr/lib/pythonX.Y/config to the LDFLAGS returned by 5146python-config if Python was built with --enable-shared because that prevented the 5147shared library from being used. 5148 5149.. 5150 5151.. bpo: 1569798 5152.. date: 6266 5153.. nonce: 7Camzj 5154.. section: Build 5155 5156fix a bug in distutils when building Python from a directory within 5157sys.exec_prefix. 5158 5159.. 5160 5161.. bpo: 1675511 5162.. date: 6265 5163.. nonce: j8xiLT 5164.. section: Build 5165 5166Use -Kpic instead of -xcode=pic32 on Solaris/x86. 5167 5168.. 5169 5170.. bpo: 0 5171.. date: 6264 5172.. nonce: D_HO5I 5173.. section: Build 5174 5175Disable _XOPEN_SOURCE on NetBSD 1.x. 5176 5177.. 5178 5179.. bpo: 0 5180.. date: 6263 5181.. nonce: ipd_yd 5182.. section: Build 5183 5184configure now checks whether gcc supports the PyArg_ParseTuple format 5185attribute. 5186 5187.. 5188 5189.. bpo: 1578513 5190.. date: 6262 5191.. nonce: MkcqR2 5192.. section: Build 5193 5194Cross compilation was broken by a change to configure. Repair so that it's 5195back to how it was in 2.4.3. 5196 5197.. 5198 5199.. bpo: 1576954 5200.. date: 6261 5201.. nonce: Rd2jyj 5202.. section: Build 5203 5204Update VC6 build directory; remove redundant files in VC7. 5205 5206.. 5207 5208.. bpo: 1568842 5209.. date: 6260 5210.. nonce: xBW1d2 5211.. section: Build 5212 5213Fix test for uintptr_t. 5214 5215.. 5216 5217.. bpo: 1540470 5218.. date: 6259 5219.. nonce: JS-AGw 5220.. section: Build 5221 5222for OpenBSD 4.0. 5223 5224.. 5225 5226.. bpo: 0 5227.. date: 6258 5228.. nonce: 7uKaSk 5229.. section: Build 5230 5231Fix build failure on kfreebsd and on the hurd. 5232 5233.. 5234 5235.. bpo: 0 5236.. date: 6257 5237.. nonce: cPAQ_M 5238.. section: Build 5239 5240Fix the build of the library reference in info format. 5241 5242.. 5243 5244.. bpo: 0 5245.. date: 6256 5246.. nonce: vXo4QU 5247.. section: Build 5248 5249Allow Emacs 22 for building the documentation in info format. 5250 5251.. 5252 5253.. bpo: 0 5254.. date: 6255 5255.. nonce: UHEp2F 5256.. section: Build 5257 5258Makefile.pre.in(buildbottest): Run an optional script pybuildbot.identify to 5259include some information about the build environment. 5260 5261.. 5262 5263.. bpo: 0 5264.. date: 6254 5265.. nonce: Wws2go 5266.. section: C API 5267 5268Unified naming convention for free lists and their limits. All free lists in 5269Object/ are named ``free_list``, the counter ``numfree`` and the upper limit 5270is a macro ``PyName_MAXFREELIST`` inside an #ifndef block. 5271 5272.. 5273 5274.. bpo: 0 5275.. date: 6253 5276.. nonce: vwQmXR 5277.. section: C API 5278 5279``PySet_Add()`` can now modify a newly created frozenset. Similarly to 5280``PyTuple_SetItem``, it can be used to populate a brand new frozenset; but 5281it does not steal a reference to the added item. 5282 5283.. 5284 5285.. bpo: 0 5286.. date: 6252 5287.. nonce: b3Psyt 5288.. section: C API 5289 5290Added ``PySet_Check()`` and ``PyFrozenSet_Check()`` to the set API. 5291 5292.. 5293 5294.. bpo: 0 5295.. date: 6251 5296.. nonce: UrXjnD 5297.. section: C API 5298 5299Backport of PyUnicode_FromString(), _FromStringAndSize(), _Format and 5300_FormatV from Python 3.0. Made PyLong_AsSsize_t and PyLong_FromSsize_t 5301public functions. 5302 5303.. 5304 5305.. bpo: 1720595 5306.. date: 6250 5307.. nonce: FdLtKP 5308.. section: C API 5309 5310add T_BOOL to the range of structmember types. 5311 5312.. 5313 5314.. bpo: 1534 5315.. date: 6249 5316.. nonce: k9vjbw 5317.. section: C API 5318 5319Added ``PyFloat_GetMax()``, ``PyFloat_GetMin()`` and ``PyFloat_GetInfo()`` 5320to the float API. 5321 5322.. 5323 5324.. bpo: 1521 5325.. date: 6248 5326.. nonce: eHI3IG 5327.. section: C API 5328 5329On 64bit platforms, using PyArgs_ParseTuple with the t# of w# format code 5330incorrectly truncated the length to an int, even when PY_SSIZE_T_CLEAN is 5331set. The str.decode method used to return incorrect results with huge 5332strings. 5333 5334.. 5335 5336.. bpo: 1629 5337.. date: 6247 5338.. nonce: YktpXQ 5339.. section: C API 5340 5341Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT. 5342 5343.. 5344 5345.. bpo: 0 5346.. date: 6246 5347.. nonce: g8xMae 5348.. section: C API 5349 5350PEP 3123: Provide forward compatibility with Python 3.0, while keeping 5351backwards compatibility. Add Py_Refcnt, Py_Type, Py_Size, and 5352PyVarObject_HEAD_INIT. 5353 5354.. 5355 5356.. bpo: 0 5357.. date: 6245 5358.. nonce: sGL89S 5359.. section: C API 5360 5361Py_ssize_t fields work in structmember when HAVE_LONG_LONG is not defined. 5362 5363.. 5364 5365.. bpo: 1733960 5366.. date: 6244 5367.. nonce: 8rUKMs 5368.. section: C API 5369 5370Allow T_LONGLONG to accept ints. 5371 5372.. 5373 5374.. bpo: 0 5375.. date: 6243 5376.. nonce: VY6LgN 5377.. section: C API 5378 5379T_PYSSIZET can now be used in PyMemberDef lists for Py_ssize_t members. 5380 5381.. 5382 5383.. bpo: 0 5384.. date: 6242 5385.. nonce: ZkzATk 5386.. section: C API 5387 5388Added a new API function ``PyImport_ImportModuleNoBlock``. 5389 5390.. 5391 5392.. bpo: 1637022 5393.. date: 6241 5394.. nonce: wBq1VS 5395.. section: C API 5396 5397Prefix AST symbols with _Py_. 5398 5399.. 5400 5401.. bpo: 0 5402.. date: 6240 5403.. nonce: YAicka 5404.. section: C API 5405 5406Fix some leftovers from the conversion from int to Py_ssize_t (relevant to 5407strings and sequences of more than 2**31 items). 5408 5409.. 5410 5411.. bpo: 0 5412.. date: 6239 5413.. nonce: A7o-lD 5414.. section: C API 5415 5416Make _PyGILState_NoteThreadState() static, it was not used anywhere outside 5417of pystate.c and should not be necessary. 5418 5419.. 5420 5421.. bpo: 0 5422.. date: 6238 5423.. nonce: ZpnpHT 5424.. section: C API 5425 5426``PyImport_Import`` and ``PyImport_ImportModule`` now always do absolute 5427imports. In earlier versions they might have used relative imports under 5428some conditions. 5429 5430.. 5431 5432.. bpo: 0 5433.. date: 6237 5434.. nonce: 15u7sP 5435.. section: C API 5436 5437Added case insensitive comparison methods ``PyOS_stricmp(char*, char*)`` and 5438``PyOS_strnicmp(char*, char*, Py_ssize_t)``. 5439 5440.. 5441 5442.. bpo: 1542693 5443.. date: 6236 5444.. nonce: ZPZ9Df 5445.. section: C API 5446 5447remove semi-colon at end of PyImport_ImportModuleEx macro so it can be used 5448as an expression. 5449 5450.. 5451 5452.. bpo: 1706 5453.. date: 6235 5454.. nonce: D8C2K3 5455.. section: Windows 5456 5457Drop support for Win9x, WinME and NT4. Python now requires Windows 2000 or 5458greater. The _WINVER and NTDDI_VERSION macros are set to Win2k for x86/32bit 5459builds and WinXP for AMD64 builds. 5460 5461.. 5462 5463.. bpo: 0 5464.. date: 6234 5465.. nonce: cKizM7 5466.. section: Windows 5467 5468Conditionalize definition of _CRT_SECURE_NO_DEPRECATE and 5469_CRT_NONSTDC_NO_DEPRECATE. 5470 5471.. 5472 5473.. bpo: 1216 5474.. date: 6233 5475.. nonce: DblJmV 5476.. section: Windows 5477 5478Restore support for Visual Studio 2002. 5479 5480.. 5481 5482.. bpo: 0 5483.. date: 6232 5484.. nonce: 2DB1Bg 5485.. section: macOS 5486 5487cfmfile now raises a DeprecationWarning. 5488 5489.. 5490 5491.. bpo: 0 5492.. date: 6231 5493.. nonce: r4EkYd 5494.. section: macOS 5495 5496buildtools now raises a DeprecationWarning. 5497 5498.. 5499 5500.. bpo: 0 5501.. date: 6230 5502.. nonce: Mdk5q1 5503.. section: macOS 5504 5505Removed the macfs module. It had been deprecated since Python 2.5. This 5506lead to the deprecation of macostools.touched() as it relied solely on macfs 5507and was a no-op under OS X. 5508