Terry Jan Reedy [Wed, 22 Jan 2014 02:12:13 +0000 (21:12 -0500)]
Issue #20818: Remove code from idlelib.CallTipWindow.showtip that is now
completely redundant. After 16638 patch, CallTips.get_argspec trims over-long
signature strings as well as docstring lines.
Terry Jan Reedy [Wed, 22 Jan 2014 01:45:03 +0000 (20:45 -0500)]
Issue #16638: Include up to 5 docstring header lines (before first blank) in
Idle calltips. This is needed for builtins, such 3.x bytes (which is why 5).
Based on patch by Serhiy Storchaka.
Terry Jan Reedy [Tue, 21 Jan 2014 08:07:43 +0000 (03:07 -0500)]
Issue #16655: Explain why Idle's test_calltips has 'fragile' tests of builtins.
I do not expect a problem in 2.7, but backported this anyway, 'in case'.
R David Murray [Sat, 18 Jan 2014 19:55:09 +0000 (14:55 -0500)]
#19855: restore use of LC_ALL, not LC_MESSAGES
I didn't realize LC_ALL was an override, and I should have. I tried to
make a test, but it is not clear that the LC variables actually affect
the strings that uuid is using to parse the command output.
Serhiy Storchaka [Thu, 16 Jan 2014 16:59:17 +0000 (18:59 +0200)]
Issue #19936: Added executable bits or shebang lines to Python scripts which
requires them. Disable executable bits and shebang lines in test and
benchmark files in order to prevent using a random system python, and in
source files of modules which don't provide command line interface.
Issue #13107: argparse and optparse no longer raises an exception when output
a help on environment with too small COLUMNS. Based on patch by
Elazar Gershuni.
cleanup for the issue 19081 fix - pull the file open and close outside of the
zip_searchorder scanning loop in get_module_code().
[already done in 3.3 and 3.4]
Issue #20072: Fixed multiple errors in tkinter with wantobjects is False.
* Misc.image_names(), Misc.image_types(), Wm.wm_colormapwindows(), and
LabelFrame.panes() now always return a tuple.
* Fixed _stringify() for non-ASCII strings.
* Fixed error of comparing str and int in tt.LabeledScale._adjust().
* ttk.Notebook.index() now always returns int.
* ttk.Notebook.tabs() now always returns a tuple.
* ttk.Entry.bbox() now always returns a tuple of ints.
* ttk.Entry.validate() now always correctly works.
* ttk.Combobox.current() now always returns int.
* ttk.Panedwindow.sashpos() now always returns int.
* ttk.Treeview.bbox() now always returns a tuple of ints.
* ttk.Treeview.get_children() now always returns a tuple.
* ttk.Treeview.exists() now always correctly works.
* ttk.Treeview.index() now always returns int.
* ttk.Treeview.tag_has() now always returns 0 or 1.
* And numerous other errors in methods which returns a tuple, list or dict.
* Fixed ttk tests for wantobjects is False.
Fixes issue19081: When a zipimport .zip file in sys.path being imported
from is modified during the lifetime of the Python process after
zipimport has already opened and cached the zip's table of contents
it now fstat's the file after opening it upon every attempt to access
anything within and will re-read the table of contents if the .zip file
inode, size or mtime have changed.
It would've been nicer to hold any .zip file used by zipimport open for the
duration of the process but that would be more invasive and add an additional
open file descriptor to all zipimport using processes. It also would likely
not fix the problem on Windows due to different filesystem semantics.
The fix the test is testing prevents a DOS attack, and the failure
mode will also prevent the DOS attack, so for now skip the test.
Either the test or the code does need fixing, however.
Serhiy Storchaka [Tue, 17 Dec 2013 12:40:06 +0000 (14:40 +0200)]
Issue #17976: Fixed potential problem with file.write() not detecting IO error
by inspecting the return value of fwrite(). Based on patches by Jaakko Moisio
and test by Victor Stinner.
Zachary Ware [Mon, 16 Dec 2013 14:58:10 +0000 (08:58 -0600)]
Issue #19987: Re-write test_alias_fallback in test_winsound to have two
acceptable outcomes: success or RuntimeError. Without being able to
actually hear whether a sound was played, either one could be right, but
any other error would be a failure.