Lines Matching +refs:is +refs:effective +refs:target +refs:keyword

39 - In the curses module, raise an error if window.getstr() or window.instr() is
52 HTTP_PROXY variable when REQUEST_METHOD environment is set, which indicates
53 that the script is in CGI mode.
78 - Issue #26867: Ubuntu's openssl OP_NO_SSLv3 is forced on by default; fix test.
111 - Skip getaddrinfo if host is already resolved.
148 - Issue #24097: Fixed crash in object.__reduce__() if slot name is freed inside
177 getentropy() is blocking, whereas os.urandom() should not block. getentropy()
178 is supported since Solaris 11.3.
180 - Issue #25182: The stdprinter (used as sys.stderr before the io module is
184 of stdin (0), stdout (1) or stderr (2) is closed while Python is creating
189 - Issue #21167: NAN operations are now handled correctly when python is
190 compiled with ICC even if -fp-model strict is not specified.
197 is always null-terminated.
217 - Issue #24407: Fix crash when dict is mutated while being updated.
227 - Issue #23309: Avoid a deadlock at shutdown if a daemon thread is aborted
228 while it is holding a lock to a buffered I/O object, and the main thread
230 error is emitted instead.
236 is wider then partitioned string.
246 - Issue #21354: PyCFunction_New function is exposed by python DLL again.
252 '-d' is specified. The check on the number of arguments has been dropped
256 fork() failure when preexec_fn is used.
258 - Issue #6478: _strptime's regexp cache now is reset after changing timezone
265 - Issue #25718: Fixed copying object with state with boolean value is false.
316 whitespace is a substring of smallest leading whitespace.
322 - Issue #25441: asyncio: Raise error from drain() when socket is closed.
333 for datagram sockets defaults to True if the O/S is 'posix' (except if the
334 platform is Cygwin). Patch by Chris Laws.
340 - Issue #25319: When threading.Event is reinitialized, the underlying condition
350 now accept the self and the dict keyword arguments.
352 - Issue #22609: Constructor of collections.UserDict now accepts the self keyword
391 return a byte string. The encoder of the IDNA codec is now called directly
406 when convert_charrefs is True.
430 read_data is bytes. Initial patch by Aaron Hill.
482 - Issue #24259: tarfile now raises a ReadError if an archive is truncated
493 doctype() now is not called if target's doctype() is called. Based on patch
503 keyword arguments called "func" and "self". Patch by Martin Panter.
507 - Issue #5633: Fixed timeit when the statement is a string and the setup is not.
520 on Unix. tempfile.mkstemp() now fails early if parent directory is not
521 valid (not exists or is a file) on Windows.
552 - The keywords attribute of functools.partial is now always a dictionary.
561 - Issue #23008: Fixed resolving attributes with boolean value is False in pydoc.
588 - Issue #23400: Raise same exception on both Python 2 and 3 if sem_open is not
610 ambigious reverse mappings. Added many new mappings. Import mapping is no
616 - Issue #23792: Ignore KeyboardInterrupt when the pydoc pager is active.
618 pipepager from shutting down while the pager itself is still running.
622 - Issue #21802: The reader in BufferedRWPair now is closed even when closing
626 keyword argument. string.Formatter now allows to specify the "self" and
627 the "format_string" parameters as keyword arguments.
634 - Issue #23539: If body is None, http.client.HTTPConnection.request now sets
649 importing a test module is now picklable.
668 flag on certificate stores when it is available.
727 - asyncio: async() function is deprecated in favour of ensure_future().
746 debugger is active (15347); b) closing the debugger with the [X] button
754 to make it clearer that the program referred to is the currently running
764 - Issue #24782: Extension configuration is now a tab in the IDLE Preferences
772 It is more or less IDLE Classic inverted, with a cobalt blue background.
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.
806 * When the Table of Contents (TOC) menu is used, put the section header
820 - Issue #24861: Most of idlelib is private and subject to change.
826 The new idlelib/help.html is rstripped Doc/build/html/library/idle.html.
840 font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg
843 - Issue #21192: Idle editor. When a file is run, put its name in the restart bar.
861 a test run is no longer marked as a failure if all tests succeed when
894 incorrect or ambiguous. NotImplemented is only relevant at a lower level
920 - Issue #24351: Clarify what is meant by "identifier" in the context of
974 is specified with non-string argument. Based on patch by Renaud Blanch.
1006 - Issue #23099: Closing io.BytesIO with exported buffer is rejected now to
1020 PyEval_EvalFrameEx() is called with throwflag=0. At exit, the exception state
1021 is now always restored or swapped, not only if why is WHY_YIELD or
1040 - Issue #23098: 64-bit dev_t is now supported in the os module.
1053 availability of the function is checked during the compilation. Patch written
1059 where :data:`~ssl.PROTOCOL_SSLv3` support is disabled.
1089 is run with pythonw.exe.
1093 That is not the case, so the exception handler itself raised AttributeError
1106 - Issue #22966: Fix __pycache__ pyc file name clobber when pyc_compile is
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.
1193 is now created using ssl.create_default_context(), for stronger security.
1213 is mutated while iterating. Patch by Olivier Grisel.
1228 - Issue #22517: When a io.BufferedRWPair object is deallocated, clear its
1235 FD is registered.
1253 editor window with a filename. When Class Browser is requested otherwise,
1256 is entered and a module is opened, a corresponding browser is also opened.
1260 automatically add .txt when type is Text files.
1306 - Issue #16537: Check whether self.extensions is empty in setup.py. Patch by
1337 - Issue #22314: pydoc now works when the LINES environment variable is set.
1372 records if allowZip64 is false.
1378 AttributeError when sys.stderr is None.
1394 with errno is ENOTTY: "Inappropriate ioctl for device". set_inheritable()
1403 with no space between itself and the ``else`` keyword (e.g. ``True if 42else
1414 - Issue #21091: Fix API bug: email.message.EmailMessage.is_attachment is now
1415 a method. Since EmailMessage is provisional, we can change the API in a
1436 when it is run with pythonw.exe.
1451 - Issue #22226: First letter no longer is stripped from the "status" key in
1455 response is received. Patch by Martin Panter.
1459 which is called each time a demo is run, but not on import.
1470 - Issue #18132: Turtledemo buttons no longer disappear when the window is
1516 when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the
1537 - Issue #19884: readline: Disable the meta modifier key if stdout is not
1539 sequence is used on some terminal (ex: TERM=xterm-256color") to enable
1542 - Issue #21888: plistlib's load() and loads() now work if the fmt parameter is
1555 if the number of received bytes is negative.
1572 - Issue #21151: Fixed a segfault in the winreg module when ``None`` is passed
1581 object is destroyed. The destructor now closes the file if needed. The
1586 - Issue #21476: Make sure the email.parser.BytesParser TextIOWrapper is
1597 negative values the same way for keyword arguments as it does for
1628 - Issue #11709: Fix the pydoc.help function to not fail when sys.stdin is not a
1632 that use 'self' in the example code is generated correctly.
1639 or /dev/fd interface the max is now ignored and all fds are closed.
1647 the wild and is ignored by other zip tools.
1649 - Issue #21402: tkinter.ttk now works when default root window is not set.
1658 - Issue #14710: pkgutil.get_loader() no longer raises an exception when None is
1674 when reference or offset size is not a power of two.
1676 - Issue #21801: Validate that __signature__ is None or an instance of Signature.
1708 python --generate-posix-vars in pybuilddir.txt build target.
1720 Currently, the entry is on the Help menu, but it may move to Run.
1738 - Issue #21695: Closing a Find-in-files output window while the search is
1755 window is created for every test class.
1856 binary mode is specified. Patch by Sam Kimbrel.
1895 - Issue #21134: Fix segfault when str is called on an uninitialized
1927 iterator when the slice is exhausted. Patch by Anton Afanasyev.
1941 - Issue #21291: subprocess's Popen.wait() is now thread safe so that
1958 - Issue #21222: Passing name keyword argument to mock.create_autospec now
1966 SMTPServerDisconnected error until the next command is issued.
1997 TypeError if the second argument is not a string or compiled regex.
2003 - Issue #21200: Return None from pkgutil.get_loader() when __spec__ is missing.
2024 - Issue #20884: Don't assume that __file__ is defined on importlib.__init__.
2038 environment variable DISTUTILS_DEBUG is set.
2041 anymore. distutils.util.grok_environment_error is kept but doc-deprecated.
2043 - Issue #20875: Prevent possible gzip "'read' is not defined" NameError.
2047 useful error message if ``attach`` is called on a message for which
2048 ``is_multipart`` is False.
2050 - Issue #20283: RE pattern methods now accept the string keyword parameters
2051 as documented. The pattern and source keyword parameters are left as
2056 - Issue #20791: copy.copy() now doesn't make a copy when the input is
2063 missing keyword-only arguments. Patch by Jeremiah Lowin.
2068 - Issue #6676: Ensure a meaningful exception is raised when attempting
2075 positional-or-keyword arguments passed as keyword arguments become
2076 keyword-only.
2121 in 3.4.1: assume externally supplied sphinx-build is available in /usr/bin.
2148 - Issue #19697: Document cases where __main__.__spec__ is None.
2154 at least check whether Tk can be instantiated when the GUI resource is
2229 when pkgutil.find_loader() is called directly).
2264 - Issue #20619: Give the AST nodes of keyword-only arguments a column and line
2286 error if the address is not resolved; use __slots__ in Handle and
2288 list of Futures is a single Future; call_soon() and other 'call_*()'
2289 functions raise TypeError if the passed callback is a coroutine
2311 stderr rather than failing outright if SSL/TLS is unavailable. This allows
2337 - Issue #19255: The builtins module is restored to initial value before
2370 - Issue #20563: The ipaddress module API is now considered stable.
2373 boundary marker, instead of doing so only when there is an epilogue. This
2406 - Issue #20013: Some imap servers disconnect if the current mailbox is
2411 version. That is, do *not* raise an error if unicode is passed to
2414 - Issue #20476: If a non-compat32 policy is used with any of the email parsers,
2415 EmailMessage is now used as the factory class. The factory class should
2429 debug output every time it is called, regardless of the compilation cache.
2454 (1e-6) is now rounded to one millisecondi (1e-3), instead of being rounded to
2460 argument if it is a class; improved proactor pipe transport; support
2486 is present.
2541 The new syntax is highly human readable while still preventing false
2547 compilation statements of the C files it parses. When a Clinic block is
2567 that the input has not changed (and thus the output is not out-of-date).
2584 - Issue #20488: Change wording to say importlib is *the* implementation of
2588 means the directory containing the executed script and not the symlink is
2604 - Issue #17825: Cursor "^" is correctly positioned for SyntaxError and
2607 - Issue #2382: SyntaxError cursor "^" is now written at correct position in most
2613 declaration on the second line isn't effective if the first line contains
2630 of the selector. The granuarility is used in the scheduler to round time and
2636 which it could get an inspect.Signature is a callable written in Python.
2642 loop this caused is now avoided by checking if the expected context is
2648 ZIP file or too long ZIP file comment is truncated.
2681 - Issue #19097: Raise the correct Exception when cgi.FieldStorage is given an
2690 - Issue #20207: Always disable SSLv2 except when PROTOCOL_SSLv2 is explicitly
2709 - Issue #20072: Fixed multiple errors in tkinter with wantobjects is False.
2730 - Issue #19804: The test_find_mac test in test_uuid is now skipped if the
2731 ifconfig executable is not available.
2746 generated are only run when the type object is an exact match.
2752 inject code into: "modifiers". Code put there is run in the parsing
2758 c_default is also specified, providing a nice failure message for
2767 and __init__ functions if no docstring is provided in the input.
2778 - Issue #20287: Argument Clinic's output is now configurable, allowing
2811 collides with a C keyword, it no longer exposes that rename to PyArg_Parse.
2843 made if a need is demonstrated.
2846 argument is not in range [0; 255].
2854 is a non-NULL pointer).
2857 crash when a generator is created in a C thread that is destroyed while the
2858 generator is still used. The issue was that a generator contains a frame, and
2860 crash occurs when a trace function is setup.
2863 has no concrete GIL. If PyGILState_Ensure() is called from a new thread for
2905 - Issue #20067: Tkinter variables now work when wantobjects is false.
2910 - Issue #19744: ensurepip now provides a better error message when Python is
2921 - Issue #18879: When a method is looked up on a temporary file, avoid closing
2922 the file before the method is possibly called.
2966 - Issue #19921: When Path.mkdir() is called with parents=True, any missing
2967 parent is created with the default permissions, ignoring the mode argument
2994 specifying a charset now raises an error (this is a new error in 3.4).
3006 locale encoding in strict mode. It fixes the function on Fedora 19 which is
3021 if the FD is closed (as long as it was registered).
3024 is present. Original patch by Antoine Pitrou.
3046 used, or if the non-blocking flag of the socket is unchanged.
3071 descriptor 0, 1 or 2 is closed.
3076 constructor is given a str. Move the array module typecode documentation to
3125 shell window is present.
3139 - Issue #19320: test_tcl no longer fails when wantobjects is false.
3146 - Issue #19828: Fixed test_site when the whole suite is run with -S.
3151 test_statistics when python is run with -OO.
3176 - Issue #19788: kill_python(_d).exe is now run as a PreBuildEvent on the
3234 - Issue #17806: Added keyword-argument support for "tabsize" to
3309 - Issue #19727: os.utime(..., None) is now potentially more precise
3323 caller. (This is essential for stepping through asyncio coroutines.)
3362 - Issue #17276: MD5 as default digestmod for HMAC is deprecated. The HMAC
3368 - Issue #13633: Added a new convert_charrefs keyword arg to HTMLParser that,
3462 - Issue #19403: contextlib.redirect_stdout is now reentrant
3520 - Issue #19339: telnetlib module is now using time.monotonic() when available
3529 if it exists, is now deprecated.
3543 is allocated by IANA for global or private networks.
3612 - Issue #18326: Clarify that list.sort's arguments are keyword-only. Also,
3645 and single arch vs universal builds. pythonx.y-32 is now always
3651 module. A new configure option, --with-ensurepip[=upgrade|install|no], is
3696 the code is optimistic that if something exists in a directory named exactly
3728 - Issue #19014: memoryview.cast() is now allowed on zero-length views.
3730 - Issue #18690: memoryview is now automatically registered with
3759 a.k.a. PEP 3156). There are no docs yet, and the PEP is slightly
3806 - Issue #9548: Add a minimal "_bootlocale" module that is imported by the
3826 is now also true for base64_codec)
3854 is used.
3859 Attributes whose home class is None.
3917 - Issue #18818: The "encodingname" part of PYTHONIOENCODING is now optional.
3919 - Issue #19098: Prevent overflow in the compiler when the recursion limit is set
3933 object if start file position is not a zero.
3962 - Issue #14984: On POSIX systems, when netrc is called without a filename
3963 argument (and therefore is reading the user's $HOME/.netrc file), it now
3988 faulthandler module if the variable is non-empty. Same behaviour than other
4008 - Issue #18988: The "Tab" key now works when a word is already autocompleted.
4049 a sub-interpreter is shutdown (it would previously dump a fatal error).
4056 of hash collisions. The core idea is to inspect a second key/hash pair
4063 - Issue #18722: Remove uses of the "register" keyword in C code.
4070 in Modules/posixmodule.c is now far more robust.
4116 - Issue #17487: The result of the wave getparams method now is pickleable again.
4162 A pthread_atfork() parent handler is used to seed the PRNG with pid, time
4185 is due to something else than /dev/urandom not existing (for example,
4209 include the module name when a key argument is missing.
4282 - Issue #15663: Tcl/Tk 8.5.14 is now included with the OS X 10.6+ 64-/32-bit
4283 installer. It is no longer necessary to install a third-party version of
4354 tstate is first removed from TLS and then deallocated.
4359 OverflowError when an argument of %c format is out of range.
4380 file is truncated.
4414 is a potentially disruptive change since it may release some system
4419 the interpreter is shutdown and then started again.
4433 - Issue #17867: Raise an ImportError if __import__ is not found in __builtins__.
4442 originated from C code; now an exception instance is always provided.
4445 ``struct timespec``'s "tv_nsec" member is not a C long.
4481 - Issue #7963: Fixed misleading error message that issued when object is
4493 keyword-only defaults.
4498 - Issue #17137: When an Unicode string is resized, the internal wide character
4499 string (wstr) format is now cleared.
4528 exception when trying to populate its cache and it finds out the directory is
4570 - Issue #16421: loading multiple modules from one shared object is now
4574 - Issue #16602: When a weakref's target was part of a long deallocation
4584 - Issue #16455: On FreeBSD and Solaris, if the locale is C, the
4585 ASCII/surrogateescape codec is now used (instead of the locale encoding) to
4597 - Issue #16546: Fix: ast.YieldFrom argument is now mandatory.
4599 - Issue #16514: Fix regression causing a traceback when sys.path[0] is None
4608 - Issue #16290: A float return value from the __complex__ special method is no
4613 (which may be ASCII if no locale environment variable is set), to avoid
4656 - Issue #14625: Rewrite the UTF-32 decoder. It is now 3x to 4x faster. Patch
4666 is empty. Patch by Serhiy Storchaka.
4669 user that created them, even when the source file is read-only.
4749 - Issue #18561: Skip name in ctypes' _build_callargs() if name is NULL.
4820 when the function is called twice, so faulthandler.unregister() restores
4828 - Issue #18240: The HMAC module is no longer restricted to bytes and accepts
4846 raises a ValueError if the password is longer than 2 gigabytes. The ssl
4874 - Issue #17177: The imp module is pending deprecation.
4946 internal XML encoding is not UTF-8 or US-ASCII.
4971 is long, not int.
4984 virtual environment is active.
5017 SSLSocket is not connected.
5030 - Issue #17830: When keyword.py is used to update a keyword file, it now
5064 process the APPENDS opcode when it is used on non-list objects.
5067 variable if an empty path argument is specified. Patch by Serhiy Storchaka.
5087 - Issue #2118: SMTPException is now a subclass of OSError.
5134 - Issue #17032: The "global" in the "NameError: global name 'x' is not defined"
5138 is overridden with the CC environment variable, use the new compiler as
5139 the default for linking if LDSHARED is not also overridden. This restores
5182 where the target handler wasn't configured first.
5195 attribute is deleted. (Follow on to issue Issue #16464).
5210 - Issue #8862: Fixed curses cleanup when getkey is interrupted by a signal.
5221 - Issue #16709: unittest discover order is no-longer filesystem specific. Patch
5232 - Issue #16880: Do not assume _imp.load_dynamic() is defined in the imp module.
5250 is not set, harmonizing with what happens when the attribute is set to None.
5252 - Expose the O_PATH constant in the os module if it is available.
5270 the list is being resized concurrently.
5285 runctx() utility functions is not duplicated in both modules.
5300 authobject is specified.
5315 - Issue #15220: email.feedparser's line splitting algorithm is now simpler and
5324 the disk is full. Original patch by Amir Szekely.
5365 is automatically closed.
5382 internal XML encoding is not UTF-8 or US-ASCII. It also now accepts bytes
5398 - Issue #15633: httplib.HTTPResponse is now mark closed when the server
5402 when one of its write system calls is interrupted (EINTR).
5411 - Issue #17071: Signature.bind() now works when one of the keyword arguments
5412 is named ``self``.
5419 byte-compiled file is a symlink or non-regular file as a warning that import
5428 - Issue #15505: `unittest.installHandler` no longer assumes SIGINT handler is
5471 - Issue #16900: Issue a ResourceWarning when an ssl socket is left unclosed.
5493 - Issue #16674: random.getrandbits() is now 20-40% faster for small integers.
5504 - Issue #16541: tk_setPalette() now works with keyword arguments.
5572 - Issue #16298: In HTTPResponse.read(), close the socket when there is no
5573 Content-Length and the incoming stream is finished. Patch by Eran
5591 tkinter when the -E flag is passed to Python. Patch by Zachary Ware.
5616 - Issue #16333: use (",", ": ") as default separator in json when indent is
5623 - Issue #16464: Reset the Content-Length header when a urllib Request is reused
5639 - Issue #4473: Ensure the socket is shutdown cleanly in POP3.close().
5700 is missing. Initial patch by Serhiy Storchaka.
5703 no newline is found. Patch by Ned Batchelder.
5712 while it is being encoded. Patch by Serhiy Storchaka.
5724 mode when the logdir option is specified.
5772 keyword arguments specified a path that did not exist.
5799 received configuration data before it is acted upon.
5812 - Issue #16064: ``unittest -m`` claims executable is "python", not "python3".
5831 ValueError when the file-like object is closed. Patch by Alessandro Moura.
5884 - Issue #7136: In the Idle File menu, "New Window" is renamed "New File".
5926 - Issue #17625: In IDLE, close the replace dialog after it is used.
5956 - Issue #16511: Use default IDLE width and height if config param is not valid.
5977 faulthandler is enabled (Patch by Jeremy Kloth)
5984 - Issue #15494: test.support is now a package rather than a module (Initial
5997 - Issue #18375: Assume --randomize when --randseed is used for running the
6021 - Issue #17835: Fix test_io when the default OS pipe buffer size is larger
6025 test is run multiple times in parallel (eg: on a buildbot host).
6079 - Issue #17041: Fix testing when Python is configured with the
6184 deployment target prior to 10.6.
6195 - Issue #18481: Add C coverage reporting with gcov and lcov. A new make target
6219 SHLIB_SUFFIX again (as in 2.x and 3.1). The SO macro is removed in 3.4.
6249 creates a broken PYTHON_FOR_BUILD variable when --build is missing.
6254 - Issue #16836: Enable IPv6 support even if IPv6 is disabled on the build host.
6258 - Issue #16262: fix out-of-src-tree builds, if mercurial is not installed.
6260 - Issue #15298: ensure _sysconfigdata is generated in build directory, not
6306 Py_TPFLAGS_TYPE_SUBCLASS ((1 << 31). PyType_GetFlags() result type is
6325 in urllib.request.urlopen() is fixed to match the code.
6334 - Issue #16642: sched.scheduler timefunc initial default is time.monotonic.
6417 - Issue #15116: Remove references to appscript as it is no longer being
6511 `PyRun_SimpleFileExFlags()` when filename points to a pyc/pyo file, closeit is
6520 constructing infinities. This is done for backwards compatibility with
6535 _set_npn_protocols() is called multiple times, thanks to Daniel Sommermann.
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
6586 instead of wadd_wch()/mvwadd_wch(). The Python function addch(str) is still
6587 calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked
6617 don't raise an error, but if an exception is raised as part of an import do
6628 - Issue #15761: Fix crash when ``PYTHONEXECUTABLE`` is set on Mac OS X.
6637 being searched is removed after a previous import attempt.
6642 - Issue #13370: Ensure that ctypes works on Mac OS X when Python is compiled
6645 - Issue #13072: The array module's 'u' format code is now deprecated and will be
6760 - Issue #15568: Fix the return value of ``yield from`` when StopIteration is
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
6860 CPUs a process is restricted to.
6888 - Issue #15232: When mangle_from is True, `email.Generator` now correctly
6903 - Issue #15397: `inspect.getmodulename()` is now based directly on importlib via
6917 - Issue #15357: The import emulation in pkgutil is now deprecated. pkgutil uses
6934 NotImplementedError when `sys.implementation.cache_tag` is set to None.
6977 - Issue #9559: If messages were only added, a new file is no longer created and
6978 renamed over the old file when flush() is called on an mbox, MMDF or Babyl
6981 - Issue #10924: Fixed `crypt.mksalt()` to use a RNG that is suitable for
7081 - Issue #15284: Skip {send,recv}msg tests in test_socket when IPv6 is not
7084 - Issue #15277: Fix a resource leak in support.py when IPv6 is disabled. Patch
7137 no longer lose data when an underlying read system call is interrupted.
7138 IOError is no longer raised due to a read system call returning EINTR
7157 - Issue #15026: utf-16 encoding is now significantly faster (up to 10x).
7162 in text mode if the encoding is not specified. Don't change temporary the
7210 _decimal is now only 1.5x slower than float.
7212 - Remove the packaging module, which is not ready for prime time.
7218 It is used automatically on platforms supporting the necessary os.openat()
7228 are deprecated now that the parser is able to parse invalid markup.
7260 str() of a SSLError is also enhanced accordingly.
7267 mktime() when timezone offest is supplied.
7280 - Issue #14657: The frozen instance of importlib used for bootstrap is now
7292 - Issue #15036: Mailbox no longer throws an error if a flush is done
7329 - Issue #11823: disassembly now shows argument counts on calls with keyword args.
7345 not explicitly asked for. This is no longer an exception as mkdir
7354 in RFC2047. There is a necessary visible behavior change: the leading and/or
7355 trailing whitespace on ASCII parts is now preserved.
7387 - Issue #9803: Don't close IDLE on saving if breakpoint is open.
7421 - Issue #15043: test_gdb is now skipped entirely if gdb security settings
7438 and libs if the SDK used to build the interpreter is not
7485 - Issue #14624: UTF-16 decoding is now 3x to 4x faster on various inputs.
7519 is a missing header/body separator line. MalformedHeaderDefect, which the
7520 existing code would never actually generate, is deprecated.
7523 the parent window is closed before the dialog. Patch by Roger Serwy.
7536 new features through new policies. Note that Policy.must_be_7bit is renamed
7568 - Issue #14721: Send the correct 'Content-length: 0' header when the body is an
7578 when the first part of a dotted name is not a package. Patch by
7602 UTF8_STRING when no specific type is requested in an X11 windowing
7702 always compiled, even if OpenSSL is present at build time.
7711 value into an integer--0 if it is "false", and 1 otherwise.
7736 - Issue #14433: Prevent msvcrt crash in interactive prompt when stdin is closed.
7744 sys.meta_path is found to be empty, raise ImportWarning.
7747 sys.path_hooks is found to be empty, a warning will be raised. None is now
7749 means imp.NullImporter is no longer implicitly used.
7756 when repr() or str() is called on such an object.
7767 - Issue #14385: It is now possible to use a custom type for the __builtins__
7781 - Issue #14607: Fix keyword-only arguments which started with ``__``.
7797 using keyword arguments to its constructor. They are currently not set by
7809 - Issue #14768: os.path.expanduser('~/a') doesn't work correctly when HOME is '/'.
7836 - Issue #14664: It is now possible to use @unittest.skip{If,Unless} on a
7867 - Issue #14308: Fix an exception when a "dummy" thread is in the threading
7896 if only the comment is changed. In addition, the TypeError that results from
7897 trying to set a non-binary value as a comment is now raised at the time
7898 the comment is set rather than at the time the zipfile is written.
7907 - Issue #7978: socketserver now restarts the select() call when EINTR is
7908 returned. This avoids crashing the server loop when a signal is received.
7939 - Issue #14026: In test_cmd_line_script, check that sys.argv is populated
7966 - Issue #13165: stringbench is now available in the Tools/stringbench folder.
7985 are passed arguments and their complementary method is not overridden.
7997 collected. (For example if ``x.__dict__ is x``).
7999 - Issue #14205: dict lookup raises a RuntimeError if the dict is modified
8002 - Issue #14220: When a generator is delegating to another iterator with the
8047 - Issue #12757: Fix the skipping of doctests when python is run with -OO so
8134 - Issue #14223: curses.addch() is no more limited to the range 0-255 when the
8135 Python curses is not linked to libncursesw. It was a regression introduced
8165 - Issue #14359: Only use O_CLOEXEC in _posixmodule.c if it is defined.
8191 keyword arguments, contrary to the documentation.
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
8277 - Issue #13761: Add a "flush" keyword argument to the print() function,
8310 - Issue #13505: Pickle bytes objects in a way that is compatible with
8317 pickle protocol >= 3. The old reduction format is kept with older protocols
8334 object is hashable.
8357 order to update to the current time. Also added keyword argument
8369 variable in the default value of a keyword-only argument: ``lambda *,
8403 error handlers on all Windows versions. The MBCS codec is now supporting all
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.
8434 as a keyword argument: "my_string.splitlines(keepends=True)". The same
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
8471 - Issue #12575: Validate user-generated AST before it is compiled.
8506 on Windows if the mbcs codec is not available, and fail with a fatal error if
8507 we cannot get the locale encoding (if nl_langinfo(CODESET) is not available)
8519 - Issue #12356: When required positional or keyword-only arguments are not
8523 - Issue #12370: Fix super with no arguments when __class__ is overridden in the
8535 - Issue #12225: Still allow Python to build if Python is not in its hg repo or
8536 mercurial is not installed.
8552 - Issue #12106: The use of the multiple-with shorthand syntax is now reflected
8566 - Issue #12060: Use sig_atomic_t type and volatile keyword in the signal
8576 - Issue #1195: Fix input() if it is interrupted by CTRL+d and then CTRL+c,
8580 interpreter is shutting down; instead, these threads are now killed when
8609 - Issue #5673: Added a `timeout` keyword argument to subprocess.Popen.wait,
8612 seconds, the `subprocess.TimeoutExpired` exception is raised.
8615 (EINTR), for example if the program is stopped with CTRL+z on Mac OS X. Patch
8632 Windows if the file is a TTY to workaround a Windows bug. The Windows console
8634 stdout mode is binary and the length is greater than 66,000 bytes (or less,
8648 - Issue #11244: The peephole optimizer is now able to constant-fold
8658 - Issue #8923: When a string is encoded to UTF-8 in strict mode, the result is
8690 - Issue #11386: bytearray.pop() now throws IndexError when the bytearray is
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.
8761 - Issue #13993: HTMLParser is now able to handle broken end tags when
8769 with a name that is a keyword or contains quotes. Patch by Marko
8782 if gcc-4.2 is required but not found. Also as a convenience, if
8789 - Issue #13960: HTMLParser is now able to handle broken comments when
8792 - When '' is a path (e.g. in sys.path), make sure __file__ uses the current
8801 accuracy is between 0.5 ms and 15 ms).
8842 processor time used is not available or its value cannot be represented
8845 target's type (file or directory). The detection was buggy and made the
8878 and the source is a symlink, shutil.move() now recreates a symlink on the
8887 (except when SSLv2 is explicitly asked for).
8890 (copyfile, copymode, copystat, copy, copy2). When that parameter is
8968 - Issue #5905, Issue #13560: time.strftime() is now using the current locale
8969 encoding, instead of UTF-8, if the wcsftime() function is not available.
8983 sys.modules while it is iterating over it.
8992 when it is linked to the ncurses library. It encodes also Unicode strings to
9014 the wait_flag parameter is false. Patch by sbt.
9016 - Issue #13322: Fix BufferedWriter.write() to ensure that BlockingIOError is
9017 raised when the wrapped raw file is non-blocking and the write would block.
9019 RawIOBase.write() is defined to returned None when the call would block.
9025 node when it is the only child of an element. Initial patch by Dan
9054 argument is an invalid iterable. Its documentation and docstring
9062 - Byte compilation in packaging is now isolated from the calling Python -B or
9080 when reporthook is None. Patch by Jyrki Pulliainen.
9107 - Issue #10332: multiprocessing: fix a race condition when a Pool is closed
9116 - Issue #9168: now smtpd is able to bind privileged port.
9125 earlier than 1980 is provided. Patch contributed by Petri Lehtinen.
9134 - Issue #12454: The mailbox module is now using ASCII, instead of the locale
9149 - Issue #13025: mimetypes is now reading MIME types using the UTF-8 encoding,
9174 if the underlying raw stream is unseekable, even if the seek could be
9178 metaclass is registered with copyreg. Patch by Nicolas M. Thiéry and Craig
9191 Download-URL field is present.
9200 of crashing when an invalid path is given in the manifest template.
9226 (more than 2**31 items). Instead, in most cases, an OverflowError is raised.
9228 - Issue #12287: Fix a stack corruption in ossaudiodev module when the FD is
9242 to be used if the private key is encrypted. Patch by Adam Simpkins.
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
9311 code pre-dates the ability to subclass extension types. It is now possible
9321 collections when it is done.
9323 - Issue #12607: In subprocess, fix issue where if stdin, stdout or stderr is
9348 "tls-unique" channel binding is implemented). This allows the implementation
9369 by joining all queues and processes when shutdown() is called.
9371 - Issue #11603: Fix a crash when __str__ is rebound as __repr__. Patch by
9400 - Issue #12459: time.sleep() now raises a ValueError if the sleep length is
9411 - Issue #12467: warnings: fix a race condition if a warning is emitted at
9412 shutdown, if globals()['__file__'] is None.
9427 - Issue #12352: Fix a deadlock in multiprocessing.Heap when a block is freed by
9428 the garbage collector while the Heap lock is held.
9431 if it is interrupted by a signal, instead of having to wait until the next
9438 UTF-8 instead of the locale encoding if the encoding is not specified. It now
9456 deployment target only in the environment of each build subprocess. It is
9481 already importing the function to curses.wrapper, there is no API change.
9484 passed to it is a Header object, and Header/make_header no longer fail
9552 constructor has failed, e.g. because of an undeclared keyword argument. Patch
9580 if the file is closed.
9600 final argument is True.
9628 is set in shell.
9652 binary mode, but ensure that the shebang is decodable from UTF-8 and from the
9675 instead of a nul byte into the wakeup file descriptor. So it is possible to
9707 assertWarnsRegex now accept a keyword argument 'msg' when used as context
9736 - Issue #11811: ssl.get_server_certificate() is now IPv6-compatible. Patch
9785 _json is not available.
9814 worker processes: new processes would be spawned while the pool is being
9820 is passed (previously, a select.error with EINVAL would be raised). Patch
9829 - Issue #1690608: email.util.formataddr is now RFC 2047 aware: it now has a
9830 charset parameter that defaults to utf-8 and is used as the charset for RFC
9863 - Issue #11256: Fix inspect.getcallargs on functions that take only keyword
9889 to match the path to where the source code currently is, not where the code
9913 scheme is not HTTP, HTTPS or FTP (CVE-2011-1521).
9922 - Issue #11563: ``Connection: close`` header is sent by requests using URLOpener
9923 class which helps in closing of sockets after connection is over. Patch
9941 relative to Python2 and the result is now the same as it was in Python2.
9959 - Issue #11501: distutils.archive_utils.make_zipfile no longer fails if zlib is
9960 not installed. Instead, the zipfile.ZIP_STORED compression is used to create
9963 - Issue #11289: `smtp.SMTP` class is now a context manager so it can be used
9975 - Issue #11491: dbm.error is no longer raised when dbm.open is called with
9983 operations when the rounding mode is ROUND_FLOOR.
10014 The _thread.error exception is now an alias of RuntimeError. Patch by
10037 - Issue #6064: Add a ``daemon`` keyword argument to the threading.Thread
10048 to 1000x faster in some cases). It is still one to two order of magnitudes
10098 - Issue #13988: The _elementtree accelerator is used whenever available.
10110 - PEP 393: the configure option --with-wide-unicode is removed.
10141 - Issue #11495: OSF support is eliminated. It was deprecated in Python 3.2.
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
10213 traceback if Python is optimized.
10269 - Issue #12764: Fix a crash in ctypes when the name of a Structure field is not
10287 - Issue #1838: Prevent segfault in ctypes, when _as_parameter_ on a class is set
10309 - Issue #13726: Fix the ambiguous -S flag in regrtest. It is -o/--slow for slow
10343 more quickly. The --multiprocess option is now enabled by default, reducing
10357 using the unittest module. This is useful with long test suites
10360 - Issue #12624: It is now possible to fail after the first failure when
10362 (or ``-G``) option to regrtest. This is useful with long test suites
10381 - Avoid failing in test_robotparser when mueblesmoraleda.com is flaky and
10387 is now skipped instead.
10406 test_tk or test_ttk_guionly under a username that is not currently logged
10413 error twice anymore if there is only one error.
10446 pthread_sigmask() to ensure that the SIGALRM signal is received by the main
10456 test_rlock_acquire_interruption() of test_threadsignals if a thread lock is
10459 futex system call is restarted).
10499 false positive if the last directory in the path is inaccessible.
10502 non-semaphore implementation of locks is used under POSIX.
10556 - Issue #12173: The first argument of PyImport_ImportModuleLevel is now `const
10568 which is obsolete in Python 3.x. It's now aliased to str for
10671 includes an Extras directory. The Tools directory is now installed in the
10679 - Issue #10971: test_zipimport_support is once again compatible with the refleak
10699 arbitrary email messages. StringIO and text file input is deprecated,
10729 keyword-only argument. The preceding positional argument was deprecated,
10745 filenames, at bootstrap, if the codec registry is not ready yet. It is still
10758 encoding. This is the preferred encoding of PEP 3333 and the base encoding
10797 non-Python managed memory while it is being modified by another thread. Patch
10831 - Issue #10916: mmap should not segfault when a file is mapped using 0 as length
10832 and a non-zero offset, and an attempt to read past the end of file is made
10833 (IndexError is raised instead). Patch by Ross Lagerwall.
10836 of "UTF8" in the locale module as the latter is not supported MacOSX and OpenBSD.
10863 is made for all headers in any serialized message at serialization time. This
10883 any year when ``time.accept2dyear`` is False and will accept years >= 1000
10885 supported by the OS. With Visual Studio or on Solaris, the year is limited to
10886 the range [1; 9999]. Conversion of 2-digit years to 4-digit is deprecated.
10895 compilation (if the input is a string).
10898 socket is now always blocking, regardless of the operating system.
10904 for charsets whose output codec is different from its input codec.
10943 won't be quoted when the URI is constructed by the wsgiref.util's request_uri
10953 function now raises OSError on Windows >=6.0 when the user is unable to create
10985 an attempt is made to use a string to specify the archive password.
10987 - Issue #10750: The ``raw`` attribute of buffered IO objects is now read-only.
11025 only be present on OS X; the former is the correct one for Linux with GCC.
11037 - Issue #7962: The Demo directory is gone. Most of the old and unmaintained
11048 - Issue #11910: Fix test_heapq to skip the C tests when _heapq is missing.
11063 - Issue #6293: Have regrtest.py echo back sys.flags. This is done by default in
11081 error in certain circumstances when an import is done in __del__.
11094 - Issue #9857: It is now possible to skip a test in a setUp, tearDown or clean
11098 The order of the args of assertCountEqual is also changed.
11115 parameter to HTTPConnection and friends is deprecated.
11142 It is now True in most cases other than on Windows when input, output or
11165 - Issue #10710: ``Misc/setuid-prog.c`` is removed from the source tree.
11200 - PEP 384 (Defining a Stable ABI) is implemented.
11206 - Issue #8685: Speed up set difference ``a - b`` when source set ``a`` is much
11248 RFC3986. Anything before :// is considered a scheme and is followed by an
11249 authority (or netloc) and by '/' led path, which is optional.
11296 - Issue #9333: Expose os.symlink only when the SeCreateSymbolicLinkPrivilege is
11313 exists' exception when a target directory already exists with the specified
11356 - Issue #9846: zipfile is now correctly closing underlying file objects.
11370 output stream only when end_headers is invoked. This is a speedup and an
11392 default classic interpolation handler is called BasicInterpolation. Another
11398 is still available as LegacyInterpolation.
11400 - configparser: Usage of RawConfigParser is now discouraged for new projects
11416 - configparser: accepted INI file structure is now customizable, including
11458 - structseq.h is now included in Python.h.
11465 - regrtest.py once again ensures the test directory is removed from sys.path
11466 when it is invoked directly as the __main__ module.
11497 - Issue #10372: Import the warnings module only after the IO library is
11514 - Issue #10186: Fix the SyntaxError caret when the offset is equal to the length
11522 variable is not set, the locale encoding is ISO-8859-1, whereas most programs
11537 Py_FileSystemDefaultEncoding is not set.
11558 - Issue #5111: IPv6 Host in the Header is wrapped inside [ ]. Patch by Chandru.
11560 - Fix Fraction.__hash__ so that Fraction.__hash__(-1) is -2. (See also issue
11585 the target raises an exception.
11590 - ``usenetrc`` is now false by default for NNTP objects.
11603 code directory name contains a non-ASCII character and the locale encoding is
11621 - Issue #10180: Pickling file objects is now explicitly forbidden, since
11640 your app validates with Python <3.2b1+, but not on this version, it is likely
11675 - Issue #10198: fix duplicate header written to wave files when writeframes() is
11701 - Issue #5027: The standard ``xml`` namespace is now understood by
11749 XML namespace attribute is encountered.
11765 not correct, change is made to raise a URLError when a remote host is tried to
11768 - Issue #1710703: Write structures for an empty ZIP archive when a ZipFile is
11793 initial data is provided in an array object with correct type.
11829 encoding other than ASCII or UTF-8. Source encoding is preserved when
11830 reindented code is written to a file.
11859 of architectures than the one that is currently installed.
11876 - ast.literal_eval() can now handle negative numbers. It is also a little more
11894 - Issue #7397: Mention that importlib.import_module() is probably what someone
11910 is printed.
11918 - Issue #7994: Issue a PendingDeprecationWarning if object.__format__ is called
11919 with a non-empty format string. This is an effort to future-proof user
11927 wouldn't appear in 3.1 or 2.7 where the GIL's structure is more trivial.
11941 ``\UXXXXXXXX``, regardless of whether the character is printable or not.
11972 - Issue #9759: GzipFile now raises ValueError when an operation is attempted
11973 after the file is closed. Patch by Jeffrey Finkelstein.
11979 returning a (sock, addr) pair which is called when a connection has been
11980 established with a new remote endpoint. This is supposed to be used as a
12006 retry the select() loop instead of bailing out. This is because select() can
12012 - Issue #9950: Fix socket.sendall() crash or misbehaviour when a signal is
12042 - Issue #2643: msync() is not called anymore when deallocating an open mmap
12100 sys.setfilesystemencoding() creates inconsistencies because it is unable to
12113 - Issue #9707: Rewritten reference implementation of threading.local which is
12114 friendlier towards reference cycles. This change is not normally visible
12115 since an optimized C implementation (_thread._local) is used instead.
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
12137 seeding is platform independent. Issue #7889.
12141 which has a slight bias whenever n is not a power of two. Issue #9025.
12153 their contents without duplicating them. The view is both readable and
12159 unsupported operation is attempted (for example, writing to a file open only
12231 - Issue #9848: Stopping trying to build _weakref in setup.py as it is a built-in
12245 the "bin" directory inside the framework is on the shell's search path. This
12259 bytecode is a bit simplified. Patch by Demur Rumed.
12271 now removed, since their effect was inexistent in 3.x (the default encoding is
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
12317 objects are output as-is.
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
12345 1900 through maxint. The range for time.ctime is the same as for
12346 time.localtime. The string produced by these functions is longer
12347 than 24 characters when year is greater than 9999.
12349 - Issue #6608: time.asctime is now checking struct tm fields its input
12353 descriptor is provided. Patch by Pascal Chambon.
12363 and gethostbyaddr. getnameinfo is now restricted to numeric addresses as
12386 - Issue #477863: Emit a ResourceWarning at shutdown if gc.garbage is not empty.
12439 issues when socket.close is called from a __del__ method.
12459 - Issue #9129: smtpd.py is vulnerable to DoS attacks deriving from missing error
12487 - Issue #8807: poplib.POP3_SSL class now accepts a context parameter, which is a
12493 single keyword arguments.
12498 - Issue #9147: Added dis.code_info() which is similar to show_code() but returns
12526 - Issue #7467: when reading a file from a ZIP archive, its CRC is checked and a
12527 BadZipfile error is raised if it doesn't match (as used to be the case in
12537 by the cyclic GC, even if the underlying thread is still running.
12549 is how it is supposed to work, wget and curl do the same. Previous behavior
12565 - Issue #3196: email header decoding is now forgiving if an RFC2047 encoded word
12566 encoded in base64 is lacking padding.
12604 - Issue #8620: when a cmd.Cmd() is fed input that reaches EOF without a final
12613 sys.stdout is reassigned.
12637 - Issue #7564: Skip test_ioctl if another process is attached to /dev/tty.
12651 - Issue #9193: PEP 3149 is accepted.
12682 even if '\xf1' is the start byte of a 4-bytes sequence. Previous versions
12686 rather than 0.0. So "-7j" is now exactly equivalent to "-(7j)".
12727 TypeError instead of giving a DeprecationWarning when a float is parsed using
12742 - Issue #8837: Remove "O?" format of PyArg_Parse*() functions. The format is no
12774 handler, and return bytes. If Py_FileSystemDefaultEncoding is not set, fall
12782 the locale encoding failed, or if nl_langinfo(CODESET) function is missing.
12788 - Issue #7507: Quote "!" in pipes.quote(); it is special to some shells.
12792 - Issue #8419: Prevent the dict constructor from accepting non-string keyword
12810 - Issue #8417: Raise an OverflowError when an integer larger than sys.maxsize is
12819 64-bit machines. The shift count for either left or right shift is permitted
12822 - Ensure that tokenization of identifiers is not affected by locale.
12829 is set.
12832 is unknown.
12845 (SIGINT). If an error occurs while importing the site module, the error is
12890 where the right hand operand is a set of constants, by turning the set into a
12891 frozenset and pre-building it as a constant. The comparison operation is made
12892 against the constant instead of building a new set each time it is executed (a
12907 - The __complex__ method is now looked up on the class of instances to make it
12920 of integers: the result of a/b is now correctly rounded for ints a and b (at
12931 - Issue #7466: Segmentation fault when the garbage collector is called in the
12976 - Issue #1722344: threading._shutdown() is now called in Py_Finalize(), which
12978 interpreter is killed. Patch by Adam Olsen.
12983 - Issue #7120: logging: Removed import of multiprocessing which is causing crash
13023 the .py file to the .pyc file if it is set.
13053 - Issue #7072: isspace(0xa0) is true on Mac OS X.
13056 on MacOS X. That is, "python setup.py install --user" will install into
13063 variable argument list. `Py_VA_COPY` is equivalent to C99
13075 - Add PyArg_ValidateKeywordArguments, which checks if all keyword arguments are
13078 - Issue #8276: PyEval_CallObject() is now only available in macro form. The
13079 function declaration, which was kept for backwards compatibility reasons, is
13096 - Issue #7414: 'C' code wasn't being skipped properly (for keyword arguments) in
13117 ``const char *`` as the string is stored beyond the call.
13127 - In pdb, when Ctrl-C is entered while defining commands for a breakpoint, the
13144 emit a message when a breakpoint is enabled or disabled.
13153 source file to be debugged is in a non-builtin encoding.
13158 - Issue #8015: In pdb, do not crash when an empty line is entered as a
13198 used cached compiled regular expressions. This is a performance win for
13200 the performance hit anytime the cache is exceeded.
13209 getopt doesn't accept a value (eg. --help= is rejected if getopt uses
13213 module is renamed to `_datetime` and if available, overrides all classes
13214 defined in datetime with fast C impementation. Python implementation is based
13241 keyword arguments called 'self' or 'other' specially.
13253 - Fix extreme speed issue in Decimal.pow when the base is an exact power of 10
13254 and the exponent is tiny (for example, ``Decimal(10) **
13271 ensure that the input string length is a multiple of the frame size.
13276 - Issue #7829: Clearly document that the dis module is exposing an
13277 implementation detail that is not stable between Python VMs or releases.
13292 - Issue #9018: os.path.normcase() now raises a TypeError if the argument is not
13300 deallocation while the object is still being used.
13317 - Issue #8966: If a ctypes structure field is an array of c_char, convert its
13344 attribute that is True iff there are uncommitted changes.
13366 Context.clamp and make it public. This is useful in creating contexts that
13392 compilation in a non-ASCII directory if stdout encoding is ASCII (eg. if
13393 stdout is not a TTY).
13398 is bytes (eg. False on Windows).
13400 - Issue #8633: tarfile is now able to read and write archives with "raw" binary
13417 bytes on 64-bit machines, and is PY_SSIZE_T_CLEAN.
13422 - Issue #8664: In py_compile, create __pycache__ when the compiled path is
13455 operation raises multiple signals and more than one of those signals is
13462 several times is supported. Patch by Pascal Chambon.
13467 - Issue #8354: The siginterrupt setting is now preserved for all signals, not
13474 mode="w|" is used.
13481 - Issue #6312: Fixed http HEAD request when the transfer encoding is chunked.
13539 - Issue #4814: timeout parameter is now applied also for connections resulting
13562 - Issue #7606: XML-RPC traceback stored in X-traceback is now encoded to ASCII
13623 argument `-` which tells it to read files to compile from stdin. Each line is
13624 read on demand and the named file is compiled immediately. (Original patch by
13640 - Issue #8205: Remove the "Modules" directory from sys.path when Python is
13644 didn't support chflags() (for example ZFS under FreeBSD). The error is now
13648 is running in WOW64 mode on 64 bit Windows.
13664 - ``tokenize.detect_encoding`` now returns ``'utf-8-sig'`` when a UTF-8 BOM is
13682 default of restore_signals=True is a new behavior compared to earlier Python
13686 - Issue #6472: The xml.etree package is updated to ElementTree 1.3. The
13687 cElementTree module is updated too.
13690 a non existent program name and Python is unable to retrieve the real program
13693 - Issue #7880: Fix sysconfig when the python executable is a symbolic link.
13747 Decimal instance is accepted, and implicitly convert that argument to Decimal.
13765 - Issue #4772: Raise a ValueError when an unknown Bluetooth protocol is
13768 is specified. Patch by Brian Curtin.
13777 archive. The new implementation is significantly faster and can be wrapped in
13784 worker before that worker is terminated, and a new one created to replace it.
13793 the release file is empty.
13882 - Issue #1923: Fixed the removal of meaningful spaces when PKG-INFO is generated
13893 ownership when the group is not forced, because the group may be different
13894 from the user's group and inherit from its container when the test is run.
13928 - Issue #7293: distutils.test_msvc9compiler is fixed to work on any fresh
13947 timeout is 20 seconds, which should be amply sufficient for local connections.
13953 - Issue #7893: ``unittest.TextTestResult`` is made public and a ``resultclass``
13960 - Issue #3001: Add a C implementation of recursive locks which is used by
13979 modification is done through it. This fixes inconsistencies and test failures
14021 to look for it is the Content-Type header.
14026 - Issue #7048: Force Decimal.logb to round its result when that result is too
14032 - Issue #4606: Passing 'None' if ctypes argtype is set to POINTER(...) does now
14042 - Issue #6856: Add a filter keyword argument to TarFile.add().
14062 - Trying to import a submodule from a module that is not a package, ImportError
14069 importlib.__import__ is not a string (was raising an AttributeError before).
14073 - Have importlib raise ImportError if None is found in sys.modules.
14163 - Issue #8235: _socket: Add the constant ``SO_SETFIB``. SO_SETFIB is a socket
14187 exception wasn't properly propagated on machines where char is unsigned.
14208 tm_year value of 0 or 10,000. Now an OverflowError is raised in these edge
14212 directive. When the ``%z`` directive is present in the format string, an
14213 aware ``datetime`` object is returned with ``tzinfo`` bound to a
14215 ``%z`` and ``%Z`` are present, the data in ``%Z`` field is used for timezone
14216 name, but ``%Z`` data without ``%z`` is discarded.
14232 - Issue #7384: If the system readline library is linked against ncurses, the
14233 curses module must be linked against ncurses as well. Otherwise it is not safe
14250 the result is now always correctly rounded, and is equivalent to ``td /
14261 using its __index__ method. If that method is non-existent or raises
14272 msvcr100.dll is not a platform assembly anymore.
14280 - Issue #6877: It is now possible to link the readline extension to the libedit
14301 import lock is now reinitialized after fork.
14336 - Issue #3646: It is now easily possible to install a Python framework into your
14353 - Issue #7632: When Py_USING_MEMORY_DEBUGGER is defined, disable the private
14360 --with-system-ffi flag is used.
14406 - Issue #9255: Document that the 'test' package is meant for internal Python use
14409 - A small WSGI server was added as Tools/scripts/serve.py, and is used to
14433 - Issue #8605: Skip test_gdb if Python is compiled with optimizations.
14435 - Issue #7449: Skip test_socketserver if threading support is disabled.
14484 - Issue #6292: for the moment at least, the test suite runs cleanly if python is
14487 - Issue #7712: test.support gained a new `temp_cwd` context manager which is now
14489 original CWD is saved in `support.SAVEDCWD`. Thanks to Florent Xicluna who
14623 - Issue #5330: C functions called with keyword arguments were not reported by
14681 - Issue #6154: Make sure the intl library is added to LIBS if needed. Also
14684 - Issue #5809: Specifying both --enable-framework and --enable-shared is
14709 Deprecated contextlib.nested() which is no longer needed.
14715 - Issue #3527: Removed Py_WIN_WIDE_FILENAMES which is not used any more.
14741 - In unittest, using a skipping decorator on a class is now equivalent to
14779 file is a binary. Patch by Brodie Rao, tests by Daniel Diniz. This fix
14791 - Lib/smtpd.py is no longer installed as a script.
14818 sys.dont_write_bytecode is true.
14841 empty presentation type (that is, not one of 'e', 'f', 'g', or 'n')
14916 Another minor difference is that the new repr switches to
14936 - The string.maketrans() function is deprecated; there is a new static method
14938 the types string.maketrans() is supposed to work with, and mirrors the
14995 error when a named pipe is encountered, rather than blocking infinitely.
15002 string is already in normalized form, by performing a quick check beforehand.
15021 - Issue #5812: Fraction('1e6') is valid: more generally, any string
15022 that's valid for float() is now valid for Fraction(), with the
15032 log messages, which is set to 'warning' by default.
15099 imp.find_module() were converted to UTF-8 while the path is
15104 - Issue #4865: On MacOSX /Library/Python/2.7/site-packages is added to
15118 reasons. Base 2**30 is enabled by default on 64-bit machines. Add
15244 to tp_reserved, and is reserved for future usage.
15249 - Issue #4707: round(x, n) now returns an integer if x is an integer.
15254 evaluation loop is compiled with a new dispatch mechanism which gives
15264 - Issue #4838: When a module is deallocated, free the memory backing the
15304 - The internal table, _PyLong_DigitValue, is now an array of unsigned chars
15310 code objects if the original filename is obsolete (which can happen if the
15311 file has been renamed, moved, or if it is accessed through different paths).
15314 - Issue #4580: Fix slicing of memoryviews when the item size is greater than
15332 - Issue #4759: None is now allowed as the first argument of
15350 nl_langinfo is not the empty string. This was causing silent build
15372 method on file objects with closefd=False. The file descriptor is still
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
15412 behavior is similar when used with -O.
15447 - Issue #6286: Now Distutils upload command is based on urllib2 instead of
15468 - Issue #6046: Fixed the library extension when distutils build_ext is used
15492 - Issue #5874: distutils.tests.test_config_cmd is not locale-sensitive
15504 - Issue #5741: don't disallow "%%" (which is an escape for "%") when setting
15533 - Issue #1222: locale.format() bug when the thousands separator is a space
15542 it is has been populated and properly configured in order to prevent
15612 function without argtypes (only occurs if HAVE_USABLE_WCHAR_T is false).
15624 - Issue #1818: collections.namedtuple() now supports a keyword argument
15635 submodule when a package name is supplied. Initial patch by Andi
15702 - Issue #3807: _multiprocessing build fails when configure is passed
15706 - Issue #5008: When a file is opened in append mode with the new IO library,
15708 file size rather than 0). This is consistent with the behaviour of the
15715 pickle protocol 0. When reading, the 'L' is optional.
15725 - Issue #4959: inspect.formatargspec now works for keyword only arguments
15730 it is possible to segfault the interpreter.
15739 appropriately when it is being used via socket.makefile() objects
15777 the function is not a generator.
15780 no MSVC compiler is found under Windows. Original patch by Philip Jenvey.
15826 codec cannot be found. This is for compatibility with the builtin behavior.
15829 give correct results in the case where one argument is a quiet NaN
15830 and the other is a finite number that requires rounding.
15913 - Issues #4728 and #4060: WORDS_BIGEDIAN is now correct in Universal builds.
15927 - Issue #3758: Add ``patchcheck`` build target to .PHONY.
15944 the GIL is released, or owned by another thread.
15969 is now released when computing the CRC of a large buffer. Patch by ebfe.
15973 - Issue #1040026: Fix os.times result on systems where HZ is incorrect.
15993 the same behaviour as test_ttkguionly (and now also test_tk) which is to
15994 skip the tests if DISPLAY is defined but can't be used.
16036 debugging is enabled.
16103 the ctypes module is not present.
16119 - Issue #4298: Fix a segfault when pickle.loads is passed ill-formed input.
16146 - Issue #4211: The __path__ attribute of frozen packages is now a list instead
16156 method on file objects with closefd=False. The file descriptor is still
16161 would not display anything if the file name is only 1 character long.
16168 - Issue #4213: The file system encoding is now normalized by the
16169 codec subsystem, for example UTF-8 is turned into utf-8.
16208 to claiming it is Mature.
16221 raise a TypeError: "'tuple' object is not callable" instead of the expected
16266 the "-c" and "-m" parameters. Now the behaviour is as expected under Linux,
16283 these systems, the mbstowcs() function is slightly buggy and must be
16315 interface, or when the "s#" code of PyArg_ParseTuple is given a
16357 - Issue #3762: platform.architecture() fails if python is lanched via
16368 It is now maintained outside of the standard library at
16379 warnings.catch_warnings() keyword-only. Also remove a DeprecationWarning.
16398 - bsddb code updated to version 4.7.3pre2. This code is the same than
16399 Python 2.6 one, since the intention is to keep a unified 2.x/3.x codebase.
16400 The Python code is automatically translated using "2to3". Please, do not
16446 - Issue #3560: clean up the new C PyMemoryView API so that naming is
16465 - Issue #3460: PyUnicode_Join() implementation is 10% to 80% faster thanks
16480 "global name 'header' is not defined".
16485 Moreover, the re.UNICODE flag is enabled automatically for unicode patterns,
16487 patterns, ASCII matching is the only option and trying to specify re.UNICODE
16498 based hash because that hash mechanism is not correct for numeric types.
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
16516 accepts the same parameters. It just checks that its first argument is an
16548 "narrow Unicode" builds, the result is a string of 2 code units, forming a
16639 - Issue #2895: Don't crash when given bytes objects as keyword names.
16707 - The ``pickle`` module is now automatically use an optimized C
16709 ``cPickle`` module is no longer needed.
16748 - Issue #2487: change the semantics of math.ldexp(x, n) when n is too
16750 suitable sign) if n is large and negative; previously, it raised
16849 - The bundled libffi copy is now in sync with the recently released
16856 - Issue #1496032: On alpha, use -mieee when gcc is the compiler.
16858 - "make install" is now an alias for "make altinstall", to prevent
16863 gcc is used as compiler.
16891 - A new pickle protocol (protocol 3) is added with explicit support
16892 for bytes. This is the default protocol. It intentionally cannot
16896 instance, this is now decoded to a (Unicode) str instance. The
16898 via two new keyword arguments to the Unpickler class. Previously
16899 this would create bytes instances, which is usually wrong: str
16900 instances are often used to pickle attribute names etc., and text is
16915 which specifies the encoding used to decode the file. This token is
16942 subclass of collections.defaultdict, if its default_factory is set
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
17006 - Issue #1573: Improper use of the keyword-only syntax makes the
17017 - Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a
17080 (Note: this list is incomplete.)
17121 method object. The API of bound methods is cleaned up, too. The
17122 im_class attribute is removed and im_func + im_self are renamed to
17126 - intobject.h is no longer included by Python.h. The remains were
17141 encoding argument was being ignored if __loader__ is defined and
17189 allowed. xrange() is no longer defined.
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
17219 functionality formerly known as raw_input(); the name raw_input() is
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
17231 use it). A side effect of this change is that you can get
17239 - PEP 3102: keyword-only arguments.
17241 - Int/Long unification is complete. The 'long' built-in type and
17267 - exec is now a function.
17275 - Integer division always returns a float. The -Q option is no more.
17288 - Absolute import is the default behavior for 'import foo' etc.
17304 is exhausted.
17432 value is obtained by invoking hash on the long int.
17437 sys.stdin is closed.
17439 - On Windows, the PyErr_Warn function is now exported from
17466 and this cannot be converted to the required C type, an exception is
17557 is always 1 (normal) or 0 (if the specified thread wasn't found).
17575 PyErr_Warn() is now deprecated in favor of PyErr_WarnEx().
17581 with PEP 302. This was fixed by adding an ``imp.NullImporter`` type that is
17648 - The distutils version has been changed to 2.5.0, and is now kept
17669 argument tuple. For arguments where zero is illegal, the value is forced to
17670 the minimum value that is correct. This is to support an undocumented but
17691 path browser, class browser or debugger is the frontmost window on MacOS X
17706 - Patch #1529514: The _ctypes extension is now compiled on more
17707 openbsd target platforms.
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.
17752 - Bug #1439538: Drop usage of test -e in configure as it is not portable.
17778 using augmented assignment is now correctly determined.
17786 - Bug #1511381: codec_getstreamcodec() in codec.c is corrected to
17790 - Bug #1519018: 'as' is now validated properly in import statements.
17799 id to topmost thread stack frame. This is for expert use, and is
17838 is created.
17853 check is just that it is a subclass with Warning as the documentation states.
17858 - The wsgiref package is now installed properly on Unix.
17875 overwrote the wrong fields, this is fixed now.
17883 - Patch #1517790: It is now possible to use custom objects in the ctypes
17885 method, no longer is it required that the object is a ctypes type.
17887 - The '_ctypes' extension module now works when Python is configured
17913 - Bug #1517388: sqlite3.dll is now installed on Windows independent
17957 attribute on objects until one without one is found. This leads to recursion
17959 class. Originally fixed for classic classes, but this fix is for new-style.
17968 Now a TypeError is raised if the char buffer is not present but is
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-
17986 of-2 bases. The largest speedup is for inputs with about 1000 decimal
18050 - Patch #1490224: time.altzone is now set correctly on Cygwin.
18055 - Patch #1454481: thread stack size is now tunable at runtime for thread
18068 - Calling Tk_Init twice is refused if the first call failed as that
18081 - bsddb: fix DBCursor.pget() bug with keyword argument names when no data
18082 parameter is supplied. [SF pybsddb bug #1477863]
18157 using ``pprint.pprint(a_dict)`` in a doctest is now reliable.
18188 new flag when ``name`` is already the name of an option flag.
18207 - OpenBSD 3.9 is supported now.
18249 the type objects only once, even if the interpreter is initialized
18256 - Py_UNICODE is unsigned. It was always documented as unsigned, but
18289 is a macro.
18306 abstract namespace that is now fully supported.
18316 a doctest to be skipped (the code is not run, and the expected output
18317 or exception is ignored).
18351 - SimpleXMLRPCServer relied on the fcntl module, which is unavailable on
18365 - The pstats.Stats class accepts an optional stream keyword argument to
18371 - The Makefile now has a reindent target, which runs reindent.py on
18404 containers, on 64-bit architectures. Running these tests is only sensible
18406 passed is the maximum amount of memory for the tests to use.
18438 - On Windows, .DLL is not an accepted file name extension for
18442 - Bug #1421664: sys.stderr.encoding is now set to the same value as
18445 - __import__ accepts keyword arguments.
18447 - Patch #1460496: round() now accepts keyword arguments.
18469 The effect of the patch is to stop making that impossible, and in tests it
18470 appears to be effective at least on Microsoft C and gcc-based systems.
18473 - Patch #1434038: property() now uses the getter's docstring if there is
18478 nb_index slot to the PyNumberMethods struct. The slot is consulted instead
18491 package as this module is in. Imports without dots still default to the
18493 absolute_import' is used.
18496 to "error" is triggered) when raising a warning for raising string
18499 - CO_GENERATOR_ALLOWED is no longer defined. This behavior is the default.
18535 This is how string objects work. u'%f' could use , instead of .
18541 - Bug #959576: The pwd module is now built in. This allows Python to be
18555 is now displayed in interactive prompt banner.
18584 syntax tree is available for read-only (non-compile) access
18590 - SF Bug #976608: fix SystemError when mtime of an imported file is -1.
18593 Provide a warning when a directory is passed on the command line.
18606 - test__locale is skipped on OS X < 10.4 (only partial locale support is
18609 - SF bug #893549: parsing keyword arguments was broken with a few format
18619 - Disallow keyword arguments for type constructors that don't use them
18628 own internal data structure. Memory consumption is reduced by 1/3
18629 and there are modest speed-ups as well. The API is unchanged.
18631 - SF bug #1238681: freed pointer is used in longobject.c:long_pow().
18639 much of the address space following the pointer is valid, so there's no
18675 - Descriptors defined in C with a PyGetSetDef structure, where the setter is
18680 - It is now safe to call PyGILState_Release() before
18681 PyEval_InitThreads() (note that if there is reason to believe there
18683 before using the Python API; this fix is for extension modules that
18684 have no way of knowing if Python is multi-threaded yet).
18697 - Defining a class with empty parentheses is now allowed
18698 (e.g., ``class C(): pass`` is no longer a syntax error).
18734 unicode instance if the argument is not an instance of basestring and
18739 it (since the thread state is being deleted, continuing to remember it
18764 is deprecated. The undocumented re.engine variable no longer exists.
18770 database. The 3.2 version is still available as unicodedata.db_3_2_0
18773 - The timing module is no longer built by default. It was deprecated
18780 INET_ADDRSTRLEN is not defined.
18786 is larger than FD_SETSIZE.
18796 are reported, the limit on path name lengths is removed, and stat reports
18838 - Patch #1309009, Fix segfault in pyexpat when the XML document is in latin_1,
18839 but Python incorrectly assumes it is in UTF-8 format
18882 - Patch #1212117: os.stat().st_flags is now accessible as an attribute
18913 - stat_float_times is now True.
18951 - Added the sqlite3 package. This is based on pysqlite2.1.3, and provides
18980 - email 4.0 package now integrated. This is largely the same as the email 3.0
19038 - Bug #1430298: It is now possible to send a mail with an empty
19045 unless the system is Win32.
19079 is that SHA-256 is a good choice for the time being, but
19092 is raised within the method itself on a previous call (e.g., passing in an
19096 is an error in the format string.
19124 - Bug #1163178: Make IDNA return an empty string when the input is empty.
19136 even if there is an exception in later lines, resulting in
19212 - Patch #1075887: Don't require MSVC in distutils if there is nothing
19283 + the internal c-coded dialect type is now immutable.
19284 + register_dialect now accepts the same keyword dialect specifications
19292 limit is 128kB.
19294 the number of lines read from the source iterator. This is not
19300 - _DummyThread objects in the threading module now delete self.__block that is
19338 once when a size argument is given. This prevents a buffer overflow in the
19365 from the input stream, so that the output is a byte string in the correct
19382 weekday names can be output (even if an exotic encoding is used) using
19400 The zlib module is now built in on Windows.
19416 and linking has changed (prebinding is now deprecated, and libcc_dynamic
19421 - spwdmodule.c is built only if either HAVE_GETSPNAM or HAVE_HAVE_GETSPENT is
19443 is obtained via the ``PyObject_`` family, it must be released via the
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.
19467 - Patch #1276356: New resource "urlfetch" is implemented. This enables
19489 - Patch #1180012: The documentation for modulefinder is now in the library reference.
19511 - FreeBSD 7 support is added.
19544 things_to_do is not cleared by Py_MakePendingCalls().
19564 attempt is made to execute the remaining handlers. The last exception
19565 raised is re-raised.
19573 any time, the correct spelling is recomputed whenever one of these is
19575 recomputed every day or month name each time they were indexed. This is
19576 much slower than necessary in the usual case, when the index is just an
19577 integer. In that case, only the single spelling needed is recomputed
19578 now; and, when the index is a slice object, only the spellings needed
19593 - The PyRange_New() function is deprecated.
19605 is released, to remove Python version numbers. There were no other
19608 intent is to make it possible to refer to the PSF license in a more
19618 The official name of the new license is the Python Software Foundation
19649 no ValueError is raised on an 'invalid' match group. Now the delimiter is
19652 - Bug #1052503 pdb.runcall() was not passing along keyword arguments.
19666 - Patch #737473: fix bug that old source code is shown in tracebacks even if
19667 the source code is updated and reloaded.
19672 - Patch #1044395: --enable-shared is allowed in FreeBSD also.
19700 ``long(1e200)+1 == 1e200 == long(1e200)-1``. Coercion to float is no
19719 options to pass to swig. --swig-opts="-c++" is the new way to spell
19723 it is set.
19763 operators. Because datetime is a subclass of date, comparing only the
19766 ``a_date.__eq__(a_datetime)`` is true if and only if the year, month
19774 decoding incomplete input (when the input stream is temporarily exhausted).
19780 Trailing "\n"s will be stripped from the lines if ``keepends`` is false.
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
19809 building extension modules. This is so as to include software installed as
19812 - pyport.h now defines a Py_IS_NAN macro. It works as-is when the
19813 platform C computes true for ``x != x`` if and only if X is a NaN.
19850 - ``plistlib`` now supports non-dict root objects. There is also a new
19884 from right-to-left to left-to-right, which is more efficient for small
19885 bases. In addition, if the exponent is large, the algorithm now does
19889 - OverflowWarning is no longer generated. PEP 237 scheduled this to
19892 code is still using them, the Python builtin OverflowWarning, and
19897 - Fix the order of application of decorators. The proper order is bottom-up;
19898 the first decorator listed is the last one called.
19905 functions is now writable.
19909 to Py_FatalError() or PyErr_BadInternalCall(). It is still the case
19930 position to the end of the stream. This is consistent with the original
19951 - the random module now uses os.urandom() for seeding if it is available.
20005 so as to properly list all functions in a module when the module itself is
20015 new DocTestRunner class is a saner foundation if you want to do it by
20071 since 1992, but is now in the library reference as well.
20076 - FreeBSD 6 is now supported.
20112 Accordingly, the str.join() method is strongly preferred for performance
20132 source code for M is edited between import attempts, then perhaps later
20153 - An attempt to fix the mess that is Python's behaviour with
20170 and str.is* methods can now work correctly with UTF-8 locales.
20172 - Bug #989185: unicode.iswide() and unicode.width() is dropped and
20173 the East Asian Width support is moved to unicodedata extension
20183 - cpickle now supports the same keyword arguments as pickle.
20205 and localtime(). If None is provided, the current time is used (the
20206 same as when the argument is omitted).
20217 underlying file object (provided it has a fileno() method). This is
20227 when dummy_threading is being used.
20237 1.5a3, and all FCNTL.py did is export fcntl's names, after generating
20245 Queue was introduced). A minor semantic change is that the Full and
20292 - Bug #990307: when keep_empty_values is True, cgi.parse_qsl()
20304 "%default" in an option's help string is expanded to str() of
20331 (This is *not* done in the 'description' passed to OptionGroup.)
20339 one of these, so this is an error-case change in semantics for all
20348 - A large pile of datetime field-extraction macros is now documented,
20384 - weakref.ref is now the type object also known as
20410 - Bug #845802: Python crashes when __init__.py is a directory.
20449 needed memory whenever the length of the iterable is known in
20455 length is not known).
20458 overallocation ranged between 3% and 25%. Now, it is a constant 12%.
20460 the overallocation is no more than three elements -- this improves space
20468 keyword arguments.
20484 has a weakref without a callback which is only referenced from
20510 changed semantics compared to Python 2.3, but this is not
20521 this is really a mistake, because this only happens for special
20522 methods (like __reduce__) where the method object's version is
20539 as when cyclic gc is not involved, you need to write your code so
20560 - list.sort() now supports three keyword arguments: cmp, key, and reverse.
20563 The reverse argument is a boolean value and if True will change the
20567 records with equal keys is unchanged).
20569 - Added test whether wchar_t is signed or not. A signed wchar_t is not
20578 - The % formatting operator now supports '%F' which is equivalent to
20594 - str and unicode built-in types now have an rsplit() method that is
20604 method is called as necessary.
20606 - fixed: if a file is opened with an explicit buffer size >= 1, repeated
20618 ValueError if more than a second is lost in precision when the
20619 timestamp is cast to the platform C time_t type. There's no chance
20625 - fcntl.ioctl now warns if the mutate flag is not specified.
20635 - socket.sslerror is now a subclass of socket.error . Also added
20639 nl_langinfo(ERA) caused by GNU libc's illegal NULL return is fixed.
20680 is still supported for backwards compatibility.)
20709 with k random bits. This method is now an optional part of the API
20714 issue a warning when randrange() is called with a range that large.
20718 It offers some of functionality of SQL's groupby keyword and of
20738 - Bug #1266283: The new function "lexists" is now in os.path.__all__.
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.
20826 - urllib2 now supports processors. A processor is a handler that
20863 - tmpfile.mkstemp now returns an absolute path even if dir is relative.
20865 - urlparse is RFC 2396 compliant.
20867 - The fieldnames argument to the csv module's DictReader constructor is now
20883 - The csv module's DictReader and DictWriter classes now accept keyword
20914 It is now [ picklefile ] dbfile. This provides better symmetry with
20928 remain for compatibility with the 2.3 release, but -b is the default
20931 - py-electric-colon now works when pending-delete/delete-selection mode is
20934 - py-help-at-point is no longer bound to the F1 key - it's still bound to
20937 - Pynche was fixed to not crash when there is no ~/.pynche file and no
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
20950 is configured --with-tsc.
21000 is helpful because the PyCFunction can take advantage of optimized calls
21003 - Added a new function, PyDict_Contains(d, k) which is like
21004 PySequence_Contains() but is specific to dictionaries and executes
21013 is equivalent to Py_BuildValue("(OOO)", a, b, c).
21019 values, due to unchecked alloca() calls (SF bug 851056). The fix is
21044 on the computer's internal loopback interface. This connection is not
21045 visible on any external interface and no data is sent to or received
21048 and rest assured no communication external to your machine is taking
21060 - It is now possible to import from zipfiles containing additional
21137 - The interpreter is now more robust about importing the warnings
21145 - It is not possible to create subclasses of built-in types like str
21149 - The thread_id is now initialized to 0 in a non-thread build. SF bug
21178 bsddb3 no longer crashes if an environment is closed before a cursor
21199 is easily fixable by specifying the old behavior when calling testmod()
21210 can guarantee data is written to disk.
21244 is true when it should only when time.daylight is true.
21264 - The trace.py script has been removed. It is now in the standard library.
21273 - An irix64 system is treated the same way as an irix6 system (SF
21292 _beginthread() function failed (due to "too many threads" -- this is
21298 is raised now.
21317 - Python is now compiled with -mno-fused-madd, making all tests pass
21359 in some cases. The result should be -1.0 if the power is odd and 1.0
21360 if the power is even, and any float with a sufficiently large exponent
21361 is (mathematically) an exact even integer.
21375 instead of going through __getitem__. If __getitem__ access is
21414 - the bsddb185 module is built in one restricted instance -
21415 /usr/include/db.h exists and defines HASHVERSION to be 2. This is true
21428 on that file. This is great when a doctest fails.
21440 for "0" and "False". This is quite un-doctest-like, but is practical.
21456 SourceForge) is now included as Lib/idlelib. The old Tools/idle is
21479 GET. This is common practice and more-or-less sanctioned by the
21486 - inspect.is{method|data}descriptor was added, to allow pydoc display
21508 - Tools/idle is gone; long live Lib/idlelib.
21513 - texcheck.py is a new script for making a rough validation of Python LaTeX
21527 tp_free slot is the default _PyObject_Del, and type does not define
21528 a tp_free slot itself, _PyObject_GC_Del is assigned to type->tp_free.
21531 slot is _PyObject_Del or NULL, and the type is a base type
21532 (Py_TPFLAGS_BASETYPE), TypeError is raised: since the type is a base
21534 is gc'able, tp_free must not be NULL or _PyObject_Del.
21537 from C) to interrupt a thread by sending it an exception. It is
21560 wizard. People with machines where C: is not the system drive
21561 usually want Python installed on whichever drive is their system drive
21563 where C: is not the system drive report that the installer now
21625 raising an exception. This is consistent with calling the
21648 fits. E.g., range(2**100, 2**101, 2**100) is the following list:
21660 value to return if the key is not in the dict. If a default is not
21661 given and the key is not found, a KeyError will still be raised.
21668 - New function sys.exc_clear() clears the current exception. This is
21690 addresses. There is also a new module variable, has_ipv6, which is
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
21733 is not believed to be secure, and including crypto code with Python
21737 platforms which have dup(2). The makefile() method is built directly
21744 - New generator function os.walk() is an easy-to-use alternative to
21770 codepoint2name is the reverse mapping. See SF patch #722017.
21789 of raising TypeError. If x is a Set object and y is a non-Set object,
21790 x == y is False, and x != y is True. This is akin to the change made
21792 about the rationale is in the NEWS entry for that. See also SF bug
21795 - On Unix platforms, if os.listdir() is called with a Unicode argument,
21827 issue a fatal error when no current thread state is available. This
21828 makes it possible to print dictionaries when no thread is active.
21841 classes defined by Python code using a class statement) is now
21870 - A new method MacOS.WMAvailable() returns true if it is safe to access
21873 - EasyDialogs dialogs are now movable-modal, and if the application is
21878 be used by mere mortals. The documentation is now also more or less
21897 - sys.path[0] (the directory from which the script is loaded) is now
21898 turned into an absolute pathname, unless it is the empty string.
21910 constructor would ignore all arguments. This is changed now: the
21912 that worked under Python 2.2. The simplest fix is to add a no-op
21921 E.g. 0xffffffff is -1, and -(0xffffffff) is 1, but -0xffffffff would
21928 does this when base is 0 and s.strip() starts with a '0'. When the
21929 sign is actually folded, as in int("0xffffffff", 0) on a 32-bit
21930 machine, which returns -1, a FutureWarning is now issued; in Python
21937 - isinstance(x, X): if X is a new-style class, this is now equivalent
21948 - long(string, base) takes time linear in len(string) when base is a power
21956 Passing None is semantically identical to calling sort() with no
21966 - Function objects now have a __module__ attribute that is bound to
21969 defined in Python. This attribute is used by pickle.whichmodule(),
21983 lock": imp.acquire_lock() and imp.release_lock(). Note: this is a
21985 this is the last release_lock() call. You can check with
22018 The date class is now properly subclassable. (SF bug #720908)
22024 enough of a difference to justify distinct classes, and life is simpler
22032 ValueError is raised if tz.dst(dt) returns None (2.3a1 treated it
22036 meaning that DST is never in effect).
22056 dt.replace(tzinfo=whatever) instead, where "whatever" is None or a
22060 to give complete control over how a UTC time is to be converted to
22064 be suitable as-is for "almost all" time zone subclasses, but the
22069 repaired), and its name was changed to tz ("tzinfo" is overloaded enough
22077 where "utc" is an instance of a tzinfo subclass modeling UTC. Without
22095 the comparison is == then False is returned, and if the comparison is
22096 != then True is returned. Because dict lookup and the "in" operator
22106 sequence is heterogeneous, or the dict has mixed-type keys. [This
22166 - realpath is now exported when doing ``from poxixpath import *``.
22167 It is also exported for ntpath, macpath, and os2emxpath.
22177 the gain value which is passed to Tk. SF bug# 602259.
22190 to the new one. While the user-visible API of the new module is
22208 test_linuxaudiodev.py) are no longer run by default. This is
22216 groups, OPT and BASECFLAGS. OPT is meant to carry just optimization- and
22217 debug-related flags like "-g" and "-O3". BASECFLAGS is meant to carry
22229 - A new Makefile target, scriptsinstall, installs a number of useful scripts
22235 - PyEval_GetFrame() is now declared to return a ``PyFrameObject *``
22247 argument is provided when an integer is specified (this affects the 'b',
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
22297 - There is a new module pimp, the package install manager for Python, and
22304 downside of this change is that applets can no longer be run from the
22318 - dict() now accepts keyword arguments so that dict(one=1, two=2)
22319 is the equivalent of {"one": 1, "two": 2}. Accordingly,
22320 the existing (but undocumented) 'items' keyword argument has
22324 - int() now returns a long object if the argument is outside the
22328 - Assignment to __class__ is disallowed if either the old or the new
22329 class is a statically allocated type object (such as defined by an
22343 callable. The type dict-proxy is renamed to dictproxy.
22357 module (not from the module type) is now illegal; previously this
22361 - A new type object, 'basestring', is added. This is a common base type
22363 types.StringTypes, e.g. to test whether something is "a string":
22364 isinstance(x, basestring) is True for Unicode and 8-bit strings. This
22365 is an abstract base class and cannot be instantiated directly.
22368 method returns something that's not a C instance, its __init__ is
22374 doesn't define or override __getstate__, a TypeError is now raised.
22375 This is done by adding a bozo __getstate__ to the class that always
22382 - Import from zipfiles is now supported. The name of a zipfile placed
22407 isinstance does. ``issubclass(X, (A, B))`` is equivalent to
22414 length, while a sort is in progress, is not defined by the language.
22420 - Unicode file name processing for Windows (PEP 277) is implemented.
22422 which is set to True on Windows NT/2000/XP, and False elsewhere.
22432 issues a SyntaxWarning. In the future, None may become a keyword.
22434 - SET_LINENO is gone. co_lnotab is now consulted to determine when to
22436 PyCode_Addr2Line instead (f_lineno is still there, but only kept up
22437 to date when there is a trace function set).
22439 - There's a new warning category, FutureWarning. This is used to warn
22472 Karatsuba algorithm is now used. This is most effective if the
22474 Karatsuba multiplication has O(N**1.58) runtime (the exponent is
22479 (starting in the ballpark of a million bits). Note that this is a
22484 - u'%c' will now raise a ValueError in case the argument is an
22488 mktemp() function is now deprecated; new, safe replacements are
22491 Use of some global variables in this module is also deprecated; the
22492 new functions have keyword arguments to provide the same
22497 - When x is an object whose class implements __mul__ and __rmul__,
22507 returns f (unless f is closed), and f.next() is similar to
22508 f.readline() when EOF is not reached; however, f.next() uses a
22521 may vary, and in data-dependent ways, this is much faster on many
22524 several major platforms. This sort is also stable (if A==B and A
22527 potential drawback is that list.sort() may require temp space of
22536 breakage, without any benefits. (Note that this is still an
22583 enumerate("abc") is an iterator returning (0,"a"), (1,"b"), (2,"c").
22615 is backward compatible.
22625 deallocation has been streamlined. A header file is included,
22636 - Universal newlines (PEP 278) is implemented. Briefly, using 'U'
22638 ending convention so that any of '\r', '\r\n', and '\n' is
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.
22666 operator.pow(a,b) which is equivalent to: a**b.
22667 operator.is_(a,b) which is equivalent to: a is b.
22668 operator.is_not(a,b) which is equivalent to: a is not b.
22687 been added as the package bsddb. The traditional bsddb module is
22689 and is now named bsddb185. This supports Berkeley DB versions from
22707 - cPickle.BadPickleGet is now a class.
22712 - If the size passed to mmap.mmap() is larger than the length of the
22713 file on non-Windows platforms, a ValueError is raised. [SF bug 585792]
22715 - The xreadlines module is slated for obsolescence.
22717 - The strptime function in the time module is now always available (a
22718 Python implementation is used when the C library doesn't define it).
22720 - The 'new' module is no longer an extension, but a Python module that
22742 - array.array is now a type object. A new format character
22748 of sizeof(int)!=sizeof(long)!=sizeof(void*) is delayed until dl.open
22749 is called.
22768 letter 'r', 'w' or 'a', otherwise a ValueError is raised. This fixes
22771 - The linuxaudiodev module is now deprecated; it is being replaced by
22791 the result to zero. Approximate comparison is essential for
22814 command line parsing. It is a slightly modified version of Greg
22831 282. The code is written by Vinay Sajip.
22837 now (provided the OS supports it, and Python is configured with large
22849 option of tkFileDialog is exposed as function askopenfile{,name}s.
22857 whatever locale is explicitly set by the user, is preserved. If you
22871 characters (with the exception of the dot which is used for Python
22882 also a class ImmutableSet which is useful when you need sets of sets
22884 is the base class of the two.
22890 OverflowError. That is, it now accepts any combination of 'start'
22891 and 'stop' arguments so long as each is in the range of Python's
22895 generator. The Mersenne Twister algorithm is implemented in C,
22910 new class, random.WichmannHill which is provided for backward
22922 as a Python int is equal to the value computed a 32-bit platform.
22927 - Some fixes in the copy module: when an object is copied through its
22933 - Sockets now support timeout mode. After s.settimeout(T), where T is
22958 - ftplib.retrlines() now tests for callback is None rather than testing
22979 argument defaults to None now as a result. A happy benefit is
22998 UTF-16 is a 2-byte encoding and the C lib's line reading APIs don't
23037 has changed slightly so that an explicit maxlinelen value is always
23048 - New pdb command 'pp' which is like 'p' except that it pretty-prints
23070 are still there; it is believed that at least some of these are
23085 - On Unix, IDLE is now installed automatically.
23087 - The fpectl module is not built by default; it's dangerous or useless
23099 COUNT_ALLOCS is not enabled by default, in either release or debug
23103 - Compiling out the cyclic garbage collector is no longer an option.
23104 The old symbol WITH_CYCLE_GC is now ignored, and Python.h arranges
23106 that may be conditionalizing on it). A bonus is that any extension
23124 is on an unknown subset of Cray systems, described here:
23134 - The universal newlines option (PEP 278) is on by default. On Unix
23157 This is a result of these types having a partially defined
23158 tp_as_number slot. (This is not a feature, but an indication that
23159 PyNumber_Check() is not very useful to determine numeric behavior.
23167 strings", supported by the ob_sinterned member, is gone. Interned
23168 strings are now usually mortal; there is a new API,
23188 - Py_FatalError() is now declared as taking a const char* argument. It
23193 sq_item without rechecking that o is a sequence and without
23196 - PyRange_New() now raises ValueError if the fourth argument is not 1.
23197 This is part of the removal of deprecated features of the xrange
23202 CHECKTYPES flag set. This is to better support proxies.
23211 was always set to &PyType_Type; now it is set to base->ob_type,
23212 where base is tp_base, defaulting to &PyObject_Type.
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.
23263 XXX The version # is likely to change before 2.3a1.
23271 - When Python is built under a Microsoft compiler, sys.version now
23273 MSVC 6, sys.version contains the substring "MSC v.1200 ". 1200 is
23287 limitation of MS _chsize (which is no longer used).
23289 - os.waitpid() is now implemented for Windows, and can be used to block
23290 until a specified process exits. This is similar to, but not exactly
23318 (so specify both if you want both; note that neither is useful unless
23324 - Mac/Relnotes is gone, the release notes are now here.
23330 - The current naming convention for Python on the Macintosh is that MacPython
23334 - All MacPython-OS9 functionality is now available in an OSX unix build,
23337 talk to the window manager unless your application is run from a .app
23338 bundle. There is a command line tool "pythonw" that runs your script
23343 - Most of Mac/Lib has moved to Lib/plat-mac, which is again used both in
23348 .pyw script is double-clicked in the Finder. By default .py scripts are
23353 - MacPython-OS9 is now Carbon-only, so it runs on Mac OS 9 or Mac OS X and
23362 now use the accessor function call API, which is also what Apple's
23367 and Folder (APIs from Folders.h). The old macfs built-in module is
23386 - The default encoding for Python sourcefiles in MacPython-OS9 is no longer
23417 limit much smaller. If the limit is too low (it only affects
23490 - The "delete attribute" method of descriptor objects is called
23498 (a) When super itself is subclassed, its __get__ method would still
23502 is confusing. To fix this, I decided to change the semantics of
23504 attributes. After all, overriding data attributes is not
23516 - New-style objects now support deleting their __dict__. This is for
23518 dictionary, but saves space if the object is not used further.
23523 - -Qnew now works as documented in PEP 238: when -Qnew is passed on
23527 your own code. As the PEP says, -Qnew is intended for use only in
23530 under -Qnew; this is expected, and won't be repaired until true
23531 division becomes the default (in the meantime, test_coercion is
23535 argument, and raises TypeError if either the second arg is a string
23536 or if the second arg is specified when the first is a string.
23559 - types.StringTypes is a tuple containing the defined string types;
23582 - It is no longer necessary to use --with-suffix when building on a
23584 directory an extension is used, but not in the installed python.
23594 the keyword list equal the number of argument specifiers. This
23612 - In unix-Python on Mac OS X (and darwin) sys.platform is now "darwin",
23617 the shared library. The latter is used only for locating the python
23630 list of base classes is now allowed, so this works now:
23635 The MRO (method resolution order) for each base class is respected
23636 according to its kind, but the MRO for the derived class is computed
23637 using new-style MRO rules if any base class is a new-style class.
23647 - New-style classes can now have a __del__ method, which is called
23648 when the instance is deleted (just like for classic classes).
23650 - Assignment to object.__dict__ is now possible, for objects that are
23654 - Methods of built-in types now properly check for keyword arguments
23656 that take keyword arguments are __call__, __init__ and __new__.
23673 - mmap has a new keyword argument, "access", allowing a uniform way for
23676 Unix. A new keyword argument was required to support this in a
23686 sendall(). This is like send() but may make multiple calls to
23691 - Various bugfixes to the curses module. There is now a test suite
23704 example, the regexp r'(?P<abc>)(?P<abc>)' is not allowed, because a
23720 permanent memory leaks (provided garbage collection is enabled).
23729 - statcache is now deprecated.
23733 hard coded to "GMT" timezone). An optional 'localtime' flag is
23748 - The dbm module is built using libdb1 if available. The bsddb module
23749 is built with libdb3 if available.
23795 - PythonScript has been moved to unsupported and is slated to be
23801 - The core is now linked with CoreServices not Carbon; as a side
23802 result, default 8bit encoding on OSX is now ASCII.
23816 extension types). There is no longer a performance penalty, and I
23818 remains: the __dict__ of a new-style class is a read-only proxy; you
23821 of need: there is once again only one __dict__ (although in the
23836 this example is a mistake. Previously, this would silently let 'a'
23839 'bf', 'cd', 'ce', 'cf']. Now, this is flagged as a syntax error.
23840 Note that [a for a in <singleton>] is a convoluted way to say
23841 [<singleton>] anyway, so it's not like any expressiveness is lost.
23850 proxy reference has been fixed. weakref.ReferenceError is now a
23862 will return true if the first argument is an instance of any of the
23867 returns true if x is an instance of A or B.
23912 but it is still quite preliminary. Support modules and
23916 raised in Python is cleared by C code (e.g. hasattr()). This used
23943 which indicates whether output is intended for the header 'Q'
23969 derived from it is now maintained by Anthony Baxter, see
23978 - configure will use CXX in LINKCC if CXX is used to build main() and
23984 - The documentation for the tp_compare slot is updated to require that
23985 the return value must be -1, 0, 1; an arbitrary number <0 or >0 is
23986 not correct. This is not yet enforced but will be enforced in
23996 thread ID is calculated (this is an incompatible change, but only
24015 is created for .py and .pyw files.
24018 Scott. Note that SIGBREAK is unique to Windows. The default SIGBREAK
24052 examples also work again. It is hoped that Gtk and Boost also work
24057 - property() now takes 4 keyword arguments: fget, fset, fdel and doc.
24060 discoverable from Python in 2.2a3. __doc__ is new, and allows
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
24078 called __getattribute__. This method, if defined, is called for
24080 one in classic classes is defined which is called only if regular
24083 both are defined, __getattribute__ is called first, and if it raises
24084 AttributeError, __getattr__ is called.
24091 "file" is the name of the built-in type, and file() is a new built-in
24093 file() is now the preferred way to open a file.
24097 and keyword arguments. This made no sense whatsoever any more, so
24108 a str subclass type, s[:] returned s as-is. Now it returns a str
24120 on the object if the object is not a string or buffer. This
24125 method. As a result, all file-like objects which may be the target
24129 - Thread scheduling on Solaris should be improved; it is no longer
24141 - The "email" package has been added. This is basically a port of the
24147 before the entire comparison is complete.
24150 iteration just like file objects (i.e. their .readline() method is
24162 is an alias for os.path.abspath().
24184 - Large file support (LFS) is now automatic when the platform supports
24187 files but whose kernel doesn't; in this case, large file support is
24198 - The Unix build is now a bit less chatty, courtesy of the parser
24199 generator. The build is completely silent (except for errors) when
24219 the first mismatch. Instead the test is run to completion, and a
24220 variant of ndiff-style comparison is used to report all differences.
24221 This is much easier to understand than the previous style of reporting.
24228 - regrtest.py is much better integrated with unittest and doctest now,
24247 - Conversion of long to float now raises OverflowError if the long is too
24251 if either of the first two arguments is a float, or if both are of
24252 integer types and the second argument is negative (in which latter case
24253 the arguments are converted to float, so this is really the same
24274 than raising OverflowError. This is a partial implementation of PEP
24279 - A new command line option, -Q<arg>, is added to control run-time
24281 values are -Qold, -Qwarn, -Qwarnall, and -Qnew. The default is
24290 Using -Qnew is questionable; it turns on new division by default, but
24303 once it is created.
24348 - A new function, imp.lock_held(), returns 1 when the import lock is
24357 code objects is no longer allowed. This plugs a security hole.
24373 Mac/OSX. There is a Makefile there that will build Python as a real Mac
24418 when importing the types module; this is probably shallow, and
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.
24437 - The w9xpopen hack is now used on Windows NT and 2000 too when COMPSPEC
24454 type and supporting code is completely removed from the interpreter.
24461 - The NeXT platform is no longer supported.
24463 - The 'new' module is now statically linked.
24488 Python 3.0) unless "from __future__ import division" is included, in
24495 - Future statements are now effective in simulated interactive shells
24501 trunk and is not so tentative any more (the exact specification of
24502 some features is still tentative). A lot of work has done on fixing
24512 but now both actions raise TypeErrors. It is still legal to set it
24560 and extensions using different Unicode widths is rendered next to
24568 single untyped argument. Calling such methods is more efficient than
24569 calling corresponding METH_VARARGS methods. METH_OLDARGS is now
24576 relevant is found.
24592 with Python 2.2a1 is to test backwards compatibility. It is
24593 possible, though not likely, that a decision is made not to release
24598 - Generators were added; this is a new way to create an iterator (see
24601 keyword to the language, this feature must be enabled by including a
24605 ordinary identifier, but a warning is issued each time it is used.
24624 return Unicode objects when decoding is requested ("äöü".decode("latin-1")
24653 On operating system that support non-ASCII filenames, it is common for
24656 the platform. As this encoding is likely to be different from Python's
24690 given dict. Nothing is defined about this order, so no program should
24708 - Iterators were added; this is a generalized way of providing values
24730 - Accessing module attributes is significantly faster (for example,
24733 - Comparing dictionary objects via == and != is faster, and now works even
24736 - Comparing dictionaries in ways other than == and != is slower: there were
24743 d with d.keys() == [i << 16 for i in range(20000)] is approximately 500x
24745 the nature of an effective cure (last December! better late than never).
24747 - repr() is much faster for large containers (dict, list, tuple).
24761 - Fredrik Lundh's xmlrpclib is now a standard library module. This
24766 - The xrange() object is simplified: it no longer supports slicing,
24774 - strop is now *really* obsolete (this was announced before with 1.6),
24788 these types (when HAVE_LONG_LONG is #define'd by the Python config
24842 here is the *complete* list of patches (except version updates):
24849 fixed with considerable amounts of band-aid, but the net effect is a
24857 (1.1.3 is needed). Now it does.
24859 - Changed "make clean" target to also remove shared libraries.
24880 fix it for pre-0.9.5 versions; the problem with the patch is that on
24881 some systems it issues a warning whenever socket is imported, and
24891 not "wb" (which is not a valid mode at all).
24905 - Skip rather than fail test_sunaudiodev if no audio device is found.
24923 - After a public outcry, assignment to __debug__ is no longer illegal;
24924 instead, a warning is issued. It will become illegal in 2.2.
24927 "%#x" now always prepends "0x", even if the value is zero.
24971 invoked when the module is run as a script.
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
25056 - Complex division is now calculated using less braindead algorithms.
25063 - It is illegal to assign to the name __debug__, which is set when the
25064 interpreter starts. It is effectively a compile-time constant.
25072 inspired by JUnit), is now part of the standard library. You now
25079 for Tk. With that module, it is not necessary to statically link
25083 - tzparse.py is now obsolete.
25091 - PyDict_Next(): it is now safe to call PyDict_SetItem() with a key
25108 this is done to avoid the cost of checking each object for having a
25132 MacPython is awkward). Jack also made various fixes for the Mac
25183 - An optional object allocator has been included. This allocator is
25185 than the standard system allocator. It is not enabled by default
25186 because of possible thread safety problems. The allocator is only
25187 protected by the Python interpreter lock and it is possible that some
25200 which offers a number of additional constants if 1.95.x is used.
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
25231 Platforms) is implemented. See
25268 to that platform is easy.
25276 - Scopes nest. If a name is used in a function or class, but is not
25278 be used. One consequence of this change is that lambda statements
25279 could reference variables in the namespaces where the lambda is
25285 function A is defined within a function B, the names bound in B are
25304 Under the old rules, the name str in helper() is bound to the
25306 the argument named str and an error will occur when helper() is
25311 that this case is illegal, but the compiler never checked for it.
25314 may allow this form when there is no possibility of ambiguity.
25316 - repr(string) is easier to read, now using hex escapes instead of octal,
25324 the func_code attribute is writable.
25328 module (weakref). The weakref module is the public interface. It
25333 of a loop. It is still not possible to use continue in a finally
25338 - mailbox.py now has a new class, PortableUnixMailbox which is
25342 is a callable used when new message classes must be instantiated by
25345 - random.py is now self-contained, and offers all the functionality of
25350 random() had been made. The latter is particularly useful for multi-
25355 - random.py's seed() function is new. For bit-for-bit compatibility with
25366 family is AF_PACKET.
25368 - test_capi.py is a start at running tests of the Python C API. The tests
25385 - Build procedure: the zlib project is built in a different way that
25396 - Build: Subproject ucnhash is gone, since the code was folded into the
25404 - There is a new Unicode companion to the PyObject_Str() API
25406 former, but assures that the returned value is a Unicode object
25414 is also a new C API PyObject_RichCompare() (which also falls back on
25419 which is guaranteed to have the type that provided the function) and
25423 slot function is used as a fallback, if defined).
25431 made; in particular, Python does not assume that == is the Boolean
25432 inverse of !=, or that < is the Boolean inverse of >=. This makes
25439 It is possible to define types whose rich comparison results are not
25449 numbers differ. Since it is not mathematically meaningful to compare
25453 - The outcome of comparing non-numeric objects of different types is
25463 and set attributes on their underlying im_func. It is a TypeError
25472 that is much more work.)
25477 sys.modules['M'] is not a real module; it's basically a getattr()
25485 - File objects have a new method, xreadlines(). This is the fastest
25499 a complicated (but still thread-safe) method using fgets() is used by
25507 DONT_USE_FGETS_IN_GETLINE (this is the first thing to try if std test
25523 is considered an improvement. Also note that __rcmp__ is no longer
25524 supported -- instead of calling __rcmp__, __cmp__ is called with
25528 object, NotImplemented is defined. This can be returned for
25530 particular combination of arguments. From C, this is
25578 localtime, gmtime, asctime and ctime is now optional, defaulting to
25581 - The ftplib module now defaults to passive mode, which is deemed a
25583 these days. Note that this could break if ftplib is used to connect
25584 to a *server* that is inside a firewall, from outside; this is
25601 function, xreadlines(). The intention is that this code is the
25609 This is equivalent to the previous the speed record holder using
25610 file.readlines(sizehint). Note that if file is a real file object
25611 (as opposed to a file-like object), this is equivalent:
25632 the caller. This is intended only as a building block for
25640 for single-byte charsets. The parser type objects is exposed as
25649 previous/next relationship works even when the tree is modified;
25658 extension modules is now greatly automated. Rather than having to
25674 - C++ compilers are better supported; the CXX macro is always set to a
25675 C++ compiler if one is found.
25685 - Support for Windows 3.1, DOS and OS/2 is gone. The Lib/dos-8x3
25686 subdirectory is no more!
25692 Below is a list of all relevant changes since release 1.6. Older
25697 Alternatively, a good overview of the changes between 1.5.2 and 2.0 is
25712 pickle() will raise a TypeError if it is passed a class.
25738 program (like WinZip) is not found; the source code for this
25739 installer is in Misc/distutils. check_lib() was modified to behave
25752 exceptional behavior when the test is run in verbose mode. Python
25754 so the exception part of test_math is run only in verbose mode, and
25764 - Changed compiler flags, so that gcc is always invoked with -Wall and
25767 --with-pydebug flag. The expected warning is for getopt() in
25784 What is release candidate 1?
25803 e.g. 0.0 ** -2.0. Note that math.pow is unrelated to the built-in
25832 performed on a closed object, an exception is raised. The truncate
25838 play when the regression test is run.
25840 Note that this module is named poorly, because it should work
25854 - The binascii module is now enabled on Win64.
25862 which is called when the interpreter starts up to determine where
25863 the standard library is installed. These vulnerabilities affect all
25865 long values for PYTHONHOME or argv[0]. The risk is greatest for a
25871 applied in cPickle and in PyInstance_New(), is to call
25873 container attributes is complete.
25876 PyModule_AddObject if the Python version is less than 2.0, which
25890 executable suffix. This is useful for builds on Cygwin and Mac OS
25893 - The mmap.PAGESIZE constant is now initialized using sysconf when
25906 dl_export.h is gone, and its macros now appear on the mwcc command
25909 - Platform directory in lib/python2.0 is "plat-beos5" (or
25942 string is too long."
25944 - Better error message when continue is found in try statement in a
25974 which ndbm.h file to include; Berkeley DB's nbdm and GDBM's ndbm is
25984 found by the collector will be saved in gc.garbage. This is useful
26002 fork() exists. (popen4() is still in the works.)
26019 - readline: Does not immediately exit when ^C is hit when readline and
26027 standard default encoding ("ascii") is changed. This saves quite a
26037 is followed by whitespace.
26039 - StringIO: Size hint in readlines() is now supported as documented.
26057 XML package if PyXML version is greater than 0.6.1.
26067 documentation is already available.
26069 - pyexpat: Renamed to xml.parsers.expat since this is part of the new,
26089 PyOS_sighandler_t is defined for the type of signal handlers.
26097 - The standard header <limits.h> is now included by Python.h (if it
26099 <limits.h> is not available.
26102 effectively useless. It is now officially useless but preserved for
26103 backwards compatibility. If the pend argument is not NULL, *pend is
26121 it works when argv[0] is a relative path.
26138 - On Windows, getpythonregpath is now protected against null data in
26153 Don't define MS_SYNC to be zero when it is undefined. Added missing
26165 - ftpmirror: Call to main() is wrapped in if __name__ == "__main__".
26207 of all new modules is included below. Lots of bugs have been fixed.
26231 PEP stands for Python Enhancement Proposal. A PEP is a design
26239 author is responsible for building consensus within the community and
26256 is similar to
26260 except that A is evaluated only once (relevant when A is something
26263 However, if A is a mutable object, A may be modified in place. Thus,
26264 if A is a number or a string, A += B has the same effect as A = A+B
26265 (except A is only evaluated once); but if a is a list, A += B has the
26269 order to implement the in-place behavior; the not-in-place behavior is
26271 in-place behavior. For classes, the method name is derived from the
26282 This is a flexible new notation for lists whose elements are computed
26283 from another list (or lists). The simplest form is:
26288 This is more efficient than a for loop with a list.append() call.
26295 of words that contain no uppercase characters. This is more efficient
26337 Note that 'as' is not a new keyword -- it is recognized only in this
26338 context (this is only possible because the syntax for the import
26357 evaluates to None, the current value of sys.stdout is used. Thus:
26361 is equivalent to
26371 Python is now equipped with a garbage collector that can hunt down
26391 A new function zip() was added. zip(seq1, seq2, ...) is equivalent to
26397 sys.version_info is a tuple (major, minor, micro, level, serial).
26423 fixes the problem. It is now much more likely that you will be
26428 limit is the maximum number of recursive calls that can be made by
26430 overflowing the C stack and causing a core dump. The default value is
26449 xmlpackage; this is intended to give the XML SIG a hook to distribute
26465 over which day of the week is the first day, returning strings instead
26589 os.popen is much more usable on Windows 95 and 98. See Microsoft
26591 is implemented by the new w9xpopen.exe helper in the root of your
26592 Python installation. Note that Python uses this internally; it is not
26599 under HKEY_CURRENT_USER. The latter is sufficient for all "normal"
26618 The 1.6 NEWS file can't be changed after the release is done, so here
26619 is some late-breaking news:
26624 The new module is now enabled per default.
26626 It is not true that the encodings codecs cannot be used for normal
26627 strings: the string.encode() (which is also present on 8-bit strings
26645 Below is a list of all relevant changes since release 1.5.2.
26665 which used to be '1L'; repr(1L) is unchanged and still returns '1L'.
26667 precision is lost (on all current hardware).
26669 - The -X option is gone. Built-in exceptions are now always
26693 list of all new modules is included below.
26695 Probably the most pervasive change is the addition of Unicode support.
26707 peculiarity is that the equivalent of string.join(sequence,
26708 delimiter) is delimiter.join(sequence). Use " ".join(sequence) for
26713 - The new regular expression engine, SRE by Fredrik Lundh, is fully
26714 backwards compatible with the old engine, and is in fact invoked
26717 sre. SRE is faster than pre, and supports Unicode (which was the
26719 engine -- this is at least the fourth!).
26727 Deleting objects is now safe even for deeply nested data structures.
26736 Greg Ward's "distutils" package is included: this will make
26741 function. f(*args, **kwds) is equivalent to apply(f, args, kwds).
26747 is a string. This makes string.atoi() and string.atol() obsolete.
26750 When a local variable is known to the compiler but undefined when
26751 used, a new exception UnboundLocalError is raised. This is a class
26753 The purpose is to provide better diagnostics in the following example:
26788 code is very rough. Eventually, the re module will be reimplemented
26826 string - most of this module is deprecated now that strings have
26896 - Added the Tools/compiler package. This is a project led by Jeremy
26899 - The function math.rint() is removed.
26903 - Version 0.9.1 of Greg Ward's distutils is included (instead of
26906 - A new version of SRE is included. It is more stable, and more
26913 a form that is acceptable to the experts.)
26915 - The _locale module is enabled by default.
26926 - If __str__() or __repr__() returns a Unicode object, this is
26929 - Unicode string comparisons is no longer aware of UTF-16
26933 registers the Python DLL version in the registry (this is no longer
26939 - The PC configuration is slightly friendlier to non-Microsoft
26964 More (Cameron Laird is honorary; the others are 1.5.2c1 testers).
26968 man pages suggest that the proper thing to do is to add THR_NEW_LWP to
27005 * Modules/Makefile.pre.in: 'clean' target should remove hassignal.
27089 unsupported format string. (I guess this is because the logic for
27092 an empty result also means the format is not supported.
27102 this is not correct. Also, it broke at least one demo
27124 Python is invoked from a daemon.
27131 so the preferred name for them is tag_lower, tag_raise
27155 help in diagnosing problems it is useful to be able to report the
27179 so that helo_resp is tested against None; if it has the empty string
27210 My one concern is that code expecting an integer & getting a tuple
27238 syntactical, and the fact that \\foo is not a valid path doesn't mean
27274 main() when imported (in other words, it is not usable as a module).
27303 - It needlessly used the makefile() method for each response that is
27341 (which is implemented) includes the current DST setting (i.e. timezone
27342 for Central is 18000 in summer and 21600 in winter). So Python's
27347 available in BSD, which is how the GLIBC manual claims things should
27362 Avoid warnings from AIX compiler. Reported by Vladimir (AIX is my
27382 Attached is a cleaned-up version of ndiff (added useful module
27390 During display, if EPIPE is raised, it's probably because a pager was
27438 the effect is to concatenate the two chunks of data.
27457 is not an empty string, this means that you have arrived at the
27471 to fix. I expect that this is a temporary situation --
27512 Chris Lawrence sent me a broken version; this one is a tad simpler and
27552 after it is safe to release, overlapping with the Python lock.
27555 executed while gethostbyname_lock is held could attempt to reacquire
27564 time. This shouldn't be a problem as long as the gethostbyname lock is
27565 always acquired when the global lock is not held.
27581 Bug reported by Tobias Thelen: missing "self." in assignment target.
27594 This is necessary to avoid leaking when Python is reinitialized later.
27600 This is necessary to avoid leaking when Python is reinitialized later.
27617 If a filename on Windows starts with \\, it is converted to a URL
27618 which starts with ////. If this URL is passed to urlparse.urlparse
27621 //, which is parsed differently by urlparse.urlparse. The fix is to
27630 Note that a combination of drive letter and remote host is not
27666 row 0, column 0. This is because the test for arguments in the method
27668 rather just whether is evaluates to non-false. A value of 0 fails
27720 function. I think this is a little old fashioned.
27722 Here is a patch: use the docstring as help if no help_xxx
27742 Also added code so that with -vv it is very chatty about what it does.
27767 - Don't crash in the case where a superclass is a string instead of a
27768 pyclbr.Class object; this can happen when the superclass is
27769 unrecognizable (to pyclbr), e.g. when module renaming is used.
27777 Added .rdf and .xsl as application/xml types. (.rdf is for the
27778 Resource Description Framework, a metadata encoding, and .xsl is for
27813 item if it is a class or method).
27829 open_http also had the 'data is None' test backwards. don't call with the
27830 extra argument if data is None.
27844 and the problem with time.clock() is that it's not implemented properly
27855 http_error had the 'data is None' test backwards. don't call with the
27856 extra argument if data is None.
27882 urlopen is used to specify form data, make sure the second argument is
27891 o the initial comment is wrong: creating messages is already
27913 Document the correct class hierarchy for SystemExit. It is not an
27933 Get rid of AC_CHECK_LIB(m, pow) since this is taken care of later with
27946 length of a list, but the largest C int is -- sys.maxint is the
27947 largest Python int, which is actually a C long).
27966 empty format string, or when the format string is a single %Z and the
27967 timezone is unknown.) if the buffer is at least 256 times as long as
27984 converted was a "digit" -- use isalnum(). This test is there only to
28006 Dang. Even though this is obsolete code, somebody found a bug, and I
28015 Make sure the path parameter to readmodule() is a list before adding it
28050 - On Windows 95/98, the Tkinter module now is smart enough to find
28054 clearer error message is produced. This should avoid most
28065 - Added a hack to the exit code so that if (1) the exit status is
28068 the user to hit a key before the DOS box is closed.
28080 "(built-in)" if there is no __file__ attribute.
28085 - New info string sys.hexversion, which is an integer encoding the
28102 - The Lib/test directory is no longer included in the default module
28131 - ConfigParser's get() method now accepts an optional keyword argument
28132 (vars) that is substituted on top of the defaults that were setup in
28140 - The updated xmllib module is once again compatible with the version
28200 - Added strop.expandtabs() so string.expandtabs() is now much faster.
28224 - Avoid tracebacks when an image is deleted after its root has been
28231 sequence is now accepted, instead of requiring a tuple. This is in
28237 to the negative power (which is already and better done in
28261 used, but recommended use is for "abstract" methods to raise this.
28263 - The parser will now spit out a warning or error when -t or -tt is
28305 undocumented Netrc class in ftplib.py is now obsolete.)
28307 - codeop.py is a new module that contains the compile_command()
28308 function that was previously in code.py. This is so that JPython can
28312 - turtle.py is a new module for simple turtle graphics. I'm still
28330 1.5.2b1, especially the new code module). This is very much a work in
28365 your subclass may stop working. A long-term solution is to provide
28371 is set to None, in which case we use self.__class__ (as before).
28384 - In CGIHTTPServer.py, the list of acceptable formats is -split-
28397 single string, this situation is treated separately. Also added
28482 macro which is only used for init methods in extension modules, and
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
28546 - When errno is zero, report "Error", not "Success".
28564 - The 'new' module is now enabled by default in the Setup file.
28579 - Lists have a new method: L1.extend(L2) is equivalent to the common
28582 - Better error messages when a sequence is indexed with a non-integer.
28638 - No longer set __args__; this feature is no longer supported and can
28645 on a file before it is loaded.
28667 urlretrieve(); commented out gopher test (the test site is dead).
28741 - Improvements to Tools/freeze/. Each Python module is now written to
28763 - New object type, bufferobject.c is an example and can be used to
28793 - When searching for the library, a landmark that is a compiled module
28794 (string.pyc or string.pyo) is also accepted.
28837 (Remember that the documentation is now unbundled and has its own
28845 - The BeOS port is now integrated. Courtesy Chris Herborth.
28888 EnvironmentError is the base class for IOError and PosixError;
28889 PosixError is the same as os.error. All this so that either exception
28899 i. Also, the sort() method is faster again. Sorting is now also
28900 safer: it is impossible for the sorting function to modify the list
28901 while the sort is going on (which could cause core dumps).
28904 This is done to prevent the circularity where [] < 0L < 1 < [] is
28905 true. As a side effect, cmp(None, 0) is now positive instead of
28915 - Assignment to __name__, __dict__ or __bases__ of a class object is
28931 - Generalized test/regrtest.py so that it is useful for testing other
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
29020 which module to use to open it. (The anydbm.error exception is now a
29105 - Even if readline is not used, Tk windows created in an interactive
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,
29175 - The registry key used is now "1.5" instead of "1.5.x" -- so future
29202 - The installer now installs more files (e.g. config.h). The idea is
29216 - The script texi2html.py (which was part of the Doc tree but is no
29226 last line is both indented and lacks a newline. This is now fixed.
29244 you to pass an obscure version number constant which is always the same.)
29253 - PySequence_In() is now called PySequence_Contains().
29254 (PySequence_In() is still supported for b/w compatibility; it is
29255 declared obsolete because its argument order is confusing.)
29259 the error). This was necessary because there is lots of code out
29294 - The documentation is now unbundled. It has also been extensively
29307 recursive entry is printed as [...] or {...}. See Py_ReprEnter() and
29309 since this requires a different kind of fix; fortunately, this is a
29324 threading is supported). This means that when two threads
29345 spaces for indentation in a manner that depends on how much a tab is
29362 Python) which is much smarter about guessing the indentation style
29367 file uses indentation in a way that is sensitive to the interpretation
29368 of a tab. The preferred module is tabnanny.py (by Tim Peters).
29381 - Version 1.0 of the faq wizard is included (only very small changes
29385 (i.e., only when -r is used), do a recursive delete.
29399 - Fix the bug where the '# dgux is broken' comment in the Makefile
29462 which is *not* in the default module search path:
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,
29514 time.clock() is generally better than os.times(). This makes it work
29528 - The Unix mailbox class in the mailbox module is now more robust when
29529 a line begins with the string "From " but is definitely not the start
29559 - The httplib module is more robust when servers send a short response
29577 commands are automatically unbound when the widget is destroyed, but
29583 - Image objects now have an optional keyword argument, 'master', to
29588 all use of the default root by the Tkinter library. This is useful to
29593 - The 'exit' command is deleted from the Tcl interpreter, since it
29597 - Tcl_Finalize() is now registered as a Python low-level exit handle,
29614 carefully without removing the __builtins__ entry. This is implied
29615 when a module object is deallocated (this used to clear the dictionary
29625 - New global flag Py_FrozenFlag is set when this is a "frozen" Python
29629 - New global flag Py_TabcheckFlag is incremented by the -t option and
29637 object is requested -- include the name of the attribute and the type
29654 - Make sure setvbuf() isn't used unless HAVE_SETVBUF is defined.
29666 module name as specified in the import statement. This is an
29693 also been much improved. Finally, it is once again possible to
29712 - Stop test_grp.py from failing when the /etc/group file is empty
29734 libraries on DG/UX. This adds a target to create
29735 libpython$(VERSION).so; however this target is *only* for DG/UX.
29741 *after* printing (and only when printing is successful).
29744 parent window is not (Skip Montanaro).
29748 is no longer required to explicitly close the returned "file" object
29763 constructor is no longer called. This makes a much larger group of
29773 rules for \w and \b. The in-line syntax for this flag is (?L).
29775 - The built-in function isinstance(x, y) now also succeeds when y is
29776 a type object and type(x) is y.
29779 package/module in which the class is defined.
29787 - The thread module is now automatically included when threads are
29789 since it is now in its own Setup.thread file.)
29802 registers a new extension, ".pyw" that invokes this. This is a
29805 stdout and stderr is lost; reading from the original stdin yields
29831 - The crypt module is now disabled in Modules/Setup.in by default; it
29832 is rarely needed and causes errors on some systems where users often
29862 - In frozenmain.c, stdin is made unbuffered too when PYTHONUNBUFFERED
29863 is set.
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
29889 - In _localemodule.c, LC_MESSAGES is not always defined; put it
29894 - Demo/scripts/newslist.py: Fix the way the version number is gotten
29907 uudecode bug where it complaints about trailing garbage is still there
29914 - In string.atof(), don't fail when the "re" module is unavailable.
29932 is included in the source tree as PC/python15.wse, and so are the
29934 is now complete with the pcre module.
29936 - sys.ps1 and sys.ps2 can now arbitrary objects; their str() is
29939 - The reference manual is brought up to date (more or less -- it still
29944 automated). A simple index.html is also added to Doc (it only works
29953 - A new version of the Python mode for Emacs is included as
29962 version, see PC/readme.txt and PC/os2vacpp. This is for IBM's Visual
29969 break on older Linux versions; it is needed for mklinux and appears to
30001 (All this is accomplished by an explicit call to setlocale(LC_NUMERIC,
30011 - Improved policy for __builtins__: this is a module in __main__ and a
30020 when no coercion is possible. This is used to fix a problem where
30025 - The errno module is changed again -- the table of error messages
30026 (errorstr) is removed. Instead, you can use os.strerror(). This
30031 - New C API PyOS_AfterFork() is called after fork() in posixmodule.c.
30048 __init__.pyc) file before they are considered as packages. This is
30054 deleted by the time __del__ is called. The solution (a hack, but it
30055 works) is to set some instance variables to 0 instead of None.
30057 - The table of built-in module initializers is replaced by a pointer
30059 run time, e.g. when a collection of modules is loaded from a shared
30060 library. (No example code of how to do this is given, but it is
30061 possible.) The table is still there of course, its name prefixed with
30109 - The "sharedmodules" subdirectory of the installation is renamed to
30157 Returns 1 if obj1 and obj2 are the same object, or if obj1 is an
30169 arguments. If type is not a class, this does nothing. If type is a
30170 class, then it makes sure that value is an instance of the class by:
30172 1. if instance is of the type, or a class derived from type, it does
30176 argument. If value is None, it uses an empty arg tuple, and if
30177 the value is a tuple, it uses just that.
30180 exception class derived from Exception; when -X is given, it creates a
30197 the first argument and returns true iff first is second, or is a
30199 and returns true iff first is an instance of the second, or any
30210 - Changed the checks made in Py_Initialize() and Py_Finalize(). It is
30222 - *Before* (instead of after) signalmodule.o is added, remove both
30253 - NT build: Changed the way python15.lib is included in the other
30259 test is now printed. -v is the same as the old -vv. -q is more quiet
30265 - Removed the PC/make_nt.in file from the distribution; it is no
30310 if it doesn't. The default defaults to None. This is quicker for
30323 - Changes to import: support for "import a.b.c" is now built in. See
30325 for more info. Most important deviations from "ni.py": __init__.py is
30327 there's no support for "__" or "__domain__". Note that "ni.py" is not
30328 changed to match this -- it is simply declared obsolete (while at the
30329 same time, it is documented...:-( ).
30334 - More changes to import: the site.py module is now imported by
30335 default when Python is initialized; use -S to disable it. The site.py
30346 The test suite is now a package -- to run a test, you must now use
30349 - A completely new re.py module is provided (thanks to Andrew
30354 regex is now officially obsolete, it will probably take several major
30363 "install" target. By default, installed shared libraries go into
30366 - The install-sh script is installed with the other configuration
30375 the module in which they were declared. This is useful for pickle and
30384 -X is used).
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
30411 work. It's been rewritten. The bad news is that it now requires a
30414 tree. For this reason, the thread support is disabled by default.
30418 message strings. (The latter is redundant because the new call
30423 in Python. An example completer, rlcompleter.py, is provided.
30441 right linenumber when -O is used. Rather than guessing whether -O is
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
30451 attempted when -i is specified. (Yes, I know, giving in to Marc-Andre
30456 method. Unfortunately, getaddrlist() is as broken as ever, since it
30469 the value.keys(). This is more consistent (the pickling doesn't use
30471 instances that have a __setattr__ hook. But it *is* a semantic change
30472 (because the setattr hook is no longer used). So beware!
30474 - config.h is now installed (at last) in
30476 is actually in $prefix/include/python1.5/, with all the other Python
30498 is like PyImport_ImporModule(name) but receives the globals and locals
30499 dict and the fromlist arguments as well. (The name is a char*; the
30502 - The 'p' format in the struct extension module alloded to above is
30515 interpret relative paths starting in "../". This is necessary if the
30520 directory. It is much more robust, and properly builds separate Debug
30537 is *not* imported by default, but can be imported to run user-specific
30543 - Added os.altsep; this is '/' on DOS/Windows, and None on systems
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.
30559 - Documentation for the relatively new modules "keyword" and "symbol"
30568 it is always "200 OK") rather than swallowing it.
30597 - The default module search path is now much saner. Both on Unix and
30598 Windows, it is essentially derived from the path to the executable
30600 $PYTHONHOME). The value of $PYTHONPATH on Windows is now inserted in
30602 default path). On Windows, the directory containing the executable is
30613 module search path. Note that the symlink is expanded in sys.path[0]
30617 - It is now recommended to use ``#!/usr/bin/env python'' instead of
30620 is more portable than that of /usr/local/bin/python -- scripts almost
30636 The simplest example is ``def f((a,b),(c,d)): print a,b,c,d''; this
30652 .pyo files instead of .pyc files. The speedup is only a few percent
30654 as a separate table (which is also available in .pyc files). However,
30663 is false, the assertion is not checked. __debug__ is a built-in
30664 variable whose value is initialized to track the -O flag (it's true
30665 iff -O is not specified). With -O, no code is generated for assert
30680 The Python/C API for frames is changed (you shouldn't be using this
30687 objects (e.g. list.append is now first).
30692 the buffer size. While that the improvement is real on all systems,
30693 it is most dramatic on Windows.
30700 Andrew Kuchling. Even cmath is now documented! There's also a
30729 string; for example, r'\n' is a two-character string consisting of a
30731 quotes; it is actually useful for triple quoted doc strings which might
30733 backslash does not terminate the string, but the backslash is still
30734 included in the string; for example, r'\'' is a two-character string
30740 AssertionError. For example, ``assert foo > 0'' is equivalent to ``if
30742 condition is not available; it would be too complicated to generate
30743 code for this (since the code is generated from a parse tree).
30744 However, the text is displayed as part of the traceback!
30747 somevalue" where somevalue is not an instance of SomeClass, it
30748 instantiates SomeClass(somevalue). In 1.5a4, if somevalue is an
30750 is set to somevalue.__class__, and SomeClass is ignored after that.
30752 - Duplicate keyword arguments are now detected at compile time;
30753 f(a=1,a=2) is now a syntax error.
30774 dictionary comparisons on some Solaris versions when Python is built
30778 comparison of unequal dictionaries faster. A shorter dictionary is
30789 caught an exception are kept alive until another exception is caught
30796 buffer objects can be the target of a read operation using the call
30797 f.readinto(buffer). A cool feature is that regular expression matching now
30802 string object is the same object as the key in the dictionary, not
30803 just a string with the same value. This is done by having a pool of
30807 not a different object type, and interning is totally optional, but by
30814 implementation file is now called dictobject.c rather than the
30817 - The intrinsic function dir() is much smarter; it looks in __dict__,
30822 string.atol(), and string.atof(). No second 'base' argument is
30825 - When a module is deleted, its globals are now deleted in two phases.
30830 phase is still random.
30832 - It is no longer an error for a function to be called without a
30836 - Guido's corollary to the "Don Beaudry hook": it is now possible to
30839 is an instance, its class will be instantiated to create the new
30841 "extension classes", since it is triggered by the presence of a
30846 - Another change is that the Don Beaudry hook is now invoked when
30847 *any* base class is special. (Up to 1.5a3, the *last* special base
30848 class is used; in 1.5a4, the more rational choice of the *first*
30849 special base class is used.)
30871 '0xffffffff'. While this may seem inconsistent, it is much more
30872 useful. (For long integers, a minus sign is used as before, to fit
30886 faster than pickle.py; cStringIO.c's improvement is less dramatic but
30901 Purify(TM) C API. See also the file Misc/PURIFY.README. It is also
30911 on platforms where this is not the native format. It uses uppercase
30928 database is still open before making any new calls.
30930 - The dbhash module is no more. Use bsddb instead. (There's a third
30948 - STDWIN is now officially obsolete. Support for it will eventually
30951 - The binascii extension module is now hopefully fully debugged.
30960 exception is raises) is renamed -- its string value is now "os.error",
30982 - The sys.builtin_module_names variable is now a tuple. Another new
30983 variables in sys is sys.executable (the full path to the Python
31007 1.5, the old regex module is still fully supported; in the future, it
31012 - New module keyword.py exports knowledge about Python's built-in
31020 determine whether an interactively entered command is complete or not,
31026 - There is now a library module xdrlib.py which can read and write the
31034 - Module codehack.py is now completely obsolete.
31042 - A new helper module, copy_reg.py, is provided to register extensions
31045 - Revamped module tokenize.py is much more accurate and has an
31059 Fulton). The problem with file upload to a Windows platform is solved
31063 is now possible to invoke cgi.py from a command line script, to test
31071 - httplib.py: the socket object is no longer closed; all HTTP/1.*
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
31105 - urllib.py: the ftp cache is now limited to 10 entries. Added
31117 - In urlparse.py, there is a cache for results in urlparse.urlparse();
31118 its size limit is set to 20. Also, new URL schemes shttp, https, and
31122 a sync() method, which calls the database's sync() method if there is
31140 headers. It is now documented.
31142 - mailbox.py: Added BabylMailbox. Improved the way the mailbox is
31146 is necessary on non-Unix platforms.
31155 attribute names. While this is against the SGML standard, there is
31168 [maxsplit]) which does substring replacements. It is actually
31186 is now obsolete -- use the sub() or subn() functions or methods in the
31197 - The way GNU readline is configured is totally different. The
31198 --with-readline configure option is gone. It is now an extension
31202 editing. When the interpreter shell is invoked interactively, it
31204 input mechanism is used. The hook variables are PyOS_InputHook and
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
31219 situations, e.g. LDLAST is appended to the link command. These are
31229 - The support for shared libraries under AIX is now simpler and more
31241 - The configure script is smarter about C compiler options; e.g. with
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
31271 The allobjects.h header file is gone; instead, you would have to
31285 supported. This file has been moved to Modules and is only ever
31286 compiled when the SGI specific 'gl' module is built.
31293 upper bound is given (e.x. for a[1:]). It used to ask the object for
31298 documentation is incomplete, also see the new Demo/pysvr example
31302 - There is now a Py_Finalize() function which "de-initializes"
31303 Python. It is possible to completely restart the interpreter
31305 change of functionality in Py_Initialize() means that it is now a
31306 fatal error to call it while the interpreter is already initialized.
31307 The old, half-hearted Py_Cleanup() routine is gone. Use of Py_Exit()
31308 is deprecated (it is nothing more than Py_Finalize() followed by
31312 free *all* allocated memory (some of it is hard to track down),
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
31335 that is installed for the current execution environment. By Jim
31338 - It is now possible for an extension module's init function to fail
31352 PyErr_Occurred() to check (there is *no* special return value).
31359 an argument list including keyword arguments. Contributed by Geoff
31362 - PyArg_GetInt() is gone.
31391 - Tkinter.py: when the first Tk object is destroyed, it sets the
31392 hiddel global _default_root to None, so that when another Tk object is
31408 "tkinter" when "_tkinter" is not found has been fixed -- it no longer
31420 platforms). It also supports threading -- it is safe for one
31424 in 1.5a3 was broken; in 1.5a4, it is back in a different version,
31426 is disabled by default.)
31432 CreateFileHandler, so _tkinter.createfilehandler is not available on
31436 provided a fix for the Mac, so createfilehandler *is* actually
31443 - A new regression test suite is provided, which tests most of the
31444 standard and built-in modules. The regression test is run by invoking
31448 - New tool: faqwiz -- the CGI script that is used to maintain the
31455 Tools/webchecker. A simplified version of this program is dissected
31476 - Tools/scripts/pystone.py script is upgraded to version 1.1; there
31478 memory. Also, in 1.1, the LOOPS variable is incremented to 10000.
31487 NT (the old VC++ 4.2 Makefile is also still supported, but will
31493 - Support for Win32s (the 32-bit Windows API under Windows 3.1) is
31506 where Python is installed, or to the top of the source tree, if it was run
31511 os.path.join(a, b, c) is the same as os.path.join(a, os.path.join(b,
31524 - Py_Initialize() is no longer called when the DLL is loaded. You
31572 - Version 2.83 of Misc/python-mode.el for Emacs is included.
31587 (XXX Sorry, the rest is in totally random order. No time to fix it.)
31628 - The test program for mailbox.py is now more useful.
31667 user-defined function is now okay where a class is expected. A
31668 built-in function is not okay, to prevent pickling something that
31680 Python threads are supported). Note: on NT, this change is not
31692 exception, since there is no meaningful way to do it without losing
31698 - Change the hash algorithm for strings -- the multiplier is now
31709 - The Ellipses built-in name has been renamed to Ellipsis -- this is
31721 - The reference manual is now maintained in FrameMaker.
31728 instead of the posixfile module; lockf() is more portable.
31756 - Added Modules/Setup.local file, which is processed after Setup.
31780 (XXX This is less readable that it should. I promise to restructure
31806 - The freeze script works once again and is much more robust (using
31829 to unpickle in restricted execution mode, where the __dict__ attribute is
31830 not available (but setattr() is).
31835 - posixfile locking is now also correctly supported on AIX.
31852 - A generic Makefile for dynamically loaded modules is provided in the Misc
31855 - A new version of python-mode.el for Emacs is provided. See
31857 separate file pyimenu.el is no longer needed, imenu support is folded
31861 non-standard location. The LDFLAGS variable is passed on the Makefiles
31865 permission). This is required on HP-UX and won't hurt on other systems.
31867 - The objc.c module is no longer part of the distribution. Objective-C
31870 - The sybase module is no longer part of the distribution. A much
31871 improved sybase module is available as contributed software from the
31874 - _tkinter is now compatible with Tcl 7.5 / Tk 4.1 patch1 on Windows and
31883 - The mpz module is now compatible with GMP 2.x. (Not tested by me.)
31884 (Note -- a complete replacement by Niels Mo"ller, called gpmodule, is
31887 - A warning is written to sys.stderr when a __del__ method raises an
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
31910 - Unrecognized keyword arguments raise TypeError, not KeyError.
31930 ".<platform>.slb" where <platform> is either "CFM68K" or "ppc". The ".slb"
31938 to parse keyword arguments.
31941 version number is now "<digit>.<digit>.<digit>.<apiversion>", where the
31943 "1.4.1" for Python 1.4.1 -- the beta level is not included) and
31944 <apiversion> is the four-digit PYTHON_API_VERSION (currently 1005).
31949 Solaris threads (XXX: how do you select which is used???). (Note: the
31978 - At last, it is no longer necessary to define HAVE_CONFIG_H in order to
31981 - Unrecognized keyword arguments now raise TypeError rather than KeyError.
31986 - 'access' is no longer a reserved word, and all code related to its
31987 implementation is gone (or at least #ifdef'ed out). This should make
31999 1.3, splitfields(s, None) is totally equivalent to split(s).)
32001 separator (which is passed to split()).
32046 is now a standard part of the distribution (alas).
32052 because the "regen" script requires that Python is installed. Some manual
32065 - The directory containing the script passed to the interpreter is
32066 inserted in from of sys.path; "." is no longer a default path
32074 Moreover, module os is enhanced so that if putenv() is supported,
32095 - The "complex" internal structure type is now called "Py_complex" to
32127 for systems where libreadline.* is in one of the standard places. It is
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)].
32150 floating point form, so this is equivalent to 3.0+4.0j. It is also
32155 - New built-in function list() is the long-awaited counterpart of tuple().
32162 - The Python.h header file (which is really the same as allobjects.h except
32166 - The NDEBUG symbol is no longer used. Code that used to be dependent on
32167 the presence of NDEBUG is now present on the absence of DEBUG. TRACE_REFS
32170 errors when this symbol is defined.
32200 is now correctly opened in binary mode ('rb' or 'wb') so the code will work
32225 is against the normal rule that modules should define classes and functions
32234 - The officially registered Mac creator for Python files is 'Pyth'. This
32266 extension is called _socket and a wrapper module win/socket.py provides
32324 (The rest of this file is textually the same as the remaining sections
32332 The new version is considerably more complete (HTML 2.0 except forms,
32347 passed in that says that the file is unseekable.
32362 trace entry for the current stack frame) is used.
32364 The tokenizer is now more tolerant of alien whitespace. Control-L in
32366 while Control-R just before the end of the line is ignored.
32382 and history. The Python debugger ("pdb") is the first beneficiary of
32401 with hierarchical names such as "A.B.C". This is enabled by writing
32410 determines which operation is invoked); similar for "string.join()"
32414 keyword arguments. Tk 4.0 is now the standard. A new module
32429 added for systems where none of the above is provided. It is aptly
32463 The Macintosh version is much more robust now.
32506 execution") are in place. Specifically, the import statement is
32515 function. A proposal by Ken Manheimer is provided as newimp.py.
32518 __import__ function) is now exposed through the new built-in module
32520 machinery is moved to the new file importdl.c.
32522 - Persistent storage is supported through the use of the modules
32531 value of the __doc__ attribute. The default __doc__ attribute is
32549 'finally' clauses are honored and a memory leak is plugged.
32552 is being maintained and distributed separately.
32557 toolbox, and the think C console library. This is being maintained
32560 - Improved version for Windows NT, by Mark Hammond. This is being
32586 - When a module object is deleted, it clears out its own dictionary.
32592 - Dynamic loading of modules using shared libraries is supported for
32597 - Extension to findmethod(): findmethodinchain() (where a chain is a
32603 - The callable() function is now public.
32607 is called, and tp_str defines how an object's str() is computed.
32614 This is a pure bugfix release again. See the ChangeLog file for details.
32634 postponing the release is that people continue to suffer from existing
32639 signal, the interface is simple enough to figure out without
32646 by Matt Conway, is available as tkinter-doc.tar.gz from the Python
32690 - tkinter (support for Tcl's Tk widget set) is now part of the base
32750 - Make variable OPT is passed on to sub-Makefiles
32762 will now also work if a float is passed
32813 * The try-except statement has an optional else clause, which is
32819 * The result of a statement-level expression is no longer printed,
32821 command line option is gone.
32823 * The result of the last printed interactive expression is assigned to
32830 * There is a new command line option, -u, to force stdout and stderr
32855 * The '%s' formatting operator is changed to accept any type and
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
32932 * The Demo/scripts/freeze.py script is working again (thanks to Jaap
32938 * Demo/threads/Generator.py is a proposed interface for restartable
32974 * Indentation of continuated lines is done more intelligently;
32975 consequently the variable py-continuation-offset is gone.
32990 * Changed order and number of SVR4 networking libraries (it is now
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).
33051 As is traditional, so many things have changed that I can't pretend to
33054 Note that the very last section is labeled "remaining bugs".
33066 separate subtree Extensions, which is no longer in the core
33073 moved to a separate subdirectory Demo2, which is no longer in the core
33084 script generated by autoconf defines (or not); the resulting source is
33089 * GNU readline (a slightly newer version) is now a subdirectory of the
33090 Python toplevel. It is still not automatically configured (being
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
33116 so it is easier to edit Doc/lib.tex file to create a custom library
33118 is not automated though.)
33125 * The entire documentation is now also available on-line for those who
33134 quotes. There is no difference in interpretation. The repr() of
33138 * There is a new keyword 'exec'. This replaces the exec() built-in
33140 optimization is not performed for that particular function, thus
33145 * There is a new keyword 'lambda'. An expression of the form
33149 yields an anonymous function. This is really only syntactic sugar;
33163 * The built-in module containing the built-in functions is called
33173 items for which f() is true.
33183 range() is that its representation (if the range contains many
33184 elements) is much more compact than that of range(). The disadvantage
33185 is that the result cannot be used to initialize a list object or for
33206 printed by assigning to sys.tracebacklimit. The default is 1000.
33210 * It is now possible to have a .pyc file without a corresponding .py
33213 without a corresponding .py file, when there is a .py file for a
33218 * The list sys.builtin_module_names is now sorted and also contains
33229 * When an object is printed by the print statement, its implementation
33230 of str() is used. This means that classes can define __str__(self) to
33231 direct how their instances are printed. This is different from
33233 representation of the instance. (If __str__() is not defined, it
33239 loading of modules using shared libraries is automatically configured.
33246 * File objects have acquired a new method writelines() which is the
33261 * Initialization of stdwin is done differently. It actually modifies
33263 the first time it is imported.
33272 * The array module is extended with 8-byte object swaps, the 'i'
33298 * The library is now split in several subdirectories: all stuff using
33299 stdwin is in Lib/stdwin, all SGI specific (or SGI Indigo or GL) stuff
33300 is in Lib/sgi, all Sun Sparc specific stuff is in Lib/sun4, and all
33313 Majewski's suggestions); the debug() method is renamed to
33345 * The module aifc is gone -- you should now always use aifc, which has
33364 functions compute the same value it is possible (but not
33374 * There is a compile-time option to cache a string's hash function,
33376 bytes per string it is disabled by default.
33440 * This is the last release using the current naming conventions. New
33461 directory. It is expected that this interface will be replaced by a
33463 backward compatible. In other words, this part of the code is at most
33464 BETA level software! (Note: the rest of Python is rock solid as ever!)
33480 appears that using X11R5 is better than using X11R4. Also the threads
33481 module and its link time options may spoil things. My own strategy is
33493 means that it is not a good idea to use the same library directory for
33497 * When a stack trace is printed, the exception is printed last instead
33513 * The python usage message is now much more informative.
33521 * For each option there is now also a corresponding environment
33546 backslash: if the continuation is contained within nesting (), [] or
33551 without base classes. That is, you no longer write this:
33567 the parser knows about the keyword so you must not use it as a
33574 * The following compatibility hack is removed: if a function was
33577 would be used as the arguments. This is no longer supported.
33587 * If a class attribute is a user-defined function, a new kind of
33588 object is returned: an "unbound method". This contains a pointer to
33589 the class and can only be called with a first argument which is a
33593 method is called when a class instance is created by the classname()
33600 * If a class defines a method __del__(self) then this method is called
33601 when an instance of the class is about to be destroyed. This makes it
33605 to the object somewhere, its destruction is postponed; when the object
33606 is again about to be destroyed its __del__() method will be called
33626 similar to sprintf() in C. The right argument is either a single
33636 and y.meth2, if x is equal to y and the methods are defined by the
33643 * str(x) returns a string version of its argument. If the argument is
33644 a string it is returned unchanged, otherwise it returns `x`.
33673 * A new function string.find() is added with similar semantics to
33682 integers or floating point numbers of a particular size. This is
33688 The number of groups is increased from 10 to 100.
33691 argument; a variable casefold is added to the module which can be used
33699 undocumented and unfinished module tzparse is now obsolete and will
33762 * There is now some support for "freezing" a Python script as a
33765 of the script to get this working, but is quite worthwhile if you write
33774 posixmodule.c. The executable is not yet available but will be soon
33798 complete account of the changes is to be found in the various
33810 argument lists (of user-defined functions only) is stricter. Earlier,
33823 (Note that an argument (formal or actual) that is a tuple is counted as
33828 there is now an explicit "varargs" feature (precede the last argument
33834 since they also cause confusing behavior if a function is called with
33838 provided their methods' first argument is called "self":
33844 (There's a third compatibility hack, which is the reverse of (a): if a
33845 function is defined with two or more arguments, and called with a
33846 single argument that is a tuple with just as many arguments, the items
33853 that if x is an instance of a user-defined class and has a method m,
33869 There is now a script to patch Makefile and config.c to add a new
33884 has been renamed to "mymalloc.h", "strdup.c" is no longer used, and
33887 For dynamic loading on the SGI, Jack Jansen's dl 1.6 is now
33896 use of the interpreter. If the environment variable $PYTHONSTARTUP is
33898 are executed when the interpreter is started in interactive mode.
33900 There is a new clean-up mechanism, complementing try...finally: if you
33904 The interpreter is now generally assumed to live in
33935 The function repr(x) is in all respects equivalent to `x` -- some
33937 except if x is already a string -- then it returns x unchanged
33948 depends on the precision of the system clock. Millisleep is no longer
33949 needed (although it still exists for now), but millitimer is still
33950 needed since on some systems wall clock time is only available with
33953 the BSD gettimeofday() function, time.time() is as time.millitimer().)
33956 '<file 'filename', mode 'r' at #######>' where ###### is a hex number
33992 implemented in C. The module containing the C versions is called
33995 to string when it is complete in a future release).
33999 and further occurrences (this is similar to the regular expression
34003 is changed for the last time: it returns a singleton list containing
34004 its whole first argument unchanged. This is compatible with
34081 socket options. This is SGI-specific because the constants to be
34109 modules, respectively. The rsa demo is a complete implementation of
34122 stdwin/python.py demo is much improved!
34130 can be browsed as a hypertext. The net result is that you can now
34138 and is somewhat of a portability problem since some systems have the
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)
34185 DL is out, 1.4)
34187 The system-dependent code for the use of the select() system call is
34197 The interpretation of $PYTHONPATH in the environment is different: it
34198 is inserted in front of the default path instead of overriding it
34205 which is a comparison function similar to qsort(3) in C
34229 posix: added get{eg,eu,g,u}id(); waitpid() is now a separate function.
34351 necessary Python code is in lib/emacs.py. The Emacs code is
34361 Most functions from pythonmain.c moved to new pythonrun.c which is
34364 ceval.h is split in eval.h (which needs compile.h and only declares
34370 Python code run when a blocking system call or something similar is
34376 New file xxmodule.c is a template for new extension modules.
34386 - the GNU Readline library is now distributed standard with Python
34397 module 'path' is replaced by 'os.path'
34406 - New built-in function execfile() is like exec() but from a file
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
34414 (a/b, a%b) for integers. For floats, % is also changed, but of course
34415 / is unchanged, and divmod(x,y) does not yield (x/y, x%y)...
34422 - '==' is now the only equality operator; "../demo/scripts/eqfix.py" is
34430 - Module stdwin is better protected against touching objects after they've
34435 - dictionary objects can now be compared properly; e.g., {}=={} is true
34437 it is raised by sys.exit() so that 'finally' clauses can clean up,
34440 module "regexp" is rewritten in Python for backward compatibility
34460 - for sequences (string/tuple/list), x[-i] is now equivalent to x[len(x)-i]
34485 The old syntax is still accepted by Python 0.9.4, but will disappear
34512 'global' must be repeated in each function where it is needed. The
34514 before the statement is reached.
34541 The string value of each exception is now its name -- this makes it
34562 Philosophically, the change is quite radical (to me, anyway): a
34563 function is no longer called with either zero or one argument, which
34564 is a tuple if there appear to be more arguments. Every function now
34565 has an argument list containing 0, 1 or more arguments. This list is
34566 always implemented as a tuple, and it is a (run-time) error if a
34567 function is called with a different number of arguments than expected.
34569 What's the difference? you may ask. The answer is, very little unless
34574 (or more) was next to impossible. This is now a piece of cake: you
34588 Using the new scheme there is no need to enclose the method arguments
34597 That is, the equivalence rule between methods and functions has
34598 changed so that now p.moveto(x,y) is equivalent to Point.moveto(p,x,y)
34603 level) is called with more than two arguments, the second and further
34605 This rule is invoked independently of whether the function is actually a
34606 method, so there is a slight chance that some erroneous calls of
34609 second argument it may find it is a tuple instead of what was expected.
34611 language; it is a backward compatibility provision *only*.
34616 Rule (a): when a function with more than one argument is called with a
34617 single argument that is a tuple of the right size, the tuple's items
34631 is equivalent to
34650 (the old syntax is still accepted -- be sure to convert your classes now!)
34694 Here is a summary of the most important user-visible changes in 0.9.2,
34709 - Mixed arithmetic is supported, 1 compares equal to 1.0, etc.
34721 - Source is prepared for porting to MS-DOS
34724 strtol() implementation is provided, but the strtod() provided
34748 - f.readline() no longer restricts the line length, is faster,
34760 - utime() replaces utimes() (the latter is not a POSIX name)
34775 - Added some modules and functionality to the "widget set" (which is
34802 - An Emacs Lisp file "python.el" is provided to facilitate editing
34805 - Some info on writing an extension in C is provided
34806 - Some info on building Python on non-UNIX platforms is provided