Commit 9730358d authored by Serhiy Storchaka's avatar Serhiy Storchaka

Issue #17221: Resort Misc/NEWS.

parent 4dba619d
...@@ -126,7 +126,7 @@ Build ...@@ -126,7 +126,7 @@ Build
- Issue #17550: Fix the --enable-profiling configure switch. - Issue #17550: Fix the --enable-profiling configure switch.
Library IDLE
------- -------
- Issue #17625: In IDLE, close the replace dialog after it is used. - Issue #17625: In IDLE, close the replace dialog after it is used.
...@@ -142,10 +142,6 @@ Core and Builtins ...@@ -142,10 +142,6 @@ Core and Builtins
- Issue #17328: Fix possible refleak in dict.setdefault. - Issue #17328: Fix possible refleak in dict.setdefault.
- Issue #17223: array module: Fix a crasher when converting an array containing
invalid characters (outside range [U+0000; U+10ffff]) to Unicode:
repr(array), str(array) and array.tounicode(). Patch written by Manuel Jacob.
- Issue #17223: Fix PyUnicode_FromUnicode() for string of 1 character outside - Issue #17223: Fix PyUnicode_FromUnicode() for string of 1 character outside
the range U+0000-U+10ffff. the range U+0000-U+10ffff.
...@@ -200,8 +196,6 @@ Core and Builtins ...@@ -200,8 +196,6 @@ Core and Builtins
- Issue #11461: Fix the incremental UTF-16 decoder. Original patch by - Issue #11461: Fix the incremental UTF-16 decoder. Original patch by
Amaury Forgeot d'Arc. Amaury Forgeot d'Arc.
- Issue #16881: Fix Py_ARRAY_LENGTH macro for GCC < 3.1.
- Issue #16856: Fix a segmentation fault from calling repr() on a dict with - Issue #16856: Fix a segmentation fault from calling repr() on a dict with
a key whose repr raise an exception. a key whose repr raise an exception.
...@@ -284,12 +278,6 @@ Core and Builtins ...@@ -284,12 +278,6 @@ Core and Builtins
- Issue #16271: Fix strange bugs that resulted from __qualname__ appearing in a - Issue #16271: Fix strange bugs that resulted from __qualname__ appearing in a
class's __dict__ and on type. class's __dict__ and on type.
- Issue #16197: Update winreg docstrings and documentation to match code.
Patch by Zachary Ware.
- Issue #16241: Document -X faulthandler command line option.
Patch by Marek Šuppa.
- Issue #6074: Ensure cached bytecode files can always be updated by the - Issue #6074: Ensure cached bytecode files can always be updated by the
user that created them, even when the source file is read-only. user that created them, even when the source file is read-only.
...@@ -387,6 +375,10 @@ Library ...@@ -387,6 +375,10 @@ Library
- Issue #17018: Make Process.join() retry if os.waitpid() fails with EINTR. - Issue #17018: Make Process.join() retry if os.waitpid() fails with EINTR.
- Issue #17223: array module: Fix a crasher when converting an array containing
invalid characters (outside range [U+0000; U+10ffff]) to Unicode:
repr(array), str(array) and array.tounicode(). Patch written by Manuel Jacob.
- Issue #14720: sqlite3: Convert datetime microseconds correctly. - Issue #14720: sqlite3: Convert datetime microseconds correctly.
Patch by Lowe Thiderman. Patch by Lowe Thiderman.
...@@ -431,9 +423,6 @@ Library ...@@ -431,9 +423,6 @@ Library
- Issue #6975: os.path.realpath() now correctly resolves multiple nested - Issue #6975: os.path.realpath() now correctly resolves multiple nested
symlinks on POSIX platforms. symlinks on POSIX platforms.
- Issue #17156: pygettext.py now uses an encoding of source file and correctly
writes and escapes non-ascii characters.
- Issue #16564: Fixed regression relative to Python2 in the operation of - Issue #16564: Fixed regression relative to Python2 in the operation of
email.encoders.encode_noop when used with binary data. email.encoders.encode_noop when used with binary data.
...@@ -449,8 +438,6 @@ Library ...@@ -449,8 +438,6 @@ Library
- Issue #17073: Fix some integer overflows in sqlite3 module. - Issue #17073: Fix some integer overflows in sqlite3 module.
- Issue #17114: IDLE now uses non-strict config parser.
- Issue #16723: httplib.HTTPResponse no longer marked closed when the connection - Issue #16723: httplib.HTTPResponse no longer marked closed when the connection
is automatically closed. is automatically closed.
...@@ -481,6 +468,9 @@ Library ...@@ -481,6 +468,9 @@ Library
- Issue #15633: httplib.HTTPResponse is now mark closed when the server - Issue #15633: httplib.HTTPResponse is now mark closed when the server
sends less than the advertised Content-Length. sends less than the advertised Content-Length.
- Issue #12268: The io module file object write methods no longer abort early
when one of its write system calls is interrupted (EINTR).
- Issue #6972: The zipfile module no longer overwrites files outside of - Issue #6972: The zipfile module no longer overwrites files outside of
its destination path when extracting malicious zip files. its destination path when extracting malicious zip files.
...@@ -500,9 +490,6 @@ Library ...@@ -500,9 +490,6 @@ Library
- Issue #15505: `unittest.installHandler` no longer assumes SIGINT handler is - Issue #15505: `unittest.installHandler` no longer assumes SIGINT handler is
set to a callable object. set to a callable object.
- Issue #9290: In IDLE the sys.std* streams now implement io.TextIOBase
interface and support all mandatory methods and properties.
- Issue #13454: Fix a crash when deleting an iterator created by itertools.tee() - Issue #13454: Fix a crash when deleting an iterator created by itertools.tee()
if all other iterators were very advanced before. if all other iterators were very advanced before.
...@@ -538,9 +525,6 @@ Library ...@@ -538,9 +525,6 @@ Library
- SSLContext.load_dh_params() now properly closes the input file. - SSLContext.load_dh_params() now properly closes the input file.
- Issue #16829: IDLE printing no longer fails if there are spaces or other
special characters in the file path.
- Issue #16900: Issue a ResourceWarning when an ssl socket is left unclosed. - Issue #16900: Issue a ResourceWarning when an ssl socket is left unclosed.
- Issue #13899: \A, \Z, and \B now correctly match the A, Z, and B literals - Issue #13899: \A, \Z, and \B now correctly match the A, Z, and B literals
...@@ -550,8 +534,6 @@ Library ...@@ -550,8 +534,6 @@ Library
failing if the connection used a row factory (such as sqlite3.Row) that failing if the connection used a row factory (such as sqlite3.Row) that
produced unsortable objects. (Regression was introduced by fix for 9750). produced unsortable objects. (Regression was introduced by fix for 9750).
- Issue #16491: IDLE now prints chained exception tracebacks.
- Issue #15972: Fix error messages when os functions expecting a file name or - Issue #15972: Fix error messages when os functions expecting a file name or
file descriptor receive the incorrect type. file descriptor receive the incorrect type.
...@@ -571,8 +553,6 @@ Library ...@@ -571,8 +553,6 @@ Library
clears previous values stored in the default section. Same goes for clears previous values stored in the default section. Same goes for
``parser.update({'DEFAULT': {}})``. ``parser.update({'DEFAULT': {}})``.
- Issue #16819: IDLE method completion now correctly works for bytes literals.
- Issue #9586: Redefine SEM_FAILED on MacOSX to keep compiler happy. - Issue #9586: Redefine SEM_FAILED on MacOSX to keep compiler happy.
- Issue #10527: make multiprocessing use poll() instead of select() if available. - Issue #10527: make multiprocessing use poll() instead of select() if available.
...@@ -589,18 +569,9 @@ Library ...@@ -589,18 +569,9 @@ Library
- Issue #16641: Default values of sched.scheduler.enter() are no longer - Issue #16641: Default values of sched.scheduler.enter() are no longer
modifiable. modifiable.
- Issue #16504: IDLE now catches SyntaxErrors raised by tokenizer. Patch by
Roger Serwy.
- Issue #16618: Make glob.glob match consistently across strings and bytes - Issue #16618: Make glob.glob match consistently across strings and bytes
regarding leading dots. Patch by Serhiy Storchaka. regarding leading dots. Patch by Serhiy Storchaka.
- Issue #16702: test_urllib2_localnet tests now correctly ignores proxies for
localhost tests.
- Issue #16511: Use default IDLE width and height if config param is not valid.
Patch Serhiy Storchaka.
- Issue #16713: Parsing of 'tel' urls using urlparse separates params from - Issue #16713: Parsing of 'tel' urls using urlparse separates params from
path. path.
...@@ -657,11 +628,6 @@ Library ...@@ -657,11 +628,6 @@ Library
list() calls aren't added to filter(), map(), and zip() which are directly list() calls aren't added to filter(), map(), and zip() which are directly
passed enumerate(). passed enumerate().
- Issue #16476: Fix json.tool to avoid including trailing whitespace.
- Issue #16549: Make json.tool work again on Python 3 and add tests.
Initial patch by Berker Peksag and Serhiy Storchaka.
- Issue #12848: The pure Python pickle implementation now treats object - Issue #12848: The pure Python pickle implementation now treats object
lengths as unsigned 32-bit integers, like the C implementation does. lengths as unsigned 32-bit integers, like the C implementation does.
Patch by Serhiy Storchaka. Patch by Serhiy Storchaka.
...@@ -709,9 +675,6 @@ Library ...@@ -709,9 +675,6 @@ Library
- Issue #16152: fix tokenize to ignore whitespace at the end of the code when - Issue #16152: fix tokenize to ignore whitespace at the end of the code when
no newline is found. Patch by Ned Batchelder. no newline is found. Patch by Ned Batchelder.
- Issue #1207589: Add Cut/Copy/Paste items to IDLE right click Context Menu
Patch by Todd Rovito.
- Issue #16230: Fix a crash in select.select() when one the lists changes - Issue #16230: Fix a crash in select.select() when one the lists changes
size while iterated on. Patch by Serhiy Storchaka. size while iterated on. Patch by Serhiy Storchaka.
...@@ -802,9 +765,6 @@ Library ...@@ -802,9 +765,6 @@ Library
`io.BytesIO` and `io.StringIO` objects now raise ValueError when the object `io.BytesIO` and `io.StringIO` objects now raise ValueError when the object
has been closed. Patch by Alessandro Moura. has been closed. Patch by Alessandro Moura.
- Issue #16126: PyErr_Format format mismatch in _testcapimodule.c.
Patch by Serhiy Storchaka.
- Issue #15447: Use `subprocess.DEVNULL` in webbrowser, instead of opening - Issue #15447: Use `subprocess.DEVNULL` in webbrowser, instead of opening
`os.devnull` explicitly and leaving it open. `os.devnull` explicitly and leaving it open.
...@@ -820,8 +780,29 @@ Library ...@@ -820,8 +780,29 @@ Library
- Issue #15906: Fix a regression in `argparse` caused by the preceding change, - Issue #15906: Fix a regression in `argparse` caused by the preceding change,
when ``action='append'``, ``type='str'`` and ``default=[]``. when ``action='append'``, ``type='str'`` and ``default=[]``.
- Issue #12268: The io module file object write methods no longer abort early IDLE
when one of its write system calls is interrupted (EINTR). ----
- Issue #17114: IDLE now uses non-strict config parser.
- Issue #9290: In IDLE the sys.std* streams now implement io.TextIOBase
interface and support all mandatory methods and properties.
- Issue #16829: IDLE printing no longer fails if there are spaces or other
special characters in the file path.
- Issue #16491: IDLE now prints chained exception tracebacks.
- Issue #16819: IDLE method completion now correctly works for bytes literals.
- Issue #16504: IDLE now catches SyntaxErrors raised by tokenizer. Patch by
Roger Serwy.
- Issue #16511: Use default IDLE width and height if config param is not valid.
Patch Serhiy Storchaka.
- Issue #1207589: Add Cut/Copy/Paste items to IDLE right click Context Menu
Patch by Todd Rovito.
Tests Tests
----- -----
...@@ -914,6 +895,9 @@ Tests ...@@ -914,6 +895,9 @@ Tests
- Issue #15324: Fix regrtest parsing of --fromfile, --match, and --randomize - Issue #15324: Fix regrtest parsing of --fromfile, --match, and --randomize
options. options.
- Issue #16702: test_urllib2_localnet tests now correctly ignores proxies for
localhost tests.
- Issue #16664: Add regression tests for glob's behaviour concerning entries - Issue #16664: Add regression tests for glob's behaviour concerning entries
starting with a ".". Patch by Sebastian Kreft. starting with a ".". Patch by Sebastian Kreft.
...@@ -926,6 +910,9 @@ Tests ...@@ -926,6 +910,9 @@ Tests
- Issue #16115: Add some tests for the executable argument to - Issue #16115: Add some tests for the executable argument to
subprocess.Popen(). Initial patch by Kushal Das. subprocess.Popen(). Initial patch by Kushal Das.
- Issue #16126: PyErr_Format format mismatch in _testcapimodule.c.
Patch by Serhiy Storchaka.
- Issue #15304: Fix warning message when `os.chdir()` fails inside - Issue #15304: Fix warning message when `os.chdir()` fails inside
`test.support.temp_cwd()`. Patch by Chris Jerdonek. `test.support.temp_cwd()`. Patch by Chris Jerdonek.
...@@ -999,11 +986,10 @@ Build ...@@ -999,11 +986,10 @@ Build
- Issue #17161: make install now also installs a python3 man page. - Issue #17161: make install now also installs a python3 man page.
Tools/Demos C-API
----------- -----
- Issue #13301: use ast.literal_eval() instead of eval() in Tools/i18n/msgfmt.py - Issue #16881: Fix Py_ARRAY_LENGTH macro for GCC < 3.1.
Patch by Serhiy Storchaka.
Documentation Documentation
------------- -------------
...@@ -1061,9 +1047,15 @@ Documentation ...@@ -1061,9 +1047,15 @@ Documentation
- Issue #15677: Document that zlib and gzip accept a compression level of 0 to - Issue #15677: Document that zlib and gzip accept a compression level of 0 to
mean 'no compression'. Patch by Brian Brazil. mean 'no compression'. Patch by Brian Brazil.
- Issue #16197: Update winreg docstrings and documentation to match code.
Patch by Zachary Ware.
- Issue #8040: added a version switcher to the documentation. Patch by - Issue #8040: added a version switcher to the documentation. Patch by
Yury Selivanov. Yury Selivanov.
- Issue #16241: Document -X faulthandler command line option.
Patch by Marek Šuppa.
- Additional comments and some style changes in the concurrent.futures URL - Additional comments and some style changes in the concurrent.futures URL
retrieval example retrieval example
...@@ -1087,12 +1079,12 @@ Documentation ...@@ -1087,12 +1079,12 @@ Documentation
- Issue #15116: Remove references to appscript as it is no longer being - Issue #15116: Remove references to appscript as it is no longer being
supported. supported.
- Issue #15116: Remove references to appscript as it is no longer being
supported.
Tools/Demos Tools/Demos
----------- -----------
- Issue #17156: pygettext.py now uses an encoding of source file and correctly
writes and escapes non-ascii characters.
- Issue #15539: Fix a number of bugs in Tools/scripts/pindent.py. Now - Issue #15539: Fix a number of bugs in Tools/scripts/pindent.py. Now
pindent.py works with a "with" statement. pindent.py no longer produces pindent.py works with a "with" statement. pindent.py no longer produces
improper indentation. pindent.py now works with continued lines broken after improper indentation. pindent.py now works with continued lines broken after
...@@ -1100,6 +1092,14 @@ Tools/Demos ...@@ -1100,6 +1092,14 @@ Tools/Demos
- Issue #15378: Fix Tools/unicode/comparecodecs.py. Patch by Serhiy Storchaka. - Issue #15378: Fix Tools/unicode/comparecodecs.py. Patch by Serhiy Storchaka.
- Issue #16476: Fix json.tool to avoid including trailing whitespace.
- Issue #16549: Make json.tool work again on Python 3 and add tests.
Initial patch by Berker Peksag and Serhiy Storchaka.
- Issue #13301: use ast.literal_eval() instead of eval() in Tools/i18n/msgfmt.py
Patch by Serhiy Storchaka.
What's New in Python 3.3.0? What's New in Python 3.3.0?
=========================== ===========================
...@@ -1306,18 +1306,12 @@ Library ...@@ -1306,18 +1306,12 @@ Library
- Issue #15646: Prevent equivalent of a fork bomb when using `multiprocessing` - Issue #15646: Prevent equivalent of a fork bomb when using `multiprocessing`
on Windows without the ``if __name__ == '__main__'`` idiom. on Windows without the ``if __name__ == '__main__'`` idiom.
IDLE
----
- Issue #15678: Fix IDLE menus when started from OS X command line (3.3.0b2 - Issue #15678: Fix IDLE menus when started from OS X command line (3.3.0b2
regression). regression).
C API
-----
Extension Modules
-----------------
Tools/Demos
-----------
Documentation Documentation
------------- -------------
...@@ -1484,9 +1478,6 @@ Library ...@@ -1484,9 +1478,6 @@ Library
- Issue #15546: Fix handling of pathological input data in the peek() and - Issue #15546: Fix handling of pathological input data in the peek() and
read1() methods of the BZ2File, GzipFile and LZMAFile classes. read1() methods of the BZ2File, GzipFile and LZMAFile classes.
- Issue #13052: Fix IDLE crashing when replace string in Search/Replace dialog
ended with ``\``. Patch by Roger Serwy.
- Issue #12655: Instead of requiring a custom type, `os.sched_getaffinity()` and - Issue #12655: Instead of requiring a custom type, `os.sched_getaffinity()` and
`os.sched_setaffinity()` now use regular sets of integers to represent the `os.sched_setaffinity()` now use regular sets of integers to represent the
CPUs a process is restricted to. CPUs a process is restricted to.
...@@ -1511,8 +1502,6 @@ Library ...@@ -1511,8 +1502,6 @@ Library
- Issue #15364: Fix sysconfig.get_config_var('srcdir') to be an absolute path. - Issue #15364: Fix sysconfig.get_config_var('srcdir') to be an absolute path.
- Issue #15041: Update "see also" list in tkinter documentation.
- Issue #15413: `os.times()` had disappeared under Windows. - Issue #15413: `os.times()` had disappeared under Windows.
- Issue #15402: An issue in the struct module that caused `sys.getsizeof()` to - Issue #15402: An issue in the struct module that caused `sys.getsizeof()` to
...@@ -1639,6 +1628,12 @@ Extension Modules ...@@ -1639,6 +1628,12 @@ Extension Modules
- Issue #15194: Update libffi to the 3.0.11 release. - Issue #15194: Update libffi to the 3.0.11 release.
IDLE
----
- Issue #13052: Fix IDLE crashing when replace string in Search/Replace dialog
ended with ``\``. Patch by Roger Serwy.
Tools/Demos Tools/Demos
----------- -----------
...@@ -1658,6 +1653,8 @@ Tools/Demos ...@@ -1658,6 +1653,8 @@ Tools/Demos
Documentation Documentation
------------- -------------
- Issue #15041: Update "see also" list in tkinter documentation.
- Issue #15444: Use proper spelling for non-ASCII contributor names. Patch by - Issue #15444: Use proper spelling for non-ASCII contributor names. Patch by
Serhiy Storchaka. Serhiy Storchaka.
...@@ -1762,14 +1759,9 @@ Core and Builtins ...@@ -1762,14 +1759,9 @@ Core and Builtins
- Issue #11626: Add _SizeT functions to stable ABI. - Issue #11626: Add _SizeT functions to stable ABI.
- Issue #15146: Add PyType_FromSpecWithBases. Patch by Robin Schreiber.
- Issue #15142: Fix reference leak when deallocating instances of types - Issue #15142: Fix reference leak when deallocating instances of types
created using PyType_FromSpec(). created using PyType_FromSpec().
- Issue #15042: Add PyState_AddModule and PyState_RemoveModule. Add version
guard for Py_LIMITED_API additions. Patch by Robin Schreiber.
- Issue #10053: Don't close FDs when FileIO.__init__ fails. Loosely based on - Issue #10053: Don't close FDs when FileIO.__init__ fails. Loosely based on
the work by Hirokazu Yamamoto. the work by Hirokazu Yamamoto.
...@@ -1800,9 +1792,6 @@ Library ...@@ -1800,9 +1792,6 @@ Library
- Issue #16305: Fix a segmentation fault occurring when interrupting - Issue #16305: Fix a segmentation fault occurring when interrupting
math.factorial. math.factorial.
- Issue #9803: Don't close IDLE on saving if breakpoint is open.
Patch by Roger Serwy.
- Issue #12288: Consider '0' and '0.0' as valid initialvalue - Issue #12288: Consider '0' and '0.0' as valid initialvalue
for tkinter SimpleDialog. for tkinter SimpleDialog.
...@@ -1821,14 +1810,8 @@ Library ...@@ -1821,14 +1810,8 @@ Library
- Issue #15514: Correct __sizeof__ support for cpu_set. - Issue #15514: Correct __sizeof__ support for cpu_set.
Patch by Serhiy Storchaka. Patch by Serhiy Storchaka.
- Issue #15187: Bugfix: remove temporary directories test_shutil was leaving
behind.
- Issue #15177: Added dir_fd parameter to os.fwalk(). - Issue #15177: Added dir_fd parameter to os.fwalk().
- Issue #15176: Clarified behavior, documentation, and implementation
of os.listdir().
- Issue #15061: Re-implemented hmac.compare_digest() in C to prevent further - Issue #15061: Re-implemented hmac.compare_digest() in C to prevent further
timing analysis and to support all buffer protocol aware objects as well as timing analysis and to support all buffer protocol aware objects as well as
ASCII only str instances safely. ASCII only str instances safely.
...@@ -1928,10 +1911,6 @@ Library ...@@ -1928,10 +1911,6 @@ Library
- Issue #15006: Allow equality comparison between naive and aware - Issue #15006: Allow equality comparison between naive and aware
time or datetime objects. time or datetime objects.
- Issue #14982: Document that pkgutil's iteration functions require the
non-standard iter_modules() method to be defined by an importer (something
the importlib importers do not define).
- Issue #15036: Mailbox no longer throws an error if a flush is done - Issue #15036: Mailbox no longer throws an error if a flush is done
between operations when removing or changing multiple items in mbox, between operations when removing or changing multiple items in mbox,
MMDF, or Babyl mailboxes. MMDF, or Babyl mailboxes.
...@@ -1999,9 +1978,6 @@ Library ...@@ -1999,9 +1978,6 @@ Library
- Issue #14969: Better handling of exception chaining in contextlib.ExitStack - Issue #14969: Better handling of exception chaining in contextlib.ExitStack
- Issue #14962: Update text coloring in IDLE shell window after changing
options. Patch by Roger Serwy.
- Issue #14963: Convert contextlib.ExitStack.__exit__ to use an iterative - Issue #14963: Convert contextlib.ExitStack.__exit__ to use an iterative
algorithm (Patch by Alon Horev) algorithm (Patch by Alon Horev)
...@@ -2014,6 +1990,11 @@ Library ...@@ -2014,6 +1990,11 @@ Library
C-API C-API
----- -----
- Issue #15146: Add PyType_FromSpecWithBases. Patch by Robin Schreiber.
- Issue #15042: Add PyState_AddModule and PyState_RemoveModule. Add version
guard for Py_LIMITED_API additions. Patch by Robin Schreiber.
- Issue #13783: Inadvertent additions to the public C API in the PEP 380 - Issue #13783: Inadvertent additions to the public C API in the PEP 380
implementation have either been removed or marked as private interfaces. implementation have either been removed or marked as private interfaces.
...@@ -2022,9 +2003,25 @@ Extension Modules ...@@ -2022,9 +2003,25 @@ Extension Modules
- Issue #15000: Support the "unique" x32 architecture in _posixsubprocess.c. - Issue #15000: Support the "unique" x32 architecture in _posixsubprocess.c.
IDLE
----
- Issue #9803: Don't close IDLE on saving if breakpoint is open.
Patch by Roger Serwy.
- Issue #14962: Update text coloring in IDLE shell window after changing
options. Patch by Roger Serwy.
Documentation Documentation
------------- -------------
- Issue #15176: Clarified behavior, documentation, and implementation
of os.listdir().
- Issue #14982: Document that pkgutil's iteration functions require the
non-standard iter_modules() method to be defined by an importer (something
the importlib importers do not define).
- Issue #15081: Document PyState_FindModule. - Issue #15081: Document PyState_FindModule.
Patch by Robin Schreiber. Patch by Robin Schreiber.
...@@ -2033,6 +2030,9 @@ Documentation ...@@ -2033,6 +2030,9 @@ Documentation
Tests Tests
----- -----
- Issue #15187: Bugfix: remove temporary directories test_shutil was leaving
behind.
- Issue #14769: test_capi now has SkipitemTest, which cleverly checks - Issue #14769: test_capi now has SkipitemTest, which cleverly checks
for "parity" between PyArg_ParseTuple() and the Python/getargs.c static for "parity" between PyArg_ParseTuple() and the Python/getargs.c static
function skipitem() for all possible "format units". function skipitem() for all possible "format units".
...@@ -2121,34 +2121,18 @@ Core and Builtins ...@@ -2121,34 +2121,18 @@ Core and Builtins
- Issue #14700: Fix two broken and undefined-behaviour-inducing overflow checks - Issue #14700: Fix two broken and undefined-behaviour-inducing overflow checks
in old-style string formatting. in old-style string formatting.
- Issue #14705: The PyArg_Parse() family of functions now support the 'p' format
unit, which accepts a "boolean predicate" argument. It converts any Python
value into an integer--0 if it is "false", and 1 otherwise.
Library Library
------- -------
- Issue #14690: Use monotonic clock instead of system clock in the sched, - Issue #14690: Use monotonic clock instead of system clock in the sched,
subprocess and trace modules. subprocess and trace modules.
- Issue #14958: Change IDLE systax highlighting to recognize all string and
byte literals supported in Python 3.3.
- Issue #10997: Prevent a duplicate entry in IDLE's "Recent Files" menu.
- Issue #14443: Tell rpmbuild to use the correct version of Python in - Issue #14443: Tell rpmbuild to use the correct version of Python in
bdist_rpm. Initial patch by Ross Lagerwall. bdist_rpm. Initial patch by Ross Lagerwall.
- Issue #14929: Stop Idle 3.x from closing on Unicode decode errors when
grepping. Patch by Roger Serwy.
- Issue #12515: email now registers a defect if it gets to EOF while parsing - Issue #12515: email now registers a defect if it gets to EOF while parsing
a MIME part without seeing the closing MIME boundary. a MIME part without seeing the closing MIME boundary.
- Issue #12510: Attempting to get invalid tooltip no longer closes Idle.
Other tooltipss have been corrected or improved and the number of tests
has been tripled. Original patch by Roger Serwy.
- Issue #1672568: email now always decodes base64 payloads, adding padding and - Issue #1672568: email now always decodes base64 payloads, adding padding and
ignoring non-base64-alphabet characters if needed, and registering defects ignoring non-base64-alphabet characters if needed, and registering defects
for any such problems. for any such problems.
...@@ -2182,9 +2166,6 @@ Library ...@@ -2182,9 +2166,6 @@ Library
- Issue #14548: Make multiprocessing finalizers check pid before - Issue #14548: Make multiprocessing finalizers check pid before
running to cope with possibility of gc running just after fork. running to cope with possibility of gc running just after fork.
- Issue #14863: Update the documentation of os.fdopen() to reflect the
fact that it's only a thin wrapper around open() anymore.
- Issue #14036: Add an additional check to validate that port in urlparse does - Issue #14036: Add an additional check to validate that port in urlparse does
not go in illegal range and returns None. not go in illegal range and returns None.
...@@ -2311,6 +2292,21 @@ Library ...@@ -2311,6 +2292,21 @@ Library
- Issue #14127 and #10148: shutil.copystat now preserves exact mtime and atime - Issue #14127 and #10148: shutil.copystat now preserves exact mtime and atime
on filesystems providing nanosecond resolution. on filesystems providing nanosecond resolution.
IDLE
----
- Issue #14958: Change IDLE systax highlighting to recognize all string and
byte literals supported in Python 3.3.
- Issue #10997: Prevent a duplicate entry in IDLE's "Recent Files" menu.
- Issue #14929: Stop IDLE 3.x from closing on Unicode decode errors when
grepping. Patch by Roger Serwy.
- Issue #12510: Attempting to get invalid tooltip no longer closes IDLE.
Other tooltipss have been corrected or improved and the number of tests
has been tripled. Original patch by Roger Serwy.
Tools/Demos Tools/Demos
----------- -----------
...@@ -2329,9 +2325,19 @@ Build ...@@ -2329,9 +2325,19 @@ Build
- Issue #13210: Windows build now uses VS2010, ported from VS2008. - Issue #13210: Windows build now uses VS2010, ported from VS2008.
C-API
-----
- Issue #14705: The PyArg_Parse() family of functions now support the 'p' format
unit, which accepts a "boolean predicate" argument. It converts any Python
value into an integer--0 if it is "false", and 1 otherwise.
Documentation Documentation
------------- -------------
- Issue #14863: Update the documentation of os.fdopen() to reflect the
fact that it's only a thin wrapper around open() anymore.
- Issue #14588: The language reference now accurately documents the Python 3 - Issue #14588: The language reference now accurately documents the Python 3
class definition process. Patch by Nick Coghlan. class definition process. Patch by Nick Coghlan.
...@@ -2380,9 +2386,6 @@ Core and Builtins ...@@ -2380,9 +2386,6 @@ Core and Builtins
- Issue #14339: Speed improvements to bin, oct and hex functions. Patch by - Issue #14339: Speed improvements to bin, oct and hex functions. Patch by
Serhiy Storchaka. Serhiy Storchaka.
- Issue #14098: New functions PyErr_GetExcInfo and PyErr_SetExcInfo.
Patch by Stefan Behnel.
- Issue #14385: It is now possible to use a custom type for the __builtins__ - Issue #14385: It is now possible to use a custom type for the __builtins__
namespace, instead of a dict. It can be used for sandboxing for example. namespace, instead of a dict. It can be used for sandboxing for example.
Raise also a NameError instead of ImportError if __build_class__ name if not Raise also a NameError instead of ImportError if __build_class__ name if not
...@@ -2532,12 +2535,6 @@ Library ...@@ -2532,12 +2535,6 @@ Library
- Don't Py_DECREF NULL variable in io.IncrementalNewlineDecoder. - Don't Py_DECREF NULL variable in io.IncrementalNewlineDecoder.
- Issue #8515: Set __file__ when run file in IDLE.
Initial patch by Bruce Frederiksen.
- Issue #14496: Fix wrong name in idlelib/tabbedpages.py.
Patch by Popa Claudiu.
- Issue #3033: Add displayof parameter to tkinter font. Patch by Guilherme Polo. - Issue #3033: Add displayof parameter to tkinter font. Patch by Guilherme Polo.
- Issue #14482: Raise a ValueError, not a NameError, when trying to create - Issue #14482: Raise a ValueError, not a NameError, when trying to create
...@@ -2573,6 +2570,15 @@ Tests ...@@ -2573,6 +2570,15 @@ Tests
- Issue #14355: Regrtest now supports the standard unittest test loading, and - Issue #14355: Regrtest now supports the standard unittest test loading, and
will use it if a test file contains no `test_main` method. will use it if a test file contains no `test_main` method.
IDLE
----
- Issue #8515: Set __file__ when run file in IDLE.
Initial patch by Bruce Frederiksen.
- Issue #14496: Fix wrong name in idlelib/tabbedpages.py.
Patch by Popa Claudiu.
Tools / Demos Tools / Demos
------------- -------------
...@@ -2582,6 +2588,12 @@ Tools / Demos ...@@ -2582,6 +2588,12 @@ Tools / Demos
- Issue #13165: stringbench is now available in the Tools/stringbench folder. - Issue #13165: stringbench is now available in the Tools/stringbench folder.
It used to live in its own SVN project. It used to live in its own SVN project.
C-API
-----
- Issue #14098: New functions PyErr_GetExcInfo and PyErr_SetExcInfo.
Patch by Stefan Behnel.
What's New in Python 3.3.0 Alpha 2? What's New in Python 3.3.0 Alpha 2?
=================================== ===================================
...@@ -2633,16 +2645,9 @@ Library ...@@ -2633,16 +2645,9 @@ Library
- Issue #5136: deprecate old, unused functions from tkinter. - Issue #5136: deprecate old, unused functions from tkinter.
- Issue #14409: IDLE now properly executes commands in the Shell window
when it cannot read the normal config files on startup and
has to use the built-in default key bindings.
There was previously a bug in one of the defaults.
- Issue #14416: syslog now defines the LOG_ODELAY and LOG_AUTHPRIV constants - Issue #14416: syslog now defines the LOG_ODELAY and LOG_AUTHPRIV constants
if they are defined in <syslog.h>. if they are defined in <syslog.h>.
- IDLE can be launched as python -m idlelib
- Issue #14295: Add unittest.mock - Issue #14295: Add unittest.mock
- Issue #7652: Add --with-system-libmpdec option to configure for linking - Issue #7652: Add --with-system-libmpdec option to configure for linking
...@@ -2668,9 +2673,6 @@ Library ...@@ -2668,9 +2673,6 @@ Library
up the decimal module. Performance gains of the new C implementation are up the decimal module. Performance gains of the new C implementation are
between 10x and 100x, depending on the application. between 10x and 100x, depending on the application.
- Issue #3573: IDLE hangs when passing invalid command line args
(directory(ies) instead of file(s)) (Patch by Guilherme Polo)
- Issue #14269: SMTPD now conforms to the RFC and requires a HELO command - Issue #14269: SMTPD now conforms to the RFC and requires a HELO command
before MAIL, RCPT, or DATA. before MAIL, RCPT, or DATA.
...@@ -2702,8 +2704,6 @@ Library ...@@ -2702,8 +2704,6 @@ Library
denial of service due to hash collisions. Patch by David Malcolm with some denial of service due to hash collisions. Patch by David Malcolm with some
modifications by the expat project. modifications by the expat project.
- Issue #14200: Idle shell crash on printing non-BMP unicode character.
- Issue #12818: format address no longer needlessly \ escapes ()s in names when - Issue #12818: format address no longer needlessly \ escapes ()s in names when
the name ends up being quoted. the name ends up being quoted.
...@@ -2719,8 +2719,6 @@ Library ...@@ -2719,8 +2719,6 @@ Library
- Issue #989712: Support using Tk without a mainloop. - Issue #989712: Support using Tk without a mainloop.
- Issue #5219: Prevent event handler cascade in IDLE.
- Issue #3835: Refuse to use unthreaded Tcl in threaded Python. - Issue #3835: Refuse to use unthreaded Tcl in threaded Python.
- Issue #2843: Add new Tk API to Tkinter. - Issue #2843: Add new Tk API to Tkinter.
...@@ -2949,10 +2947,6 @@ Core and Builtins ...@@ -2949,10 +2947,6 @@ Core and Builtins
on POSIX systems supporting anonymous memory mappings. Patch by on POSIX systems supporting anonymous memory mappings. Patch by
Charles-François Natali. Charles-François Natali.
- Issue #13452: PyUnicode_EncodeDecimal() doesn't support error handlers
different than "strict" anymore. The caller was unable to compute the
size of the output buffer: it depends on the error handler.
- PEP 3155 / issue #13448: Qualified name for classes and functions. - PEP 3155 / issue #13448: Qualified name for classes and functions.
- Issue #13436: Fix a bogus error message when an AST object was passed - Issue #13436: Fix a bogus error message when an AST object was passed
...@@ -3043,10 +3037,6 @@ Core and Builtins ...@@ -3043,10 +3037,6 @@ Core and Builtins
- PEP 3151 / issue #12555: reworking the OS and IO exception hierarchy. - PEP 3151 / issue #12555: reworking the OS and IO exception hierarchy.
- Issue #13560: Add PyUnicode_DecodeLocale(), PyUnicode_DecodeLocaleAndSize()
and PyUnicode_EncodeLocale() functions to the C API to decode/encode from/to
the current locale encoding.
- Add internal API for static strings (_Py_identifier et al.). - Add internal API for static strings (_Py_identifier et al.).
- Issue #13063: the Windows error ERROR_NO_DATA (numbered 232 and described - Issue #13063: the Windows error ERROR_NO_DATA (numbered 232 and described
...@@ -3292,17 +3282,11 @@ Core and Builtins ...@@ -3292,17 +3282,11 @@ Core and Builtins
PyUnicode_AsUTF8String() and PyUnicode_AsEncodedString(unicode, "utf-8", PyUnicode_AsUTF8String() and PyUnicode_AsEncodedString(unicode, "utf-8",
NULL). NULL).
- Issue #10831: PyUnicode_FromFormat() supports %li, %lli and %zi formats.
- Issue #10829: Refactor PyUnicode_FromFormat(), use the same function to parse - Issue #10829: Refactor PyUnicode_FromFormat(), use the same function to parse
the format string in the 3 steps, fix crashs on invalid format strings. the format string in the 3 steps, fix crashs on invalid format strings.
- Issue #13007: whichdb should recognize gdbm 1.9 magic numbers. - Issue #13007: whichdb should recognize gdbm 1.9 magic numbers.
- Issue #11246: Fix PyUnicode_FromFormat("%V") to decode the byte string from
UTF-8 (with replace error handler) instead of ISO-8859-1 (in strict mode).
Patch written by Ray Allen.
- Issue #11286: Raise a ValueError from calling PyMemoryView_FromBuffer with - Issue #11286: Raise a ValueError from calling PyMemoryView_FromBuffer with
a buffer struct having a NULL data pointer. a buffer struct having a NULL data pointer.
...@@ -3312,9 +3296,6 @@ Core and Builtins ...@@ -3312,9 +3296,6 @@ Core and Builtins
- Issue #11828: startswith and endswith now accept None as slice index. - Issue #11828: startswith and endswith now accept None as slice index.
Patch by Torsten Becker. Patch by Torsten Becker.
- Issue #10830: Fix PyUnicode_FromFormatV("%c") for non-BMP characters on
narrow build.
- Issue #11168: Remove filename debug variable from PyEval_EvalFrameEx(). - Issue #11168: Remove filename debug variable from PyEval_EvalFrameEx().
It encoded the Unicode filename to UTF-8, but the encoding fails on It encoded the Unicode filename to UTF-8, but the encoding fails on
undecodable filename (on surrogate characters) which raises an unexpected undecodable filename (on surrogate characters) which raises an unexpected
...@@ -3356,15 +3337,9 @@ Library ...@@ -3356,15 +3337,9 @@ Library
are dead or dying. Moreover, the implementation is now O(1) rather than are dead or dying. Moreover, the implementation is now O(1) rather than
O(n). O(n).
- Issue #13125: Silence spurious test_lib2to3 output when in non-verbose mode.
Patch by Mikhail Novikov.
- Issue #11841: Fix comparison bug with 'rc' versions in packaging.version. - Issue #11841: Fix comparison bug with 'rc' versions in packaging.version.
Patch by Filip Gruszczyński. Patch by Filip Gruszczyński.
- Issue #13447: Add a test file to host regression tests for bugs in the
scripts found in the Tools directory.
- Issue #6884: Fix long-standing bugs with MANIFEST.in parsing in distutils - Issue #6884: Fix long-standing bugs with MANIFEST.in parsing in distutils
on Windows. Also fixed in packaging. on Windows. Also fixed in packaging.
...@@ -3420,9 +3395,6 @@ Library ...@@ -3420,9 +3395,6 @@ Library
authenticating (since the result may change, according to RFC 4643). authenticating (since the result may change, according to RFC 4643).
Patch by Hynek Schlawack. Patch by Hynek Schlawack.
- Issue #13989: Document that GzipFile does not support text mode, and give a
more helpful error message when opened with an invalid mode string.
- Issue #13590: On OS X 10.7 and 10.6 with Xcode 4.2, building - Issue #13590: On OS X 10.7 and 10.6 with Xcode 4.2, building
Distutils-based packages with C extension modules may fail because Distutils-based packages with C extension modules may fail because
Apple has removed gcc-4.2, the version used to build python.org Apple has removed gcc-4.2, the version used to build python.org
...@@ -3439,10 +3411,6 @@ Library ...@@ -3439,10 +3411,6 @@ Library
- Issue #13960: HTMLParser is now able to handle broken comments when - Issue #13960: HTMLParser is now able to handle broken comments when
strict=False. strict=False.
- Issue #13921: Undocument and clean up sqlite3.OptimizedUnicode,
which is obsolete in Python 3.x. It's now aliased to str for
backwards compatibility.
- When '' is a path (e.g. in sys.path), make sure __file__ uses the current - When '' is a path (e.g. in sys.path), make sure __file__ uses the current
working directory instead of '' in importlib. working directory instead of '' in importlib.
...@@ -3464,11 +3432,6 @@ Library ...@@ -3464,11 +3432,6 @@ Library
- Issue #10811: Fix recursive usage of cursors. Instead of crashing, - Issue #10811: Fix recursive usage of cursors. Instead of crashing,
raise a ProgrammingError now. raise a ProgrammingError now.
- Issue #10881: Fix test_site failure with OS X framework builds.
- Issue #964437: Make IDLE help window non-modal.
Patch by Guilherme Polo and Roger Serwy.
- Issue #13734: Add os.fwalk(), a directory walking function yielding file - Issue #13734: Add os.fwalk(), a directory walking function yielding file
descriptors. descriptors.
...@@ -3478,16 +3441,8 @@ Library ...@@ -3478,16 +3441,8 @@ Library
- Issue #11805: package_data in setup.cfg should allow more than one value. - Issue #11805: package_data in setup.cfg should allow more than one value.
- Issue #13933: IDLE auto-complete did not work with some imported
module, like hashlib. (Patch by Roger Serwy)
- Issue #13901: Prevent test_distutils failures on OS X with --enable-shared.
- Issue #13676: Handle strings with embedded zeros correctly in sqlite3. - Issue #13676: Handle strings with embedded zeros correctly in sqlite3.
- Issue #13506: Add '' to path for IDLE Shell when started and restarted with Restart Shell.
Original patches by Marco Scataglini and Roger Serwy.
- Issue #8828: Add new function os.replace(), for cross-platform renaming - Issue #8828: Add new function os.replace(), for cross-platform renaming
with overwriting. with overwriting.
...@@ -3508,12 +3463,6 @@ Library ...@@ -3508,12 +3463,6 @@ Library
OSError if localtime() failed. time.clock() now raises a RuntimeError if the OSError if localtime() failed. time.clock() now raises a RuntimeError if the
processor time used is not available or its value cannot be represented processor time used is not available or its value cannot be represented
- Issue #13862: Fix spurious failure in test_zlib due to runtime/compile time
minor versions not matching.
- Issue #12804: Fix test_socket and test_urllib2net failures when running tests
on a system without internet access.
- Issue #13772: In os.symlink() under Windows, do not try to guess the link - Issue #13772: In os.symlink() under Windows, do not try to guess the link
target's type (file or directory). The detection was buggy and made the target's type (file or directory). The detection was buggy and made the
call non-atomic (therefore prone to race conditions). call non-atomic (therefore prone to race conditions).
...@@ -3540,9 +3489,6 @@ Library ...@@ -3540,9 +3489,6 @@ Library
- Issue #13642: Unquote before b64encoding ``user:password`` during Basic - Issue #13642: Unquote before b64encoding ``user:password`` during Basic
Authentication. Patch contributed by Joonas Kuorilehto. Authentication. Patch contributed by Joonas Kuorilehto.
- Issue #13726: Fix the ambiguous -S flag in regrtest. It is -o/--slow for slow
tests.
- Issue #12364: Fix a hang in concurrent.futures.ProcessPoolExecutor. - Issue #12364: Fix a hang in concurrent.futures.ProcessPoolExecutor.
The hang would occur when retrieving the result of a scheduled future after The hang would occur when retrieving the result of a scheduled future after
the executor had been shut down. the executor had been shut down.
...@@ -3625,10 +3571,6 @@ Library ...@@ -3625,10 +3571,6 @@ Library
- Issue #13591: A bug in importlib has been fixed that caused import_module - Issue #13591: A bug in importlib has been fixed that caused import_module
to load a module twice. to load a module twice.
- Issue #4625: If IDLE cannot write to its recent file or breakpoint files,
display a message popup and continue rather than crash. Original patch by
Roger Serwy.
- Issue #13449 sched.scheduler.run() method has a new "blocking" parameter which - Issue #13449 sched.scheduler.run() method has a new "blocking" parameter which
when set to False makes run() execute the scheduled events due to expire when set to False makes run() execute the scheduled events due to expire
soonest (if any) and then return. Patch by Giampaolo Rodolà. soonest (if any) and then return. Patch by Giampaolo Rodolà.
...@@ -3648,9 +3590,6 @@ Library ...@@ -3648,9 +3590,6 @@ Library
- Issue #5905, #13560: time.strftime() is now using the current locale - Issue #5905, #13560: time.strftime() is now using the current locale
encoding, instead of UTF-8, if the wcsftime() function is not available. encoding, instead of UTF-8, if the wcsftime() function is not available.
- Issue #8641: Update IDLE 3 syntax coloring to recognize b".." and not u"..".
Patch by Tal Einat.
- Issue #13464: Add a readinto() method to http.client.HTTPResponse. Patch - Issue #13464: Add a readinto() method to http.client.HTTPResponse. Patch
by Jon Kuhn. by Jon Kuhn.
...@@ -3762,9 +3701,6 @@ Library ...@@ -3762,9 +3701,6 @@ Library
- Issue #10817: Fix urlretrieve function to raise ContentTooShortError even - Issue #10817: Fix urlretrieve function to raise ContentTooShortError even
when reporthook is None. Patch by Jyrki Pulliainen. when reporthook is None. Patch by Jyrki Pulliainen.
- Issue #13296: Fix IDLE to clear compile __future__ flags on shell restart.
(Patch by Roger Serwy)
- Fix the xmlrpc.client user agent to return something similar to - Fix the xmlrpc.client user agent to return something similar to
urllib.request user agent: "Python-xmlrpc/3.3". urllib.request user agent: "Python-xmlrpc/3.3".
...@@ -3867,10 +3803,6 @@ Library ...@@ -3867,10 +3803,6 @@ Library
- Issue #13034: When decoding some SSL certificates, the subjectAltName - Issue #13034: When decoding some SSL certificates, the subjectAltName
extension could be unreported. extension could be unreported.
- Issue #9871: Prevent IDLE 3 crash when given byte stings
with invalid hex escape sequences, like b'\x0'.
(Original patch by Claudiu Popa.)
- Issue #12306: Expose the runtime version of the zlib C library as a constant, - Issue #12306: Expose the runtime version of the zlib C library as a constant,
ZLIB_RUNTIME_VERSION, in the zlib module. Patch by Torsten Landschoff. ZLIB_RUNTIME_VERSION, in the zlib module. Patch by Torsten Landschoff.
...@@ -3899,8 +3831,6 @@ Library ...@@ -3899,8 +3831,6 @@ Library
- Issue #12878: Expose a __dict__ attribute on io.IOBase and its subclasses. - Issue #12878: Expose a __dict__ attribute on io.IOBase and its subclasses.
- Issue #12636: IDLE reads the coding cookie when executing a Python script.
- Issue #12494: On error, call(), check_call(), check_output() and - Issue #12494: On error, call(), check_call(), check_output() and
getstatusoutput() functions of the subprocess module now kill the process, getstatusoutput() functions of the subprocess module now kill the process,
read its status (to avoid zombis) and close pipes. read its status (to avoid zombis) and close pipes.
...@@ -3970,9 +3900,6 @@ Library ...@@ -3970,9 +3900,6 @@ Library
- Issue #10087: Fix the html output format of the calendar module. - Issue #10087: Fix the html output format of the calendar module.
- Issue #12540: Prevent zombie IDLE processes on Windows due to changes
in os.kill().
- Issue #13121: add support for inplace math operators to collections.Counter. - Issue #13121: add support for inplace math operators to collections.Counter.
- Add support for unary plus and unary minus to collections.Counter. - Add support for unary plus and unary minus to collections.Counter.
...@@ -4018,15 +3945,9 @@ Library ...@@ -4018,15 +3945,9 @@ Library
- Issue #12607: In subprocess, fix issue where if stdin, stdout or stderr is - Issue #12607: In subprocess, fix issue where if stdin, stdout or stderr is
given as a low fd, it gets overwritten. given as a low fd, it gets overwritten.
- Issue #12590: IDLE editor window now always displays the first line
when opening a long file. With Tk 8.5, the first line was hidden.
- Issue #12576: Fix urlopen behavior on sites which do not send (or obfuscate) - Issue #12576: Fix urlopen behavior on sites which do not send (or obfuscate)
a ``Connection: close`` header. a ``Connection: close`` header.
- Issue #12102: Document that buffered files must be flushed before being used
with mmap. Patch by Steffen Daode Nurpmeso.
- Issue #12560: Build libpython.so on OpenBSD. Patch by Stefan Sperling. - Issue #12560: Build libpython.so on OpenBSD. Patch by Stefan Sperling.
- Issue #1813: Fix codec lookup under Turkish locales. - Issue #1813: Fix codec lookup under Turkish locales.
...@@ -4325,9 +4246,6 @@ Library ...@@ -4325,9 +4246,6 @@ Library
passing a ``context`` argument pointing to an ssl.SSLContext instance. passing a ``context`` argument pointing to an ssl.SSLContext instance.
Patch by Kasun Herath. Patch by Kasun Herath.
- Issue #11088: don't crash when using F5 to run a script in IDLE on MacOSX
with Tk 8.5.
- Issue #9516: Issue #9516: avoid errors in sysconfig when MACOSX_DEPLOYMENT_TARGET - Issue #9516: Issue #9516: avoid errors in sysconfig when MACOSX_DEPLOYMENT_TARGET
is set in shell. is set in shell.
...@@ -4347,10 +4265,6 @@ Library ...@@ -4347,10 +4265,6 @@ Library
- Issue #9971: Write an optimized implementation of BufferedReader.readinto(). - Issue #9971: Write an optimized implementation of BufferedReader.readinto().
Patch by John O'Connor. Patch by John O'Connor.
- Issue #1028: Tk returns invalid Unicode null in %A: UnicodeDecodeError.
With Tk < 8.5, PythonCmd() in _tkinter.c raised UnicodeDecodeError, caused
IDLE to exit. Converted to valid Unicode null in PythonCmd().
- Issue #11799: urllib.request Authentication Handlers will raise a ValueError - Issue #11799: urllib.request Authentication Handlers will raise a ValueError
when presented with an unsupported Authentication Scheme. Patch contributed when presented with an unsupported Authentication Scheme. Patch contributed
by Yuval Greenfield. by Yuval Greenfield.
...@@ -4587,9 +4501,6 @@ Library ...@@ -4587,9 +4501,6 @@ Library
- Issue #7639: Fix short file name generation in bdist_msi - Issue #7639: Fix short file name generation in bdist_msi
- Issue #11659: Fix ResourceWarning in test_subprocess introduced by #11459.
Patch by Ben Hayden.
- Issue #11635: Don't use polling in worker threads and processes launched by - Issue #11635: Don't use polling in worker threads and processes launched by
concurrent.futures. concurrent.futures.
...@@ -4642,8 +4553,6 @@ Library ...@@ -4642,8 +4553,6 @@ Library
- Issue #10979: unittest stdout buffering now works with class and module - Issue #10979: unittest stdout buffering now works with class and module
setup and teardown. setup and teardown.
- Issue #11577: fix ResourceWarning triggered by improved binhex test coverage
- Issue #11243: fix the parameter querying methods of Message to work if - Issue #11243: fix the parameter querying methods of Message to work if
the headers contain un-encoded non-ASCII data. the headers contain un-encoded non-ASCII data.
...@@ -4676,9 +4585,6 @@ Library ...@@ -4676,9 +4585,6 @@ Library
- Issue #11554: Fixed support for Japanese codecs; previously the body output - Issue #11554: Fixed support for Japanese codecs; previously the body output
encoding was not done if euc-jp or shift-jis was specified as the charset. encoding was not done if euc-jp or shift-jis was specified as the charset.
- Issue #11509: Significantly increase test coverage of fileinput.
Patch by Denver Coneybeare at PyCon 2011 Sprints.
- Issue #11407: `TestCase.run` returns the result object used or created. - Issue #11407: `TestCase.run` returns the result object used or created.
Contributed by Janathan Hartley. Contributed by Janathan Hartley.
...@@ -4801,11 +4707,6 @@ Library ...@@ -4801,11 +4707,6 @@ Library
- Issue #9348: Raise an early error if argparse nargs and metavar don't match. - Issue #9348: Raise an early error if argparse nargs and metavar don't match.
- Issue #8982: Improve the documentation for the argparse Namespace object.
- Issue #9343: Document that argparse parent parsers must be configured before
their children.
- Issue #9026: Fix order of argparse sub-commands in help messages. - Issue #9026: Fix order of argparse sub-commands in help messages.
- Issue #9347: Fix formatting for tuples in argparse type= error messages. - Issue #9347: Fix formatting for tuples in argparse type= error messages.
...@@ -4858,10 +4759,61 @@ Build ...@@ -4858,10 +4759,61 @@ Build
- Issue #11495: OSF support is eliminated. It was deprecated in Python 3.2. - Issue #11495: OSF support is eliminated. It was deprecated in Python 3.2.
IDLE IDLE
---- ----
- Issue #14409: IDLE now properly executes commands in the Shell window
when it cannot read the normal config files on startup and
has to use the built-in default key bindings.
There was previously a bug in one of the defaults.
- IDLE can be launched as python -m idlelib
- Issue #3573: IDLE hangs when passing invalid command line args
(directory(ies) instead of file(s)) (Patch by Guilherme Polo)
- Issue #14200: IDLE shell crash on printing non-BMP unicode character.
- Issue #5219: Prevent event handler cascade in IDLE.
- Issue #964437: Make IDLE help window non-modal.
Patch by Guilherme Polo and Roger Serwy.
- Issue #13933: IDLE auto-complete did not work with some imported
module, like hashlib. (Patch by Roger Serwy)
- Issue #13506: Add '' to path for IDLE Shell when started and restarted with Restart Shell.
Original patches by Marco Scataglini and Roger Serwy.
- Issue #4625: If IDLE cannot write to its recent file or breakpoint files,
display a message popup and continue rather than crash. Original patch by
Roger Serwy.
- Issue #8641: Update IDLE 3 syntax coloring to recognize b".." and not u"..".
Patch by Tal Einat.
- Issue #13296: Fix IDLE to clear compile __future__ flags on shell restart.
(Patch by Roger Serwy)
- Issue #9871: Prevent IDLE 3 crash when given byte stings
with invalid hex escape sequences, like b'\x0'.
(Original patch by Claudiu Popa.)
- Issue #12636: IDLE reads the coding cookie when executing a Python script.
- Issue #12540: Prevent zombie IDLE processes on Windows due to changes
in os.kill().
- Issue #12590: IDLE editor window now always displays the first line
when opening a long file. With Tk 8.5, the first line was hidden.
- Issue #11088: don't crash when using F5 to run a script in IDLE on MacOSX
with Tk 8.5.
- Issue #1028: Tk returns invalid Unicode null in %A: UnicodeDecodeError.
With Tk < 8.5 _tkinter.c:PythonCmd() raised UnicodeDecodeError, caused
IDLE to exit. Converted to valid Unicode null in PythonCmd().
- Issue #11718: IDLE's open module dialog couldn't find the __init__.py - Issue #11718: IDLE's open module dialog couldn't find the __init__.py
file in a package. file in a package.
...@@ -4957,6 +4909,33 @@ Extension Modules ...@@ -4957,6 +4909,33 @@ Extension Modules
Tests Tests
----- -----
- Issue #13125: Silence spurious test_lib2to3 output when in non-verbose mode.
Patch by Mikhail Novikov.
- Issue #13447: Add a test file to host regression tests for bugs in the
scripts found in the Tools directory.
- Issue #10881: Fix test_site failure with OS X framework builds.
- Issue #13901: Prevent test_distutils failures on OS X with --enable-shared.
- Issue #13862: Fix spurious failure in test_zlib due to runtime/compile time
minor versions not matching.
- Issue #12804: Fix test_socket and test_urllib2net failures when running tests
on a system without internet access.
- Issue #13726: Fix the ambiguous -S flag in regrtest. It is -o/--slow for slow
tests.
- Issue #11659: Fix ResourceWarning in test_subprocess introduced by #11459.
Patch by Ben Hayden.
- Issue #11577: fix ResourceWarning triggered by improved binhex test coverage
- Issue #11509: Significantly increase test coverage of fileinput.
Patch by Denver Coneybeare at PyCon 2011 Sprints.
- Issue #11689: Fix a variable scoping error in an sqlite3 test - Issue #11689: Fix a variable scoping error in an sqlite3 test
- Issue #13786: Remove unimplemented 'trace' long option from regrtest.py. - Issue #13786: Remove unimplemented 'trace' long option from regrtest.py.
...@@ -5159,6 +5138,23 @@ Tests ...@@ -5159,6 +5138,23 @@ Tests
C-API C-API
----- -----
- Issue #13452: PyUnicode_EncodeDecimal() doesn't support error handlers
different than "strict" anymore. The caller was unable to compute the
size of the output buffer: it depends on the error handler.
- Issue #13560: Add PyUnicode_DecodeLocale(), PyUnicode_DecodeLocaleAndSize()
and PyUnicode_EncodeLocale() functions to the C API to decode/encode from/to
the current locale encoding.
- Issue #10831: PyUnicode_FromFormat() supports %li, %lli and %zi formats.
- Issue #11246: Fix PyUnicode_FromFormat("%V") to decode the byte string from
UTF-8 (with replace error handler) instead of ISO-8859-1 (in strict mode).
Patch written by Ray Allen.
- Issue #10830: Fix PyUnicode_FromFormatV("%c") for non-BMP characters on
narrow build.
- Add PyObject_GenericGetDict and PyObject_GeneriSetDict. They are generic - Add PyObject_GenericGetDict and PyObject_GeneriSetDict. They are generic
implementations for the getter and setter of a ``__dict__`` descriptor of C implementations for the getter and setter of a ``__dict__`` descriptor of C
types. types.
...@@ -5184,6 +5180,21 @@ C-API ...@@ -5184,6 +5180,21 @@ C-API
Documentation Documentation
------------- -------------
- Issue #13989: Document that GzipFile does not support text mode, and give a
more helpful error message when opened with an invalid mode string.
- Issue #13921: Undocument and clean up sqlite3.OptimizedUnicode,
which is obsolete in Python 3.x. It's now aliased to str for
backwards compatibility.
- Issue #12102: Document that buffered files must be flushed before being used
with mmap. Patch by Steffen Daode Nurpmeso.
- Issue #8982: Improve the documentation for the argparse Namespace object.
- Issue #9343: Document that argparse parent parsers must be configured before
their children.
- Issue #13498: Clarify docs of os.makedirs()'s exist_ok argument. Done with - Issue #13498: Clarify docs of os.makedirs()'s exist_ok argument. Done with
great native-speaker help from R. David Murray. great native-speaker help from R. David Murray.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment