Lines Matching full:now

36   plural form selections in the gettext module.  The expression parser now
158 - Issue #22995: Default implementation of __reduce__ and __reduce_ex__ now
181 imported at startup) now uses the backslashreplace error handler.
185 sys.stdin, sys.stdout and sys.stderr objects. These attributes are now set
189 - Issue #21167: NAN operations are now handled correctly when python is
196 object now always allocates place for trailing null byte and it's buffer now
258 - Issue #6478: _strptime's regexp cache now is reset after changing timezone
282 - Issue #25624: ZipFile now always writes a ZIP_STORED header for directory
306 - Issue #25510: fileinput.FileInput.readline() now returns b'' instead of ''
350 now accept the self and the dict keyword arguments.
352 - Issue #22609: Constructor of collections.UserDict now accepts the self keyword
373 - Issue #25047: The XML encoding declaration written by Element Tree now
377 - Issue #19143: platform module now reads Windows version from kernel32.dll to
381 of datetime.datetime: microseconds are now rounded to nearest with ties
388 - Issue #24684: socket.socket.getaddrinfo() now calls
391 return a byte string. The encoder of the IDNA codec is now called directly
394 - Issue #24982: shutil.make_archive() with the "zip" format now adds entries
397 - Issue #24857: Comparing call_args to a long sequence now correctly returns a
418 - Issue #24764: cgi.FieldStorage.read_multi() now ignores the Content-Length
429 - Issue #23004: mock_open() now reads binary data correctly when the type of
450 - Issue #23441: rcompleter now prints a tab character instead of displaying
461 - Issue #21697: shutil.copytree() now correctly handles symbolic links that
464 - Issue #24620: Random.setstate() now validates the value of state last element.
470 - Issue #21750: mock_open.read_data can now be read from each instance, as it
478 - Issue #24608: chunk.Chunk.read() now always returns bytes, not str.
482 - Issue #24259: tarfile now raises a ReadError if an archive is truncated
487 - Issue #24514: tarfile now tolerates number fields consisting of only
492 doctype() method. Direct call of doctype() now issues a warning. Parser's
493 doctype() now is not called if target's doctype() is called. Based on patch
502 - Issue #24336: The contextmanager decorator now works with functions with
512 - Issue #23840: tokenize.open() now closes the temporary binary file on error
518 - Issue #22107: tempfile.gettempdir() and tempfile.mkdtemp() now try again
520 on Unix. tempfile.mkstemp() now fails early if parent directory is not
529 - Issue #21931: msilib.FCICreate() now raises TypeError in the case of a bad
533 - Issue #23796: peek and read1 methods of BufferedReader now raise ValueError
549 - Issue #9246: On POSIX, os.getcwd() now supports paths longer than 1025 bytes.
552 - The keywords attribute of functools.partial is now always a dictionary.
567 - Issue #23908: os functions now reject paths with embedded null character
581 - Issue #23865: close() methods in multiple modules now are idempotent and more
585 - Issue #23881: urllib.request.ftpwrapper constructor now closes the socket if
591 - Issue #15133: _tkinter.tkapp.getboolean() now supports Tcl_Obj and always
592 returns bool. tkinter.BooleanVar now validates input values (accepted bool,
593 int, str, and Tcl_Obj). tkinter.BooleanVar.get() now always returns bool.
598 - Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and
604 - Issue #21526: Tkinter now supports new boolean type in Tcl 8.5.
606 - Issue #23838: linecache now clears the cache and returns an empty result on
613 - Issue #23745: The new email header parser now handles duplicate MIME
622 - Issue #21802: The reader in BufferedRWPair now is closed even when closing
625 - Issue #23671: string.Template now allows to specify the "self" parameter as
626 keyword argument. string.Formatter now allows to specify the "self" and
634 - Issue #23539: If body is None, http.client.HTTPConnection.request now sets
642 - Issue #23136: _strptime now uniformly handles all days in week 0, including
645 - Issue #23700: Iterator of NamedTemporaryFile now keeps a reference to
649 importing a test module is now picklable.
657 - Issue #23051: multiprocessing.Pool methods imap() and imap_unordered() now
664 - Issue #23615: Modules bz2, tarfile and tokenize now can be reloaded with
688 - Issues #814253, #9179: Warnings now are raised when group references and
764 - Issue #24782: Extension configuration is now a tab in the IDLE Preferences
765 dialog rather than a separate dialog. The former tabs are now a sorted
771 - Issue #24820: IDLE now has an 'IDLE Dark' built-in text color theme.
779 - Issue #25224: README.txt is now an idlelib index for IDLE developers and
780 curious users. The previous user content is now in the IDLE doc chapter.
781 'IDLE' now means 'Integrated Development and Learning Environment'.
783 - Issue #24820: Users can now set breakpoint colors in
786 - Issue #24972: Inactive selection background now matches active selection
787 background, as configured by users, on all systems. Found items are now
794 now work on Mac Aqua. Patch by Mark Roseman.
802 - Issue #25198: Enhance the initial html viewer now used for Idle Help.
829 The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated.
870 - Issue #22390: test.regrtest now emits a warning if temporary files or
878 - Issue #23445: pydebug builds now use "gcc -Og" where possible, to make
887 - Issue #23998: PyImport_ReInitLock() now checks for lock allocation error
935 - Issue #23330: h2py now supports arbitrary filenames in #include.
937 - Issue #24031: make patchcheck now supports git checkouts, too.
965 - Issue #21408: The default __ne__() now returns NotImplemented if __eq__()
973 - Issue #20335: bytes constructor now raises TypeError when encoding or errors
1006 - Issue #23099: Closing io.BytesIO with exported buffer is rejected now to
1021 is now always restored or swapped, not only if why is WHY_YIELD or
1024 - Issue #18518: timeit now rejects statements which can't be compiled outside
1033 __ne__() now works correctly.
1035 - Issue #19996: :class:`email.feedparser.FeedParser` now handles (malformed)
1040 - Issue #23098: 64-bit dev_t is now supported in the os module.
1048 - Issue #23209, #23225: selectors.BaseSelector.close() now clears its internal
1056 - Issue #20896, #22935: The :func:`ssl.get_server_certificate` function now
1066 - Issue #22585: On OpenBSD 5.6 and newer, os.urandom() now calls getentropy(),
1075 - Issue #19104: pprint now produces evaluable output for wrapped strings.
1081 - Issue #19858: pickletools.optimize() now aware of the MEMOIZE opcode, can
1117 - Issue #22915: SAX parser now supports files opened with file descriptor or
1121 collections module now accept the self keyword argument.
1131 - Issue #22638: SSLv3 is now disabled throughout the standard library.
1134 - Issue #22370: Windows detection in pathlib is now more robust.
1142 different lowercase are now matched in case-insensitive regular expressions.
1150 - Issue #17293: uuid.getnode() now determines MAC address on AIX using netstat.
1173 - Issue #22410: Module level functions in the re module now cache compiled
1177 now return False when the underlying stat call raises NotADirectoryError.
1179 - Issue #8876: distutils now falls back to copying files when hard linking
1193 is now created using ssl.create_default_context(), for stronger security.
1215 - Issue #22219: The zipfile module CLI now adds entries for directories
1255 an error box. It now pops up an Open Module box (Alt+M). If a valid name
1279 - Issue #22838: All test_re tests now work with unittest test discovery.
1318 - Issue #22079: PyType_Ready() now checks that statically allocated type has
1331 - Issue #21514: The documentation of the json module now refers to new JSON RFC
1337 - Issue #22314: pydoc now works when the LINES environment variable is set.
1342 - Issue #17896: The Windows build scripts now expect external library sources
1345 - Issue #17717: The Windows build scripts now use a copy of NASM pulled from
1359 - Issue #10510: distutils register and upload methods now use HTML standards
1368 - Issue #20912: Now directories added to ZIP file have correct Unix and MS-DOS
1395 now falls back to the slower ``fcntl()`` (``F_GETFD`` and then ``F_SETFD``).
1398 parser now attempts to generate more meaningful (or at least more search
1414 - Issue #21091: Fix API bug: email.message.EmailMessage.is_attachment is now
1424 - Issue #4180: The warnings registries are now reset when the filters
1440 - Issue #21147: sqlite3 now raises an exception if the request contains a null
1446 - Issue #21951: Tkinter now most likely raises MemoryError instead of crash
1466 canvas can now be grabbed and dragged with a mouse. The code text pane can
1473 - Issue #22216: smtplib now resets its state more completely after a quit. The
1484 - The webbrowser module now uses subprocess's start_new_session=True rather
1495 - Issue #22165: SimpleHTTPRequestHandler now supports undecodable file names.
1506 - Issue #22184: The functools LRU Cache decorator factory now gives an earlier
1516 when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the
1519 - Issue #21580: Now Tkinter correctly handles bytes arguments passed to Tk.
1531 - Issue #16133: The asynchat.async_chat.handle_read() method now ignores
1542 - Issue #21888: plistlib's load() and loads() now work if the fmt parameter is
1545 - Issue #21044: tarfile.open() now handles fileobj with an integer 'name'
1554 - Issue #11259: asynchat.async_chat().set_terminator() now raises a ValueError
1557 - Issue #12523: asynchat.async_chat.push() now raises a TypeError if it doesn't
1578 - Issue #21781: ssl.RAND_add() now supports strings longer than 2 GB.
1581 object is destroyed. The destructor now closes the file if needed. The
1582 close() method can now be called twice: the second call does nothing.
1596 - Issue #19145: The times argument for itertools.repeat now handles
1607 - Issue #21722: The distutils "upload" command now exits with a non-zero
1614 run_forever() and run_until_complete() methods of asyncio.BaseEventLoop now
1639 or /dev/fd interface the max is now ignored and all fds are closed.
1644 - Issue #14315: The zipfile module now ignores extra fields in the central
1649 - Issue #21402: tkinter.ttk now works when default root window is not set.
1651 - Issue #10203: sqlite3.Row now truly supports sequence protocol. In particular
1655 interpreter aliases (python, python3) are now created by copying rather than
1664 - Issue #21481: Argparse equality and inequality tests now return
1673 - Issue #21538: The plistlib module now supports loading of binary plist files
1694 - Issue #15661: python.org OS X installers are now distributed as signed
1701 now display special message when and only when there are failures.
1719 - Issue #17172: Turtledemo can now be run from Idle.
1751 helping function, test_codecs now clears the encoding caches to avoid the
1754 - Issue #22236: Tkinter tests now don't reuse default root window. New root
1761 now uses unittest test discovery to find its tests.
1783 - Issue #18492: All resources are now allowed when tests are not run by
1803 - Issue #21777: The binary sequence methods on bytes and bytearray are now
1819 - Issue #22201: Command-line interface of the zipfile module now correctly
1855 - Issue #21075: fileinput.FileInput now reads bytes from standard stream if
1906 - Issue #20637: Key-sharing now also works for instance dictionaries of
1913 replacement fields. It now matches the behavior of str.format() in
1926 - Issue #21321: itertools.islice() now releases the reference to the source
1929 - Issue #9815: assertRaises now tries to clear references to local variables
1933 now it raises a TypeError.
1941 - Issue #21291: subprocess's Popen.wait() is now thread safe so that
1945 - Issue #21127: Path objects can now be instantiated from str subclass
1952 - Issue #12220: mindom now raises a custom ValueError indicating it doesn't
1958 - Issue #21222: Passing name keyword argument to mock.create_autospec now
1965 subsequent RSET, smtplib now returns the error code and defers raising the
1969 create_autospec now works. Patch by Kushal Das.
1974 - Issue #20968: unittest.mock.MagicMock now supports division.
1981 - Issue #21169: getpass now handles non-ascii characters that the
1990 - Issue #21155: asyncio.EventLoop.create_unix_server() now raises a ValueError
1996 - Issue #20145: `assertRaisesRegex` and `assertWarnsRegex` now raise a
2017 - Issue #21015: SSL contexts will now automatically select an elliptic
2036 - Issue #11599: When an external command (e.g. compiler) fails, distutils now
2046 - Issue #11558: ``email.message.Message.attach`` now returns a more
2050 - Issue #20283: RE pattern methods now accept the string keyword parameters
2056 - Issue #20791: copy.copy() now doesn't make a copy when the input is
2059 - Issue #19748: On AIX, time.mktime() now raises an OverflowError for year
2111 - The Windows build now includes OpenSSL 1.0.1g
2153 - Issue #18604: Consolidated checks for GUI availability. All platforms now
2239 - Issue #20568: The Windows installer now installs the unversioned ``pip``
2242 - Issue #20757: The ensurepip helper for the Windows uninstaller now skips
2310 - Issue #19744: the ensurepip installation step now just prints a warning to
2350 - Issue #20404: io.TextIOWrapper (and hence the open() builtin) now uses the
2368 now register both filenames in the exception on failure.
2370 - Issue #20563: The ipaddress module API is now considered stable.
2372 - Issue #14983: email.generator now always adds a line end after each MIME
2381 - Issue #16983: the new email header parsing code will now decode encoded words
2387 - Issue #20536: the statistics module now correctly handle Decimal instances
2390 - Issue #18805: the netmask/hostmask parsing in ipaddress now more reliably
2399 - Issue #20478: the statistics module now treats collections.Counter inputs
2407 deleted, and imaplib did not handle that case gracefully. Now it
2415 EmailMessage is now used as the factory class. The factory class should
2431 - Issue #20368: The null character now correctly passed from Tcl to Python.
2442 - Issue #17159: inspect.signature now accepts duck types of functions,
2450 - Issue #20311, #20452: poll and epoll now round the timeout away from zero,
2454 (1e-6) is now rounded to one millisecondi (1e-3), instead of being rounded to
2470 - Issue #20424: Python implementation of io.StringIO now supports lone surrogates.
2472 - Issue #20308: inspect.signature now works on classes without user-defined
2482 - Issue #20223: inspect.signature now supports methods defined with
2485 - Issue #19456: ntpath.join() now joins relative paths correctly when a drive
2501 - Issue #20105: the codec exception chaining now correctly sets the
2504 - Issue #17481: inspect.getfullargspec() now uses inspect.signature() API.
2528 - Issue #20532: Tests which use _testcapi now are marked as CPython only.
2546 - Issue #20456: Argument Clinic now observes the C preprocessor conditional
2551 - Issue #20456: Cloned functions in Argument Clinic now use the correct
2557 - Issue #20456: Argument Clinic now allows specifying different names
2560 - Issue #20326: Argument Clinic now uses a simple, unique signature to
2565 - Issue #20326: Argument Clinic now generates separate checksums for the
2607 - Issue #2382: SyntaxError cursor "^" is now written at correct position in most
2612 the source encoding was specified on the second line. Now the source encoding
2614 anything except a comment. 'python -x' works now again with files with the
2622 issues listed below. E.g. wait_for() now cancels the inner task if
2624 Empty/Full to QueueEmpty/QueueFull; "with (yield from lock)" now
2635 - Issue #20189: unittest.mock now no longer assumes that any object for
2642 loop this caused is now avoided by checking if the expected context is
2647 - Issue #20262: Warnings are raised now when duplicate names are added in the
2656 - Issue #20270: urllib.urlparse now supports empty ports.
2663 - Issue #20245: The open functions in the tarfile module now correctly handle
2679 functions now conform to PEP 3333 when handle non-ASCII URLs.
2693 - Issue #18960: The tokenize module now ignore the source encoding declaration
2699 - Issue #20113: os.readv() and os.writev() now raise an OSError exception on
2706 - Issue #20144: inspect.Signature now supports parsing simple symbolic
2721 - Issue #18960: IDLE now ignores the source encoding declaration on the second
2730 - Issue #19804: The test_find_mac test in test_uuid is now skipped if the
2738 - Issue #20390: Argument Clinic's "file" output preset now defaults to
2748 - Issue #20390: Argument Clinic now fails if you have required parameters after
2751 - Issue #20390: Argument Clinic converters now have a new template they can
2755 - Issue #20376: Argument Clinic now escapes backslashes in docstrings.
2757 - Issue #20381: Argument Clinic now sanity checks the default argument when
2761 - Issue #20189: Argument Clinic now ensures that parser functions for
2763 Similarly, parser functions for __init__ are now always of type initproc,
2766 - Issue #20189: Argument Clinic now suppresses the docstring for __new__
2769 - Issue #20189: Argument Clinic now suppresses the "self" parameter in the
2772 - Issue #20294: Argument Clinic now supports argument parsing for __new__ and
2775 - Issue #20299: Argument Clinic custom converters may now change the default
2778 - Issue #20287: Argument Clinic's output is now configurable, allowing
2781 - Issue #20226: Argument Clinic now permits simple expressions
2790 - Issue #20268: Argument Clinic now supports cloning the parameters and
2793 - Issue #20228: Argument Clinic now has special support for class special
2803 - Issue #18960: 2to3 and the findnocoding.py script now ignore the source
2816 - Issue #20144: Argument Clinic now supports simple symbolic constants
2820 now more accurate.
2822 - Issue #20142: Py_buffer variables generated by Argument Clinic are now
2845 - Issue #19969: PyBytes_FromFormatV() now raises an OverflowError if "%c"
2848 - Issue #19995: %c, %o, %x, and %X now issue a DeprecationWarning on non-integer
2852 - Issue #19787: PyThread_set_key_value() now always set the value. In Python
2862 - Issue #19576: PyGILState_Ensure() now initializes threads. At startup, Python
2867 - Issue #17576: Deprecation warning emitted now when __int__() or __index__()
2889 - Issue #20111: pathlib.Path.with_suffix() now sanity checks the given suffix.
2905 - Issue #20067: Tkinter variables now work when wantobjects is false.
2907 - Issue #19020: Tkinter now uses splitlist() instead of split() in configure
2910 - Issue #19744: ensurepip now provides a better error message when Python is
2914 - Issue #19734: ensurepip now ignores all pip environment variables to avoid
2927 - Issue #19967: Thanks to the PEP 442, asyncio.Future now uses a
2950 - Issue #18829: csv.Dialect() now checks type for delimiter, escapechar and
2953 - Issue #19855: uuid.getnode() on Unix now looks on the PATH for the
2960 - Issue #19946: multiprocessing now uses runpy to initialize __main__ in
2975 - Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' character
2978 - Issue #19532: python -m compileall with no filename/directory arguments now
2983 - Issue #19946: multiprocessing.spawn now raises ImportError when the module to
2991 was 7bit, and produce garbage output for the content. This now works.
2994 specifying a charset now raises an error (this is a new error in 3.4).
3004 - Issue #17429: platform.linux_distribution() now decodes files from the UTF-8
3023 - Issue #19908: pathlib now joins relative Windows paths correctly when a drive
3028 - Issue #6784: Strings from Python 2 can now be unpickled as bytes
3038 - Issue #19138: doctest's IGNORE_EXCEPTION_DETAIL now allows a match when
3045 socket.socket can now avoid a second syscall if the ioctl() function can be
3048 - Issue #19785: smtplib now supports SSLContext.check_hostname and server name
3051 - Issue #19784: poplib now supports SSLContext.check_hostname and server name
3054 - Issue #19783: nntplib now supports SSLContext.check_hostname and server name
3057 - Issue #19782: imaplib now supports SSLContext.check_hostname and server name
3064 - Issue #19781: ftplib now supports SSLContext.check_hostname and server name
3112 - Issue #11489: JSON decoder now accepts lone surrogates.
3120 - Issue #20058: sys.stdin.readline() in IDLE now always returns only one line.
3176 - Issue #19788: kill_python(_d).exe is now run as a PreBuildEvent on the
3204 - Issue #19976: Argument Clinic METH_NOARGS functions now always
3219 - Issue #19619: str.encode, bytes.decode and bytearray.decode now use an
3226 Python now uses SipHash24 on all major platforms.
3231 error handler now works with the utf-16* and utf-32* codecs. Based on
3238 bytearray.decode() now direct users to codecs.encode() or codecs.decode()
3241 - Issue #17828: The interpreter now attempts to chain errors that occur in
3248 warnings are now correctly emitted for daemon threads.
3256 - Issue #19428: zipimport now handles errors when reading truncated or invalid
3261 PyEval_GetLocals() now raises an exception and return NULL on failure.
3274 - Issue #3158: doctest can now find doctests in functions and methods
3280 - Issue #19674: inspect.signature() now produces a correct signature
3309 - Issue #19727: os.utime(..., None) is now potentially more precise
3312 - Issue #17201: ZIP64 extensions now are enabled by default. Patch by
3321 - Issue #16596: pdb in a generator now properly skips over yield and
3329 - Issue #19552: venv now supports bootstrapping pip into virtual environments
3332 CRL enumeration are now two functions. enum_certificates() also returns
3347 - Issue #14455: plistlib now supports binary plists and has an updated API.
3359 - Issue #18775: Add name and block_size attribute to HMAC object. They now
3377 - Issue #19634: time.strftime("%y") now raises a ValueError on AIX when given a
3389 - Issue #19282: dbm.open now supports the context management protocol. (Initial
3452 - Issue #6157: Fixed tkinter.Text.debug(). tkinter.Text.bbox() now raises
3459 - Issue #6160: The bbox() method of tkinter.Spinbox now returns a tuple of
3462 - Issue #19403: contextlib.redirect_stdout is now reentrant
3467 - Issue #19480: HTMLParser now accepts all valid start-tag names as defined
3470 - Issue #15114: The html.parser module now raises a DeprecationWarning when the
3504 for security reasons. It now doesn't match multiple wildcards nor wildcards
3520 - Issue #19339: telnetlib module is now using time.monotonic() when available
3529 if it exists, is now deprecated.
3594 - Issue #19378: the main dis module tests are now run with both stdout
3600 - Issue #18702: All skipped tests now reported as skipped.
3602 - Issue #19439: interpreter embedding tests are now executed on Windows
3619 - Issue #19358: "make clinic" now runs the Argument Clinic preprocessor
3643 - Issue #19649: On OS X, the same set of file names are now installed
3645 and single arch vs universal builds. pythonx.y-32 is now always
3649 - Issue #19553: PEP 453 - "make install" and "make altinstall" now install or
3655 - Issue #19551: PEP 453 - the OS X installer now installs pip by default.
3668 - Issue #19730: Argument Clinic now supports all the existing PyArg
3672 - Issue #19552: pyvenv now bootstraps pip into virtual environments by
3700 - Issue #18416: importlib.machinery.PathFinder now treats '' as the cwd and
3702 to modules imported from cwd to now possess an absolute file path for
3707 - Issue #4555: All exported C symbols are now prefixed with either
3716 now be a string allocated by PyMem_RawMalloc() or PyMem_RawRealloc() (or NULL
3728 - Issue #19014: memoryview.cast() is now allowed on zero-length views.
3730 - Issue #18690: memoryview is now automatically registered with
3733 - Issue #19078: memoryview now correctly supports the reversed builtin
3739 - Issue #17457: unittest test discovery now works with namespace packages.
3748 - Issue #12866: The audioop module now supports 24-bit samples.
3775 - Issue #18999: Multiprocessing now supports 'contexts' with the same API
3779 and groups() methods of match object now always return a string or a bytes
3782 - Issue #18725: The textwrap module now supports truncating multiline text.
3784 - Issue #18776: atexit callbacks now display their full traceback when they
3796 - Issue #19131: The aifc module now correctly reads and writes sampwidth of
3800 interpreter startup. stat_result and statvfs_result are now hard-coded to
3822 - Issue #18037: 2to3 now escapes ``'\u'`` and ``'\U'`` in native strings.
3824 - Issue #17839: base64.decodebytes and base64.encodebytes now accept any
3826 is now also true for base64_codec)
3828 - Issue #19132: The pprint module now supports compact mode.
3830 - Issue #19137: The pprint module now correctly formats instances of set and
3833 - Issue #10042: functools.total_ordering now correctly handles
3837 - Issue #19092: contextlib.ExitStack now correctly reraises exceptions
3850 - Issue #19095: SSLSocket.getpeercert() now raises ValueError when the
3864 - Issue #1772673: The type of `char*` arguments now changed to `const char*`.
3917 - Issue #18818: The "encodingname" part of PYTHONIOENCODING is now optional.
3925 - Issue #18929: `inspect.classify_class_attrs()` now correctly finds class
3929 Au_read.readframes() now updates current file position and reads correct
3930 number of frames from multichannel stream. Au_write.writeframesraw() now
3931 correctly updates current file position. Au_read.getnframes() now returns an
3932 integer (as in Python 2). Au_read and Au_write now correctly works with file
3944 - Issue #18996: TestCase.assertEqual() now more cleverly shorten differing
3947 - Issue #19034: repr() for tkinter.Tcl_Obj now exposes string reperesentation.
3949 - Issue #18978: ``urllib.request.Request`` now allows the method to be
3952 - Issue #18626: the inspect module now offers a basic command line
3958 - Issue #19037: The mailbox module now makes all changes to maildir files
3963 argument (and therefore is reading the user's $HOME/.netrc file), it now
3968 - Issue #18873: The tokenize module now detects Python source code encoding
3987 - The :envvar:`PYTHONFAULTHANDLER` environment variable now only enables the
4005 - Issue #18873: IDLE now detects Python source code encoding only in comment
4008 - Issue #18988: The "Tab" key now works when a word is already autocompleted.
4026 - Issue #18873: 2to3 and the findnocoding.py script now detect Python source
4041 handles are now created non-inheritable; add functions
4048 - Issue #18808: Non-daemon threads are now automatically joined when
4070 in Modules/posixmodule.c is now far more robust.
4078 - Issue #18780: %-formatting codes %d, %i, and %u now treat int-subclasses
4084 - Issue #18808: Thread.join() now waits for the underlying thread state to
4100 - Issue #18878: sunau.open now supports the context management protocol. Based on
4106 - Issue #18876: The FileIO.mode attribute now better reflects the actual mode
4113 - Issue #18901: The sunau getparams method now returns a namedtuple rather than
4116 - Issue #17487: The result of the wave getparams method now is pickleable again.
4119 - Issue #18756: os.urandom() now uses a lazily-opened persistent file
4128 - Issue #11798: TestSuite now drops references to own tests after execution.
4130 - Issue #16611: http.cookie now correctly parses the 'secure' and 'httponly'
4133 - Issue #11973: Fix a problem in kevent. The flags and fflags fields are now
4136 - Issue #18807: ``pyvenv`` now takes a --copies argument allowing copies
4139 - Issue #18538: ``python -m dis`` now uses argparse for argument processing.
4144 - Issue #17702: On error, os.environb now suppresses the exception context
4149 - Issue #16809: Tkinter's splitlist() and split() methods now accept Tcl_Obj
4152 - Issue #18324: set_payload now correctly handles binary input. This also
4165 - Issue #8865: Concurrent invocation of select.poll.poll() now raises a
4168 - Issue #18777: The ssl module now uses the new CRYPTO_THREADID API of
4176 - Issue #18709: Fix CVE-2013-4238. The SSL module now handles NULL bytes
4200 - Issue #12015: The tempfile module now uses a suffix of 8 random characters
4222 if methods have annotations; it now correctly displays the annotations.
4282 - Issue #15663: Tcl/Tk 8.5.14 is now included with the OS X 10.6+ 64-/32-bit
4290 - Issue #18922: Now The Lib/smtpd.py and Tools/i18n/msgfmt.py scripts write
4309 - Issue #9035: ismount now recognises volumes mounted below a drive root
4340 - Issue #18338: `python --version` now prints version string to stdout, and
4353 - Issue #18328: Reorder ops in PyThreadState_Delete*() functions. Now the
4358 - Issue #18184: PyUnicode_FromFormat() and PyUnicode_FromFormatV() now raise
4361 - Issue #18111: The min() and max() functions now support a default argument
4374 encoding now always contains an encoding name.
4410 - Issue #1545463: Global variables caught in reference cycles are now
4424 - Issue #17115,17116: Module initialization now includes setting __package__ and
4442 originated from C code; now an exception instance is always provided.
4461 - Issue #14439: Python now prints the traceback on runpy failure at startup.
4489 - Issue #12983: Bytes literals with invalid ``\x`` escape now raise a SyntaxError
4499 string (wstr) format is now cleared.
4504 - Issue #17098: All modules now have __loader__ set even if they pre-exist the
4511 with an __index__ method are now accepted.
4514 are now initialized dynamically as needed.
4521 - Issue #14850: Now a charmap decoder treats U+FFFE as "undefined mapping"
4527 - Issue #16730: importlib.machinery.FileFinder now no longers raises an
4543 - Issue #16761: Calling int() with base argument only now raises TypeError.
4570 - Issue #16421: loading multiple modules from one shared object is now
4585 ASCII/surrogateescape codec is now used (instead of the locale encoding) to
4597 - Issue #16546: Fix: ast.YieldFrom argument is now mandatory.
4611 - Issue #16416: On Mac OS X, operating system data are now always
4628 - Issue #8271: the utf-8 decoder now outputs the correct number of U+FFFD
4641 - Issue #8401: assigning an int to a bytearray slice (e.g. b[3:4] = 5) now
4656 - Issue #14625: Rewrite the UTF-32 decoder. It is now 3x to 4x faster. Patch
4671 - Issue #15958: bytes.join and bytearray.join now accept arbitrary buffer
4677 - Issue #16160: Subclass support now works for types.SimpleNamespace.
4696 - Issue #15448: Buffered IO now frees the buffer when closed, instead
4737 - Issue #15699: The readline module now uses PEP 3121-style module
4741 - Issue #17616: wave.open now supports the context management protocol.
4743 - Issue #18599: Fix name attribute of _sha1.sha1() object. It now returns
4756 - Issue #17818: aifc.getparams now returns a namedtuple.
4765 - Issue #9177: Calling read() or write() now raises ValueError, not
4784 - Issue #17482: functools.update_wrapper (and functools.wraps) now set the
4788 - Issue #18431: The new email header parser now decodes RFC2047 encoded words
4796 character, resulting in a decoding failure. They are now decoded correctly.
4798 - Issue #18101: Tcl.split() now process strings nested in a tuple as it
4804 All of these issues are now fixed.
4814 - Issue #18347: ElementTree's html serializer now preserves the case of
4819 - Issue #18343: faulthandler.register() now keeps the previous signal handler
4834 - Issue #18155: The csv module now correctly handles csv files that use
4838 - Issue #14360: encode_quopri can now be successfully used as an encoder
4844 - Issue #18135: ssl.SSLSocket.write() now raises an OverflowError if the input
4906 - Issue #11959: SMTPServer and SMTPChannel now take an optional map, use of
4909 - Issue #18109: os.uname() now decodes fields from the locale encoding, and
4910 socket.gethostname() now decodes the hostname from the locale encoding,
4932 - Issue #18011: As was originally intended, base64.b32decode() now raises a
4945 - Issue #16986: ElementTree now correctly works with string input when the
4948 - Issue #17996: socket module now exposes AF_LINK constant on BSD and OSX.
4964 - Issue #14596: The struct.Struct() objects now use a more compact
4967 - Issue #17981: logging's SysLogHandler now closes the socket when it catches
4992 - Issue #17289: The readline module now plays nicer with external modules
5015 - Issue #13721: SSLSocket.getpeercert() and SSLSocket.do_handshake() now
5025 extension load_module()) now have a better chance of working when reloaded.
5030 - Issue #17830: When keyword.py is used to update a keyword file, it now
5041 - Issue #16624: `subprocess.check_output` now accepts an `input` argument,
5074 - Issue #17702: os.environ now raises KeyError with the original environment
5087 - Issue #2118: SMTPException is now a subclass of OSError.
5095 - Issue #9556: the logging package now allows specifying a time-of-day for a
5101 - Issue #17487: The wave getparams method now returns a namedtuple rather than
5112 abstractmethod; now it raises NotImplementedError so as to be ignored by default.
5131 - Issue #17117: Import and @importlib.util.set_loader now set __loader__ when
5162 - Issue #16692: The ssl module now supports TLS 1.1 and TLS 1.2. Initial
5170 - Issue #17150: pprint now uses line continuations to wrap long string
5184 - Issue #17209: curses.window.get_wch() now correctly handles KeyboardInterrupt
5187 - Issue #5713: smtplib now handles 421 (closing connection) error codes when
5191 - Issue #16997: unittest.TestCase now provides a subTest() context manager
5197 - Issue #15927: CVS now correctly parses escaped newlines and carriage
5214 worked by accident. IMAP4_stream now explicitly uses buffered IO.
5226 - Issue #5024: sndhdr.whichhdr now returns the frame count for WAV files
5259 queue now uses a deque instead of a list.
5264 - Issue #14645: The email generator classes now produce output using the
5275 - Issue #16935: unittest now counts the module as skipped if it raises SkipTest,
5293 - Issue #17225: JSON decoder now counts columns in the first line starting
5302 - Issue #13153: Tkinter functions now raise TclError instead of ValueError when
5315 - Issue #15220: email.feedparser's line splitting algorithm is now simpler and
5320 - Issue #16996: webbrowser module now uses shutil.which() to find a
5333 - Issue #4591: Uid and gid values larger than 2**31 are supported now.
5340 - Issue #1470548: XMLGenerator now works with binary output streams.
5342 - Issue #6975: os.path.realpath() now correctly resolves multiple nested
5351 - Issue #10355: The mode, name, encoding and newlines properties now work on
5360 various other functions now work correctly with 32-bit sample -0x80000000.
5381 - Issue #17089: Expat parser now correctly works with string input when the
5382 internal XML encoding is not UTF-8 or US-ASCII. It also now accepts bytes
5394 - Issue #17015: When it has a spec, a Mock object now inspects its signature
5398 - Issue #15633: httplib.HTTPResponse is now mark closed when the server
5407 - Issue #4844: ZipFile now raises BadZipFile when opens a ZIP file with an
5411 - Issue #17071: Signature.bind() now works when one of the keyword arguments
5418 Code now raises FileExistsError if the file path to be used for the
5426 now fills the ``os.environ`` variable correctly.
5441 - Issue #1159051: GzipFile now raises EOFError when reading a corrupted file
5444 - Issue #16993: shutil.which() now preserves the case of the path and extension
5451 decimal now uses strings instead of integers for rounding mode constants.
5453 - Issue #15861: tkinter now correctly works with lists and tuples containing
5456 - Issue #9720: zipfile now writes correct local headers for files larger than
5462 - SSLContext.load_dh_params() now properly closes the input file.
5473 - Issue #13899: ``\A``, ``\Z``, and ``\B`` now correctly match the A, Z,
5486 - Issue #8109: The ssl module now has support for server-side SNI, thanks
5493 - Issue #16674: random.getrandbits() is now 20-40% faster for small integers.
5495 - Issue #16009: JSON error messages now provide more information.
5504 - Issue #16541: tk_setPalette() now works with keyword arguments.
5509 - Issue #16820: In configparser, ``parser['section'] = {}`` now preserves
5513 - Issue #16820: In configparser, ``parser['DEFAULT'] = {}`` now correctly
5524 - Issue #16688: Now regexes contained backreferences correctly work with
5529 - Issue #16485: Now file descriptors are closed if file header patching failed
5562 - Issue #15783: Except for the number methods, the C version of decimal now
5566 - Issue #11175: argparse.FileType now accepts encoding and errors
5569 - Issue #16488: epoll() objects now support the `with` statement. Patch
5626 - Issue #12848: The pure Python pickle implementation now treats object
5630 - Issue #16423: urllib.request now has support for ``data:`` URLs. Patch by
5667 - The subprocess module now raises its own SubprocessError instead of a
5683 urllib.request.urlretrieve API now properly supplies a constant non-zero
5693 - Issue #16350: zlib.decompressobj().decompress() now accumulates data from
5695 to the last call. decompressobj().flush() now correctly sets unused_data and
5699 - Issue #12759: sre_parse now raises a proper error when the name of the group
5720 - Issue #16316: mimetypes now recognizes the .xz and .txz (.tar.xz) extensions.
5756 - Issue #16220: wsgiref now always calls close() on an iterable response.
5768 Content-Length header in it's response now. Patch by Antoine Pitrou.
5776 - Issue #16110: logging.fileConfig now accepts a pre-initialised ConfigParser
5779 - Issue #1492704: shutil.copyfile() raises a distinct SameFileError now if
5797 - Issue #15452: logging configuration socket listener now has a verify option
5804 - `pty.spawn()` now returns the child process status returned by `os.waitpid()`.
5806 - Issue #15756: `subprocess.poll()` now properly handles `errno.ECHILD` to
5827 - Issue #15970: `xml.etree.ElementTree` now serializes correctly the empty HTML
5830 - Issue #15842: The `SocketIO.{readable,writable,seekable}` methods now raise
5839 `io.BytesIO` and `io.StringIO` objects now raise ValueError when the object
5873 - Issue #18429: Format / Format Paragraph, now works when comment blocks
5915 - Issue #17585: Fixed IDLE regression. Now closes when using exit() or quit().
5924 - Issue #16887: IDLE now accepts Cancel in tabify/untabify dialog box.
5928 - Issue #14254: IDLE now handles readline correctly across shell restarts.
5932 - Issue #6698: IDLE now opens just an editor window when configured to do so.
5939 - Issue #17114: IDLE now uses non-strict config parser.
5941 - Issue #9290: In IDLE the sys.std* streams now implement io.TextIOBase
5949 - Issue #16491: IDLE now prints chained exception tracebacks.
5951 - Issue #16819: IDLE method completion now correctly works for bytes literals.
5953 - Issue #16504: IDLE now catches SyntaxErrors raised by tokenizer. Patch by
5984 - Issue #15494: test.support is now a package rather than a module (Initial
5987 - Issue #17944: test_zipfile now discoverable and uses subclassing to
5991 - Issue #18266: test_largefile now works with unittest test discovery and
5994 - Issue #17767: test_locale now works with unittest test discovery.
6016 - Issue #11078: test___all__ now checks for duplicates in __all__.
6030 - Issue #17691: test_univnewlines now works with unittest test discovery.
6033 - Issue #17790: test_set now works with unittest test discovery.
6036 - Issue #17789: test_random now works with unittest test discovery.
6039 - Issue #17779: test_osx_env now works with unittest test discovery.
6042 - Issue #17766: test_iterlen now works with unittest test discovery.
6045 - Issue #17690: test_time now works with unittest test discovery.
6048 - Issue #17692: test_sqlite now works with unittest test discovery.
6053 - Issue #17448: test_sax now skips if there are no xml parsers available
6086 - Issue #17479: test_io now works with unittest test discovery.
6089 - Issue #17066: test_robotparser now works with unittest test discovery.
6092 - Issue #17334: test_index now works with unittest test discovery.
6095 - Issue #17333: test_imaplib now works with unittest test discovery.
6098 - Issue #17082: test_dbm* now work with unittest test discovery.
6101 - Issue #17079: test_ctypes now works with unittest test discovery.
6104 - Issue #17304: test_hash now works with unittest test discovery.
6107 - Issue #17303: test_future* now work with unittest test discovery.
6110 - Issue #17163: test_file now works with unittest test discovery.
6113 - Issue #16925: test_configparser now works with unittest test discovery.
6116 - Issue #16918: test_codecs now works with unittest test discovery.
6119 - Issue #16919: test_crypt now works with unittest test discovery.
6122 - Issue #16910: test_bytes, test_unicode, and test_userstring now work with
6125 - Issue #16905: test_warnings now works with unittest test discovery.
6128 - Issue #16898: test_bufio now works with unittest test discovery.
6131 - Issue #16888: test_array now works with unittest test discovery.
6134 - Issue #16896: test_asyncore now works with unittest test discovery.
6137 - Issue #16897: test_bisect now works with unittest test discovery.
6141 now work with unittest test discovery. Patch by Zachary Ware.
6143 - Issue #16748: test_heapq now works with unittest test discovery.
6153 - Issue #16702: test_urllib2_localnet tests now correctly ignores proxies for
6159 - Issue #13390: The ``-R`` option to regrtest now also checks for memory
6218 two makefile macros SHLIB_SUFFIX and EXT_SUFFIX. SO now has the value of
6279 - Issue #17161: make install now also installs a python3 man page.
6289 PyObject_CallMethod() now changed to `const char*`. Based on patches by
6292 - Issue #17206: Py_CLEAR(), Py_DECREF(), Py_XINCREF() and Py_XDECREF() now
6304 - Issue #16086: PyTypeObject.tp_flags and PyType_Spec.flags are now unsigned
6307 now unsigned too (unsigned long, instead of long).
6444 - Issue #17156: pygettext.py now detects the encoding of source files and
6447 - Issue #15539: Fix a number of bugs in Tools/scripts/pindent.py. Now
6449 improper indentation. pindent.py now works with continued lines broken after
6474 - Issue #18569: The installer now adds .py to the PATHEXT variable when extensions
6552 - Issue #13992: The trashcan mechanism is now thread-safe. This eliminates
6580 returning an integer. So it is now possible to distinguish special keys like
6584 like curses.ACS_HLINE: the Python function addch(int) and addch(bytes) is now
6601 formats. The intended restrictions have now been documented - they will be
6613 - Issue #15573: memoryview comparisons are now performed by value with full
6636 - Issue #14846: `importlib.FileFinder` now handles the case where the directory
6645 - Issue #13072: The array module's 'u' format code is now deprecated and will be
6652 - Issue #15249: email's BytesGenerator now correctly mangles From lines (when
6663 - Issue #12643: `code.InteractiveConsole` now respects `sys.excepthook` when
6666 - Issue #13579: `string.Formatter` now understands the 'a' conversion specifier.
6763 - Issue #13119: `sys.stdout` and `sys.stderr` are now using "\r\n" newline on
6799 - Issue #15314: ``__main__.__loader__`` is now set correctly during interpreter
6816 - Issue #15020: The program name used to search for Python's path is now
6829 - Issue #15307: Virtual environments now use symlinks with framework builds on
6835 - Issue #14590: configparser now correctly strips inline comments when delimiter
6859 `os.sched_setaffinity()` now use regular sets of integers to represent the
6888 - Issue #15232: When mangle_from is True, `email.Generator` now correctly
6898 - Issue #12353: `argparse` now correctly handles null argument values.
6903 - Issue #15397: `inspect.getmodulename()` is now based directly on importlib via
6911 - Issue #15343: pkgutil now includes an iter_importer_modules implementation for
6915 - Issue #15314: runpy now sets __main__.__loader__ correctly.
6917 - Issue #15357: The import emulation in pkgutil is now deprecated. pkgutil uses
6920 - Issue #15233: Python now guarantees that callables registered with the atexit
6923 - Issue #15238: `shutil.copystat()` now copies Linux "extended attributes".
6925 - Issue #15230: runpy.run_path now correctly sets __package__ as described in
6954 - Issue #14814: `ipaddress` now provides more informative error messages when
6958 - Issue #15247: `io.FileIO` now raises an error when given a file descriptor
6968 - Issue #15030: `importlib.abc.PyPycLoader` now supports the new source size
6992 - Issue #15610: `PyImport_ImportModuleEx()` now uses a 'level' of 0 instead of -1.
7106 - Issue #16256: OS X installer now sets correct permissions for doc directory.
7152 - Issue #13783: Generator objects now use the identifier APIs internally
7157 - Issue #15026: utf-16 encoding is now significantly faster (up to 10x).
7160 - Issue #11022: open() and io.TextIOWrapper are now calling
7210 _decimal is now only 1.5x slower than float.
7221 - Issue #15156: HTMLParser now uses the new "html.entities.html5" dictionary.
7228 are deprecated now that the parser is able to parse invalid markup.
7230 - Issue #3665: \u and \U escapes are now supported in unicode regular
7242 Many functions now support "dir_fd" and "follow_symlinks" parameters;
7252 - Issue #15138: base64.urlsafe_{en,de}code() are now 3-4x faster.
7258 - Issue #14837: SSL errors now have ``library`` and ``reason`` attributes
7262 - Issue #9527: datetime.astimezone() method will now supply a class
7269 - Issue #14684: zlib.compressobj() and zlib.decompressobj() now support the use
7280 - Issue #14657: The frozen instance of importlib used for bootstrap is now
7310 time.localtime() and time.strptime() functions now have tm_zone and
7329 - Issue #11823: disassembly now shows argument counts on calls with keyword args.
7333 - LZMAFile now accepts the modes "rb"/"wb"/"ab" as synonyms of "r"/"w"/"a".
7335 - The bz2 and lzma modules now each contain an open() function, allowing
7338 - BZ2File.__init__() and LZMAFile.__init__() now accept a file object as their
7341 - gzip.open() now accepts file objects as well as filenames.
7353 - Issue #1079: email.header.decode_header now correctly parses all the examples
7355 trailing whitespace on ASCII parts is now preserved.
7414 - Issue #14769: test_capi now has SkipitemTest, which cleverly checks
7418 - test_nntplib now tolerates being run from behind NNTP gateways that add
7421 - Issue #15043: test_gdb is now skipped entirely if gdb security settings
7433 * Since Xcode 4 removes ppc support, extension module builds now
7437 extension module builds now revert to using installed headers
7442 SDK and --with-universal-archs now defaults to "intel" if ppc
7482 now uses per-module locks rather than the global import lock, eliminating
7485 - Issue #14624: UTF-16 decoding is now 3x to 4x faster on various inputs.
7488 - asdl_seq and asdl_int_seq are now Py_ssize_t sized.
7493 - Issue #14417: Mutating a dict during lookup now restarts the lookup instead
7511 - Issue #12515: email now registers a defect if it gets to EOF while parsing
7514 - Issue #1672568: email now always decodes base64 payloads, adding padding and
7518 - Issue #14925: email now registers a defect when the parser decides that there
7522 - Issue #10365: File open dialog now works instead of crashing even when
7561 - Issue #14588: The types module now provide new_class() and prepare_class()
7581 - Issue #12098: multiprocessing on Windows now starts child processes
7588 - Issue #14780: urllib.request.urlopen() now has a ``cadefault`` argument
7594 - Issue #14732: The _csv module now uses PEP 3121 module initialization.
7614 - Issue #13815: TarFile.extractfile() now returns io.BufferedReader objects.
7627 - Issue #14082: shutil.copy2() now copies extended attributes, if possible.
7664 - Issue #14127: The os.stat() result object now provides three additional
7667 and os.futimes() now accept a new parameter, ns, which accepts mtime and atime
7670 - Issue #14127 and #10148: shutil.copystat now preserves exact mtime and atime
7704 - Issue #13210: Windows build now uses VS2010, ported from VS2008.
7709 - Issue #14705: The PyArg_Parse() family of functions now support the 'p' format
7719 - Issue #14588: The language reference now accurately documents the Python 3
7747 sys.path_hooks is found to be empty, a warning will be raised. None is now
7751 - Issue #13903: Implement PEP 412. Individual dictionary instances can now share
7755 - Issue #11603 (again): Setting __repr__ to __str__ now raises a RuntimeError
7767 - Issue #14385: It is now possible to use a custom type for the __builtins__
7784 fails to import now uses the new path and name attributes from
7791 - __import__() now matches PEP 328 and documentation by defaulting 'index' to 0
7796 - Issue #1559549: ImportError now has 'name' and 'path' attributes that are set
7833 - Issue #14646: importlib.util.module_for_loader() now sets __loader__ and
7836 - Issue #14664: It is now possible to use @unittest.skip{If,Unless} on a
7839 - Issue #4892: multiprocessing Connections can now be transferred over
7845 - Issue #14638: pydoc now treats non-string __name__ values as if they
7854 - Issue #13959: imp.cache_from_source()/source_from_cache() now follow
7871 _multiprocessing.win32 modules now live in a single module "_winapi".
7876 - Issue #14538: HTMLParser can now parse correctly start tags that contain
7895 - Issue #14399: zipfile now recognizes that the archive has been modified even
7897 trying to set a non-binary value as a comment is now raised at the time
7900 - trace.CoverageResults.is_ignored_filename() now ignores any name that starts
7907 - Issue #7978: socketserver now restarts the select() call when EINTR is
7933 - "make touch" will now touch generated files that are checked into Mercurial,
7948 - Issue #14355: Regrtest now supports the standard unittest test loading, and
7963 - Issue #3561: The Windows installer now has an option, off by default, for
7966 - Issue #13165: stringbench is now available in the Tools/stringbench folder.
8015 - Issue #14300: Under Windows, sockets created using socket.dup() now allow
8018 - Issue #13872: socket.detach() now marks the socket closed (as mirrored
8026 - Issue #14416: syslog now defines the LOG_ODELAY and LOG_AUTHPRIV constants
8034 - Issue #14380: MIMEText now defaults to utf-8 when passed non-ASCII unicode
8041 - Issue #14204: The ssl module now has support for the Next Protocol
8054 - Issue #14269: SMTPD now conforms to the RFC and requires a HELO command
8065 - Issue #14335: multiprocessing's custom Pickler subclass now inherits from
8088 - Issue #14062: BytesGenerator now correctly folds Header objects,
8091 - Issue #13839: When invoked on the command-line, the pstats module now
8095 - Issue #14291: Email now defaults to utf-8 for non-ASCII unicode headers
8109 now raise an OSError instead of ValueError if localtime() or gmtime() failed.
8113 datetime.datetime.utcfromtimestamp() now raises an OverflowError, instead of
8117 datetime.datetime.utcfromtimestamp() now round microseconds towards zero
8129 - Issue #13394: the aifc module now uses warnings.warn() to signal warnings.
8149 - Issue #14210: pdb now has tab-completion not only for command names, but
8152 - Issue #14310: Sockets can now be with other processes on Windows using
8155 - Issue #10576: The gc module now has a 'callbacks' member that will get
8200 - Issue #8315: (partial fix) python -m unittest test.test_email now works.
8214 - Issue #13521: dict.setdefault() now does only one lookup for the given key,
8217 - PEP 409, Issue #6210: "raise X from None" is now supported as a means of
8261 - Issue #12705: A SyntaxError exception is now raised when attempting to
8269 file descriptors. It now closes only the open fds if possible for the
8280 - Issue #13645: pyc files now contain the size of the corresponding source
8288 - Issue #13748: Raw bytes literals can now be written with the ``rb`` prefix
8297 - Issue #13577: Built-in methods and functions now have a __qualname__.
8300 - Issue #6695: Full garbage collection runs now clear the freelist of set
8320 - Issue #7111: Python can now be run without a stdin, stdout or stderr
8322 sys module entries are now set to None (instead of an unusable file object).
8333 - Issue #13411: memoryview objects are now hashable when the underlying
8343 - Issue #13393: BufferedReader.read1() now asks the full requested size to
8346 - Issue #13392: Writing a pyc file should now be atomic under Windows as well.
8348 - Issue #13333: The UTF-7 decoder now accepts lone surrogates (the encoder
8351 - Issue #13389: Full garbage collection passes now clear the freelists for
8389 class object. These cases now behave correctly. Patch by Daniel Urban.
8392 Both ``unicodedata.lookup()`` and '\N{...}' now resolve aliases,
8396 of bytes and bytearray objects now accept an integer between 0 and 255
8403 error handlers on all Windows versions. The MBCS codec is now supporting all
8407 generator.throw() now gets the traceback from the passed exception's
8410 - Issue #13146: Writing a pyc file is now atomic under POSIX.
8421 as "The pipe is being closed") is now mapped to POSIX errno EPIPE
8431 and bytearray.split may now be passed as keyword arguments.
8433 - Issue #13012: The 'keepends' parameter to str.splitlines may now be passed
8448 - Issue #12904: os.utime, os.futimes, os.lutimes, and os.futimesat now write
8451 - Issue #12802: the Windows error ERROR_DIRECTORY (numbered 267) is now
8454 - Issue #9200: The str.is* methods now work with strings that contain non-BMP
8481 - Issue #12647: The None object now has a __bool__() method that returns False.
8485 - Issue #12579: str.format_map() now raises a ValueError if used on a
8516 - Issue #12291: You can now load multiple marshalled objects from a stream,
8526 - Issue #12084: os.stat on Windows now works properly with relative symbolic
8529 - Loosen type restrictions on the __dir__ method. __dir__ can now return any
8538 - Issue #1195: my_fgets() now always clears errors before calling fgets(). Fix
8552 - Issue #12106: The use of the multiple-with shorthand syntax is now reflected
8580 interpreter is shutting down; instead, these threads are now killed when
8648 - Issue #11244: The peephole optimizer is now able to constant-fold
8674 - Issue #11828: startswith and endswith now accept None as slice index.
8690 - Issue #11386: bytearray.pop() now throws IndexError when the bytearray is
8694 now accept a bytearray argument.
8703 - Issue #14166: Pickler objects now have an optional ``dispatch_table``
8707 - Issue #14177: marshal.loads() now raises TypeError when given a unicode
8715 are dead or dying. Moreover, the implementation is now O(1) rather than
8727 - HTMLParser is now able to handle slashes in the start tag.
8729 - Issue #13641: Decoding functions in the base64 module now accept ASCII-only
8753 - Issue #1326113: distutils' and packaging's build_ext commands option now
8757 - Issue #10287: nntplib now queries the server's CAPABILITIES first before
8761 - Issue #13993: HTMLParser is now able to handle broken end tags when
8764 - Issue #13930: lib2to3 now supports writing converted output files to another
8772 - Issue #10287: nntplib now queries the server's CAPABILITIES again after
8781 Distutils will now attempt to compile extension modules with clang
8789 - Issue #13960: HTMLParser is now able to handle broken comments when
8799 - Issue #13845: On Windows, time.time() now uses GetSystemTimeAsFileTime()
8811 raise a ProgrammingError now.
8827 - Issue #13848: open() and the FileIO constructor now check for NUL
8839 - Issue #13847: time.localtime() and time.gmtime() now raise an OSError instead
8840 of ValueError on failure. time.ctime() and time.asctime() now raises an
8841 OSError if localtime() failed. time.clock() now raises a RuntimeError if the
8878 and the source is a symlink, shutil.move() now recreates a symlink on the
8886 - Issue #13636: Weak ciphers are now disabled by default in the ssl module
8912 - Issue #13637: "a2b" functions in the binascii module now accept ASCII-only
8937 - Issue #13560: os.strerror() now uses the current locale encoding instead of
8940 - Issue #8373: The filesystem path of AF_UNIX sockets now uses the filesystem
8968 - Issue #5905, Issue #13560: time.strftime() is now using the current locale
8999 - Issue #9957: SpooledTemporaryFile.truncate() now accepts an optional size
9008 delayfunct parameters are now optional.
9022 - Issue #13358: HTMLParser now calls handle_data only once for each CDATA.
9037 - Issues #1745761, #755670, #13357, #12629, #1200313: HTMLParser now correctly
9053 - Issue #3067: locale.setlocale() now raises TypeError if the second
9062 - Byte compilation in packaging is now isolated from the calling Python -B or
9065 - Issue #10570: curses.putp() and curses.tparm() are now expecting a byte
9068 - Issue #13295: http.server now produces valid HTML 4.01 strict.
9072 - Issue #13287: urllib.request and urllib.error now contains an __all__
9116 - Issue #9168: now smtpd is able to bind privileged port.
9121 - Issue #13227: functools.lru_cache() now has an option to distinguish
9131 - Issue #12448: smtplib now flushes stdout while running ``python -m smtplib``
9134 - Issue #12454: The mailbox module is now using ASCII, instead of the locale
9138 now available on Windows.
9140 - Issue #1673007: urllib.request now supports HEAD request via new method argument.
9149 - Issue #13025: mimetypes is now reading MIME types using the UTF-8 encoding,
9173 - Issue #13087: BufferedReader.seek() now always raises UnsupportedOperation
9190 now correctly report Metadata-Version: 1.1 instead of 1.0 if a Classifier or
9196 - Issue #9561: distutils and packaging now writes egg-info files using UTF-8,
9213 getstatusoutput() functions of the subprocess module now kill the process,
9219 now respect a --skip-build option given to bdist. The packaging commands
9234 - Issue #9923: The mailcap module now correctly uses the platform path
9241 - Issue #12803: SSLContext.load_cert_chain() now accepts a password argument
9247 - Issue #12811: tabnanny.check() now promptly closes checked files. Patch by
9250 - Issue #6560: The sendmsg/recvmsg API is now exposed by the socket module
9255 anymore. It is now always 'linux', instead of 'linux2' or 'linux3' depending
9306 in Python code) now finds the doc of the method.
9311 code pre-dates the ability to subclass extension types. It is now possible
9334 module: the piped streams can now be properly read from or written to.
9352 - Issue #665194: email.utils now has format_datetime and parsedate_to_datetime
9384 - Issue #4376: ctypes now supports nested structures in an endian different than
9396 - Issue #12016: Multibyte CJK decoders now resynchronize faster. They only
9400 - Issue #12459: time.sleep() now raises a ValueError if the sleep length is
9404 - Issue #12451: pydoc: html_getfile() now uses tokenize.open() to support
9408 - Issue #12493: subprocess: Popen.communicate() now also handles EINTR errors
9414 - Issue #12451: pydoc: importfile() now opens the Python script in binary mode,
9417 - Issue #12451: runpy: run_path() now opens the Python script in binary mode,
9421 - Issue #12451: xml.dom.pulldom: parse() now opens files in binary mode instead
9430 - Issue #12462: time.sleep() now immediately calls the (Python) signal handler
9437 - Issue #12451: The XInclude default loader of xml.etree now decodes files from
9438 UTF-8 instead of the locale encoding if the encoding is not specified. It now
9445 - Issue #12451: pydoc.synopsis() now reads the encoding cookie if available,
9448 - Issue #12451: distutils now opens the setup script in binary mode to read the
9470 - Issue #1874: email now detects and reports as a defect the presence of
9487 - Issue #11700: mailbox proxy object close methods can now be called multiple
9515 - Issue #10694: zipfile now ignores garbage at the end of a zipfile.
9519 - Issue #10424: Argparse now includes the names of the missing required
9522 - Issue #12168: SysLogHandler now allows NUL termination to be controlled using
9531 - Issue #9205: concurrent.futures.ProcessPoolExecutor now detects killed
9549 - Named tuples now work correctly with vars().
9569 - Issue #1625: BZ2File and bz2.decompress() now support multi-stream files.
9572 - Issue #12175: BufferedReader.read(-1) now calls raw.readall() if available.
9574 - Issue #12175: FileIO.readall() now only reads the file position and size
9577 - Issue #12175: RawIOBase.readall() now returns None if read() returns None.
9579 - Issue #12175: FileIO.readall() now raises a ValueError instead of an IOError
9611 now raises TypeError (reflecting the invalid type of the 3rd argument) rather
9620 - Issue #12065: connect_ex() on an SSL socket now returns the original errno
9623 - Issue #8809: The SMTP_SSL constructor and SMTP.starttls() now support
9631 their incremental counterparts now raise OverflowError if given an input
9635 - Issue #12050: zlib.decompressobj().decompress() now clears the unconsumed_tail
9681 - Issue #11927: SMTP_SSL now uses port 465 by default as documented. Patch
9695 - Issue #8808: The IMAP4_SSL constructor now allows passing an SSLContext
9707 assertWarnsRegex now accept a keyword argument 'msg' when used as context
9714 - Issue #11647: objects created using contextlib.contextmanager now support
9723 - functools.cmp_to_key() now works with collections.Hashable().
9734 - Issue #11324: ConfigParser(interpolation=None) now works correctly.
9736 - Issue #11811: ssl.get_server_certificate() is now IPv6-compatible. Patch
9775 - collections.Counter().copy() now works correctly for subclasses.
9782 - The bz2 module now handles 4GiB+ input buffers correctly.
9804 - logging.basicConfig now supports an optional 'handlers' argument taking an
9819 - Issue #11757: select.select() now raises ValueError when a negative timeout
9829 - Issue #1690608: email.util.formataddr is now RFC 2047 aware: it now has a
9868 - itertools.accumulate now supports an optional *func* argument for
9877 are now zeroed on creation. This matches the behaviour specified by the
9897 - collections.namedtuple() now adds a _source attribute to the generated
9934 - Issue #10979: unittest stdout buffering now works with class and module
9941 relative to Python2 and the result is now the same as it was in Python2.
9945 of the folded body now ends with a carriage return.
9947 - Issue #11560: shutil.unpack_archive now correctly handles the format
9963 - Issue #11289: `smtp.SMTP` class is now a context manager so it can be used
10001 checking for EACCES, now it also checks for EROFS.
10003 - Issue #11265: asyncore now correctly handles EPIPE, EBADF and EAGAIN errors
10012 - Issue #11140: Lock.release() now raises a RuntimeError when attempting
10014 The _thread.error exception is now an alias of RuntimeError. Patch by
10017 - Issue #8594: ftplib now provides a source_address parameter to specify which
10031 occurred now raises an error instead of silently losing data.
10035 - Issue #11177: asyncore's create_socket() arguments can now be omitted.
10099 Now xml.etree.cElementTree becomes a deprecated alias to ElementTree.
10146 - Issue #14409: IDLE now properly executes commands in the Shell window
10188 - Issue #12590: IDLE editor window now always displays the first line
10204 - Issue #14053: patchcheck.py ("make patchcheck") now works with MQ patches.
10207 - Issue #13930: 2to3 is now able to write its converted output files to another
10212 - Issue #13628: python-gdb.py is now able to retrieve more frames in the Python
10228 non-pydebug builds. Several extension modules now compile cleanly when
10239 - Issue #13159: FileIO and BZ2Compressor/BZ2Decompressor now use a linear-time
10272 - Issue #11241: subclasses of ctypes.Array can now be subclassed.
10343 more quickly. The --multiprocess option is now enabled by default, reducing
10345 now include some resource-intensive tests, but no longer run the test suite
10349 - Issue #12331: The test suite for the packaging module can now run from an
10352 - Issue #12331: The test suite for lib2to3 can now run from an installed
10360 - Issue #12624: It is now possible to fail after the first failure when
10387 is now skipped instead.
10473 - The email test suite now lives in the Lib/test/test_email package. The test
10476 - regrtest now discovers test packages as well as test modules.
10556 - Issue #12173: The first argument of PyImport_ImportModuleLevel is now `const
10559 - Issue #12380: PyArg_ParseTuple now accepts a bytearray for the 'c' format.
10568 which is obsolete in Python 3.x. It's now aliased to str for
10655 - Issue #11116: any error during addition of a message to a mailbox now causes a
10670 installers now includes a link to the installed documentation and no longer
10671 includes an Extras directory. The Tools directory is now installed in the
10697 - Issue #9124: mailbox now accepts binary input and reads and writes mailbox
10757 - Issue #10980: the HTTP server now encodes headers with iso-8859-1 (latin1)
10761 - To match the behaviour of HTTP server, the HTTP client library now also
10763 that for incoming headers which makes this behaviour now consistent in
10766 - Issue #9509: argparse now properly handles IOErrors raised by
10769 - Issue #10961: The new pydoc server now better handles exceptions raised
10790 - Issue #10889: range indexing and slicing now works correctly on ranges with
10804 - Remove buffer API from stable ABI for now, see #10181.
10814 can now handle dates after 2038.
10854 - Issue #10872: The repr() of TextIOWrapper objects now includes the mode
10860 - Issue #5871: email.header.Header.encode now raises an error if any
10872 - Issue #10686: the email package now :rfc:`2047`\ -encodes headers with
10878 folding whitespace. It now uses the continuation_ws, as it does for
10882 time.asctime(), time.ctime() and time.strftime() functions will now format
10884 otherwise. ``time.mktime`` and ``time.strftime`` now accept full range
10898 socket is now always blocking, regardless of the operating system.
10903 - Issue #10790: email.header.Header.append's charset logic now works correctly
10939 time. `sys.stderr` now looked up at instantiation time. Fix contributed by
10949 - Issue #9824: SimpleCookie now encodes , and ; in values to cater to how
10952 - Issue #9333: os.symlink now available regardless of user privileges. The
10953 function now raises OSError on Windows >=6.0 when the user is unable to create
10965 - Issue #10626: test_logging now preserves logger disabled states.
10967 - Issue #10774: test_logging now removes temp files created during tests.
10970 it now prints the filename, line number, and traceback to stderr and skips
10981 - Issue #1155362: email.utils.parsedate_tz now handles a missing space before
10984 - Issue #4871: The zipfile module now gives a more useful error message if
10987 - Issue #10750: The ``raw`` attribute of buffered IO objects is now read-only.
10994 - PyObject_CallMethod now passes along any underlying AttributeError from
11019 - Issue #10679: The "idle", "pydoc" and "2to3" scripts are now installed with
11024 support now looks for "__powerpc__" as well as "__ppc__": the latter seems to
11076 - Issue #8844: Regular and recursive lock acquisitions can now be interrupted
11079 - Issue #4236: PyModule_Create2 now checks the import machinery directly
11094 - Issue #9857: It is now possible to skip a test in a setUp, tearDown or clean
11130 - Issue #1078919: add_header now automatically RFC2231 encodes parameters
11142 It is now True in most cases other than on Windows when input, output or
11156 - Issue #775964: test_grp now skips YP/NIS entries instead of failing when
11162 - Issue #6075: IDLE on Mac OS X now works with both Carbon AquaTk and
11173 - The Windows build now uses Tcl/Tk 8.5.9 and sqlite3 3.7.4.
11217 - Issue #1574217: isinstance now catches only AttributeError, rather than
11251 - Issue #6045: dbm.gnu databases now support get() and setdefault() methods.
11260 - Issue #10272: The ssl module now raises socket.timeout instead of a generic
11269 way of a signal handler) now raise a RuntimeError instead of freezing the
11304 - Issue #1486713: HTMLParser now has an optional tolerant mode where it tries to
11309 - Issue #8989: email.utils.make_msgid now has a domain parameter that can
11316 - Issue #9573: os.fork() now works correctly when triggered as a side effect of
11319 - Issue #10464: netrc now correctly handles lines with embedded '#' characters.
11331 - Issue #9873: The URL parsing functions in urllib.parse now accept ASCII byte
11337 - Issue #10323: itertools.islice() now consumes the minimum number of inputs
11341 - Issue #10565: The collections.Iterator ABC now checks for both __iter__ and
11354 undocumented and now redundant isbjunk and isbpopular methods.
11356 - Issue #9846: zipfile is now correctly closing underlying file objects.
11363 - Issue #6378: idle.bat now runs with the appropriate Python version rather than
11366 - Issue #10470: 'python -m unittest' will now run test discovery by default,
11376 - Issue #10453: compileall now uses argparse instead of getopt, and thus
11400 - configparser: Usage of RawConfigParser is now discouraged for new projects
11416 - configparser: accepted INI file structure is now customizable, including
11430 - Issue #10446: Module documentation generated by pydoc now links to a
11458 - structseq.h is now included in Python.h.
11508 - Issue #10221: dict.pop(k) now has a key error message that includes the
11579 ``repr`` of such errors are now sent back, wrapped in an
11583 ``multiprocessing.Pool`` now accepts an ``error_callback`` argument. This can
11588 sockets now has additional items such as ``issuer`` and ``notBefore``.
11590 - ``usenetrc`` is now false by default for NNTP objects.
11621 - Issue #10180: Pickling file objects is now explicitly forbidden, since
11624 - Issue #10311: The signal module now restores errno before returning from its
11634 - Issue #10281: nntplib now returns None for absent fields in the OVER/XOVER
11637 - wsgiref now implements and validates PEP 3333, rather than an experimental
11648 - Issue #10199: New package, ``turtledemo`` now contains selected demo scripts
11663 - Issue #5729: json.dumps() now supports using a string such as '\t' for
11689 - Issue #10093: ResourceWarnings are now issued when files and sockets are
11701 - Issue #5027: The standard ``xml`` namespace is now understood by
11715 encode method now support a 'linesep' argument.
11719 also use this argument, so that HTTPS virtual hosts are now supported.
11740 - Issue #1343: xml.sax.saxutils.XMLGenerator now has an option
11757 - Issue #9183: ``datetime.timezone(datetime.timedelta(0))`` will now return the
11777 urllib.request.urlopen now take optional arguments to allow for server
11792 - Issue #5109: array.array constructor will now use fast code when
11795 - Issue #6317: Now winsound.PlaySound only accepts unicode.
11797 - Issue #6317: Now winsound.PlaySound can accept non ascii filename.
11820 (ISLOWER()/ISUPPER()/etc) have now been removed: use Py_ISLOWER() etc instead.
11822 - Issue #9778: Hash values are now always the size of pointers. A new Py_hash_t
11828 - Issue #10117: Tools/scripts/reindent.py now accepts source files that use
11871 dict are now cleared again. This causes issue #7140 to appear again.
11876 - ast.literal_eval() can now handle negative numbers. It is also a little more
11880 - Issue #10006: type.__abstractmethods__ now raises an AttributeError. As a
11881 result metaclasses can now be ABCs (see #9533).
11909 - All SyntaxErrors now have a column offset and therefore a caret when the error
11915 - Issue #9213: The range type_items now provides index() and count() methods, to
11940 - Issue #9804: ascii() now always represents unicode surrogate pairs as a single
11942 Also, the "backslashreplace" error handler now joins surrogate pairs into a
11966 - Issue #4661: email can now parse bytes input and generate either converted
11972 - Issue #9759: GzipFile now raises ValueError when an operation is attempted
11978 - Issue #6706: asyncore.dispatcher now provides a handle_accepted() method
11990 - Issue #1050268: parseaddr now correctly quotes double quote and backslash
11999 - Issue #9360: Cleanup and improvements to the nntplib module. The API now
12003 - Issue #9962: GzipFile now has the peek() method.
12013 received. Now sendall() properly calls signal handlers if necessary, and
12054 - Issue #9854: SocketIO objects now observe the RawIOBase interface in
12063 - Issue #9865: collections.OrderedDict now has a __sizeof__ method.
12065 - Issue #9854: The default read() implementation in io.RawIOBase now handles
12068 - Issue #1552: socket.socketpair() now returns regular socket.socket objects
12085 - Issue #9826: OrderedDict.__repr__ can now handle self-referential values:
12107 - The pprint module now supports printing OrderedDicts in their given order
12117 - Issue #6394: os.getppid() is now supported on Windows. Note that it will
12123 original errno, or to filter timeout errors. Now the original error is
12145 - collections.OrderedDict now supports a new method for repositioning keys to
12149 cases now also have assertWarns and assertWarnsRegexp methods to check that a
12152 - Issue #5506: BytesIO objects now have a getbuffer() method exporting a view of
12158 - Issue #9293: I/O streams now raise ``io.UnsupportedOperation`` when an
12181 - Issue #9188: The gdb extension now handles correctly narrow (UCS2) as well as
12197 - Issue #7110: regrtest now sends test failure reports and single-failure
12234 - Issue #9806: python-config now has an ``--extension-suffix`` option that
12246 feature now also supports the ZSH shell.
12264 - Issue #9212: dict_keys and dict_items now provide the isdisjoint() method, to
12271 now removed, since their effect was inexistent in 3.x (the default encoding is
12274 - Issue #7415: PyUnicode_FromEncodedObject() now uses the new buffer API
12277 - Issue #5553: The Py_LOCAL_INLINE macro now results in inlining on most
12288 occur during attribute lookup are now propagated to the caller.
12293 - Issue #5127: The C functions that access the Unicode Database now accept and
12296 in Python is that unicodedata.numeric() now returns the correct value for
12306 - Issue #9612: The set object is now 64-bit clean under Windows.
12308 - Issue #8202: sys.argv[0] is now set to '-m' instead of '-c' when searching for
12319 - Issue #9203: Computed gotos are now enabled by default on supported compilers
12331 - Issue #9337: The str() of a float or complex number is now identical to its
12344 asctime and ctime functions. The year range for time.asctime is now
12349 - Issue #6608: time.asctime is now checking struct tm fields its input
12363 and gethostbyaddr. getnameinfo is now restricted to numeric addresses as
12366 - Issue #9214: Set operations on a KeysView or ItemsView in collections now
12390 - Issue #5504: ctypes should now work with systems where mmap can't be
12393 - Issue #9507: Named tuple repr will now automatically display the right name in
12435 array.frombytes(), array.extend() as well as the array.array() constructor now
12453 - Issue #1194222: email.utils.parsedate now returns RFC2822 compliant four
12462 - Issue #9601: ftplib now provides a workaround for non-compliant
12466 - Issue #658749: asyncore's connect() method now correctly interprets winsock
12487 - Issue #8807: poplib.POP3_SSL class now accepts a context parameter, which is a
12492 - Issue #8866: parameters passed to socket.getaddrinfo can now be specified as
12501 - Issue #9567: functools.update_wrapper now adds a __wrapped__ attribute
12504 - Issue #3445: functools.update_wrapper now tolerates missing attributes on
12519 - Issue #7647: The posix module now has the ST_RDONLY and ST_NOSUID constants,
12522 - Issue #8688: MANIFEST files created by distutils now include a magic comment
12535 - Issue #3757: thread-local objects now support cyclic garbage collection.
12552 - Issue #6683: For SMTP logins we now try all authentication methods advertised
12556 - Issue #8814: function annotations (the ``__annotations__`` attribute) are now
12565 - Issue #3196: email header decoding is now forgiving if an RFC2047 encoded word
12568 - Issue #9444: Argparse now uses the first element of prefix_chars as the option
12675 - Issue #8413: structsequence now subclasses tuple.
12678 start byte and the continuation byte(s) are now considered invalid, instead of
12680 '\xf1\x80AB'.decode('utf-8', 'replace') now returns u'\ufffdAB' and replaces
12685 - Issue #9011: A negated imaginary literal (e.g., "-7j") now has real part -0.0
12686 rather than 0.0. So "-7j" is now exactly equivalent to "-(7j)".
12714 suites, the IGNORE_EXCEPTION_DETAIL directive now also ignores the module
12726 - Issue #8950: (See also issue #5080). Py_ArgParse*() functions now raise
12739 instead. codecs.charbuffer_encode() now accepts modifiable buffer objects
12834 - Issue #1583863: A str subclass can now override the __str__ method.
12839 - Issue #7845: Rich comparison methods on the complex type now return
12868 Now it matches other numeric types.
12887 NULL. The macro now returns a statically allocated empty string instead.
12907 - The __complex__ method is now looked up on the class of instances to make it
12917 in ** operator. The behaviour now conforms to that described in C99 Annex F.
12920 of integers: the result of a/b is now correctly rounded for ints a and b (at
12927 These executables now work properly with the arch(1) command: ``arch -ppc
12976 - Issue #1722344: threading._shutdown() is now called in Py_Finalize(), which
12995 breaks are now generated from the official Unicode Character Database files,
13051 - Code objects now support weak references.
13055 - Issue #8084: PEP 370 now conforms to system conventions for framework builds
13066 - PySlice_GetIndicesEx now clips the step to [-PY_SSIZE_T_MAX, PY_SSIZE_T_MAX]
13078 - Issue #8276: PyEval_CallObject() is now only available in macro form. The
13080 now removed (the macro was introduced in 1997!).
13090 PyArg_Parse now raise a DeprecationWarning for float arguments passed with the
13108 - The code flags for old __future__ features are now available again.
13130 - For traceback debugging, the pdb listing now also shows the locations where
13186 - Issue #9378: python -m pickle <pickle file> will now load and display the
13193 - Issue #9384: ``python -m tkinter`` will now display a simple demo applet.
13216 minor modifications by the PyPy project. The test suite now tests `datetime`
13230 - Issue #9268: ``pickletools.dis()`` now has an optional *annotate* argument
13238 - ``ast.literal_eval()`` now allows byte literals.
13243 - ``ast.literal_eval()`` now allows set literals.
13263 - Issue #9094: python -m pickletools will now disassemble pickle files listed in
13289 - Issue #9064: pdb's "up" and "down" commands now accept an optional argument
13292 - Issue #9018: os.path.normcase() now raises a TypeError if the argument is not
13298 - Issue #8682: The ssl module now temporary increments the reference count of a
13320 - Issue #8188: Comparisons between Decimal and Fraction objects are now
13324 complex, Decimal, Fraction) should now act as expected.
13329 - Issue #8899: time.struct_time now has class and attribute docstrings.
13334 strings. They are now correctly converted to strings.
13339 - Charset.body_encode now correctly handles base64 encoding by encoding with the
13343 - Issue #8845: sqlite3 Connection objects now have a read-only in_transaction
13346 - Issue #1289118: datetime.timedelta objects can now be multiplied by float and
13359 - Issue #8770: Now sysconfig displays information when it's called as a script.
13400 - Issue #8633: tarfile is now able to read and write archives with "raw" binary
13406 - Issue #8688: Distutils now recalculates MANIFEST every time.
13416 - The audioop module now supports sound fragments of length greater than 2**31
13434 utf8/strict) and accepts bytes. posix.environ keys and values are now bytes.
13467 - Issue #8354: The siginterrupt setting is now preserved for all signals, not
13470 - Issue #7192: webbrowser.get("firefox") now works on Mac OS X, as does
13482 It should correctly return an empty response now.
13504 - The do_handshake() method of SSL objects now adjusts the blocking mode of the
13516 - Issue #8451: Syslog module now uses basename(sys.argv[0]) instead of the
13537 - Issue #1540112: Now allowing the choice of a copy function in shutil.copytree.
13539 - Issue #4814: timeout parameter is now applied also for connections resulting
13544 - Issue #7154: urllib.request can now detect the proxy settings on OSX 10.6 (as
13547 - Issue #3817: ftplib.FTP.abort() method now considers 225 a valid response code
13562 - Issue #7606: XML-RPC traceback stored in X-traceback is now encoded to ASCII
13565 - Issue #8412: os.system() now accepts bytes, bytearray and str with surrogates.
13573 module now takes an optional timeout argument in seconds. Timeout support
13580 - Issue #7585: difflib context and unified diffs now place a tab between
13585 character sets will now consistently use a Content-Transfer-Encoding of 7bit
13588 - Issue #8375: test_distutils now checks if the temporary directory are still
13600 - Issue #8257: The Decimal construct now accepts a float instance directly,
13606 - Issue #8294: The Fraction constructor now accepts Decimal and float instances
13609 - Issue #7279: Comparisons involving a Decimal signaling NaN now signal
13611 NaN are unchanged.) Also, Decimal quiet NaNs are now hashable; Decimal
13614 - Issue #2531: Comparison operations between floats and Decimal instances now
13628 form feed (0x0C) are now considered linebreaks, as specified in Unicode
13632 Fractions instance now raise TypeError instead of returning True/False. This
13644 didn't support chflags() (for example ZFS under FreeBSD). The error is now
13647 - Issue #7860: platform.uname now reports the correct 'machine' type when Python
13662 - Issue #8168: py_compile now handles files with utf-8 BOMS.
13664 - ``tokenize.detect_encoding`` now returns ``'utf-8-sig'`` when a UTF-8 BOM is
13681 - subprocess.Popen now has restore_signals and start_new_session features. The
13726 - Issue #7959: ctypes callback functions are now registered correctly with the
13734 - Issue #7597: curses.use_env() can now be called before initscr(). Noted by
13739 - Issue #7970: email.Generator.flatten now correctly flattens message/rfc822
13746 of canonical and is_canonical) now accept instances of int and long wherever a
13829 - Issue #1628205: Socket file objects returned by socket.socket.makefile() now
13831 socket.sendall() method now properly handles interrupted system calls.
13837 - Issue #3972: http.client.HTTPConnection now accepts an optional source_address
13840 - socket.create_connection now accepts an optional source_address parameter.
13842 - Issue #5511: now zipfile.ZipFile can be used as a context manager. Initial
13856 - Issue #4757: `zlib.compress` and other methods in the zlib module now raise a
13913 - Issue #7133: SSL objects now support the new buffer API.
13917 - Issue #6123: tarfile now opens empty archives correctly and consistently
13931 - Issue #2054: ftplib now provides an FTP_TLS class to do secure FTP using TLS
13936 - Issue #4969: The mimetypes module now reads the MIME database from the
13939 - Issue #6816: runpy now provides a run_path function that allows Python code to
13945 - Issue #7318: multiprocessing now uses a timeout when it fails to establish a
13957 - Issue #7588: ``unittest.TextTestResult.getDescription`` now includes the test
13978 - Issue #6896: mailbox.Maildir now invalidates its internal cache each time a
13982 - Issue #7246 & Issue #7208: getpass now properly flushes input before reading
14004 - Issue #7077: logging: SysLogHandler now treats Unicode as per RFC 5424.
14006 - Issue #7099: Decimal.is_normal now returns True for numbers with exponent
14032 - Issue #4606: Passing 'None' if ctypes argtype is set to POINTER(...) does now
14035 - Issue #5042: Structure sub-subclass does now initialize correctly with base
14048 - Issue #6795: int(Decimal('nan')) now raises ValueError instead of returning
14078 payloads are now ordered by integer value rather than lexicographically.
14104 - Issue #6595: The Decimal constructor now allows arbitrary Unicode decimal
14137 when file descriptors are large; communicate() now uses poll() when possible.
14148 - Issue #6218: io.StringIO and io.BytesIO instances are now picklable.
14156 - Issue #1068268: The subprocess module now handles EINTR in internal os.waitpid
14180 information as the id command. os.getgroups() can now return more than 16
14201 - Issue #9000: datetime.timezone objects now have eval-friendly repr.
14208 tm_year value of 0 or 10,000. Now an OverflowError is raised in these edge
14211 - Issue #6641: The ``datetime.strptime`` method now supports the ``%z``
14218 - Issue #5094: The ``datetime`` module now has a simple concrete class
14229 For example, "1" or "ilib123" are now invalid formats and cause
14250 the result is now always correctly rounded, and is equivalent to ``td /
14280 - Issue #6877: It is now possible to link the readline extension to the libedit
14287 - Issue #6561: '\d' in a regex now matches only characters with Unicode category
14294 - Issue #2389: Array objects are now pickled in a portable manner.
14301 import lock is now reinitialized after fork.
14336 - Issue #3646: It is now easily possible to install a Python framework into your
14339 - Issue #3928: os.mknod() now available in Solaris, also.
14391 - python-config now supports multiple options on the same command line.
14450 - Issue #8108: test_ftplib's non-blocking SSL server now has proper handling of
14463 - Issue #8263: Now regrtest.py will report a failure if it receives a
14472 - Issue #7849: Now the utility ``check_warnings`` verifies if the warnings are
14487 - Issue #7712: test.support gained a new `temp_cwd` context manager which is now
14500 with no arguments, doctest.py now gives a usage message.
14504 - Issue #7498: test_multiprocessing now uses test.support.find_unused_port
14544 - Issue #7055: test___all__ now greedily detects all modules which have an
14592 - Accessing io.StringIO.buffer now raises an AttributeError instead of
14643 are always None now.
14645 - Issue #6137: The pickle module now translates module names when loading
14652 - Issue #3613: base64.{encode,decode}string are now called
14685 an error. Configure now explicitly tells you about this.
14705 - Issue #5982: staticmethod and classmethod now expose the wrapped
14717 - Issue #5994: the marshal module now has docstrings.
14732 - Issue #6121: pydoc now ignores leading and trailing spaces in the
14741 - In unittest, using a skipping decorator on a class is now equivalent to
14747 - Issue #1309352: fcntl now converts its third arguments to a C `long` rather
14761 - Issue #4066: smtplib.SMTP_SSL._get_socket now correctly returns the socket.
14764 - Issue #2116: Weak references and weak dictionaries now support copy()ing and
14778 - Issue #4050: inspect.findsource/getsource now raise an IOError if the 'source'
14783 now it does. This also means getfp method now returns the real fp.
14789 now be known as python3.
14802 - The _functools and _locale modules are now built into the libpython shared
14837 in all operations, including splitdrive, split, etc. splitunc() now issues
14852 shadowed by classtype's, even if it was None. property now
14870 format(complex(1, 2./3), '.5') now produces a sensible result.
14885 - Issue #5816: complex(repr(z)) now recovers z exactly, even when
14892 from Python/dtoa.c. As a consequence, (e.g.) round(x, 2) now
14913 finite float x, repr(x) now outputs a string based on the shortest
14947 - Issue #3739: The unicode-internal encoder now reports the number of characters
14960 - Issue #5311: bdist_msi can now build packages that do not depend on a
14963 - Issue #5150: IDLE's format menu now has an option to strip trailing
14985 - Issue #5084: unpickling now interns the attribute names of pickled objects,
14989 - The json module now works exclusively with str and not bytes.
14994 - Issue #3002: ``shutil.copyfile()`` and ``shutil.copytree()`` now raise an
14997 - Issue #5857: tokenize.tokenize() now returns named tuples.
14999 - Issue #4305: ctypes should now build again on mipsel-linux-gnu
15013 are now prefixed with 'Py' or '_ctypes'.
15015 - Issue #5041: ctypes does now allow pickling wide character.
15022 that's valid for float() is now valid for Fraction(), with the
15028 - Issue #1161031: fix readwrite select flag handling: POLLPRI now
15030 and POLLNVAL now call handle_close, not handle_expt_event. Also,
15031 dispatcher now has an 'ignore_log_types' attribute for suppressing
15048 for integer type codes: struct.pack('L', 0.3) should now raise
15087 - Issue #5499: The 'c' code for argument parsing functions now only accepts a
15114 are now between 50% and 150% faster.
15123 - Issue #4474: PyUnicode_FromWideChar now converts characters outside
15163 manager use: "with multiprocessing.Lock()" works now.
15168 - Issue #5177: Multiprocessing's SocketListener class now uses
15200 - Issue #5391: mmap now deals exclusively with bytes.
15203 when packing an integer: struct.pack('=L', -1) now raises
15234 it now forces its argument to double before testing for infinity.
15249 - Issue #4707: round(x, n) now returns an integer if x is an integer.
15257 - Issue #4874: Most builtin decoders now reject unicode input.
15262 - Issue #4991: os.fdopen now raises an OSError for invalid file descriptors.
15285 - Issue #4868: utf-8, utf-16 and latin1 decoding are now 2x to 4x faster. The
15304 - The internal table, _PyLong_DigitValue, is now an array of unsigned chars
15329 - Issue #4701: PyObject_Hash now implicitly calls PyType_Ready on types
15332 - Issue #4759: None is now allowed as the first argument of
15381 - The re.sub(), re.subn() and re.split() functions now accept a flags parameter.
15391 - Issue #7071: byte-compilation in Distutils is now done with respect to
15394 - Issue #7066: archive_util.make_archive now restores the cwd if an error is
15408 - Issue #6511: ZipFile now raises BadZipfile (instead of an IOError) when
15416 - Issue #6466: now distutils.cygwinccompiler and distutils.emxccompiler
15447 - Issue #6286: Now Distutils upload command is based on urllib2 instead of
15454 - Issue #5201: distutils.sysconfig.parse_makefile() now understands `$$`
15461 - Issue #6048: Now Distutils uses the tarfile module in archive_util.
15471 - Issue #6041: Now distutils `sdist` and `register` commands use `check` as a
15490 - Issue #2245: aifc now skips chunk types it doesn't recognize, per spec.
15526 - Issue #2522: locale.format now checks its first argument to ensure it has
15539 - collections.deque() objects now have a read-only attribute called maxlen.
15562 - The _asdict() for method for namedtuples now returns an OrderedDict().
15564 - configparser now defaults to using an ordered dictionary.
15593 - Issue #2279: distutils.sdist.add_defaults now add files
15606 numbers hierarchy now has its own __slots__ declarations.
15624 - Issue #1818: collections.namedtuple() now supports a keyword argument
15633 - Issue #4195: The ``runpy`` module (and the ``-m`` switch) now support
15646 - Issue #1520877: Now distutils.sysconfig reads $AR from the
15657 - The shelve module now defaults to pickle protocol 3.
15725 - Issue #4959: inspect.formatargspec now works for keyword only arguments
15738 - Issue #3826 and #4791: The socket module now closes the underlying socket
15745 - Issue #3860: GzipFile and BZ2File now support the context management protocol.
15795 - Issue #4756: zipfile.is_zipfile() now supports file-like objects. Patch by
15801 - Issue #4223: inspect.getsource() will now correctly display source code
15805 - Issue #4201: pdb can now access and display source code loaded via
15810 302 conformant loader) will now work correctly in most cases (they
15825 - Issue #4021: tokenize.detect_encoding() now raises a SyntaxError when the
15832 - Issue #4483: _dbm module now builds on systems with gdbm & gdbm_compat
15854 - Issue #4458: getopt.gnu_getopt() now recognizes a single "-" as an argument,
15861 the corresponding tests now pass.
15873 - Issue #5104: The socket module now raises OverflowError when 16-bit port and
15911 - Issue #4472: "configure --enable-shared" now works on OSX
15913 - Issues #4728 and #4060: WORDS_BIGEDIAN is now correct in Universal builds.
15938 - Issue #5175: PyLong_AsUnsignedLongLong now raises OverflowError
15943 - Issue #3632: from the gdb debugger, the 'pyo' macro can now be called when
15961 - Issue #4751: hashlib now releases the GIL when hashing large buffers
15967 - Issue #4738: Each zlib object now has a separate lock, allowing several streams
15969 is now released when computing the CRC of a large buffer. Patch by ebfe.
15983 - Issue #5228: Make functools.partial objects can now be pickled.
15993 the same behaviour as test_ttkguionly (and now also test_tk) which is to
15997 that should cause a test to be skipped are now done using import_module
16019 - Issue #3689: The list reversed iterator now supports __length_hint__
16020 instead of __len__. Behavior now matches other reversed iterators.
16030 - Issue #4387: binascii now refuses to accept str as binary input.
16102 - Issue #4363: The uuid.uuid1() and uuid.uuid4() functions now work even if
16105 - FileIO's mode attribute now always includes ``"b"``.
16108 keys are now written out in UTF-8.
16116 - Issue #4307: The named tuple that ``inspect.getfullargspec()`` returns now
16135 - Demos of the socketserver module now work with Python 3.
16146 - Issue #4211: The __path__ attribute of frozen packages is now a list instead
16168 - Issue #4213: The file system encoding is now normalized by the
16203 - Issue #3725: telnetlib now works completely in bytes.
16266 the "-c" and "-m" parameters. Now the behaviour is as expected under Linux,
16333 - bytes(o) now tries to use o.__bytes__() before using fallbacks.
16335 - Issue #1204: The configure script now tests for additional libraries
16368 It is now maintained outside of the standard library at
16404 - The _bytesio and _stringio modules are now compiled into the python binary.
16441 now. Slicing, slice assignment and comparison (equality and inequality)
16455 - Issue #1819: function calls with several named parameters are now on
16491 Code contributed by Matt Giuca. quote() now encodes the input
16497 - Issue #2235: numbers.Number now blocks inheritance of the default id()
16507 - Issue #3476: binary buffered reading through the new "io" library is now
16515 - Issue #2491: os.fdopen is now almost an alias for the built-in open(), and
16546 - Issue #3280: like chr(), the "%c" format now accepts unicode code points
16556 - Exception tracebacks now support exception chaining.
16578 argument now must be a bytes object in any case.
16584 - The gettext library now consistently uses Unicode strings for message ids
16619 - Issue #2630: implement PEP 3138. repr() now returns printable
16642 code now allows any unicode string and returns a utf-8 encoded
16646 - Issue #2863: generators now have a ``gen.__name__`` attribute that
16648 ``func.func_code.co_name``. The repr() of a generator now also
16651 - Issue #2831: enumerate() now has a ``start`` argument.
16659 - Issue #2196: hasattr() now lets exceptions which do not inherit
16707 - The ``pickle`` module is now automatically use an optimized C
16742 rlcompleter's ``Completer.complete()`` method are now caught and
16749 large to fit in a C long. ldexp(x, n) now returns a zero (with
16823 - Bug #2565: The repr() of type objects now calls them 'class', not
16839 - ctypes objects now support the PEP3118 buffer interface.
16841 - Issue #2682: ctypes callback functions now longer contain a cyclic
16849 - The bundled libffi copy is now in sync with the recently released
16858 - "make install" is now an alias for "make altinstall", to prevent
16896 instance, this is now decoded to a (Unicode) str instance. The
16907 - Issue #1202: zlib.crc32 and zlib.adler32 now return an unsigned
16911 has been renamed tokenize and now works with bytes rather than
16978 - Issue #1769: Now int("- 1") is not allowed any more.
16992 extension module. Now we get for example '%1 is not a valid Win32
17003 are now enough to print the corresponding list of objects considered
17042 - Weakref dictionaries now inherit from MutableMapping.
17085 - str8 now has the same construction signature as bytes.
17087 - Comparisons between str and str8 now return False/True for ==/!=.
17111 for the streams (fileno(stdin) < 0). For now this happens only for
17170 - PEP 3127: octal literals now start with "0o". Old-style octal
17174 - None, True, False are now keywords.
17188 - range() now returns an iterator rather than a list. Floats are not
17200 - PEP 3115: new metaclasses: the metaclass is now specified as a
17201 keyword arg in the class statement, which can now use the full
17218 - input() became raw_input(): the name input() now implements the
17225 - PEP 3106: dict.iterkeys(), .iteritems(), .itervalues() are now gone;
17229 - PEP 3105: print is now a function. Also (not in the PEP) the
17230 'softspace' attribute of files is now gone (since print() doesn't
17245 - 'except E, V' must now be spelled as 'except E as V' and deletes V
17267 - exec is now a function.
17301 - zip(), map() and filter() now return iterators, behaving like their
17303 sequences of unequal length -- it now stops after the shortest one
17410 now issue a UnicodeWarning and interpret the two objects as
17431 - Bug #1536021: __hash__ may now return long int; the final hash
17439 - On Windows, the PyErr_Warn function is now exported from
17442 - Bug #1191458: tracing over for loops now produces a line event
17473 - uuid.UUID now has a bytes_le attribute. This returns the UUID in
17483 - Patch #1536071: trace.py should now find the full module name of a
17486 - logging's atexit hook now runs even if the rest of the module has
17509 - Patch #1532975 was applied, which fixes Bug #1533481: ctypes now
17515 now triggers a DeprecationWarning.
17521 - test_socketserver should now work on cygwin and not fail sporadically
17524 - test_mailbox should now work on cygwin versions 2006-08-10 and later.
17528 - test_threading now skips testing alternate thread stack sizes on
17568 - _PyWeakref_GetWeakrefCount() now returns a Py_ssize_t; it previously
17575 PyErr_Warn() is now deprecated in favor of PyErr_WarnEx().
17587 Unfortunately, at least one compiler now cares about that, so complicated
17602 - Patch #1521179: Python now accepts the standard options ``--help`` and
17620 - Fix #1693149. Now you can pass several modules separated by
17632 - Bug #1002398: The documentation for os.path.sameopenfile now correctly
17639 - Bug #1441397: The compiler module now recognizes module and function
17648 - The distutils version has been changed to 2.5.0, and is now kept
17653 - Bug #1459963: urllib and urllib2 now normalize HTTP header names with
17681 get_param() used to return a 3-tuple of (None, None, string) whereas now it
17686 now only decoded in encoded parameter parts.
17688 - Bug #1517990: IDLE keybindings on MacOS X now work correctly
17690 - Bug #1517996: IDLE now longer shows the default Tk menu when a
17706 - Patch #1529514: The _ctypes extension is now compiled on more
17723 /dev/null in certain cases; this is now fixed.
17725 - Bug #1467450: On Mac OS X 10.3, RTLD_GLOBAL is now used as the
17729 compiled without thread support; this is now fixed.
17732 methods now allow their database parameter to be None as the
17742 how long the test file should take to play. Now accepts taking 2.93 secs
17747 run via ``regrtest.py``. Now they do.
17757 - PythonLauncher now works correctly when the path to the script contains
17760 - Bug #1527397: PythonLauncher now launches scripts with the working directory
17778 using augmented assignment is now correctly determined.
17780 - Bug #927248: Recursive method-wrapper objects can now safely
17790 - Bug #1519018: 'as' is now validated properly in import statements.
17793 now ints rather than longs.
17813 - Bug #1508010: msvccompiler now requires the DISTUTILS_USE_SDK
17819 - warnings.py now ignores ImportWarning by default
17821 - string.Template() now correctly handles tuple-values. Previously,
17840 - Bug #1513223: .close() of a _socketobj now releases the underlying
17855 - The compiler module now correctly compiles the new try-except-finally
17858 - The wsgiref package is now installed properly on Unix.
17865 now.
17875 overwrote the wrong fields, this is fixed now.
17880 - Bug #1518190: The ctypes.c_void_p constructor now accepts any
17883 - Patch #1517790: It is now possible to use custom objects in the ctypes
17887 - The '_ctypes' extension module now works when Python is configured
17890 - Bug #1513646: os.access on Windows now correctly determines write
17906 - 'configure' now detects the zlib library the same way as distutils.
17913 - Bug #1517388: sqlite3.dll is now installed on Windows independent
17945 (such as iterating over an integer) have been improved and now include the
17962 - The string and unicode methods startswith() and endswith() now accept
17968 Now a TypeError is raised if the char buffer is not present but is
17971 - Patch #1346214: Statements like "if 0: suite" are now again optimized
17974 - Builtin exceptions are now full-blown new-style classes instead of
17981 - Patch #921466: sys.path_importer_cache is now used to cache valid and
17985 - Patch #1442927: ``long(str, base)`` is now up to 6x faster for non-power-
17998 - PyErr_NewException now accepts a tuple of base classes as its
18004 - Bug #1462152: file() now checks more thoroughly for invalid mode
18012 - WindowsError now has two error code attributes: errno, which carries
18023 They are now passed through (except when using the C API function
18050 - Patch #1490224: time.altzone is now set correctly on Cygwin.
18052 - Patch #1435422: zlib's compress and decompress objects now have a
18055 - Patch #1454481: thread stack size is now tunable at runtime for thread
18058 - On Win32, os.listdir now supports arbitrarily-long Unicode path names
18062 As a result, these functions now raise WindowsError instead of OSError.
18065 ``QueryPerformanceCounter()`` now (as was already the case on 32-bit
18088 - bsddb: the bsddb.dbtables Modify method now raises the proper error and
18093 now works reliably. It has been updated to use automatic BerkeleyDB
18118 - Bug #1117556: SimpleHTTPServer now tries to find and use the system's
18121 - Bug #1339007: Shelf objects now don't raise an exception in their
18124 - Patch #1455898: The MBCS codec now supports the incremental mode for
18153 - The functions in the ``pprint`` module now sort dictionaries by key
18157 using ``pprint.pprint(a_dict)`` in a doctest is now reliable.
18179 - Patch #721464: pdb.Pdb instances can now be given explicit stdin and
18207 - OpenBSD 3.9 is supported now.
18254 to unicode when it didn't make sense. 'u#' now requires a unicode string.
18260 number now, which might be a long integer. ``PyLong_FromVoidPtr`` and
18274 - Python on OS X 10.3 and above now uses dlopen() (via dynload_shlib.c)
18275 to load extension modules and now provides the dl module. As a result,
18276 sys.setdlopenflags() now works correctly on these systems. (SF patch
18291 - Bug #1467952: os.listdir() now correctly raises an error if readdir()
18306 abstract namespace that is now fully supported.
18330 - The pydoc module now supports documenting packages contained in
18333 - The pkgutil module now has several new utility functions, such
18337 - The mailbox module can now modify and delete messages from
18371 - The Makefile now has a reindent target, which runs reindent.py on
18388 now accept formats "%u" for unsigned ints, "%lu" for unsigned longs,
18394 - test_contextlib now checks contextlib.nested can cope with exceptions
18397 - test_cmd_line now checks operation of the -m and -c command switches
18403 - regrtest.py now has a -M option to run tests that test the new limits of
18435 - PEP 338: -m command line switch now delegates to runpy.run_module
18442 - Bug #1421664: sys.stderr.encoding is now set to the same value as
18447 - Patch #1460496: round() now accepts keyword arguments.
18455 now gives a SyntaxError.
18458 cell object. Now, a ``cell_contents`` attribute has been added
18461 - Patch #1123430: Python's small-object allocator now returns an arena to
18464 freed. Some applications will see a drop in virtual memory size now,
18473 - Patch #1434038: property() now uses the getter's docstring if there is
18486 KeyboardInterrupt and SystemExit to directly inherit from BaseException now.
18487 Raising a string exception now raises a DeprecationWarning.
18489 - Patch #1438387, PEP 328: relative and absolute imports. Imports can now be
18505 - The copy module now "copies" function objects (as atomic objects).
18506 - dict.__getitem__ now looks for a __missing__ hook before raising
18528 - ``PYMALLOC_DEBUG`` builds now add ``4*sizeof(size_t)`` bytes of debugging
18530 now allow Python to make use of memory blocks exceeding 2**32 bytes for
18536 for the decimal point. Now both strings and unicode always use periods.
18541 - Bug #959576: The pwd module is now built in. This allows Python to be
18551 This was not portable. float('0x3') now raises a ValueError.
18555 is now displayed in interactive prompt banner.
18558 "except" clauses can now be written together with a "finally" clause in
18562 now encodes backslash correctly.
18566 - Bug #1281408: Py_BuildValue now works correctly even with unsigned longs
18571 it will now use a default error message in this case.
18577 encodings now include a mapping for the Apple logo)
18588 The following code now raises a SyntaxError: foo(a = i for i in range(10))
18599 - All iterators now have a Boolean value of True. Formerly, some iterators
18642 realloc now leaves such blocks under the control of the platform C
18648 - SF bug #1224347: hex longs now print with lowercase letters just
18657 - SF patch #1180995: marshal now uses a binary format by default when
18662 of floats now simply copy bytes around.
18667 - patch #1109424: int, long, float, complex, and unicode now check for the
18669 magic slot was ignored during conversion. Semantics now match the way
18676 NULL, now raise an AttributeError when attempting to set or delete the
18680 - It is now safe to call PyGILState_Release() before
18697 - Defining a class with empty parentheses is now allowed
18715 - Bug #1074011: closing sys.std{out,err} now causes a flush() and
18718 - min() and max() now support key= arguments with the same meaning as in
18721 - The peephole optimizer now performs simple constant folding in expressions:
18724 - set and frozenset objects can now be marshalled. SF #1098985.
18750 - Patch #1231053: The audioop module now supports encoding/decoding of alaw.
18754 now exposed via new attributes.
18779 - Bug #854823: socketmodule now builds on Sun platforms even when
18782 - Patch #1393157: os.startfile() now has an optional argument to specify
18789 mmap.mmap(-1, size) now returns anonymous memory in both Unix and Windows.
18792 - Patch #1422385: The nis module now supports access to domains other
18797 WindowsError now (instead of OSError).
18810 The code now conforms to the documented signature.
18867 - Bug #728515: mmap.resize() now resizes the file on Unix as it did
18873 - Patch #1231069: The fcntl.ioctl function now uses the 'I' code for
18882 - Patch #1212117: os.stat().st_flags is now accessible as an attribute
18891 - collections.deque objects now support a remove() method.
18893 - operator.itemgetter() and operator.attrgetter() now support retrieving
18897 - os.access now supports Unicode path names on non-Win32 systems.
18913 - stat_float_times is now True.
18915 - array.array objects are now picklable.
18920 - itertools.islice() now accepts None for the start and step arguments.
18924 - datetime.datetime() now has a strptime class method which can be used to
18941 - The email module's parsedate_tz function now sets the daylight savings
18946 now sport attributes that provide access to the parts of the result.
18948 - Patch #1462498: sgmllib now handles entity and character references
18961 - Bug #1445068: getpass.getpass() can now be given an explicit stream
18964 - Patch #1462313, bug #1443328: the pickle modules now can handle classes
18967 - Bug #1250170: mimetools now handles socket.gethostname() failures gracefully.
18969 - patch #1457316: "setup.py upload" now supports --identity to select the
18972 - Queue.Queue objects now support .task_done() and .join() methods
18976 - popen2.Popen objects now preserve the command in a .cmd attribute.
18980 - email 4.0 package now integrated. This is largely the same as the email 3.0
18982 now used (e.g. mail.message instead of email.Message). The MIME classes
18984 email.MIMEText). The old names are still supported for now. Several
18988 - Patches #1436130/#1443155: codecs.lookup() now returns a CodecInfo object
18996 a ValueError instead of a StopIteration now (like file and cString.String do).
18997 cStringIO.StringIO.isatty() will raise a ValueError now if close() has been
19002 - Patch #1446372: quit and exit can now be called from the interactive
19014 - The compiler package now supports future imports after the module docstring.
19016 - Bug #1413790: zipfile now sanitizes absolute archive names that are
19019 - Patch #1215184: FileInput now can be given an opening hook which can
19022 - Patch #1212287: fileinput.input() now has a mode parameter for
19025 - Patch #1215184: fileinput now has a fileno() function for getting the
19028 - Patch #1349274: gettext.install() now optionally installs additional
19031 - Patch #1337756: fileinput now accepts Unicode filenames.
19033 - Patch #1373643: The chunk module can now read chunks larger than
19036 - Patch #1417555: SimpleHTTPServer now returns Last-Modified headers.
19038 - Bug #1430298: It is now possible to send a mail with an empty
19041 - Bug #1432260: The names of lambda functions are now properly displayed
19044 - Patch #1412872: zipfile now sets the creator system to 3 (Unix)
19047 - Patch #1349118: urllib now supports user:pass@ style proxy
19051 - Bug #902075: urllib2 now supports 'host:port' style proxy specifications.
19057 - Bug #1394565: SimpleHTTPServer now doesn't choke on query parameters
19060 - Bug #1403410: The warnings module now doesn't get confused
19067 - Patch #1117398: cookielib.LWPCookieJar and .MozillaCookieJar now raise
19089 - Bug #1365984: urllib now opens "data:" URLs again.
19129 - Patch #1062060: urllib.urlretrieve() now raises a new exception, named
19133 - Bug #1121494: distutils.dir_utils.mkpath now accepts Unicode strings.
19156 - textwrap now processes text chunks at O(n) speed instead of O(n**2).
19159 - urllib2 has now an attribute 'httpresponses' mapping from HTTP status code
19175 - The tokenize module now detects and reports indentation errors.
19180 the generate_tokens() function now accepts a callable argument that
19196 - distutils.commands.register now encodes the data as UTF-8 before posting
19199 - decimal operator and comparison methods now return NotImplemented
19238 - Patch #1049151: xdrlib now unpacks booleans as True or False.
19263 + Dialects are now validated by the underlying C code, better
19268 + quotechar=None and quoting=QUOTE_NONE now work the way PEP 305
19270 + the parser now removes the escapechar prefix from escaped characters.
19271 + when quoting=QUOTE_NONNUMERIC, the writer now tests for numeric
19273 + when quoting=QUOTE_NONNUMERIC, the reader now casts unquoted fields
19275 + reader now allows \r characters to be quoted (previously it only allowed
19281 + The dialect registry now contains instances of the internal
19283 + the internal c-coded dialect type is now immutable.
19284 + register_dialect now accepts the same keyword dialect specifications
19300 - _DummyThread objects in the threading module now delete self.__block that is
19305 - The imghdr module now detects Exif files.
19307 - StringIO.truncate() now correctly adjusts the size attribute.
19310 - locale.py now uses an updated locale alias table (built using
19320 - optparse now optionally imports gettext. This allows its use in setup.py.
19330 - unittest.TestCase.run() and unittest.TestSuite.run() can now be successfully
19334 - heapq.nsmallest() and heapq.nlargest() now support key= arguments with
19337 - Bug #1076985: ``codecs.StreamReader.readline()`` now calls ``read()`` only
19345 - The reconvert.quote function can now emit triple-quoted strings. The
19346 reconvert module now has some simple documentation.
19348 - ``UserString.MutableString`` now supports negative indices in
19351 - Bug #1149508: ``textwrap`` now handles hyphenated numbers (eg. "2004-03-05")
19360 - Bug #1251300: On UCS-4 builds the "unicode-internal" codec will now complain
19361 about illegal code points. The codec now supports PEP 293 style error
19364 - Bug #1235646: ``codecs.StreamRecoder.next()`` now reencodes the data it reads
19374 - ` uu.encode()`` and ``uu.decode()`` now support unicode filenames.
19380 module. It's possible to generate HTML calendar now and the module can be
19399 - The sources of zlib are now part of the Python distribution (zlib 1.2.3).
19400 The zlib module is now built in on Windows.
19416 and linking has changed (prebinding is now deprecated, and libcc_dynamic
19424 - setup.py now uses the directories specified in LDFLAGS using the -L option
19442 ``PyObject_{Free, FREE}``. They map to the system ``free()`` now. If memory
19449 exists it will fail now (probably with segfaults, but calling wrong
19457 mapping argument now. This string is used as a mapping table. Byte values
19465 - In test_os, st_?time is now truncated before comparing it with ST_?TIME.
19489 - Patch #1180012: The documentation for modulefinder is now in the library reference.
19557 aside, all bugs in all three reports are fixed now.
19578 now; and, when the index is a slice object, only the spellings needed
19579 by the slice are recomputed now.
19635 - Bug #1054139 _PyString_Resize() now invalidates its cached hash value.
19640 - Bug #1048870: the compiler now generates distinct code objects for
19649 no ValueError is raised on an 'invalid' match group. Now the delimiter is
19654 - Bug #902037: XML.sax.saxutils.prepare_input_source() now combines relative
19657 - The whichdb module can now be run from the command line.
19659 - Bug #1045381: time.strptime() can now infer the date using %U or %W (week of
19693 - The bytecode optimizer now folds tuples of constants into a single
19703 correctly now.
19722 - Patch 983206: distutils now obeys environment variable LDSHARED, if
19727 - time.strptime() now properly escapes timezones and all other locale-specific
19747 - re's findall() and finditer() functions now take an optional flags argument
19752 - rfc822 Messages now support iterating over the headers.
19757 - httplib now offers symbolic constants for the HTTP status codes.
19761 Now it acts like a mixed-type comparison: ``False`` for ``==``,
19769 - bdist_rpm now supports command line options --force-arch,
19773 - SF patch #998993: The UTF-8 and the UTF-16 stateful decoders now support
19775 ``codecs.StreamReader`` now implements buffering, which enables proper
19782 - The documentation for doctest is greatly expanded, and now covers all
19788 some old code apparently relies on it. For now, all we can do is
19792 - httplib now handles ipv6 address/port pairs.
19794 - SF bug #1017864: ConfigParser now correctly handles default keys,
19808 - Building on darwin now includes /opt/local/include and /opt/local/lib for
19812 - pyport.h now defines a Py_IS_NAN macro. It works as-is when the
19816 pyport.h's default Py_IS_INFINITY definition now.
19834 call the platform ``malloc()`` directly now, regardless of build type.
19836 - PyLong_AsUnsignedLong[Mask] now support int objects as well.
19850 - ``plistlib`` now supports non-dict root objects. There is also a new
19857 - The text file comparison scripts ``ndiff.py`` and ``diff.py`` now
19872 - SF patch #1007189: ``from ... import ...`` statements now allow the name
19885 bases. In addition, if the exponent is large, the algorithm now does
19905 functions is now writable.
19907 - code_new (a.k.a new.code()) now checks its arguments sufficiently
19924 - difflib now supports HTML side-by-side diff.
19929 - Patch 1012740: truncate() on a writable cStringIO now resets the
19940 versions of Python, have now been removed.
19951 - the random module now uses os.urandom() for seeding if it is available.
19954 - difflib and diff.py can now generate HTML.
19956 - bdist_rpm now includes version and release in the BuildRoot, and
19959 - distutils build/build_scripts now has an -e option to specify the
19964 - tarfile now generates GNU tar files by default.
19966 - HTTPResponse has now a getheaders method.
19972 the class now uses email.Utils.formatdate to generate the time stamp.
19975 font. The Font class constructor now has an additional exists argument
19984 - The decimal package's Context.copy() method now returns deep copies.
20009 this effort, some old and little- (never?) used features are now
20014 already did a better job of that, are stronger now than ever, and the
20027 - IDLE's shortcut keys for windows are now case insensitive so that
20035 - Backward incompatibility: longintrepr.h now triggers a compile-time
20047 processor's timestamp counter now works on PPC platforms.
20071 since 1992, but is now in the library reference as well.
20076 - FreeBSD 6 is now supported.
20130 arbitrarily far removed from M's author's intent). Now subsequent
20140 sys.modules themselves, and such tests will break now if they do an
20143 - u'%s' % obj will now try obj.__unicode__() first and fallback to
20147 PyArg_VaParse(). Both are now documented. Thanks Greg Chapman.
20160 - Compiler now treats None as a constant.
20163 __oct__, and __hex__ are now checked. Returning an invalid type
20170 and str.is* methods can now work correctly with UTF-8 locales.
20177 now refers sys.stdin.encoding not just ISO-8859-1 anymore. This
20183 - cpickle now supports the same keyword arguments as pickle.
20192 many new features were added. Full docs will appear later. For now
20202 - Tkinter now supports the wish -sync and -use options.
20209 - nntplib does now allow ignoring a .netrc file.
20211 - urllib2 now recognizes Basic authentication even if other authentication
20214 - Bug #1001053. wave.open() now accepts unicode filenames.
20246 Empty exceptions raised by non-blocking calls now occur only if the
20254 - Bugs #979794 and #980117: difflib.get_grouped_opcodes() now handles the
20258 - Bug #980938: smtplib now prints debug output to sys.stderr.
20260 - Bug #930024: posixpath.realpath() now handles infinite loops in symlinks by
20265 drive letter and the rest of the path. Also clearly handles UNC addresses now
20268 - bug #679953: zipfile.py should now work for files over 2 GB. The packed data
20272 - decimal.py now only uses signals in the IBM spec. The other conditions are
20275 - codecs module now has two new generic APIs: encode() and decode()
20286 o Can now pass setUp and tearDown functions when creating
20308 now processed in the same way as values from the command line; this
20337 error occurs while loading the module, these now delete the module's
20348 - A large pile of datetime field-extraction macros is now documented,
20368 - The test data files for the decimal test suite are now installed on
20384 - weakref.ref is now the type object also known as
20387 objects now (one object instead of three).
20392 - Bug #215126. The locals argument to eval(), execfile(), and exec now
20395 - marshal now shares interned strings. This change introduces
20448 intermediate sequences. Also, extend() now pre-allocates the
20458 overallocation ranged between 3% and 25%. Now, it is a constant 12%.
20459 For smaller lists (n<8), overallocation was upto eight elements. Now,
20463 - Most list bodies now get re-used rather than freed. Speeds up list
20466 - The dict.update() method now accepts all the same argument forms
20467 as the dict() constructor. This now includes item lists and/or
20489 - input() built-in function now respects compiler flags such as
20512 hex/oct literals and I think it's best to be silent now.
20515 methods now accept an optional argument specifying a fill
20523 really more appropriate than the function's attribute. So from now
20535 had no knowledge of Python's weakref objects. It does now. When
20536 weakrefs with callbacks become part of cyclic garbage now, those
20548 - Compiler flags set in PYTHONSTARTUP are now active in __main__.
20558 - CObjects are now mutable (on the C level) through PyCObject_SetVoidPtr.
20560 - list.sort() now supports three keyword arguments: cmp, key, and reverse.
20578 - The % formatting operator now supports '%F' which is equivalent to
20584 - zip() with no arguments now returns an empty list instead of raising
20587 - obj.__contains__() now returns True/False instead of 1/0. SF patch
20592 will now just hit the recursion limit. See SF patch 825639.
20594 - str and unicode built-in types now have an rsplit() method that is
20617 - time module code that deals with input POSIX timestamps will now raise
20625 - fcntl.ioctl now warns if the mutate flag is not specified.
20627 - nt now properly allows referring to UNC roots, e.g. in nt.stat().
20629 - the weakref module now supports additional objects: array.array,
20632 - operator.isMappingType() and operator.isSequenceType() now give
20635 - socket.sslerror is now a subclass of socket.error . Also added
20641 - array objects now support the copy module. Also, their resizing
20644 Also, array.array() and array.extend() now accept any iterable argument
20647 - cStringIO.writelines() now accepts any iterable argument and writes
20652 - time.strftime() now checks that the values in its time tuple argument
20659 - The socket module now supports Bluetooth sockets, if the
20666 - Several modules now take advantage of collections.deque() for
20682 - The xml.parsers.expat module now provides Expat 1.95.7.
20688 - select.select() now accepts sequences for its first three arguments.
20690 - cStringIO now supports the f.closed attribute.
20692 - The signal module now exposes SIGRTMIN and SIGRTMAX (if available).
20694 - curses module now supports use_default_colors(). [patch #739124]
20709 with k random bits. This method is now an optional part of the API
20711 can now use randrange() for ranges with a length >= 2**53. Formerly,
20713 SF bug #812202). Generators that do not define genrandbits() now
20721 - itertools now has a new tee() function which produces two independent
20724 - itertools.izip() with no arguments now returns an empty iterator instead
20738 - Bug #1266283: The new function "lexists" is now in os.path.__all__.
20742 handler can now also be os.listdir.
20750 - Bug #981299: rsync is now a recognized protocol in urlparse that uses a
20756 - Bug #934282: pydoc.stripid() is now case-insensitive. Thanks Robin Becker.
20758 - Bug #823209: cmath.log() now takes an optional base argument so that its
20766 - Fixed #877165: distutils now picks the right C++ compiler command
20769 - urllib.urlopen().readline() now handles HTTP/0.9 correctly.
20774 - The distutils install command now supports the --home option and
20777 - asyncore.loop now has a repeat count parameter that defaults to
20780 - The distutils sdist command now ignores all .svn directories, in
20788 - stringprep.py now uses built-in set() instead of sets.Set().
20816 - The encodings package will now apply codec name aliases
20823 - base64 now supports RFC 3548 Base16, Base32, and Base64 encoding and
20826 - urllib2 now supports processors. A processor is a handler that
20830 - distutils compilers now compile source files in the same order as
20833 - pprint.pprint() and pprint.pformat() now have additional parameters
20836 - Patch #750542: pprint now will pretty print subclasses of list, tuple
20842 - httplib.HTTP.putrequest now offers to omit the implicit Accept-Encoding.
20851 - bisect.py and heapq.py now have underlying C implementations
20863 - tmpfile.mkstemp now returns an absolute path even if dir is relative.
20867 - The fieldnames argument to the csv module's DictReader constructor is now
20876 - dircache now passes exceptions to the caller, instead of returning
20879 - The bsddb module and dbhash module now support the iterator and
20883 - The csv module's DictReader and DictWriter classes now accept keyword
20890 - sets.py now runs under Py2.2. In addition, the argument restrictions
20894 - _strptime.py now has a behind-the-scenes caching mechanism for the most
20911 - The db2pickle and pickle2db scripts can now dump/load gdbm files.
20914 It is now [ picklefile ] dbfile. This provides better symmetry with
20915 db2pickle. The file arguments to both scripts are now source followed by
20923 - texcheck.py now detects double word errors.
20929 now.
20931 - py-electric-colon now works when pending-delete/delete-selection mode is
20943 - Bug #978645: Modules/getpath.c now builds properly in --disable-framework
20946 - Profiling using gprof is now available if Python is configured with
20949 - Profiling the VM using the Pentium TSC is now possible if Python
20952 - In order to find libraries, setup.py now also looks in /lib64, for use
20977 - Thanks to Anthony Tuininga, the datetime module now supplies a C API
21060 - It is now possible to import from zipfiles containing additional
21081 - Lib/encodings/rot_13.py when used as a script, now more properly
21137 - The interpreter is now more robust about importing the warnings
21149 - The thread_id is now initialized to 0 in a non-thread build. SF bug
21157 - weakref.proxy() can now handle "del obj[i]" for proxy objects
21164 - time.strptime now exclusively uses the Python implementation
21191 - distutils now supports MSVC 7.1
21193 - doctest now examines all docstrings by default. Previously, it would
21212 The close() method can now be called more than once without complaint.
21214 - The classes in threading.py are now new-style classes. That they
21217 - The urllib2 digest authentication handlers now define the correct
21226 - SF bug 770601: CGIHTTPServer.py now passes the entire environment
21236 - SF patch 549151: urllib and urllib2 now redirect POSTs on 301
21246 - SF bug 764548: re now allows subclasses of str and unicode to be
21255 - The Queue module now has an __all__ attribute.
21262 - SF bug 753592: webchecker/wsgui now handles user supplied directories.
21264 - The trace.py script has been removed. It is now in the standard library.
21269 - Python now compiles with -fno-strict-aliasing if possible (SF bug 766696).
21277 __BSD_VISIBLE symbol was defined. configure now defines it as
21283 - Unicode objects now support mbcs as a built-in encoding, so the C
21298 is raised now.
21301 use. The interpreter now calls WSACleanup() from Py_Finalize()
21307 - Bundlebuilder now inherits default values in the right way. It was
21317 - Python is now compiled with -mno-fused-madd, making all tests pass
21328 - A program can now set the environment variable PYTHONINSPECT to some
21333 - list.index() now accepts optional start and stop arguments. Similar
21374 tuple. By default, the iterators now access data elements directly
21393 - cPickle Pickler and Unpickler objects now participate in garbage
21397 especially likely on Windows. The strings returned are now guaranteed
21403 - array.array.insert() now treats negative indices as being relative
21406 - The datetime module classes datetime, time, and timedelta are now
21411 - itertools.islice() now accepts stop=None as documented.
21445 - ZipFile.testzip() now only traps BadZipfile exceptions. Previously,
21449 - The logging module now has a new function, makeLogRecord() making
21456 SourceForge) is now included as Lib/idlelib. The old Tools/idle is
21474 Builtin functions are now treated as atomic, fixing bug #746304.
21492 - timeit.py now checks the current directory for imports.
21494 - urllib2.py now knows how to order proxy classes, so the user doesn't
21501 - random.Random objects can now be pickled.
21506 - pydoc now offers help on keywords and topics.
21519 - Setting DESTDIR during 'make install' now allows specifying a
21563 where C: is not the system drive report that the installer now
21575 - The OSA modules now allow direct access to properties of the
21577 - The Package Manager can now update itself.
21624 - bool() called without arguments now returns False rather than
21631 few files that used to be linked only with pgen are now linked with
21634 - The repr() of a weakref object now shows the __name__ attribute of
21641 - list.insert(i, x) now interprets negative i as it would be
21646 - range() now works even if the arguments are longs with magnitude
21659 - dict.pop now takes an optional argument specifying a default
21681 - "%c" % u"a" now returns a unicode string instead of raising a
21682 TypeError. u"%c" % 0xffffffff now raises an OverflowError instead
21688 - The socket module now provides the functions inet_pton and inet_ntop
21693 - Tkinter wrappers around Tcl variables now pass objects directly
21696 - The .*? pattern in the re module is now special-cased to avoid the
21732 - The rotor module is now deprecated; the encryption algorithm it uses
21736 - The socket module now always uses the _socketobject wrapper class, even on
21752 - netrc now allows ASCII punctuation characters in passwords.
21754 - shelve now supports the optional writeback argument, and exposes
21775 - unittest.failUnlessEqual and its equivalent unittest.assertEqual now
21779 - sgmllib now supports SGML marked sections, in particular the
21782 - The urllib module now offers support for the iterator protocol.
21788 - sets.Set objects now support mixed-type __eq__ and __ne__, instead
21796 it now returns Unicode strings. (This behavior was added earlier
21799 - Distutils: both 'py_modules' and 'packages' keywords can now be specified
21841 classes defined by Python code using a class statement) is now
21852 - test_timeout now requires -u network to be passed to regrtest to run.
21858 - os.fsync() now exists on Windows, and calls the Microsoft _commit()
21867 - os.listdir() now returns Unicode strings on MacOS X when called with
21873 - EasyDialogs dialogs are now movable-modal, and if the application is
21877 - OSA Scripting support has improved a lot, and gensuitemodule.py can now
21878 be used by mere mortals. The documentation is now also more or less
21881 - The IDE (in a framework build) now includes introductory documentation
21893 - Negative positions returned from PEP 293 error callbacks are now
21897 - sys.path[0] (the directory from which the script is loaded) is now
21910 constructor would ignore all arguments. This is changed now: the
21924 value, but according to PEP 237 it really needs to be 1 now. This
21930 machine, which returns -1, a FutureWarning is now issued; in Python
21932 int("0xffffffff", 16) right now. (PEP 347)
21934 - super(X, x): x may now be a proxy for an X instance, i.e.
21937 - isinstance(x, X): if X is a new-style class, this is now equivalent
21942 - compile(), eval() and the exec statement now fully support source code
21949 of 2 now. It used to take time quadratic in len(string).
21951 - filter returns now Unicode results for Unicode arguments.
21953 - raw_input can now return Unicode objects.
21955 - List objects' sort() method now accepts None as the comparison function.
21966 - Function objects now have a __module__ attribute that is bound to
21973 Now whichmodule() will return the proper module name.
21978 - operator.isNumberType() now checks that the object has a nb_int or
21982 - The imp module now has ways to acquire and release the "import
22000 - The SSL module now handles sockets with a timeout set correctly (SF
22009 - fcntl now exposes the strops.h I_* constants.
22018 The date class is now properly subclassable. (SF bug #720908)
22025 now.
22027 today() and now() now round system timestamps to the closest
22039 (or None) now. In 2.3a1 they could also return an int or long, but that
22068 datetime.now(): The optional tzinfo argument was undocumented (that's
22070 already). With a tz argument, now(tz) used to return the local date
22072 members. This was less than useful. Now now(tz) returns the current
22078 a tz argument, now() continues to return the current local date and time,
22081 datetime.fromtimestamp(): Like datetime.now() above, this had less than
22089 in which case they return NotImplemented now. This gives other
22112 seconds". Leap seconds are ignored now. On such platforms, it's
22130 etc.). The copy module now uses more of the pickle customization
22134 - The distutils "register" command now uses http://www.python.org/pypi
22138 pathsep, curdir, pardir and defpath are now defined in the platform
22140 variables are now available via os.path. They continue to be
22151 - xmlrpclib.py now supports the built-in boolean type.
22156 - SimpleXMLRPCServer now supports CGI through the CGIXMLRPCRequestHandler
22159 - The sets module now raises TypeError in __cmp__, to clarify that
22166 - realpath is now exported when doing ``from poxixpath import *``.
22174 - urlparse can now parse imap:// URLs. See SF feature request #618024.
22235 - PyEval_GetFrame() is now declared to return a ``PyFrameObject *``
22238 - PyNumber_Check() now checks that the object has a nb_int or nb_float
22243 will now inherit the tp_as_buffer pointer if it doesn't define one.
22246 - The PyArg_Parse functions now issue a DeprecationWarning if a float
22256 test_importhooks.py and test_imp.py). Now they are. (Note to
22269 now been fixed. test_timeout.py should pass (at least most of the
22272 - distutils' msvccompiler class now passes the preprocessor options to
22275 - The bsddb module now ships with Sleepycat's 4.1.25.NC, the latest
22278 - sys.path[0], if it contains a directory name, is now always an
22281 - The new logging package is now installed by the Windows installer. It
22290 - Most of the standard library now uses pathnames or FSRefs in preference
22302 - Applets are now built with bundlebuilder in MacPython-OSX, which should make
22316 - One can now assign to __bases__ and __name__ of new-style classes.
22318 - dict() now accepts keyword arguments so that dict(one=1, two=2)
22321 been eliminated. This means that dict(items=someMapping) now has
22324 - int() now returns a long object if the argument is outside the
22333 significantly; they are now faster than classic instance creation
22336 - The __slots__ variable can now mention "private" names, and the
22339 - The built-ins slice() and buffer() are now callable types. The
22342 names but are accessible through the types module, are now also
22346 now detected by the garbage collector.
22348 - Classes using __slots__ are now properly garbage collected.
22354 - The constructor for the module type now requires a name argument and
22357 module (not from the module type) is now illegal; previously this
22374 doesn't define or override __getstate__, a TypeError is now raised.
22382 - Import from zipfiles is now supported. The name of a zipfile placed
22398 - A frame object's f_lineno attribute can now be written to from a
22406 - issubclass now supports a tuple as the second argument, just like
22421 All platforms now have an os.path.supports_unicode_filenames attribute,
22425 Error handling in unicode.encode or str.decode can now be customized.
22431 - Use of 'None' as a variable, argument or attribute name now
22434 - SET_LINENO is gone. co_lnotab is now consulted to determine when to
22464 per-thread values. They are now just a pair of global variables.
22472 Karatsuba algorithm is now used. This is most effective if the
22484 - u'%c' will now raise a ValueError in case the argument is an
22488 mktemp() function is now deprecated; new, safe replacements are
22500 type. This has been fixed now.
22504 any length. Thus "'el' in 'hello world'" returns True now.
22506 - File objects are now their own iterators. For a file f, iter(f) now
22514 module are now obsolete. Thanks to Oren Tirosh!
22529 for list.sort() to raise MemoryError now, even if a comparison function
22532 - All standard iterators now ensure that, once StopIteration has been
22541 other platforms. KeyboardInterrupt can now reliably be caught,
22553 - Slices and repetitions of buffer objects now consistently return
22567 - Most built-in sequences now support "extended slices", i.e. slices
22596 deprecated now.
22598 - String and unicode methods lstrip(), rstrip() and strip() now take
22633 - The UTF-8 codec will now encode and decode Unicode surrogates
22642 - file.xreadlines() now raises a ValueError if the file is closed:
22647 An exception will now be raised if more than one argument is used.
22650 general left to right evaluation order rule. Now {f1(): f2()} will
22657 slots are now always tried after trying the corresponding nb_* slots.
22670 - posix.openpty now works on all systems that have /dev/ptmx.
22681 - _tkinter now returns Tcl objects, instead of strings. Objects which
22689 and is now named bsddb185. This supports Berkeley DB versions from
22698 - resource.getrlimit() now returns longs instead of ints.
22700 - readline now dynamically adjusts its input/output stream if
22707 - cPickle.BadPickleGet is now a class.
22717 - The strptime function in the time module is now always available (a
22724 - The bsddb.*open functions can now take 'None' as a filename.
22731 - The locale module now exposes the C library's gettext interface. It
22737 Python now ships with zlib-1.1.4.
22739 - pwd, grp, and resource return enhanced tuples now, with symbolic
22742 - array.array is now a type object. A new format character
22744 .fromunicode methods are available. Arrays now support __iadd__
22747 - dl now builds on every system that has dlfcn.h. Failure in case
22756 when applying the regular expression '^((a)c)?(ab)$' on 'ab'. It now
22767 - The os.fdopen function now enforces a file mode starting with the
22771 - The linuxaudiodev module is now deprecated; it is being replaced by
22779 - imaplib.py now supports SSL (Tino Lange and Piers Lauder).
22788 - unittest.py now has two additional methods called assertAlmostEqual()
22794 - calendar.py now depends on the new datetime module rather than
22801 - The distutils created windows installers now can run a
22804 - doctest.testmod can now be called without argument, which means to
22817 - UserDict.py now defines a DictMixin class which defines all dictionary
22822 - shelve.py now subclasses from UserDict.DictMixin. Now shelve supports
22826 - shelve.open and the various classes in shelve.py now accept an optional
22834 modules are iterators now.
22836 - gzip.py now handles files exceeding 2GB. Files over 4GB also work
22837 now (provided the OS supports it, and Python is configured with large
22846 - Queue.Queue.{put,get} now support an optional timeout argument.
22852 tag_configure, image_configure, window_configure now return a
22855 - Importing the readline module now no longer has the side effect of
22866 - shutil.move was added. shutil.copytree now reports errors as an
22890 OverflowError. That is, it now accepts any combination of 'start'
22894 - Thanks to Raymond Hettinger, random.random() now uses a new core
22921 crc32() now returns a signed-extended 4-byte result, so that its value
22924 - xml.dom.minidom.toxml and toprettyxml now take an optional encoding
22933 - Sockets now support timeout mode. After s.settimeout(T), where T is
22944 exceptions are now classes deriving from Exception. The objects
22956 - math.log() now takes an optional argument: math.log(x[, base]).
22958 - ftplib.retrlines() now tests for callback is None rather than testing
22968 results produced by random.gauss(). It does now. Programs repeatedly
22970 results now.
22975 - difflib's SequenceMatcher class now does a dynamic analysis of
22979 argument defaults to None now as a result. A happy benefit is
22980 that SequenceMatcher may run much faster now when applied
22989 - distutils now has a new abstract binary packager base class
22995 - The UTF-16, -LE and -BE stream readers now raise a
23001 - compileall now supports quiet operation.
23003 - The BaseHTTPServer now implements optional HTTP/1.1 persistent
23008 which now gets imported by socket.py if available and working.
23022 gettext.find an optional all argument. Translations will now fallback
23026 - distutils bdist commands now offer a --skip-build option.
23028 - warnings.warn now accepts a Warning instance as first argument.
23034 - The email.Parser.Parser class now properly parses strings regardless
23040 - distutils' build_ext command now links C++ extensions with the C++
23051 - Now bdist_rpm distutils command understands a verify_script option in
23065 - pygettext.py now supports globbing on Windows, and accepts module
23078 - freeze.py now produces binaries which can import shared modules,
23085 - On Unix, IDLE is now installed automatically.
23104 The old symbol WITH_CYCLE_GC is now ignored, and Python.h arranges
23108 Py_TRASHCAN mechanism now too; in the absence of cyclic gc, this used
23145 - The tools used to build the documentation now work under Cygwin as
23156 - PyNumber_Check() now returns true for string and unicode objects.
23168 strings are now usually mortal; there is a new API,
23175 - The Py_InitModule*() functions now accept NULL for the 'methods'
23177 now that factories can be types rather than functions.
23188 - Py_FatalError() is now declared as taking a const char* argument. It
23196 - PyRange_New() now raises ValueError if the fourth argument is not 1.
23200 - PyNumber_Coerce() and PyNumber_CoerceEx() now also invoke the type's
23207 - PyObject_Del, PyObject_GC_Del are now functions instead of macros.
23209 - A type can now inherit its metatype from its base type. Previously,
23211 was always set to &PyType_Type; now it is set to base->ob_type,
23214 - PyType_Ready() accidentally did not inherit tp_is_gc; now it does.
23218 - The "u#" parser marker will now pass through Unicode objects as-is
23237 - OpenVMS is now supported.
23239 - AtheOS is now supported.
23241 - the EMX runtime environment on OS/2 is now supported.
23243 - GNU/Hurd is now supported.
23248 - The regrtest.py script's -u option now provides a way to say "allow
23255 - The Windows distribution now ships with version 4.0.14 of the
23265 - The Windows distribution now ships with a Secure Sockets Library (SLL)
23268 - The Windows distribution now ships with Tcl/Tk version 8.4.1 (it
23271 - When Python is built under a Microsoft compiler, sys.version now
23282 - The installer now installs Start menu shortcuts under (the local
23285 - file.truncate([newsize]) now works on Windows for all newsize values.
23289 - os.waitpid() is now implemented for Windows, and can be used to block
23312 - The os module now exports all the symbolic constants usable with the
23324 - Mac/Relnotes is gone, the release notes are now here.
23327 version) now fully supports unicode strings as arguments to various file
23334 - All MacPython-OS9 functionality is now available in an OSX unix build,
23353 - MacPython-OS9 is now Carbon-only, so it runs on Mac OS 9 or Mac OS X and
23357 - Many tools such as BuildApplet.py and gensuitemodule.py now support a command
23360 - All the Carbon classes are now PEP253 compliant, meaning that you can
23362 now use the accessor function call API, which is also what Apple's
23370 - Pathname handling should now be fully consistent: MacPython-OSX always uses
23380 - OSA support has been redesigned and the generated Python classes now
23513 dict.__hash__ and list.__hash__ now raises the same TypeError
23516 - New-style objects now support deleting their __dict__. This is for
23523 - -Qnew now works as documented in PEP 238: when -Qnew is passed on
23534 - complex() now only allows the first argument to be a string
23546 - Functions in the os.spawn() family now release the global interpreter
23553 - webbrowser defaults to netscape.exe on OS/2 now.
23578 authors. The Unix, Windows and Mac builds now all define NDEBUG in
23612 - In unix-Python on Mac OS X (and darwin) sys.platform is now "darwin",
23616 Now sys.executable points to the executable again, in stead of to
23630 list of base classes is now allowed, so this works now:
23643 - dict() now accepts an iterable object producing 2-sequences. For
23647 - New-style classes can now have a __del__ method, which is called
23650 - Assignment to object.__dict__ is now possible, for objects that are
23654 - Methods of built-in types now properly check for keyword arguments
23680 - By default, the gc.garbage list now contains only those instances in
23689 before it; socket and SocketType are now the same thing.
23691 - Various bugfixes to the curses module. There is now a test suite
23718 - Traceback objects are now scanned by cyclic garbage collection, so
23723 found types. guess_type() and guess_extension() now accept an
23729 - statcache is now deprecated.
23731 - email.Utils.formatdate() now produces the preferred RFC 2822 style
23798 - It should now be possible to build applets that work on both OS9 and
23801 - The core is now linked with CoreServices not Carbon; as a side
23802 result, default 8bit encoding on OSX is now ASCII.
23804 - Python should now build on OSX 10.1.1
23815 - New-style classes are now always dynamic (except for built-in and
23825 - C.__doc__ now works as expected for new-style classes (in 2.2a4 it
23828 - doctest now finds and runs docstrings attached to new-style classes,
23839 'bf', 'cd', 'ce', 'cf']. Now, this is flagged as a syntax error.
23843 - getattr(obj, name, default) now only catches AttributeError, as
23848 - Weak reference objects are now part of the core and offer a C API.
23850 proxy reference has been fixed. weakref.ReferenceError is now a
23853 - unicode(obj) now behaves more like str(obj), accepting arbitrary
23858 - isinstance() now allows any object as the first argument and a
23872 - thread.start_new_thread() now returns the thread ID (previously None).
23874 - binascii has now two quopri support functions, a2b_qp and b2a_qp.
23876 - readline now supports setting the startup_hook and the
23881 now return "pseudo-sequences" -- the various fields can now be
23887 - time: localtime(), gmtime() and strptime() now return a
23891 - Decompression objects in the zlib module now accept an optional
23895 - optional SSL support in the socket module now exports OpenSSL
23899 arguments to socket.ssl() are now optional.
23901 - posixmodule (and by extension, the os module on POSIX platforms) now
23907 - doctest now excludes functions and classes not defined by the module
23915 - profile now produces correct output in situations where an exception
23931 now be specified in an instance constructor, or as a Profile class or
23946 - The SocketServer.ThreadingMixIn class now closes the request after
23959 - ConfigParser.getboolean() now also interprets TRUE, FALSE, YES, NO,
23962 - xml.dom.minidom NodeList objects now support the length attribute
23969 derived from it is now maintained by Anthony Baxter, see
23988 "NotImplemented". Right now, -1 should be used for an error return.
23990 - PyLong_AsLongLong() now accepts int (as well as long) arguments.
23994 - PyThread_start_new_thread() now returns a long int giving the thread
24017 - The signal module now supports SIGBREAK on Windows, thanks to Steven
24031 # We get here on Ctrl+C or Ctrl+Break now; if we had not changed
24045 - pydoc and inspect are now aware of new-style classes;
24046 e.g. help(list) at the interactive prompt now shows proper
24049 - Applications using Jim Fulton's ExtensionClass module can now safely
24050 be used with Python 2.2. In particular, Zope 2.4.1 now works with
24057 - property() now takes 4 keyword arguments: fget, fset, fdel and doc.
24063 - Comparison overloading is now more completely implemented. For
24069 'M.Foo'> a new-style class is now rendered as <class 'M.Foo'>,
24074 - The repr() of new-style objects is now always <Foo object at XXX>;
24077 - For new-style classes, what was previously called __getattr__ is now
24090 - The built-in file type can be subclassed now. In the usual pattern,
24093 file() is now the preferred way to open a file.
24098 now both __new__ and __init__ see all arguments.
24108 a str subclass type, s[:] returned s as-is. Now it returns a str
24116 - file.writelines() now accepts any iterable object producing strings.
24118 - PyUnicode_FromEncodedObject() now works very much like
24124 - PyFile_WriteObject now passes Unicode objects to the file's write
24145 - difflib.ndiff() and difflib.Differ.compare() are generators now. This
24164 - operator.indexOf() (PySequence_Index() in the C API) now works with any
24167 - smtplib now supports various authentication and security features of
24173 - mimetypes now recognizes more extensions and file types. At the
24184 - Large file support (LFS) is now automatic when the platform supports
24192 - The configure script now supplies plausible defaults in a
24194 values are always correct, or that cross-compilation now works
24198 - The Unix build is now a bit less chatty, courtesy of the parser
24205 - The "structmember" API now supports some new flag bits to deny read
24223 - The unittest-based standard tests now use regrtest's test_main()
24228 - regrtest.py is much better integrated with unittest and doctest now,
24234 - Large file support now also works for files > 4GB, on filesystems
24247 - Conversion of long to float now raises OverflowError if the long is too
24256 - The builtin dir() now returns more information, and sometimes much
24273 - Overflowing operations on plain ints now return a long int rather
24295 - Many built-in types can now be subclassed. This applies to int,
24305 - The dictionary constructor now takes an optional argument, a
24320 liberalized, to allow leading zeroes. Examples of literals now
24326 exponent, such as 1e and 3.1e-. Such literals now raise SyntaxError.
24345 - math.log and math.log10 now return sensible results for even huge
24351 - pickle, cPickle and marshal on 32-bit platforms can now correctly read
24383 callers checked for it. It's more likely to fail now, because overflow
24384 errors are properly detected now. The proper way to check::
24427 - Large file support is now enabled on Win32 platforms as well as on
24433 FAT32's limit is 4GB, and files >= 2GB are easier to use from Python now.
24435 used from Python now.
24437 - The w9xpopen hack is now used on Windows NT and 2000 too when COMPSPEC
24463 - The 'new' module is now statically linked.
24475 - regrtest.py now knows which tests are expected to be skipped on some
24495 - Future statements are now effective in simulated interactive shells
24507 now use the Python warning framework (which makes it possible to
24510 - A function's __dict__ (aka func_dict) will now always be a
24512 but now both actions raise TypeErrors. It is still legal to set it
24514 have been assigned now returns an empty dictionary instead of None.
24542 - The 'new' module now exposes the CO_xxx flags.
24559 - Unicode APIs now use name mangling to assure that mixing interpreters
24569 calling corresponding METH_VARARGS methods. METH_OLDARGS is now
24575 - "import module" now compiles module.pyw if it exists and nothing else
24609 - The UTF-16 codec was modified to be more RFC compliant. It will now
24614 - Strings now have a new method .decode() to complement the already
24622 Both methods will now return whatever the codec in charge of the
24647 - Some operating systems now support the concept of a default Unicode
24679 now uses repr(float) instead, which should reproduce floats to full
24700 - Dictionary objects now support the "in" operator: "x in dict" means
24703 - The update() method of dictionaries now accepts generic mapping
24733 - Comparing dictionary objects via == and != is faster, and now works even
24744 faster now. Thanks to Christian Tismer for pointing out the cause and
24755 constants, unlike letters, lowercase, and uppercase. These are now
24758 - The flags used in dlopen calls can now be configured using
24761 - Fredrik Lundh's xmlrpclib is now a standard library module. This
24774 - strop is now *really* obsolete (this was announced before with 1.6),
24778 - Cookie.py now sorts key+value pairs by key in output strings.
24781 Now it does.
24783 - pprint functions now much faster for large containers (tuple, list, dict).
24857 (1.1.3 is needed). Now it does.
24927 "%#x" now always prepends "0x", even if the value is zero.
24949 - The TERMIOS and SOCKET modules are now truly obsolete and
25045 nested_scopes") is completed; in particular, the future now extends
25050 this is now allowed even if self is not strictly spoken a class
25053 - Slice objects are now comparable but not hashable; this prevents
25056 - Complex division is now calculated using less braindead algorithms.
25058 results in extreme cases. Complex repr() now uses full precision
25061 - sgmllib.py now calls handle_decl() for simple <!...> declarations.
25072 inspired by JUnit), is now part of the standard library. You now
25083 - tzparse.py is now obsolete.
25091 - PyDict_Next(): it is now safe to call PyDict_SetItem() with a key
25103 - Py_BuildValue() now has a "D" conversion to create a Python complex
25106 - Extensions types which support weak references must now set the
25124 - the sdist command now writes a PKG-INFO file, as described in PEP 241,
25161 - Compile-time warnings are now generated for a number of conditions
25194 - pyexpat now detects the expat version if expat.h defines it. A
25198 only. Parser objects now provide the ordered_attributes and
25206 conformance issues have been resolved. In particular, Element now
25213 Tools/scripts/pydoc, which is now automatically installed into
25222 is now part of the std library.
25230 - Import is now case-sensitive. PEP 235 (Import on Case-Insensitive
25249 - winsound module: Under Win9x, winsound.Beep() now attempts to simulate
25252 but it does work on my Win98SE systems now and was known to be useless on
25316 - repr(string) is easier to read, now using hex escapes instead of octal,
25323 - Functions are now compared and hashed by identity, not by value, since
25332 - A 'continue' statement can now appear in a try block within the body
25338 - mailbox.py now has a new class, PortableUnixMailbox which is
25345 - random.py is now self-contained, and offers all the functionality of
25346 the now-deprecated whrandom.py. See the docs for details. random.py
25365 - The socket module now supports raw packets on Linux. The socket
25377 - xml.dom.minidom now uses the standard DOM exceptions. Node supports
25456 in 2.1a1 such that None now compares less than any other object. Code
25460 - Functions and methods now support getting and setting arbitrarily
25476 1) "from M import X" now works even if (after loading module M)
25480 2) "from M import *" now looks for M.__all__ to decide which names to
25519 affects extension modules (which can now implement mixed-type
25533 - The interpreter accepts now bytecode files on the command line even
25544 - %[xXo] formats of negative Python longs now produce a sign
25578 localtime, gmtime, asctime and ctime is now optional, defaulting to
25581 - The ftplib module now defaults to passive mode, which is deemed a
25588 - The module site now treats .pth files not only for path configuration,
25618 are now aliases for bisect_right and insort_right. XXX_right
25628 - The SocketServer module now sets the allow_reuse_address flag by
25638 participate now in garbage collection. If expat reports an unknown
25643 - xml.dom now offers standard definitions for symbolic node type and
25658 extension modules is now greatly automated. Rather than having to
25661 distutils-based setup.py script now takes care of building most
25667 - Python should now build out of the box on Cygwin. If it doesn't,
25670 - Python now always uses its own (renamed) implementation of getopt()
25680 can specify no more than 64 sockets. Python now boosts
25748 -l changed: It now reports a count of objects that are recognized as
25815 rendering them useless. They are now written in binary mode again.
25819 - Keyword arguments are now accepted for most pattern and match object
25833 method now accepts a position argument and readline accepts a size
25837 test suite; as a result, a short, unexpected audio sample should now
25844 The module now raises exceptions when errors occur instead of
25854 - The binascii module is now enabled on Win64.
25889 - configure now accepts a --with-suffix option that specifies the
25893 - The mmap.PAGESIZE constant is now initialized using sysconf when
25896 - The md5 file should now compile on all platforms.
25898 - The select module now compiles on platforms that do not define
25905 process. ar-fake now operates on a directory of object files.
25906 dl_export.h is gone, and its macros now appear on the mwcc command
25936 - getattr() and setattr() now also accept Unicode objects for the
25940 - Multiplication on string and Unicode now does proper bounds
25950 - socket module: the OpenSSL code now adds support for RAND_status()
25953 - array: reverse() method of array now works. buffer_info() now does
25960 - CGIHTTPServer: Now works on Windows (and perhaps even Mac).
25963 letters are now correctly converted to lowercase.
25975 now available options.
25981 - fpectl: Now supported on FreeBSD.
26011 - pickle: Now raises ValueError when an invalid pickle that contains
26024 getdomainliteral() are now properly wrapped in brackets.
26039 - StringIO: Size hint in readlines() is now supported as documented.
26046 - Tkinter: Image objects are now guaranteed to have unique ids. Set
26050 - UserList: now implements __contains__().
26097 - The standard header <limits.h> is now included by Python.h (if it
26102 effectively useless. It is now officially useless but preserved for
26106 - PyObject_GetAttr() and PyObject_SetAttr() now accept Unicode objects
26110 PyArg_ParseTupleAndKeywords() now accepts "es#" and "es".
26127 - Several of the internal Unicode tables are much smaller now, and
26138 - On Windows, getpythonregpath is now protected against null data in
26149 - Python/C API now properly exposed to dynamically-loaded extension
26156 - Improved support for HP-UX build. Threads should now be correctly
26167 - freeze: The modulefinder now works with 2.0 opcodes.
26210 since Python 1.6. Enhancements must now be documented by a Python
26325 import statement now allows this to be written as follows:
26351 For example, to write an error message to sys.stderr, you can now
26371 Python is now equipped with a garbage collector that can hunt down
26423 fixes the problem. It is now much more likely that you will be
26476 ftplib -- ntransfercmd(), transfercmd(), and retrbinary() all now
26479 gzip -- readline and readlines now accept optional size arguments
26611 [This was new in 1.6] The Windows installer now installs by default in
26624 The new module is now enabled per default.
26660 port), but this was undocumented. You must now write
26663 - The str() and repr() functions are now different more often. For
26666 For floats, repr() now gives 17 digits of precision, to ensure no
26669 - The -X option is gone. Built-in exceptions are now always
26705 - String methods mean that you can now say s.lower() etc. instead of
26727 Deleting objects is now safe even for deeply nested data structures.
26740 There's now special syntax that you can use instead of the apply()
26763 You can now override the 'in' operator by defining a __contains__
26826 string - most of this module is deprecated now that strings have
26843 The Windows installer now installs by default in \Python16\ on the
26891 added; the requirement to indicate the nature of modifications now
26923 - The <list>.extend() method now accepts an arbitrary sequence
26932 - The Windows installer now installs the LICENSE file and no longer
26934 needed). It now uses Tcl/Tk 8.3.2.
26990 all-platform problem so now we only use the _r variant when we are
27076 * PCbuild/zlib.dsp: Now using static zlib 1.1.3
27112 space, we would report the error; now, we increase the buffer size and
27144 Add '+' to string version number to indicate we're beyond b2 now.
27169 The constructor will now raise an exception if it cannot connect to
27200 (the exception object now has the appropriate info in it ) [Per had
27229 Fix the tests now that splitdrive() no longer treats UNC paths special.
27307 code raised an IndexError. It now raises an SMTPServerDisconnected
27310 - The code now checks that all lines in a multiline response actually
27383 docstring, now echo'ed in case of cmd line mistake); added -q option
27415 The constructor now takes an optional dictionary.
27738 Vladimir has restructured his code somewhat so that the blocks are now
27788 alignment?), and I didn't test it. Withdrawing it for now.
27816 ones I've seen don't work well enough, so for now I use the old
27924 Now that we don't have AC_CHECK_LIB(m, pow), the HAVE_LIBM symbol
28050 - On Windows 95/98, the Tkinter module now is smart enough to find
28060 - The ntpath module (and hence, os.path on Windows) now parses out UNC
28078 - The repr() or str() of a module object now shows the __file__
28082 - The range() function now avoids overflow during its calculations (if
28105 - Now using autoconf 2.13.
28131 - ConfigParser's get() method now accepts an optional keyword argument
28133 __init__. You can now also have recusive references in your
28143 - The bdb module (base class for the debugger) now supports
28151 name="foo"href="bar.html">' will now have two attributes recognized.
28156 - The os.path module now pretends to be a submodule within the os
28159 - The standard exceptions now have doc strings.
28161 - In the smtplib module, exceptions are now classes. Also avoid
28164 - The rfc822 module's getaddrlist() method now uses all occurrences of
28176 - The UserList module/class now supports the extend() method, like
28179 - The uu module now deals better with trailing garbage generated by
28182 - The telnet module now has a my_interact() method which uses threads
28200 - Added strop.expandtabs() so string.expandtabs() is now much faster.
28231 sequence is now accepted, instead of requiring a tuple. This is in
28241 version numbers are now exported by Python.h.
28263 - The parser will now spit out a warning or error when -t or -tt is
28266 - The code generator now inserts extra SET_LINENO opcodes when
28275 - Chris Herborth has redone his BeOS port; it now works on PowerPC
28281 - Thanks to Chris Herborth, the thread primitives now have proper Py*
28293 - The makesetup script now searches EXECINCLUDEPY before INCLUDEPY.
28295 - Misc/Makefile.pre.in now also looks at Setup.thread and Setup.local.
28305 undocumented Netrc class in ftplib.py is now obsolete.)
28352 - compileall.py now avoids recompiling .py files that haven't changed;
28398 docstrings (copied from the library manual) and removed the (now
28477 - All symbols intended for export from a DLL or shared library are now
28525 - It is now a syntax error to have a function argument without a
28528 - __file__ is now set to the .py file if it was parsed (it used to
28564 - The 'new' module is now enabled by default in the Setup file.
28573 - The second argument to apply() can now be any sequence, not just a
28741 - Improvements to Tools/freeze/. Each Python module is now written to
28771 - The calling context for PyOS_Readline() has changed: it must now be
28780 - The code string of code objects may now be anything that supports the
28832 list objects (try [].append.__doc__). A doc string on a type will now
28837 (Remember that the documentation is now unbundled and has its own
28845 - The BeOS port is now integrated. Courtesy Chris Herborth.
28856 - The makesetup script now understands absolute pathnames ending in .o
28862 - The test suite now uses a different sound sample.
28881 - The open() function now adds the filename to the exception when it
28892 filename argument now use this.
28897 - List objects now have an experimental pop() method; l.pop() returns
28899 i. Also, the sort() method is faster again. Sorting is now also
28903 - Changes to comparisons: numbers are now smaller than any other type.
28905 true. As a side effect, cmp(None, 0) is now positive instead of
28910 - Instance methods may now have other callable objects than just
28916 now allowed (with stringent type checks); also allow assignment to
28934 - The ihooks.py module now understands package imports.
28937 PythonInterpreter class. The interact() function now uses this.
28945 - In the operator module, add an alias (now the preferred name)
28970 range. Also, randint(a, b) is now redefined as randrange(a, b+1),
28974 crash when invoked from separate threads; now the worst it can do is
29012 - Some fixes to gzip.py. In particular, the readlines() method now
29020 which module to use to open it. (The anydbm.error exception is now a
29059 - The smtplib.py module now supports ESMTP and has improved standard
29090 can now use it to run arbitrary Python scripts in restricted mode).
29095 - On Unix, Tkinter can now safely be used from a multi-threaded
29106 interpreter now get continuously updated. (This even works in Windows
29122 - Change the names of all methods in the Wm class: they are now
29137 is all uppercase (e.g. FOO.PY now matches foo; but FOO.py still
29144 - os.environ is now all uppercase, but accesses are case insensitive,
29161 - The getpass module now raises KeyboardInterrupt when it sees ^C.
29175 - The registry key used is now "1.5" instead of "1.5.x" -- so future
29195 - The projects now use distinct filenames for the .exe, .dll, .lib and
29202 - The installer now installs more files (e.g. config.h). The idea is
29219 - Some generalizations in the webchecker code. There's now a
29222 - The ftpmirror.py script now handles symbolic links properly, and
29226 last line is both indented and lacks a newline. This is now fixed.
29253 - PySequence_In() is now called PySequence_Contains().
29272 - The code that initializes sys.path now calls Py_GetPythonHome()
29294 - The documentation is now unbundled. It has also been extensively
29315 - The raise statement can now be used without arguments, to re-raise
29330 will now generally be able to reference built-in names such as None
29337 - The code for figuring out the default path now distinguishes between
29344 - The tokenizer can now warn you when your source code mixes tabs and
29376 - Much better freeze support. The freeze script can now freeze
29403 $(srcdir); the makexp_aix script now removes C++ entries of the form
29479 - Interface change in the copy module: a __deepcopy__ method is now
29486 - Several bugfixes to the urllib module. It is now truly thread-safe,
29513 - The profile module now uses a different timer function by default --
29517 - The tempfile module now recovers when os.getcwd() raises an
29528 - The Unix mailbox class in the mailbox module is now more robust when
29539 modules. At Mark Hammond's repeated request, py_compile now append a
29553 urlparse now correctly handles Gopher URLs with query strings.
29574 redesigned; the bind*() methods now return the name of the Tcl command
29580 - Variable objects now have trace methods to interface to Tcl's
29583 - Image objects now have an optional keyword argument, 'master', to
29585 image_types() calls are now also widget methods.
29597 - Tcl_Finalize() is now registered as a Python low-level exit handle,
29659 - The .lib files are now part of the distribution; they are collected
29662 - The extension modules (.pyd files) are now collected in a separate
29665 - The case of a module's filename must now match the case of the
29690 (especially Rob Hooft and Andrew Kuchling). The HTML version now uses
29702 DevStudio 5.0 now includes new subprojects to build the zlib and bsddb
29747 urllib.urlopen(); an empty file now correctly raises an error, and it
29766 method. Other changes too, in particular cPickle now handles classes
29775 - The built-in function isinstance(x, y) now also succeeds when y is
29778 - repr() and str() of class and instance objects now reflect the
29787 - The thread module is now automatically included when threads are
29789 since it is now in its own Setup.thread file.)
29798 - The Windows installer now installs in the "Program Files" folder on
29806 EOF. Also, both python.exe and pythonw.exe now have a pretty icon
29827 and C++ style comments should be gone now.
29831 - The crypt module is now disabled in Modules/Setup.in by default; it
29875 - ospath.py is gone; it's been obsolete for so many years now...
29877 - The reference manual is now set up to prepare better HTML (still
29897 - PyArg_Parse[Tuple] now explicitly check for bad characters at the
29902 - <listobject>.sort() now uses a modified quicksort by Raymund Galvin,
29929 - The Windows NT/95 installer now includes full HTML of all manuals.
29934 is now complete with the pcre module.
29936 - sys.ps1 and sys.ps2 can now arbitrary objects; their str() is
29942 - The icons used by latex2html are now included in the Doc
29966 - On Linux, the configure script now uses '-Xlinker -export-dynamic'
29973 master are now properly usable on toplevel master widgets. There's a
29978 place wins over grid. Also, the bind_class method now returns its
30008 - Shared modules can now live inside packages (hierarchical module
30044 which returns a (benchtime, stones) tuple. The main() function now
30047 - Package directories now *require* the presence of an __init__.py (or
30064 - The warning about a thread still having a frame now only happens in
30072 literals. There's now also a test fort this module.
30074 - The copy module now also uses __dict__.update(state) instead of
30081 - Most modules that used to use the regex module now use the re
30104 - The str() function for class objects now returns
30144 - All standard exceptions are now classes by default; use -X to make
30185 unpack instruction. (UNPACK_LIST and UNPACK_TUPLE now do the same
30211 now legal to call these more than once. The first call to
30259 test is now printed. -v is the same as the old -vv. -q is more quiet
30262 - Removed the old FAQ from the distribution. You now have to get it
30306 - Tkinter.py: the Tk class now also has a configure() method and
30317 - Dictionary objects now have a get() method (also in UserDict.py).
30323 - Changes to import: support for "import a.b.c" is now built in. See
30334 - More changes to import: the site.py module is now imported by
30346 The test suite is now a package -- to run a test, you must now use
30354 regex is now officially obsolete, it will probably take several major
30357 - The posix module now has a strerror() function which translates an
30362 - The universal makefile Misc/Makefile.pre.in now features an
30379 initialization fails; the importing code now checks whether an error
30383 - Most extension modules now raise class-based exceptions (except when
30395 - Windows: the DLL version is now settable via a resource rather than
30399 - urllib.py is now threadsafe -- it now uses re instead of regex, and
30403 sys.exc_{type,value,traceback} are now more thread-safe by virtue of
30407 Also, the command argument can now be either a string (passed to the
30411 work. It's been rewritten. The bad news is that it now requires a
30419 posix.strerror() now does the same, but alla...) (Marc-Andre Lemburg)
30421 - The readline extension module now provides some interfaces to
30447 - The pystone script is now a standard library module. Example use:
30450 - The import of the readline module in interactive mode is now also
30474 - config.h is now installed (at last) in
30480 - The imp module now supports parts of the functionality to implement
30481 import of hierarchical module names. It now supports find_module()
30488 - The % operator on string objects now allows arbitrary nested parens
30505 - The types.py module now uses try-except in a few places to make it
30518 - The Windows build procedure and project files are now based on
30519 Microsoft Visual C++ 5.x. The build now takes place in the PCbuild
30526 - The AIX build tools for shared libraries now supports VPATH. (Donn
30547 Adding support for a new OS is now a bit more work, but I bet that
30550 - The obsolete exception AccessError is now really gone.
30570 - main() now calls setlocale(LC_ALL, ""), if setlocale() and
30597 - The default module search path is now much saner. Both on Unix and
30600 $PYTHONHOME). The value of $PYTHONPATH on Windows is now inserted in
30610 front of sys.path, expand a symbolic link. You can now install a
30617 - It is now recommended to use ``#!/usr/bin/env python'' instead of
30630 - Most problems on 64-bit platforms should now be fixed. Andrew
30687 objects (e.g. list.append is now first).
30690 without arguments now attempts to use fstat to allocate a buffer of
30700 Andrew Kuchling. Even cmath is now documented! There's also a
30706 printing the documentation now kills fewer trees -- the margins have
30714 - The posix module (and hence os.py) now has doc strings! Thanks to Neil
30722 - Private variables with leading double underscore are now a permanent
30752 - Duplicate keyword arguments are now detected at compile time;
30753 f(a=1,a=2) is now a syntax error.
30794 arrays) now support the "buffer" protocol. Buffer objects are acceptable
30797 f.readinto(buffer). A cool feature is that regular expression matching now
30804 "interned" strings. Most names generated by the interpreter are now
30814 implementation file is now called dictobject.c rather than the
30820 - The intrinsic functions int(), long() and float() can now take a
30825 - When a module is deleted, its globals are now deleted in two phases.
30836 - Guido's corollary to the "Don Beaudry hook": it is now possible to
30846 - Another change is that the Don Beaudry hook is now invoked when
30859 now *do* support the __members__ and __methods__ special attributes.
30861 - The complex() function now looks for a __complex__() method on class
30864 - Long integers now support arbitrary shift counts, so you can now
30870 machine, oct(-1) now returns '037777777777' and hex(-1) returns
30923 - The fcntl extension module now exports the needed symbolic
30927 - The extension modules dbm, gdbm and bsddb now check that the
30934 - The gdbm module now supports a sync() method.
30936 - The socket module now has some new functions: getprotobyname(), and
30939 - Various modules now export their type object: socket.SocketType,
30942 - The socket module's accept() method now returns unknown addresses as
30946 - The pthread support for the thread module now works on most platforms.
30948 - STDWIN is now officially obsolete. Support for it will eventually
30951 - The binascii extension module is now hopefully fully debugged.
30958 - posixmodule.c: now exports the O_* flags (O_APPEND etc.). On
30960 exception is raises) is renamed -- its string value is now "os.error",
30963 function now accepts any mapping object for the environment.
30979 8-bit characters. Also, setkey() now requires its argument rather
30982 - The sys.builtin_module_names variable is now a tuple. Another new
31026 - There is now a library module xdrlib.py which can read and write the
31034 - Module codehack.py is now completely obsolete.
31049 - In ihooks.py, ModuleLoader.load_module() now closes the file under
31057 - Changes to the cgi.py module: Most imports are now done at the
31060 by using the new tempfile.TemporaryFile class; temporary files are now
31062 now takes an optional flag argument that quotes '"' to '&quot;'. It
31063 is now possible to invoke cgi.py from a command line script, to test
31067 function parse_qs() now uses urllib.unquote() on the name as well as
31068 the value of fields (Clarence Gardner). The FieldStorage class now
31072 responses are now accepted; and it is now thread-safe (by not using
31077 - The popen2.py module is now rewritten using a class, which makes
31090 - The StringIO.StringIO class now supports readline(nbytes). (Lars
31105 - urllib.py: the ftp cache is now limited to 10 entries. Added
31109 module. HTTP requests now add the Host: header line. The proxy
31110 variable names are now mapped to lower case, for Windows. The
31112 the first newline. The basejoin() function now intereprets "../"
31125 - The mimetools.py module now uses the available Python modules for
31129 - The python debugger (pdb.py, and its base class bdb.py) now support
31132 - The modules base64.py, uu.py and quopri.py can now be used as simple
31138 - Sjoerd Mullender's mimify.py module now supports base64 encoding and
31140 headers. It is now documented.
31145 - Many more modules now correctly open files in binary mode when this
31151 - The Writer classes in the formatter.py module now have a flush()
31159 has been enhanced quite a bit. There's now one main function,
31175 - The string.join() function now accepts any sequence argument, not
31184 internal cache of compiled regular expressions. Also, the cache now
31186 is now obsolete -- use the sub() or subn() functions or methods in the
31189 - The undocumented module Complex.py has been removed, now that Python
31198 --with-readline configure option is gone. It is now an extension
31208 - New build procedure: a single library, libpython1.5.a, is now built,
31212 embed Python. The serial number of the build is now included in the
31229 - The support for shared libraries under AIX is now simpler and more
31232 - The Modules/makesetup script now reads a file Setup.local as well as
31237 - The Modules/makesetup script now copies any "include" lines it
31246 - The configure script now detects whether malloc(0) returns a NULL
31251 DEC threads on DEC Alpha platforms. Also, --with-threads is now an
31255 - Many changes in Doc/Makefile; amongst others, latex2html is now used
31288 - PyObject_Compare() can now raise an exception. Check with
31302 - There is now a Py_Finalize() function which "de-initializes"
31305 change of functionality in Py_Initialize() means that it is now a
31316 - There is now explicit per-thread state. (Inspired by, but not the
31319 - There is now better support for threading C applications. There are
31320 now explicit APIs to manipulate the interpreter lock. Read the source
31338 - It is now possible for an extension module's init function to fail
31341 - The PyInt_AS_LONG() and PyFloat_AS_DOUBLE() macros now cast their
31347 Py_GetPath()) are now declared as returning a const char *. (More
31351 comparisons. PyObject_Compare() can now return an exception; use
31354 - PyFile_WriteString() and Py_Flushline() now return error indicators
31366 symbols are now in Python.h as Py_single_input, Py_file_input, and
31396 - The Image class now has a configure method.
31398 - Added a bunch of new winfo options to Tkinter.py; we should now be
31404 module has been fixed. The CanvasItem and Group classes now also have
31417 - The _tkinter.c extension module has been revamped. It now support
31466 - The freeze script now also works under Windows (NT). Another
31474 - Tools/scripts/h2py.py now supports C++ comments.
31509 - The various os.path modules (posixpath, ntpath, macpath) now support
31517 - The freeze tool now works on Windows.
31522 - The truncate() method for file objects now works on Windows.
31527 - The time module's clock() function now has good precision through
31590 (e.g. assignment to an expression) now include a line number.
31628 - The test program for mailbox.py is now more useful.
31637 - profile.py can now also run a script, like pdb.
31667 user-defined function is now okay where a class is expected. A
31687 - apply(classname, (), {}) now works even if the class has no
31691 Conversion of complex numbers to int, long int or float now raises an
31698 - Change the hash algorithm for strings -- the multiplier is now
31701 - New default path for Windows NT, the registry structure now supports
31721 - The reference manual is now maintained in FrameMaker.
31730 - The getopt module now supports long option names, thanks to Lars
31792 - In urllib.urlopen(): HTTP URLs containing user:passwd@host are now
31820 - Linking a module compiled with a different setting for Py_TRACE_REFS now
31835 - posixfile locking is now also correctly supported on AIX.
31838 now works on Windows, too.
31864 - Shared libraries are now installed as programs (i.e. with executable
31874 - _tkinter is now compatible with Tcl 7.5 / Tk 4.1 patch1 on Windows and
31876 now links with Tcl 7.5 / Tk 4.1 rather than 7.4/4.0.
31878 - In Setup, you can now write "*shared*" instead of "*noconfig*", and you
31883 - The mpz module is now compatible with GMP 2.x. (Not tested by me.)
31890 - The configure script now defines HAVE_OLD_CPP if the C preprocessor is
31905 - The environment module is no longer supported; putenv() is now a function
31925 - Modules imported as shared libraries now also have a __file__ attribute,
31927 a __file__ attribute now are built-in modules.
31933 - C API addition: marshal.c now supports
31936 - C API addition: getargs.c now supports
31941 version number is now "<digit>.<digit>.<digit>.<apiversion>", where the
31948 - On Solaris 2.5, it should now be possible to use either Posix threads or
31953 - Thread support should now work on AIX, using either DCE threads or
31961 - New project setup for PC port, now compatible with PythonWin, with
31974 - testall now also tests math module (XXX)
31976 - string.atoi c.s. now raise an exception for an empty input string.
31981 - Unrecognized keyword arguments now raise TypeError rather than KeyError.
32044 - The PC build procedure now really works, and sets sys.platform to a
32046 is now a standard part of the distribution (alas).
32049 now inserts the version number in the pathnames of almost everything
32073 - Module posix (and hence module os under Unix) now supports putenv().
32079 - pdb.py can now be invoked from the command line to debug a script:
32084 - In cgi.py, you can now pass an alternative value for environ to
32087 - You can now assign to instance variables whose name begins and ends
32095 - The "complex" internal structure type is now called "Py_complex" to
32115 - Installation has been completely overhauled. "make install" now installs
32126 - The --with-readline option can now be used without a DIRECTORY argument,
32131 with Tkinter.py oncase insensitive file systems. It now supports Tk 4.1 as
32137 - The math.hypot() function is now always available (if it isn't found in
32140 - The latex documentation is now compatible with latex2e, thanks to David
32143 - The expression x**y is now equivalent to pow(x, y).
32145 - The indexing expression x[a, b, c] is now equivalent to x[(a, b, c)].
32147 - Complex numbers are now supported. Imaginary constants are written with
32163 it disables support for old style names) now includes several more files,
32167 the presence of NDEBUG is now present on the absence of DEBUG. TRACE_REFS
32178 - There are now typedefs for the structures defined in config.c and
32187 - UserList module now supports + and * operators.
32189 - The binhex and binascii modules now actually work.
32192 It now supports file upload and a new data type to handle forms more
32197 - The ftplib module now supports passive mode and has doc strings.
32200 is now correctly opened in binary mode ('rb' or 'wb') so the code will work
32203 - Dummy versions of os.path.expandvars() and expanduser() are now provided
32206 - Module urllib now has two new functions url2pathname and pathname2url
32215 - The mailbox module now supports MH style message delimiters as well.
32224 - Module ni now automatically installs itself when first imported -- this
32243 hooks instance to the RExec class. rexec now also supports the dynamic
32247 - Module rfc822 now caches the headers in a dictionary for more efficient
32250 - The sgmllib module now understands a limited number of SGML "shorthands"
32265 s.dup(). Sockets now work correctly on Windows. On Windows, the built-in
32272 - The curses extension now includes <ncurses.h> when available.
32274 - The gdbm module now supports opening databases in "fast" mode by
32280 - The ``new'' module now supports creating new user-defined classes as well
32283 - The soundex module now sports get_soundex() to get the soundex value for an
32296 - The initialization of the readline function can now be invoked by a C
32299 - There's now an externally visible pointer PyImport_FrozenModules which
32302 - The argument parsing functions now support a new format character 'D' to
32307 - Improved support for posix threads (now that real implementations are
32341 overriding unknown URL types and to support authentication. They now
32358 The "raise" statement now takes an optional argument which specifies
32364 The tokenizer is now more tolerant of alien whitespace. Control-L in
32371 For file objects, "f.read(0)" and "f.readline(0)" now return an empty
32378 The built-in functions "input()" and "raw_input()" now use the GNU
32392 The built-in function "compile()" now takes a third possible value for
32408 The "string.split()" and "string.splitfields()" functions are now the
32414 keyword arguments. Tk 4.0 is now the standard. A new module
32419 --- their "open()" functions now take the same values for their "flag"
32447 Drake. It now lets you change the parse tree and compile the result!
32463 The Macintosh version is much more robust now.
32475 properly now.
32487 existing modules are now documented, in particular the debugger and
32498 now use the new names (PyObject instead of object, etc.). The linker
32512 - The import statement now supports the syntax "import a.b.c" and
32518 __import__ function) is now exposed through the new built-in module
32543 - The functions posix.popen() and posix.fdopen() now have an optional
32548 - The thread.exit_thread() function now raises SystemExit so that
32566 - It now builds on the NeXT without intervention, even on the 3.3
32574 - Fix portability problems with getopt (configure now checks for a
32579 - Exceptions can now be classes. ALl built-in exceptions are still
32599 findmethod() has changed: it now gets a pointer to the (static!)
32603 - The callable() function is now public.
32633 now, with working code but some undocumented areas. The problem with
32670 now support creating dynamically loadable modules if the platform
32690 - tkinter (support for Tcl's Tk widget set) is now part of the base
32712 - sockets now have a setblocking() method
32762 will now also work if a float is passed
32766 - You should now call sigcheck() instead of intrcheck();
32839 * Loops over sequences now don't ask for the sequence's length when
32858 * Dictionaries with more than 20,000 entries can now be created
32866 dir(x) is now equivalent to vars(x).keys().
32875 * open()'s second argument is now optional; it defaults to "r".
32877 * apply() now checks that its second argument is indeed a tuple.
32918 * The string module's expandvars() function is now documented and is
32922 * Module rfc822 now supports accessing the header fields using the
32925 * Module pdb now makes it possible to set a break on a function
32990 * Changed order and number of SVR4 networking libraries (it is now
32993 * Installing the build intermediate stages with "make libainstall" now
33000 * The built-in module strop now defines fast versions of three more
33008 * There is now a working Lib/dospath.py for those who use Python under
33011 * There is now a working Modules/dosmodule.c for DOS (or Windows)
33017 * Lib/ospath.py is now obsolete (use os.path instead).
33061 subdirectory there are now separate directories Include, Parser,
33077 there are now standard subdirectories stdwin, test, sgi and sun4.
33079 * The configuration process has radically changed: I now use GNU
33089 * GNU readline (a slightly newer version) is now a subdirectory of the
33092 Control-C to a readline prompt will now work. The distribution no
33101 * There's now a separate file version.c which contains nothing but
33104 * The actual main program is now contained in config.c (unless NO_MAIN
33105 is defined); pythonmain.c now contains a function realmain() which is
33108 * All files needed to use the built-in module md5 are now contained in
33125 * The entire documentation is now also available on-line for those who
33133 * Strings may now be enclosed in double quotes as well as in single
33199 * Syntax errors are now not printed to stderr by the parser, but
33205 * You can now set a maximum to the number of traceback entries
33210 * It is now possible to have a .pyc file without a corresponding .py
33218 * The list sys.builtin_module_names is now sorted and also contains
33222 * A module can now find its own name by accessing the global variable
33236 * Functions and code objects can now be compared meaningfully.
33291 * Multiple threads are now supported on Solaris 2. Thanks to Sjoerd
33298 * The library is now split in several subdirectories: all stuff using
33304 * Module os now knows about trying to import dos. It defines
33309 * All modules defining classes now define __init__() constructors
33319 * Module string now defines rindex() and rfind() in analogy of index()
33325 * The wdb debugger (now in Lib/stdwin) now shows class or instance
33335 * The optional built-in modules audioop and imageop are now standard
33345 * The module aifc is gone -- you should now always use aifc, which has
33382 * The initialization interface has been simplified somewhat. You now
33423 * The dos support hasn't been tested yet. (Really Soon Now we should
33458 * There are now modules interfacing to the X11 Toolkit Intrinsics, the
33503 hangs in a blocking system call. You can now kill the interpreter by
33513 * The python usage message is now much more informative.
33521 * For each option there is now also a corresponding environment
33528 * The distribution now contains (some) documentation on the use of
33536 * Function local variables are now generally stored in an array and
33545 * Continuation lines can now *sometimes* be written without a
33583 * Class variables are now also accessible as instance variables for
33616 * Function and class objects now know their name (the name given in
33619 * Class instances now know their class name.
33630 * Dictionaries now support almost any key type, instead of just
33635 * Built-in methods are now compared properly: when comparing x.meth1
33664 * exec() and eval() now support execution of code objects.
33686 * Regular expression objects created by module regex now support a new
33690 * Function compile() in module regex now supports an optional mapping
33694 * Module time now supports many routines that are defined in the
33699 undocumented and unfinished module tzparse is now obsolete and will
33703 now uses C's definition of whitespace instead of fixing it to space,
33705 form feed and return are now also considered whitespace. It exports
33709 * Module sys now defines the variable builtin_module_names, a list of
33714 * Objects created by module sunaudiodev now also support flush() and
33717 * Socket objects created by module socket now support an optional
33720 * Module marshal now supports dumping to and loading from strings,
33723 * Module stdwin now supports some new functionality. You may have to
33754 * The header files now all contain #ifdef constructs designed to make
33762 * There is now some support for "freezing" a Python script as a
33828 there is now an explicit "varargs" feature (precede the last argument
33858 mentioned in the NEWS file: user-defined classes can now define types
33869 There is now a script to patch Makefile and config.c to add a new
33872 Using Addmodule.sh, all optional modules can now be configured at
33885 the system now tolerates malloc(0) returning 0.
33887 For dynamic loading on the SGI, Jack Jansen's dl 1.6 is now
33889 particular scripts invoked using #! can now use dynamic loading.
33904 The interpreter is now generally assumed to live in
33909 Most I/O that uses sys.stdin/stdout/stderr will now use any object
33915 it's now about 38).
33926 The built-in functions int(), long(), float(), oct() and hex() now
33949 needed (although it still exists for now), but millitimer is still
33955 The string representation of a file object now includes an address:
33964 now get/set any kind of option using strings built with the new struct
33973 The FORMS library interface (fl) now requires FORMS 2.1a. Some new
33991 Most functions in module string are now much faster: they're actually
33997 string.index() now accepts an optional third argument giving an index
34010 The mainloop module (for use with stdwin) can now demultiplex input
34130 can be browsed as a hypertext. The net result is that you can now
34154 User-defined classes can now implement operations invoked through
34163 compile-time options, you can now run a Configure.py script.
34167 The Makefile now includes more "utility" targets, e.g. install and
34170 Using the provided strtod.c and strtol.c are now separate options, as
34173 The regex module is now an option chosen by the Makefile, since some
34183 Dynamic loading is now supported for Sun (and other non-COFF systems)
34190 Thanks to Jaap Vermeulen, the code should now port cleanly to the
34204 List objects now support an optional argument to their sort() method,
34207 File objects now have a method fileno(), used by the new select module
34229 posix: added get{eg,eu,g,u}id(); waitpid() is now a separate function.
34324 The last-minute syntax changes of release 0.9.6 are now reflected
34330 Classes are now treated extensively in the tutorial (chapter 9)
34340 The doc/Makefile now creates PostScript files automatically
34346 Incorporated Tim Peters' changes to python-mode.el, it's now version
34386 - the GNU Readline library is now distributed standard with Python
34412 have changed; a/b is now floor(float(a)/float(b)) and a%b is defined
34413 as a-(a/b)*b. So now the outcome of divmod(a,b) is the same as
34420 and wdb, window-oriented); you can now step through Python programs!
34422 - '==' is now the only equality operator; "../demo/scripts/eqfix.py" is
34424 - Plain integer right shift now uses sign extension
34425 - Long integer shift/mask operations now simulate 2's complement
34428 - Options found after "-c command" are now passed to the command in sys.argv
34431 been closed; menus can now also be closed explicitly
34432 - Stdwin now uses its own exception (stdwin.error)
34435 - dictionary objects can now be compared properly; e.g., {}=={} is true
34460 - for sequences (string/tuple/list), x[-i] is now equivalent to x[len(x)-i]
34461 - fixed list assignment bug: "a[1:1] = a" now works correctly
34469 You can now declare a base class as follows:
34492 Every now and then you have a global variable in a module that you
34494 of calls to a function, or an option flag, etc. Until now this was
34541 The string value of each exception is now its name -- this makes it
34564 is a tuple if there appear to be more arguments. Every function now
34574 (or more) was next to impossible. This is now a piece of cake: you
34598 changed so that now p.moveto(x,y) is equivalent to Point.moveto(p,x,y)
34636 While no new argument syntax was added in this phase, it would now be
34650 (the old syntax is still accepted -- be sure to convert your classes now!)
34653 - floating point numbers may now start with a period (e.g., .14).
34658 - the FORMS interface (modules fl and FL) now uses FORMS 2.0
34666 - divmod() now also works for floats.
34677 - tutorial now (almost) complete; library reference reorganized
34682 - arithmetic operators now accept mixed type operands, e.g., 3.14/4
34701 - Simple statements can now be separated by semicolons.
34705 - Dictionary displays are now allowed on input: {key: value, ...}.
34718 - Fixed various portability problems (it now passes gcc with only
34722 - Numeric constants are now checked for overflow (this requires
34737 - int() and float() now also convert from long integers
34767 - text editing objects now have a 'settext' method
34772 - Name change: the functions path.cat and macpath.cat are now called